计算机网路实验-使用NS2模拟多媒体通讯与无线网路(实验..._第1页
计算机网路实验-使用NS2模拟多媒体通讯与无线网路(实验..._第2页
计算机网路实验-使用NS2模拟多媒体通讯与无线网路(实验..._第3页
计算机网路实验-使用NS2模拟多媒体通讯与无线网路(实验..._第4页
计算机网路实验-使用NS2模拟多媒体通讯与无线网路(实验..._第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、計算機網路實驗-使用NS2模擬多媒體通訊與無線網路(實驗四)指導教授:許子衡老師學生:羅英辰 2010/3/52網路模擬結束模擬後,通常我們會要用到過程中產生的記錄來分析以得到吞吐量(Throughput)、封包延遲(Packet delay)、抖動率(Jitter)和封包遺失率(Packet loss rate)。以下就是有線網路記錄的格式:EventTimeFrom nodeTo nodePkt typePkt sizeFlagsFidSrc addrDst addrSeq numPkt id2010/3/53tcpsinksinkudprds1s2ftpcbr2Mbps, 10ms2Mb

2、ps, 10ms1.7Mbps, 20msftpcbr0.1 1.0 4.0 4.5sec2010/3/54封包第一和第四欄2010/3/552010/3/56#使用方法: perl measure-throughput.pl #記錄檔檔名$infile=$ARGV0;#多少時間計算一次(單位為秒)$granularity=$ARGV1;$sum=0;$sum_total=0;$clock=0;$maxrate=0;$init=0;#打開記錄檔open (DATA,$infile) | die Cant open $infile $!;UDP的吞吐量計算2010/3/57#讀取記錄檔中的每行資

3、料,資料是以空白分成眾多欄位 while () x = split( ); if($init=0) $start=$x2; $init=1; #讀取的第零個欄位是pkt_id#讀取的第一個欄位是封包傳送時間#讀取的第二個欄位是封包接收時間#讀取的第三個欄位是封包end to end delay#讀取的第四個欄位是封包大小#判斷所讀到的時間,是否已經達到要統計吞吐量的時候if ($x2-$clock $maxrate) $maxrate=$throughput; #輸出結果: 時間 吞吐量(bps) print STDOUT $x2: $throughput bpsn; #設定下次要計算吞吐量的

4、時間 $clock=$clock+$granularity; $sum_total=$sum_total+$x4; $sum=$x4;2010/3/59$endtime=$x2; #計算最後一次的吞吐量大小 $throughput=$sum*8.0/$granularity;print STDOUT $x2: $throughput bpsn;$clock=$clock+$granularity;$sum=0;#print STDOUT $sum_total $start $endtimen;$avgrate=$sum_total*8.0/($endtime-$start);print STD

5、OUT Average rate: $avgrate bpsn;print STDOUT Peak rate: $maxrate bpsn;#關閉檔案close DATA;exit(0);2010/3/5102010/3/511TCP的吞吐量計算2010/3/512無線網路以下是無線網路模擬後所產生的值:s -t 0.267662078 -Hs 0 -Hd -1 -Ni 0 -Nx 5.00 -Ny 2.00 -Nz 0.00 -Ne -1.000000 -Nl RTR -Nw - -Ma 0 -Md 0 -Ms 0 -Mt 0 -Is 0.255 -Id -1.255 -It message

6、 -Il 32 -If 0 -Ii 0 -Iv 32s -t 0.267662078 在上述trace記錄中,第一列描述了發生在節點上的事件類型,有四種:ls 發送lr 接收ld 丟棄lf 轉發第二列以“-t”開始,表示的是時間或者全局設置l-t 時間l-t * (全局設置)2010/3/513-Hs 0 -Hd -1lHs:目前節點的idlHd:下一個hop節點的id-Ni 0 -Nx 5.00 -Ny 2.00 -Nz 0.00 -Ne -1.000000 -Nl RTR -Nw - 這一列描述了節點諸如node-id等屬性,tracing的層級可能是agent、router或者MAC。這

7、些標識以“-N”開始並如下所示:l-Ni: 節點idl-Nx: 節點的x坐標l-Ny: 節點的y坐標l-Nz: 節點的z坐標l-Ne: 節點能量級別l-Nl: 節點trace層級,比如AGT,RTR,MACl-Nw: 事件原因。2010/3/514-Ma 0 -Md 0 -Ms 0 -Mt 0 該列給出了MAC層信息,標識以“-M”開始l-Ma: 持續時間l-Md: 目的乙太網址l-Ms: 來源乙太網址l-Mt: 乙太網類型-Is 0.255 -Id -1.255 -It message -Il 32 -If 0 -Ii 0 -Iv 32該列標識以“-I”開始,其解釋如下:l-Is: 來源地址

8、l-Id: 目的地址l-It: 封包類型l-Il: 封包大小l-If: 資料流idl-Ii: 唯一的idl-Iv: ttl值(time to live)2010/3/5152010/3/516範圍:1000m*1000m移動節點:三個N0和N2是以CBR/UDP連線。當time=200時,N1從(500,500)移到(500,900)。當time=500時,N1從(500,900)移到(500,100)。當time=1000時結束。2010/3/517(500,900)(500,500)(650,500)(350,500)(500,100)Time = 200Time = 5002010/3/

9、518# Define options 定義一些變數#=set val(chan) Channel/WirelessChannel ;# channel typeset val(prop)Propagation/TwoRayGround ;#radio-propagation modelset val(netif)Phy/WirelessPhy ;# network interface typeset val(mac)Mac/802_11 ;# MAC typeset val(ifq) Queue/DropTail/PriQueue ;# interface queue typeset val

10、(ll) LL ;# link layer typeset val(ant) Antenna/OmniAntenna ;# antenna model (天線模型)set val(x) 1000;#拓樸範圍:Xset val(y) 1000;#拓樸範圍:Yset val(ifqlen) 50 ;# max packet in ifqset val(nn) 3 ;# number of mobile nodes set val(seed) 0.0set val(stop) 1000.0;# simulation timeset val(tr) exp.tr;# trace file namese

11、t val(rp) DSDV ;# routing protocol 2010/3/519# Initialize Global Variablesset ns_new Simulator# Open trace file 開啟trace file$ns_ use-newtrace set namfd open nam-exp.tr w$ns_ namtrace-all-wireless $namfd $val(x) $val(y)set tracefd open $val(tr) w$ns_ trace-all $tracefd# set up topography object #建立一個

12、拓樸物件,以紀錄mobilenodes在拓樸內移動的情況set topo new Topography# 拓樸的範圍為 1000m x 1000m$topo load_flatgrid $val(x) $val(y)# create channel set chan new $val(chan)# Create Godset god_ create-god $val(nn)2010/3/520# Create the specified number of mobile nodes $val(nn) and attach them# to the channel. Three nodes ar

13、e created : node(0), node(1) and node(2)# 設置Mobile node的參數$ns_ node-config -adhocRouting $val(rp) -llType $val(ll) -macType $val(mac) -ifqType $val(ifq) -ifqLen $val(ifqlen) -antType $val(ant) -propType $val(prop) -phyType $val(netif) -channel $chan -topoInstance $topo -agentTrace ON -routerTrace ON

14、 -macTrace OFF -movementTrace OFF for set i 0 $i $val(nn) incr i set node_($i) $ns_ node$node_($i) random-motion 0;# disable random motion2010/3/521# Provide initial (X,Y, for now Z=0) co-ordinates for mobilenodes# 設定節點0在一開始時,位置在(350.0, 500.0)$node_(0) set X_ 350.0$node_(0) set Y_ 500.0$node_(0) set

15、 Z_ 0.0# 設定節點1在一開始時,位置在(500.0, 500.0)$node_(1) set X_ 500.0$node_(1) set Y_ 500.0$node_(1) set Z_ 0.0# 設定節點2在一開始時,位置在(650.0, 500.0)$node_(2) set X_ 650.0$node_(2) set Y_ 500.0$node_(2) set Z_ 0.0# Load the god object with shortest hop information# 在節點1和節點2之間最短的hop數為1$god_ set-dist 1 2 1# 在節點0和節點2之間最

16、短的hop數為2$god_ set-dist 0 2 2# 在節點0和節點1之間最短的hop數為1$god_ set-dist 0 1 12010/3/522# Now produce some simple node movements# Node_(1) starts to move upward and then downwardset god_ God instance# 在模擬時間200秒的時候,節點1開始從位置(500, 500)移動到(500, 900),# 速度為2.0 m/sec$ns_ at 200.0 $node_(1) setdest 500.0 900.0 2.0#

17、然後在500秒的時候,再從位置(500, 900)移動到(500, 100),速度為2.0 m/sec$ns_ at 500.0 $node_(1) setdest 500.0 100.0 2.02010/3/523# Setup traffic flow between nodes 0 connecting to 2 at time 100.0# 在節點0和節點2建立一條CBR/UDP的連線,且在時間為100秒開始傳送set udp_(0) new Agent/mUDP#設定傳送記錄檔檔名為sd_udp$udp_(0) set_filename sd_udp$udp_(0) set fid_

18、 1$ns_ attach-agent $node_(0) $udp_(0)set null_(0) new Agent/mUdpSink#設定接收檔記錄檔檔名為rd_udp$null_(0) set_filename rd_udp$ns_ attach-agent $node_(2) $null_(0)set cbr_(0) new Application/Traffic/CBR$cbr_(0) set packetSize_ 200$cbr_(0) set interval_ 2.0$cbr_(0) set random_ 1$cbr_(0) set maxpkts_ 10000$cbr_(0) attach-agent $udp_(0)$ns_ conn

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论