蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > DOC文档下载
 

ad_hoc_ns2仿真

  • 资源ID:52692086       资源大小:73.00KB        全文页数:10页
  • 资源格式: DOC        下载权限:游客/注册会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

ad_hoc_ns2仿真

基于网络仿真器NS2的Ad hoc网络路 由协议仿真 作者马崇霄、吴长奇 引言NS2Network Simulation Version 2是一种功能强大的网络模拟仿真 器,它是用C和OTCL两种语言完成的。C语言编写协议执行模块,OTCL语 言编写模拟任务。NS2 主要针对有线局域网、无线局域网、Ad Hoc网络、卫星通信网、路由选择协议、 组播路由协议等进行网络模拟仿真。尽管一些文献[1,2]基于NS已经做过Ad Hoc网络中的几种单径路由协 议的性能仿真分析,但很少文献给出仿真各个步骤中的详细分析程序,本文以 AODV(Ad Hoc On-demand Distance Vector)路由协议为例,详细介绍了整个 仿真过程的步骤和所使用的程序,并绘出图表。 1、AODV路由协议简介AODV综合使用了DSDV(Destination-Sequenced Distance-Vector) 中目标序列号和DSR(Dynamic Source Routing)中按需路由发现技术,提供 了一种按需单径距离矢量无环路由。该协议主要分为路由发现和路由维护两部 分。路由发现当源节点需要与其它节点通信但没有到该目的节点的路由 时,它就广播路由请求RREQ,当其它节点收到这个RREQ时,首先判断是否收 到过具有相 同源节点和目的节点的RREQ,如果是重复收到就丢弃,如果没有 就利用RREQ中的信息建立反向路由。如果中间节点含有到目的节点的路由,就 发送路由应答 RREP给源节点,否则广播该RREQ。当RREQ的目的节点收到 RREQ时,同样建立反向路由,然后向RREQ的源节点发送RREP。路由维护节点通过MAC层周期性广播hello消息来判断链路状态, 如果该节点连续3次未收到Hello响应消息,就认为链路已经断开,并删除包 含该链 路的路由信息,发起路由错误RERR,通知相邻结点和相应的上游结点 删除因链路断开而导致目的结点不可达的路由信息。 2、AODV路由协议的仿真过程 2.1 NS2仿真一般步骤 NS2仿真可以分为构件的扩展阶段,仿真阶段,对仿真结果分析阶段。 一般分为以下几个步骤1编写所需构件 即新构件的添加或移植。2测试测试自己编写的构件是否通过。当NS库中的构件满足仿真 需要(例如我们对NS库已有的AODV、DSDV、DSR等协议进行仿真),则第1步 和第2步可以省略,仿真过程直接从第3步开始。3编写Otcl脚本文件配置仿真网络的拓扑结构,确定链路基本特 性,移动节点所使用的路由协议,节点的数量等,并进行端设备的协议绑定, 设置仿真使 用的场景和传输负载(TCP流或CBR流),设置仿真的开始和结束 时间等。并在脚本文件里设置trace对象, trace文件是记录仿真过程中发生 所有事件的文件。也可以同时设置nam对象,nam是用于演示网络运行动画的 工具。4用NS命令执行脚本文件 执行后会在与脚本文件同一目录下生成 *.tr的文件,记录仿真结果。如果在脚本文件中设置了nam对象,则会在同一 目录下生成*.nam的文件。5分析trace文件由于trace文件比较大,我们需要编写gawk程序 进行仿真后期的数据处理计算分组投递率、路由负载、吞吐量等,再用 gnuplot或者matlab等绘图工具将处理后获得的数据绘制成图形,以便更直观 的分析比较协议的性能。 2.2 仿真出trace文件的过程由于AODV是NS2组件库里的自带协议,故仿真过程直接从编写脚本文 件开始。笔者使用Red Hat LINUX9.0操作系统下的NS2.26版本进行仿真。仿 真过程如下1 利用NS工具cbrgen.tcl生成业务场景文件,在ns-2.26/indep- utils/目录下输入命令ns cbrgen.tcl –type cbr –nn 50 –seed 1 –mc 10 –rate 2.0 cbr1该命令创建了一个具有50个移动节点、10对通信连接、每秒钟发送 两个分组的以CBR为业务源的通信场景文件cbr1。2 利用NS工具setdest生成移动场景文件,在ns-2.26/indep- utild/cum-scen-gen/setdest目录下输入命令./setdest –n 50 –p 0 –s 20 –t 300 -x 1000 –y 300 scence1 该命令创建一个具有50个节点、节点在每个地点停留0秒(即不停留) 、最大移动速度20m/s,仿真时间300秒,长1000米,宽300米的移动场景文 件scence1。 3编写脚本文件,下面给出仿真过程中使用的aodv.tcl #Define options set valchan Channel/wireless ; set valprop Propagation/TwoRayGrond; set valnetif Phy/WirelessPhy ; set valmac Mac/802_11 ; set valifq Queue/DropTail/PriQueue ; set valll LL ; set valant Antenna/OmniAntenna ; set valifqlen 50 ; set valnn 50 ; set optcp “cbr1” ; set optsc “scence1” ; Main Program set ns_ [new Simulator] set tracefd [open aodv.tr w] ns_ trace-all tracefd ns_ use-newtrace set namtracefd [open aodv.nam w] ns_ namtrace-all-wireless namtracefd 1000 300 set topo [new Topography] topo load_flatgrid 1000 300 set god_ [new God] create-god valnn ns_ node-config –adhocRouting valrp \ -llType valll \ -macType valmac \ -ifqType valifq \ -ifqLen valifqlen \ -antType valant \ -propType valprop \ -phyType valnetif \ -channelType valchan \ -topoInstance topo \

注意事项

本文(ad_hoc_ns2仿真)为本站会员(文矿工)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开