版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
NS2实验报告题 目 有线链路性能分析班 级 物联二班学生姓名 学生学号 指导老师 【题目】有线链路性能分析【目的】深入学习NS2的使用方法,学习使用NS2模拟有线网络的开发方法。【实验内容】(1) 构建有线网络的基本拓扑;(2) 配置网络节点、链路和协议的参数;(3) 使用Tcl脚本语言描述配置信息;(4) 实现有线网络的模拟,分析不同配置下的输出结果。【实验步骤】构建有线网络的基本拓扑这个网络拓扑定义了6个节点,每个节点之间的连接设置成双工格式,在0,2节点设置两个UDP发送节点,3,5节点设置两个agent接收节点,设置传送的数据包大小为1500,然后再在UDP连接中定义一个数据流量发送器(包括它的包的大小、速率大小、停止时间和开始时间),最后定义一个finish函数来完成清理现场的工作,进而完成网络节点、链路和协议的参数的配置。输入指令gnuplot,可以得到延时和流量的图像。【实验代码】tcl的源程序:#建立一个模拟setns[newSimulator]#定义不同数据流的颜色(NAM显示时用到)$nscolor1Blue$nscolor2Red#开启Trace跟踪和NAM跟踪settracefd[openwired.trw]$nstrace-all$tracefdsetnf[openwired.namw]$nsnamtrace-all$nf#定义结束进程procfinish{}(globalnstracefdnf$nsflush-traceclose$tracefdclose$nfexit0}#定义节点setn0[$nsnode]setn1[$nsnode]setn2[$nsnode]setn3[$nsnode]setn4[$nsnode]setn5[$nsnode]#$n5colorblack$n5colorred#定义节点间的链路$nsduplex-link$n0$n12Mb10msDropTail$nsduplex-link$n1$n22Mb10msDropTail$nsduplex-link$n1$n42Mb20msDropTail$nsduplex-link$n3$n42Mb10msDropTail$nsduplex-link$n4$n52Mb10msDropTail#定义链路的队列长度$nsqueue-limit$n1$n410#指定节点间的相互位置(NAM显示用到)$nsduplex-link-op$n0$n1orientright-down$nsduplex-link-op$n2$n1orientright-up$nsduplex-link-op$n1$n4orientright$nsduplex-link-op$n3$n4orientleft-down$nsduplex-link-op$n5$n4orientleft-up#监视链路的队列$nsduplex-link-op$n1$n4queuePos0.5
#建立一个TCP连接settcp[newAgent/TCP]$tcpsetclass_2$nsattach-agent$n0$tcpsetsink[newAgent/TCPSink]$nsattach-agent$n5$sink$nsconnect$tcp$sink$tcpsetfid_1#在TCP连接上建立FTP流setftp[newApplication/FTP]$ftpattach-agent$tcp$ftpsettype_FTP#建立一个UDP代理;#建立一个数据发送代理;#;#建立一个数据发送代理;#将数据发送代理绑定到发送节点;#建立一个数据接收代理;#将数据接收代理绑定到接收节点;#连接两个代理(也就决定了数据包的发送和接$udpsetfid_2#在UDP代理上建立CBR流setcbr[newApplication/Traffic/CBR]$cbrattach-agent$udp$cbrsettype_CBR$cbrsetpacket_size_1000$cbrsetrate_1mb$cbrsetrandom_false#启动和结束流代理$nsat0.5"$cbrstart"$nsat1.0"$ftpstart"$nsat9.0"$ftpstop"$nsat9.5"$cbrstop"$nsat9.5"$nsdetach-agent$n0$tcp;$nsdetach-agent$n5$sink#仿真结束时调用结束进程$nsat10.0"finish"#打印CBR数据包的大小和间隔puts"CBRpacket_size_=[$cbrsetpacket_size_]puts"CBRinterval=[$cbrsetinterval_]"#执行模拟$nsrun测试延时:BEGIN{#程序初始化,设定一变量以记录目前处理包的最大ID。highest_packet_id=0;drop=1.0;i=0;j=0;}{action=$1;time=$2;node_1=$3;node_2=$4;type=$5;flow_id=$8;node_1_address=$9;node_2_address=$10;seq_no=$11;packet_id=$12;#记录目前最大的packetIDif(packet_id>highest_packet_id)highest_packet_id=packet_id;if(flow_id=2&&type=="cbr"){#只搜集n2至n3线路上的UDP包的信息flag[packet_id]=1;************************************************************************#记录n2发往n1的cbr包的传送时间if(node_1==2&&node_2==1){if(start_time_n2ton1[packet_id]==0&&action=="-")start_time_n2ton1[packet_id]=time;#记录CBR(flow_id=2)的接收时间if(action=="r")end_time_n2ton1[packet_id]=time;if(action=="d")#把此包被丢掉的时间设为-1end_time_n2ton1[packet_id]=-1;}************************************************************************#记录n1发往n4的cbr包的传送时间if(node_1==1&&node_2==4)(if(start_time_n1ton4[packet_id]==0&&action=="-")start_time_n1ton4[packet_id]=time;#记录CBR(flow_id=2)的接收时间if(action=="r")end_time_n1ton4[packet_id]=time;if(action=="d")#把此包被丢掉的时间设为-1end_time_n1ton4[packet_id]=-1;}#***********************************************************************#记录n4发往n3的cbr包的传送时间if(node_1==4&&node_2==3)(if(start_time_n4ton3[packet_id]==0&&action=="-")start_time_n4ton3[packet_id]=time;#记录CBR(flow_id=2)的接收时间if(action=="r")end_time_n4ton3[packet_id]=time;if(action=="d")#把此包被丢掉的时间设为-1end_time_n4ton3[packet_id]=-1;}}}#***********************************************************************#***********************************************************************END{#当数据记录全部读取完后,开始计算有效包的端点到端点延迟时间for(packet_id=0;packet_id<=highest_packet_id;packet_id++){# if(flow_id==2&&type=="cbr"){if(flag[packet_id]==1){#如果该包是n2至n3线路的包,将其延时信息输出if(end_time_n2ton1[packet_id]!=-1&&end_time_n1ton4[packet_id]!=-1&&end_time_n4ton3[packet_id]!=-1){#如果该包在中途没有丢失start=start_time_n2ton1[packet_id];end=end_time_n4ton3[packet_id];packet_duration=end-start;if(start_time_n2ton1[packet_id]==0&&end_time_n4ton3[packet_id]==0)i++;printf("%f%f\n",start,packet_duration);}else(#如果包已丢失printf("%f%f\n",start_time_n2ton1[packet_id],drop);j++;}}}}测试流量:BEGIN{init=0;i=0;time1=0;time2=0;starttime=0;endtime=0;packetsize=0;}{action=$1;time=$2;node_1=$3;node_2=$4;src=$5;pktsize=$6;flow_id=$8;node_1_address=$9;node_2_address=$10;seq_no=$11;packet_id=$12;if(time1==0){time1=time;starttime=time;if(action=="r"&&((node_1==2&&node_2==1)ll(node_1==5&&node_2==4)ll(node_1==0&&node_2==1)))(packetsize=packetsize+pktsize;}if(time-time1>0.1)(throught[i]=(packetsize*8)/0.1;sampletime[i]=(time1+time)/2;time1=time;packetsize=0;i=i+1;}}END{endtime=time;#为了画图好看,把第一条记录的吞吐量设为零,以表示传输开始printf("%.2f\t%.2f\n",starttime,0);for(j=0;j<i;j++)printf("%.2f\t%.2f\n",sampletime[j],throught[j]);#为量画图好看,把最后一条记录的吞吐量也设为零,以表示传输结束printf("%.2f\t%.2f\n",endtime,0);}4.在cygwin中运行startwin,如下图:5.打开新建的有线网络配置文件exl.tcl6.运行结果如下图:rXNamConsolevl.15CZl回HieNAM-TheNetworkAnimatorv1.15Help—NAM-TheNetworkAnimatorWelcometoNam1.15DevelopedbyUCBandtheVINT,SAMAN,andConserprojectsatISI.Namcontainssourcecodewiththefollowingcopyrights:Copyright(c)1991-1994RegentsofUieUniversityofCalifornia.Copyright(c)1997-1999UniversityofSouthernCaliforniaCopyright(c)2000
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年春初中化学九年级下册(科粤版)上课课件 8.2 常见的酸和碱 第3课时 常见的碱 碱的化学性质
- 黑龙江省哈尔滨市第九中学校2024-2025学年高一上学期12月月考数学试题(含答案)
- 高一 人教版必修二 英语-第二单元《Lesson 4 Discovering Useful Structure》课件
- 高一 人教版 生物学必修1 第3章《细胞核的结构和功能》课件
- 品管圈PDCA案例-降低骨科患者尿管非计划拔管率成果汇报
- 高一 统编版必修 上册 语文 第三单元《登高》课件
- 湖北省黄冈市红安县2023-2024学年三年级上学期语文期末试卷
- 2025届湖北省部分重点中学高三上学期第一次联考英语试卷【含答案解析】
- 《普通话概述》课件
- 年产3000万安时镍氢动力电池项目可行性研究报告写作模板-拿地申报
- 走进神奇的长白山植物世界智慧树知到期末考试答案2024年
- 宣讲《铸牢中华民族共同体意识》全文课件
- 国开2024年《钢结构(本)》阶段性学习测验1-4答案
- 临床医学检验:抗微生物药物和敏感性试药试题及答案真题
- 2025届新高考英语复习:语法填空解题技巧
- 数学教学评一致的单元整体教学的设计与实施
- 入职申请表(完整版)
- 国家安全教育培训
- 外贸进出口基础知识培训课件
- 大学生职业生涯规划体育教育专业
- 发现之旅频道落地表
评论
0/150
提交评论