2008年6月18日 星期三

[意見] NS2技能的自我檢視

  • 問題:關於六到八章的影像傳輸的轉檔
  • 描述:在傳輸影像時,需要將影像從 .yuv 轉為 .m4v 在轉為 .mp4,為什麼需要多次轉檔,而不是直接傳輸。
-------------------------------------------------------------------------------------------------
  • 問題:創建一個自己的TCL檔
  • 描述:在第二和三章,教導如何使用軟體來創造劇本,很快速但感覺功能並不是很足夠,不知道可不可以擴充,另外,後面所使的TCL檔看起來並不是使用軟體產生出來,到底創健一個TCL檔,怎麼樣才可以更快速的上手。

-------------------------------------------------------------------------------------------------
  • 問題:撰寫C程式來創立NS2元件的除錯方法
  • 描述:如題,每當寫完一個C程式後,按照正常程序,放入NS2資料裡,加入.O檔make,再跑模擬,不知道有沒有像 visual c 這樣的程式,可以立即知道,寫的程式碼有無錯誤。
-------------------------------------------------------------------------------------------------
  • 問題:關於TCL語法中的 " new Simulator "
  • 描述:在每個劇本裡,都要設定一個ns,例如:set ns [ new Simulator ],之後再利用ns來做許多設定,關於new的指令,在new Simulator後,ns裡面有什麼,例外Simulator是怎麼來的。

-------------------------------------------------------------------------------------------------
  • 上面的4個問題,大都關於TCL檔的內容,我認為TCL檔裡面的內容很重要,算是另外一種清楚表達網路構造的方法,所以在這裡提供一個意見。
  • 意見:關於TCL檔內的語法可以早一點教,雖然一開始如果教TCL的內容可能會有難度,不過還是希望能夠儘早教到,在之後做各章節作業時,就能夠更清楚網路的架構,也比較容易學到更多TCL的語法與意義。

[期末作業] 網路封包傳輸模擬

  • 之前隨機數字產生器的程式碼有些問題,後來發現一直使用 srand() 來改變隨機種子會有問題,於是就放在建構子,第一次執行改變隨機種子一次,另外,隨機到0時,會產生錯誤,所以加一點判斷,執行的結果,應該是滿正確的。

2008年5月21日 星期三

[實驗十一] 無線網路效能分析探討(三)

802.11

  • 執行NS,從劇本可以看出,參數"0"是802.11的形式。


  • 仿照第六章的作法,還原傳輸的影片。


  • 進行轉檔為 .yuv。




  • 傳輸品質 ,psnr = 33.582008(跟書上有些微不同,沒有差很多,應該是正常的)。


  • 傳輸的延遲時間,等等用來跟802.11e比較(也是和書上有些許誤差,可能是在轉檔時發生的錯誤有關)。

-------------------------------------------------------------------------------------------------
802.11e
  • 執行NS,參數"1"是802.11e的形式,就著就進行影像的傳輸及轉檔。






  • 影像品質, psnr = 34.887196(也同樣和課本有些許誤差),有比802.11的傳輸品質還要好一點。


  • 傳輸的延遲,跟802.11比較,延遲時間較小,有比較明顯的快速。

2008年5月8日 星期四

[實驗十] 無線網路效能分析探討(二)

範例一

  • 先測試兩個需要用到的工具,cbrgen和setdest。

  • cbrgen可以產生TCP flow或CBR flow,打入所需要的參數即可產生,測試的例子是有5個節點,連線數為2,種子為1,每秒產生10個封包。


  • 這是cbrgen產生出來的劇本,和課本不一樣,課本好像只有一個連線,果然應該是課本貼錯了。


  • setdest可以產生隨機節點移動的場景,測試的例子是2個節點,在範圍300m*300m內移動,最大速度為20 m/s,時間為10s。


  • setdest產生的劇本。


  • 接著來實驗範例一,先利用工具設定劇本,setdest產生的劇本是隨機的,所以產生出來劇本應該也會和課本有所不同,模擬100個無線節點,時間100s,pause time為100s,CBR flow,連線數為10,每條連線每秒送出10個封包。




  • 執行模擬DSDV。


  • DSDV的模擬結果。


  • 執行模擬AODV。


  • AODV的模擬結果。


  • 執行模擬DSR。


  • DSR的模擬結果。


  • 比較三種協定的結果,DSDV比較早收到第一個封包,接收到的封包幾乎都一樣,AODV的延遲時間稍微久了一點,但是總體來說,三種協定的效能都差不多。

-------------------------------------------------------------------------------------------------

範例二

  • 因為cbrgen的設定跟範例一相同,所以直接使用範例一產生出來的劇本,但是無線節點要改為移動式的,範圍也提高到500m*500m,所以要重新產生setdest的劇本。


  • 執行模擬DSDV。


  • DSDV的模擬結果。


  • 執行模擬AODV。


  • AODV的模擬結果。


  • 執行模擬DSR。


  • DSR的模擬結果。


  • 比較三種協定在無線移動節點的效能,DSDV顯然在接收封包跟其他協定差了許多,延遲時間也較多,相較之下,AODV和DSR的效能明顯比較好。

[實驗九] 無線網路效能分析探討(一)

(一)使用課本的設定

  • 使用threshold小工具來得到環境的設定,距離250m得到 RXThresh = 3.65262e-10。


  • 執行 $ns test_2nodes.tcl,當距離為250m時,接收端可以接收到傳送端的資料(傳送125筆->接收125筆)。
    但是大於250m後,接收端變接收不到訊號
    (傳送125筆->接收0筆),下圖為更改的地方。


  • 使用threshold小工具來得到環境的設定,距離120m得到 RXThresh = 6.88081e-09。

  • 執行 $ns ttest_hidden_terminal.tcl (沒有使用RTS/CTS)。
    接收端接收到傳送端的資料:
    傳送(node 0) 1688筆->接收(
    node 1) 153筆
    傳送(node 2) 1626筆->接收(
    node 1) 104筆
  • 執行 $ns ttest_hidden_terminal.tcl (有使用RTS/CTS)。
    接收端接收到傳送端的資料:
    傳送(
    node 0) 1688筆->接收(node 1) 738筆
    傳送(
    node 2) 1626筆->接收(node 1) 782筆
  • 對於隱藏節點,有RTS/CTS效果會較好。

  • 使用threshold小工具來得到環境的設定,距離100m得到 RXThresh = 1.42681e-08。

  • 執行 $ns test_exposed_terminal.tcl(沒有使用RTS/CTS)。
    接收端接收到傳送端的資料:
    傳送(node 1) 1688筆->接收(
    node 0) 925筆
    傳送(node 2) 1626筆->接收(
    node 3) 795筆
  • 執行 $ns test_exposed_terminal.tcl (有使用RTS/CTS)。
    接收端接收到傳送端的資料:
    傳送(
    node 1) 1688筆->接收(node 0) 828筆
    傳送(
    node 2) 1626筆->接收(node 3) 782筆
  • 對於暴露節點,有RTS/CTS效果不會比較好。
-------------------------------------------------------------------------------------------------

(二)不使用課本設定


  • 我想使用2.4GHz的頻率,所以將程式碼改一下設定重新編譯。


  • 當距離250m得到的數據和前面一樣。


  • 將頻率改為2.4GHz後,模擬結果還是一樣。


  • 當距離120m得到 RXThresh = 1.93659e-09,竟然跟前面不一樣.......@___@。


  • 將不一樣的數據改掉,然後再模擬。


  • 結果,接收端竟然收不到東西。


  • 去查看一下原始碼,"lambda"會因為頻率受影響,而當距離過小時,頻率將會受到考慮 (老師改頻率時,天線的長度與傳送功率有一起更改,而我卻沒有,也許是這個原因),來試試看到底哪裡設定錯了.....

2008年3月25日 星期二

[實驗八] 影像傳輸效能分析與評估


  • 本次實驗是影響影像傳輸的因素,課本裡舉出GOP、壓縮化參數和MTU的不同得到影像品質的好壞,因為測量方式都一樣,只是改變部分的數值,所以我取其中依個實驗來做,我把Packet error設為0.1,測量在GOP = 9 和 GOP = 15的情況下,影像的平均PSNR值為多少,測量方式就如同實驗六一樣。
  • 首先先將yuv轉為m4v (GOP = 9)。
  • 將m4v轉為mp4。
  • 將影片中的資訊取出來,儲存到st的檔案
  • 執行ns (Packet error = 0.1)。
  • 產生接收端的影片。
  • 接收端的影片轉為YUV檔。
  • 得到平均PSNR值。
  • GOP = 15的影片。
  • GOP = 15的平均PSNR值。


  • 做出來竟然沒變,不知道是哪裡設定錯了,看來要好好的檢查一下......= ="