2008年3月20日 星期四

實驗五 無線網路封包傳輸遺失模型

在做實驗之前我習慣先把ns和nam這兩個檔案複製到要用的資料夾裡


然後開啟cygwin進入lab5這個資料夾裡


執行startxwin.bat進入圖形介面視窗



情境一 :

使用隨機統一模型(PG = 0.1 , loss_model = 0)和multicast傳送(comm_type = 0)
執行方式 : $ns lab5.tcl 0 0 0.1 0 0 0(課本有打錯要注意!)
結果說明 :
模擬結束後,會產生一傳送記錄檔個sd和一個接收記錄檔rd,從sd檔案中我們可以得知共有12351個封包被送出,從rd檔案中我們可以得知共有11124個封包被接收,所以封包遺失率為(12351-11124)/12351=0.099
這個值跟所設定的網路底層封包遺失率0.1很接近,這也同時驗證了當封包只有multicast傳送時,網路使用者所感受到的傳送遺失機率將會和網路底層有相同的封包遺失率





情境二 :

使用隨機統一模型( PG = 0.4 , loss_model = 0)和multicast傳送(comm_type = 1)
執行方式 : $ns lab5.tcl 0 0 0.4 0 0 1(課本有打錯要注意!)
結果說明 :
模擬結束後,會產生一傳送記錄檔個sd和一個接收記錄檔rd,從sd檔案中我們可以得知共有12351個封包被送出,從rd檔案中我們可以得知共有12061個封包被接收,所以封包遺失率為(12351-12061)/12351=0.0234
這個值跟0.4的四次方0.0256很接近,同時也說明了若是使用unicast傳輸,網路使用者所感受到的傳送遺失率大約是網路底層所設定的四次方,其中四次方指的是最多重傳的次數(因為預設的RTSThreshold_為0,每個封包一定會大於0,所以重傳次數就由LongRetryLimit_所控制,其預設值為4)




情境三 :

使用GE模型(PGG = 0.96 , PBB = 0.94 , PG = 0.001 , PB = 0.05 , loss_model = 1)和multicast傳送(comm_type = 0)
執行方式 : $ns lab5.tcl 0.96 0.94 0.001 0.05 1 0(課本有打錯要注意!)
結果說明 : 模擬結束後,會產生一傳送記錄檔個sd和一個接收記錄檔rd,從sd檔案中我們可以得知共有12351個封包被送出,從rd檔案中我們可以得知共有12118個封包被接收,所以封包遺失率為(12351-12118)/12351=0.0188
這個值跟理論值0.01*(1 - 0.94)+0.05*(1 - 0.96) / ( (1 - 0.96)+(1 - 0.94) ) = 0.0206很接近












沒有留言: