使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真_第1頁(yè)
使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真_第2頁(yè)
使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真_第3頁(yè)
使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真_第4頁(yè)
使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真1 ubuntu密碼 1234562實(shí)驗(yàn)?zāi)繕?biāo)和要求1 熟悉NS2環(huán)境,學(xué)會(huì)使用NS2工具進(jìn)行仿真實(shí)驗(yàn)2 使用NSG進(jìn)行有線(xiàn)網(wǎng)絡(luò)仿真3觀(guān)察并解釋NAM動(dòng)畫(huà),分析trace文檔。4 分析模擬結(jié)果。學(xué)會(huì)使用awk和gnuplot分析端到端的延遲。3實(shí)驗(yàn)步驟仿真的環(huán)境如圖所示:圖1 有線(xiàn)網(wǎng)絡(luò)拓?fù)? 轉(zhuǎn)到NSG目錄下,啟動(dòng)NSG。cd /home/susan/Desktop/ns-allinone-2.34/ns-2.34/bookjava jar NSG2.1.jar )Step 1: 新增一個(gè)有線(xiàn)網(wǎng)絡(luò)的劇本,使用者可以透過(guò)ScenarioNew wired scenario

2、來(lái)建立(或按下快速鍵Ctrl+W),建立后如圖2所示,在預(yù)設(shè)的情況下NSG會(huì)切換到Node mode(Node按鈕會(huì)變成灰色),也就是說(shuō)使用者一開(kāi)始便可建立Node。圖2 新增一個(gè)有線(xiàn)網(wǎng)絡(luò)的劇本Step 2: 開(kāi)始建立劇本所需要的Node,利用鼠標(biāo)直接點(diǎn)選想要擺放Node的位置以建立Node,在此范例中建立的六個(gè)Node其相對(duì)位置如圖3,可透過(guò)調(diào)整畫(huà)面右下方的橫桿顯示不同的比例。圖3 設(shè)定好六個(gè)node相關(guān)位置Step 3: 設(shè)定Node之間的鏈路,首先切換到Link mode(按下Link按鈕或快速鍵Ctrl+3),然后依序?qū)⑾铝械膮?shù)設(shè)定好。Link-type:duplex-linkQue

3、ue type:DropTailCapacity:2MbpsPropagation delay:10msQueue size:10Step 4: 以鼠標(biāo)點(diǎn)選的方式將n0-n2、n1-n2、n3-n4及n3-n5之間的鏈路建立起來(lái),接著將Capacity設(shè)定為1Mbps,Propagation delay設(shè)定為20ms,然后再建立n2-n3間的鏈路,建立好后如圖4所示,如果建立的過(guò)程中有參數(shù)沒(méi)設(shè)定好,也可以在鏈路上按下鼠標(biāo)右鍵進(jìn)行修改。圖4 設(shè)定好六個(gè)node之間的鏈路Step 5: 接著切換到Agent mode(按下Agent按鈕或快速鍵Ctrl+4)來(lái)進(jìn)行通訊協(xié)議的設(shè)定。首先選取Agent

4、 type為UDP并設(shè)定封包大?。≒acket size)為1500 bytes,并在n0與n1上各建立一個(gè)Agent,接著選取Agent type為NULL,并在n4、n5上各建立一個(gè)NULL Agent。建立好Agent之后還要繼續(xù)設(shè)定Agent之間的聯(lián)機(jī),其設(shè)定的方式是用鼠標(biāo)選取要建立聯(lián)機(jī)的二個(gè)Agent,在此分別在(udp0、null2)和(udp1、null3)之間建立聯(lián)機(jī),建立好之后如圖5所示。圖5建立AgentsStep 6: 切換到Application mode(按下Application按鈕或快速鍵Ctrl+5)來(lái)進(jìn)行上層的應(yīng)用程序設(shè)定,將Application type設(shè)

5、定為CBR并設(shè)定啟動(dòng)時(shí)間(Start time)為1秒,結(jié)束時(shí)間(Stop time)為4秒,封包大小為1500bytes,傳輸速度為1Mbps,然后在n0上建立一個(gè)CBR Application,接著將啟動(dòng)時(shí)間(Start time)為2秒,結(jié)束時(shí)間(Stop time)為3秒,并在n1上再建立一個(gè)CBR Application,如圖6。圖6建立ApplicationStep7:最后,設(shè)定模擬的參數(shù)(按下Parameters鈕即可或快速鍵Ctrl+6),在這個(gè)例子中,因?yàn)槭墙⒂芯€(xiàn)網(wǎng)絡(luò)的劇本,所以參數(shù)的部份只需要將模擬時(shí)間(Simulation time)設(shè)定為5.0,并且指定產(chǎn)生Trace

6、文件名稱(chēng)即可,如圖7。圖7設(shè)定模擬參數(shù)Step8:當(dāng)一切都設(shè)定完畢之后按下TCL按鈕(快速鍵Ctrl+7)即可產(chǎn)生劇本檔了,每一次產(chǎn)生的劇本檔都會(huì)被建立在一個(gè)獨(dú)立的窗口,使用者這時(shí)候還可以根據(jù)自己的需求去做修正,如圖8所示。圖8產(chǎn)生劇本檔Step9:按下Save按鈕(快速鍵Alt+S)將產(chǎn)生出來(lái)的TCL檔儲(chǔ)存起來(lái)之后,便可交由ns2開(kāi)始進(jìn)行模擬,產(chǎn)生出來(lái)的劇本檔如下。# This script is created by NSG2 beta1# #=# Simulation parameters setup#=set val(stop) 5.0 ;# time of simulation en

7、d#=# Initialization #=#Create a ns simulatorset ns new Simulator#Open the NS trace fileset tracefile open out.tr w$ns trace-all $tracefile#Open the NAM trace fileset namfile open out.nam w$ns namtrace-all $namfile#=# Nodes Definition #=#Create 6 nodesset n0 $ns nodeset n1 $ns nodeset n2 $ns nodeset

8、n3 $ns nodeset n4 $ns nodeset n5 $ns node#=# Links Definition #=#Createlinks between nodes$ns duplex-link $n0 $n2 2.0Mb 10ms DropTail$ns queue-limit $n0 $n2 10$ns duplex-link $n2 $n1 2.0Mb 10ms DropTail$ns queue-limit $n2 $n1 10$ns duplex-link $n4 $n3 2.0Mb 10ms DropTail$ns queue-limit $n4 $n3 10$ns

9、 duplex-link $n3 $n5 2.0Mb 10ms DropTail$ns queue-limit $n3 $n5 10$ns duplex-link $n2 $n3 1.0Mb 20ms DropTail$ns queue-limit $n2 $n3 10#Give node position (for NAM)$ns duplex-link-op $n0 $n2 orient right-down$ns duplex-link-op $n2 $n1 orient left-down$ns duplex-link-op $n4 $n3 orient left-down$ns du

10、plex-link-op $n3 $n5 orient right-down$ns duplex-link-op $n2 $n3 orient right#=# Agents Definition #=#Setup a UDP connectionset udp0 new Agent/UDP$ns attach-agent $n0 $udp0set null2 new Agent/Null$ns attach-agent $n4 $null2$ns connect $udp0 $null2$udp0 set packetSize_ 1500#Setup a UDP connectionset

11、udp1 new Agent/UDP$ns attach-agent $n1 $udp1set null3 new Agent/Null$ns attach-agent $n5 $null3$ns connect $udp1 $null3$udp1 set packetSize_ 1500#=# Applications Definition #=#Setup a CBR Application over UDP connectionset cbr0 new Application/Traffic/CBR$cbr0 attach-agent $udp0$cbr0 set packetSize_

12、 1500$cbr0 set rate_ 1.0Mb$cbr0 set random_ null$ns at 1.0 $cbr0 start$ns at 4.0 $cbr0 stop#Setup a CBR Application over UDP connectionset cbr1 new Application/Traffic/CBR$cbr1 attach-agent $udp1$cbr1 set packetSize_ 1500$cbr1 set rate_ 1.0Mb$cbr1 set random_ null$ns at 2.0 $cbr1 start$ns at 3.0 $cb

13、r1 stop#=# Termination #=#Define a finish procedureproc finish global ns tracefile namfile $ns flush-trace close $tracefile close $namfile exec nam out.nam & exit 0$ns at $val(stop) $ns nam-end-wireless $val(stop)$ns at $val(stop) finish$ns at $val(stop) puts done ; $ns halt$ns runNSG所產(chǎn)生出來(lái)的劇本檔會(huì)自動(dòng)啟動(dòng)N

14、AM來(lái)呈現(xiàn)模擬的過(guò)程,如圖9所示。圖94 仿真結(jié)果分析End-to-end delay Step1: 在原程序下,編寫(xiě)awk代碼。sudo gedit measure_delay.awk代碼如下:# 這是測(cè)量CBR包端到端延遲的awk程序BEGIN#程序初始化,設(shè)置一變量記錄目前最高處理包的idhighest_packet_id = 0;action = $1;time = $2;from = $3;to = $4; type = $5;pktsize = $6;flow_id = $8;src = $9;dst = $10;seq_no = $11;packet_id = $12;# 記錄目

15、前最高的packet idif (packet_id highest_packet_id )highest_packet_id = packet_id;#記錄包傳送時(shí)間if ( start_timepacket_id=0)start_timepacket_id = time;#記錄CBR (flow_id =0)的接收時(shí)間if (flow_id = 0 & action != d)if ( action = r )end_timepacket_id = time;else#設(shè)置flow_id不是0的包或者是0但是被drop的時(shí)間為-1end_timepacket_id = -1;END#當(dāng)數(shù)據(jù)

16、行全部讀完后,開(kāi)始計(jì)算有效包的端到端的延遲時(shí)間for ( packet_id =0; packet_id = highest_packet_id; packet_id+)start = start_timepacket_id;end = end_timepacket_id;packet_duration = ( end-start);# 只輸出接收時(shí)間大于傳送時(shí)間的記錄if (start cbr_delay 將結(jié)果輸出存到cbr_delay文件中。Step3: 啟用gnuplot,直接輸入 gnuplotplot “cbr_delay”,顯示結(jié)果。附1 NSG簡(jiǎn)介NSG是一個(gè)專(zhuān)為ns2所設(shè)計(jì)的

17、劇本產(chǎn)生器,目前最新的版本為第二版(NSG2),和前一版(NSG1)比較起來(lái)最大的不同在于NSG2除了原本支持的無(wú)線(xiàn)網(wǎng)絡(luò)之外還支持有線(xiàn)網(wǎng)絡(luò)的劇本,以下列出NSG2主要的功能及支持ns2的對(duì)象種類(lèi) 1.產(chǎn)生有線(xiàn)網(wǎng)絡(luò)及無(wú)線(xiàn)網(wǎng)絡(luò)的劇本(目前尚不支持無(wú)線(xiàn)及有線(xiàn)混合的劇本)2.支持的Node種類(lèi)WirelessNode及WiredNode3.支持WirelessNode的移動(dòng)設(shè)定4.支持的Link種類(lèi)Duplex-link及Simplex-link 5.Agent支援(TCP、TCP/Tahoe、TCP/Reno、TCP/Newreno、TCP/Vegas、TCPSink(TCP的三個(gè)版本,根據(jù)擁塞控制

18、機(jī)制來(lái)劃分)、UDP及NULL) 6.支持的Application種類(lèi):CBR及FTP7.支持的Routing protocol種類(lèi)DSDV、DSR、AODV及TORA8.支持的Queue種類(lèi)DropTail、RED、FQ、DRR、SFQ及CBQ9.無(wú)線(xiàn)網(wǎng)絡(luò)相關(guān)設(shè)定10.802.11參數(shù)設(shè)定(NSG提供一組802.11b的預(yù)設(shè)參數(shù))CBR:constant bit rate,固定傳輸速率。固定碼率(英文constant bit rate,縮寫(xiě)CBR)。這是一個(gè)用來(lái)形容通信服務(wù)質(zhì)量(QoS,Quality of Service)的術(shù)語(yǔ)。和該詞相對(duì)應(yīng)的詞是可變碼率或可變比特率(英文variable

19、 bit rate,縮寫(xiě)VBR)。 當(dāng)形容編解碼器的時(shí)候,CBR編碼指的是編碼器的輸出碼率(或者解碼器的輸入碼率)應(yīng)該是固定制(常數(shù))。當(dāng)在一個(gè)帶寬受限的信道中進(jìn)行多媒體通訊的時(shí)候CBR是非常有用的,因?yàn)檫@時(shí)候受限的是最高碼率,CBR可以更好的易用這樣的信道。但是CBR不適合進(jìn)行存儲(chǔ),因?yàn)镃BR將導(dǎo)致沒(méi)有足夠的碼率對(duì)復(fù)雜的內(nèi)容部分進(jìn)行編碼(從而導(dǎo)致質(zhì)量下降),同時(shí)在簡(jiǎn)單的內(nèi)容部分會(huì)浪費(fèi)一些碼率。 大部分編碼方案的輸出都是可變長(zhǎng)的碼字,例如霍夫曼編碼或者游程編碼(run-length coding),這使得編碼器很難做到完美的CBR。編碼器可以通過(guò)調(diào)整量化(進(jìn)而調(diào)整編碼質(zhì)量)來(lái)部分的解決這個(gè)問(wèn)題

20、,如果同時(shí)使用填充碼來(lái)完美的達(dá)到CBR。(有時(shí)候,CBR也指一種非常簡(jiǎn)單的編碼方案,比如將一個(gè)16位精度的音頻數(shù)據(jù)流通過(guò)抽樣得到一個(gè)8位精度的數(shù)據(jù)流)ftp: FTP 是File Transfer Protocol(文件傳輸協(xié)議)的英文簡(jiǎn)稱(chēng),而中文簡(jiǎn)稱(chēng)為“文傳協(xié)議”。用于Internet上的控制文件的雙向傳輸。同時(shí),它也是一個(gè)應(yīng)用程序(Application)。用戶(hù)可以通過(guò)它把自己的PC機(jī)與世界各地所有運(yùn)行FTP協(xié)議的服務(wù)器相連,訪(fǎng)問(wèn)服務(wù)器上的大量程序和信息。FTP的主要作用,就是讓用戶(hù)連接上一個(gè)遠(yuǎn)程計(jì)算機(jī)(這些計(jì)算機(jī)上運(yùn)行著FTP服務(wù)器程序)察看遠(yuǎn)程計(jì)算機(jī)有哪些文件,然后把文件從遠(yuǎn)程計(jì)算機(jī)上拷到本地計(jì)算機(jī),或把本地計(jì)算機(jī)的文件送到遠(yuǎn)程計(jì)算機(jī)去。作業(yè)寫(xiě)一個(gè)簡(jiǎn)單的awk程序,分析丟包率。BEG

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論