数据通信实验报告.docx

上传人:p** 文档编号:492376 上传时间:2023-09-19 格式:DOCX 页数:26 大小:305.92KB
下载 相关 举报
数据通信实验报告.docx_第1页
第1页 / 共26页
数据通信实验报告.docx_第2页
第2页 / 共26页
数据通信实验报告.docx_第3页
第3页 / 共26页
数据通信实验报告.docx_第4页
第4页 / 共26页
数据通信实验报告.docx_第5页
第5页 / 共26页
数据通信实验报告.docx_第6页
第6页 / 共26页
数据通信实验报告.docx_第7页
第7页 / 共26页
数据通信实验报告.docx_第8页
第8页 / 共26页
数据通信实验报告.docx_第9页
第9页 / 共26页
数据通信实验报告.docx_第10页
第10页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数据通信实验报告.docx》由会员分享,可在线阅读,更多相关《数据通信实验报告.docx(26页珍藏版)》请在第壹文秘上搜索。

1、电子科技大学实验报告实验一NS2的基础使用NS2是一种提供虚拟环境进行网络摹拟仿真,能验证网络性能的正确性和进行相关性能 测试的软件。一、实验环境:Ubuntu 12.04/kernel 3.5GCC 4.6.3NS-2.33二、网络拓扑:实验共有6个节点,每一个节点的连接情况如图所示。其中节点NO、N2和节点Nk N2 连 接,N3、M和N4、N5连接,N2和N3连接。从0号节点到2号节点,带宽为2Nh延时为 IOmSo 。 Z 三、实践步骤:切换到用户根目录下Cd Z建立自己的文件夹mkdir your document name进入刚刚新建的文件夹Cd your_document_nam

2、e新建一个 TCL 脚本文件 gedit your_TCL_f i 1 e_name. tcl# Here is the beginning of this code fileset val (stop) 5. 0 ;#摹拟器结束时间# 新建一个NS摹拟对象set ns new Simulator# 打开NS追踪文件set tracefile open out. tr w$ns trace-all Stracefile# 打开NAM追踪文件 set namfile open out. nam w $ns namtrace-all Snamfile# 新建6个节点set n $ns nodese

3、t nl $ns nodeset n2 $ns nodeset n3 $ns nodeset n4 $ns nodeset n5 $ns node# 建立节点之间的链路,格式解释如下ftduple-link 双向链路可选选项(duplexTink, SimpleTink 单向链 路)# $n0 $n2表明从0号节点到2号节点# 2. OMb申明链路传输速率,可使用Mb, Kb, b# 1OmS申明链路传输延迟# DrOPTail队列类型$ns queue-limit $n0 $n2 10$ns$nsduplex-link queue-limit$nl $n2 2. OMb $nl $n2 10

4、IOms$ns$nsduplex-link queue-limit$n4 $n3 2. OMb$n4 $n3 10IOms$ns$nsduplex-link queue-limit$n3 $n2 1.0Mb $n3 $n2 1020ms$ns $nsduplex-link queue-limit$n3 $n5 2. OMb$n3 $n5 10IOms$ns duplex-link $n0 $n2 2. OMb IOms DropTail#申明链路队列长度DropTailDropTailDropTailDropTail#为NAM创建节点位置描述,以第一个为例,2号节点在0号节点的右下 方$ns

5、duplex-link-op $n0 $n2 orient right-down$ns duplex-link-op $nl $n2 orient right-up$ns duplex-link-op $n4 $n3 orient left-down$ns duplex-link-op $n3 $n2 orient left$ns duplex-link-op $n3 $n5 orient right-down# 新建一个UDP连接set udp new gentUDP# 将0号节点Agent/UDP绑定,以下类似$ns attach-agent $n0 $udpOset null2 new

6、Agent/Nul1$ns attach-agent $n4 $null2# 将Agent/UDP及Agent/Null节点进行连接$ns connect $udpO $nul12# 设置Agent/UDP包大小$udpO set packetSize_ 1500# 新建另一个UDP连接set udpl new Agent/UDP$ns attach-agent $nl $udplset null3 new Agent/Null$ns attach-agent $n5 $null3$ns connect $udpl $nul13$udpl set packetSize_ 1500# 在UDP连

7、接上新建一个CBR应用set cbr new pplicationTrafficCBR$cbr0 attach-agent $udp0$cbr0 set packetSize_ 1500$cbr0 set rate_ 1. OMb$cbr0 set random_ null# 在第1秒,ScbrO服务开始发送$ns at 1.0 $CbrO start”# 在第4秒,$Cbro服务住手发送$ns at 4. 0 zzScbrO stop”# 在UDP连接上新建一个CBR应用set cbrl new App1ication/TrafficCBR$cbrl attach-agent $udpl$c

8、brl set packetSize_ 1500$cbrl set rate_ 1. OMb$cbrl set random_ null $ns at 2. 0 zzScbrl startz, $ns at 3. 0 $CbrI stop”# 定义一个finish,过程用以处理摹拟结束之后需要完成的动作 proc finish ) # 申明使用外部变量global ns tracefile namfile val$ns at $val (stop) $ns nam-end-wire 1 ess $val (stop)zz# 清空追踪区域 $ns flush-trace# 关闭trace文件 c

9、lose Stracefile# 关系nam文件 close Snamfile# 执行系统命令nam out. nam exec nam out. nam & exit 0)# 在VaI(StOP)时间调用finish过程$ns at $val(stop) “finish”$ns at $val (stop) ,zputs done” ; $ns halt”# 启动ns$ns run保存退出,在当前目录下,使用ns your TCL file name. tcl四、实践数据及分析结果:2/7图一(开始传输数据)4/7图二(开始发生丢包)图三(节点1住手发送数据)6/7图四(节点5住手接收数据)

10、7/7图五(节点。住手发送数据)五、实验结论通过这次实验,我学会了在LINUX系统上安装NS2,同时更直观的理解了一 旦发生丢包后,节点会等到队列中的数据发送完后才会接受新的数据包。电子科技大学实验报告实验二实验二TCP性能仿真实验一、网络拓扑:三个节点:NO、NL N2,节点NO和N1相连,N1和N2相连工网络配置:TCP协议三、实验环境:Ubuntu 12. 04/kernel 3.5GCC 4. 6. 3NS-2. 33四、实践步骤:修改tcp. CC代码Gedit ns-allinone-2. 33ns-2. 33/tcp/tcp. cc(将窗口阈值一半变为的窗口阈值1/3wt_tcp

11、l.cc) 第一处:if (cwnd_ ssthresh_) slowstart = 1;if (precision_reduce_) /halfwin = windowd() / 2; / halfwin = windowd() / 3;第二处: else int temp;/temp = (int) (window () / 2);/ temp = (int) (window() / 3);halfwin =(double) temp;第三处:switch (how) case 0:* timeouts */ssthresh_ = int( window() / 2 );/ ssthres

12、h_ = int( window() / 3 );if (ssthresh_ 2)ssthresh_ = 2;cwnd_ = int(wnd_restart_);break;case 1:第四处case 4:* Tahoe dup acks */ssthresh_ = int( window() / 2 );/ ssthresh_ = int( window() / 3 );if (ssthresh_ 2)ssthresh_ - 2;cwnd_ = 1;break;default:abort ();返回ns根目录执行./install执行安装参照实验1代码,编写tcl代码,实现一个简单的3节点

13、,2条链路的网 络网络如下图这个是该网络结构对应代码set val (stop) 5. 0set ns new Simulator# 设置用XGRAPH软件打开的跟踪文件,通常可以一条完整链路对应一个文 件set f open out. tr wset tracefd open wired, tr w$ns trace-all Stracefdset nf open wired, nam w$ns namtrace-al1 $nfrecord过程用以记录仿真过程,然后通过使用XGRAPH画图软件来表现 proc record ) global sink fset ns Simulator in

14、stance# 设置经过多少时间再次调用该过程set time 0. 5# 计数Sink节点接受了多少数据set bw $sink set bytes_# 设置当前时间set now $ns now# 计算网络流量并写入文件中puts $f0 $noW expr $bw/$time*8l000000zz# 重置计数器$sink set bytes_ 0# 循环调用该过程一$ns at expr $now+$time “record”)$ns at 0. 0 record”proc finish global ns tracefd nf val f$ns at $val(stop) $ns nam-end-wireless $val(stop)$ns flush-traceclose $f0close Stracefdclose $nfexec nam wired, nam &exit 0set n $ns nodeset nl $ns nodeset n2 $ns node$ns duplex-l

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 通信/电子 > 数据通信与网络

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!