




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、无线网络技术实验四报告单班 级姓 名学 号实验日期评 分教师签名 实验名称:无线传感器网络的s-mac协议仿真实验目的:了解无线传感器网络的s-mac协议及提出一种消息节点睡眠机制和退避策略,然后通 过在ns2平台上的仿真,可发现对能量消耗和网络延迟有部分改善。实验内容:1无线传感器网络概述无线传感器网络(witeless sensor networks, wsn)是集信息采集、倍息传输、信息处理 于一休的综合智能信息系统。它综合了微机电系统(microelec一 tron mechanical system, ms)、传感器技术、嵌入式技术、现代网络及无线通信技术、分布式信息处理技术等,能
2、够通过各类集成化的微型传感器协作地实时监控、感知和釆集各种环境或监控对象的信息。 在军事领域、工业领域、农业领域、环境检测、医疗监护、智能家具系统等许多领域都有十 分广阔的发展前景。2.无线传感器网络结构无线传感器网络包括传感器节点(sensor node) 汇聚节点(sink node)和管理节点 (manager node)。无线传感器网络的协议栈采用5层的分层结构,分别为:物理层、数据链路层、网络层、 传输层和应用层。在网络协议栈中,mac子层位于数据链路层,直接与物理层接口,负责 控制和接入物理介质。提供无线传感器网络屮节点到节点的连接方式,确保传感器节点间通 信资源分配的公平性和有效
3、性。3基于竞争的mac协议分析s-mac(sensormac)1议是针对deee802.11中节点处于侦听状态,消耗大最能最 的问题,提出的周期性的休眠/活动调度机制。s-macrh-个开始的同步时间段开始,交换 sync消息形成虚拟簇。相同虚拟簇卜的节点可以传输数据。节点只有在活动阶段才发送消 息,如图1.1smac采用数据传递机制,通过这种周期性的修眠/活动工作机制,节点降低了 闲置侦听,降低了能耗。receiverfor syncfor rtsfor ctslisten periodtx sync ts rts got ctsrcccivc/siccpperiodsendercscsse
4、nd data图1.1smac数据传递机制采用以上机制,smac协议冇以下儿点好处:采用周期性睡眠/侦听占空比,控制 节点进入睡眠状态,降低了节点能耗;rts / cts机制降低通信范围节点间的碰撞概率: (3) nav避免串音现象,降低了能耗。smac协议相比ieee802.il提高了能量的效率,但是也存在一些不足,节点采川周期性 的侦听和睡眠调度机制,数据在发送时有延迟;邻居节点频繁交换sync信息会导致节点消 耗更多的能虽;当网络负载较低时,过高的占空比会导致空闲侦听会造成能虽浪费,当负载 较高时,又会造成网络延迟;节点为了节省能量进入睡眠状态,增人了睡眠延时。4.ns2网络仿真仿真场景
5、如图1.2所示,在l()()()m*l()0()m的范|韦|内,采用随机分布的方式布置了一 个49个固定节点和一个sink节点构成的较人规模的网络拓扑,在网络模型小,假设所有节 点都能侦听到整个网络的通信情况,即没有考虑隐藏节点问题。图1.2节点随机分布生成网络模型的部分tcl代码如下:for set i 0 $i < $opt(nn) incr i set node_($i) $ns_ node$node_($i) random-motion 0$god_ new_node $node_($i)set ragent_($i) $node_($i) get-ragentset mac_(
6、$i) $node_($i) get-mac oj 4.1参数设置设置ns2中的网络参数,为了对设定的网络环境进行仿真,可以通过设置不同的参数 来实现。对于网络中不同的应用,町以设置移动节点的属性,通过设置energymodel来获取 节点的剩余能量值;设置cbr流量发生器产生网络数据流,并将其绑定到节点上,可以设 scbr的值,使其按照一个确定的速率产主数据,也可以设置不同的节点不同的数据发送 速率,不同速率可以通过对节点的参数interval进行设置实现。对网络规模的人小可以根据 用户的需要通过对网络中节点的数冃,网络场景的长宽尺寸等设置;配置节点能量模型,设 査节点接收发送数据包和节点在
7、闲置侦听状态下所消耗的能量值。配置移动节点的路径参数:为了対仿真结果进行分析,需要将仿真好的结果记录到trace 文件屮,打开节点的trace功能,设iff其小的参数:agenttrace示应用层的trace,记录应川 层数据包接受情况;routertrace表示路由的trace,记录路由层数据包传递悄况;mactrace表 示mac层的trace,在trace文件中用mac表示。设置完以上参数后,每次仿真就可以得到以血为后缀的trace文件,trace文件中记录了仿 真期间各层发生的事件,各个节点收发数据,能量消耗等情况。参数设置程序如下:-energymodel $opt(energymo
8、del) #能量模型idlepower o.35#待机功率rxpower 0.395 #接受功率txpower 0.66 #传输功率-initialenergy $opt(initialenergy)#总的能虽数set udp_(0) new agent/udp#新建一个udp agent赋值给udp_(0)$ns_ attach-agent $node_(0) $udp_(0)#绑定udp_(0)在node_(0)_tset null_(0) new agent/null#新建一个udp agent并赋值给 null_(0)$ns_ attach-agent $node_(expr $opt
9、(nn)-l j) $null_(0)$ns_ connect $udp_(0) $null_(0)set cbr_(0) new application/traffic/cbr$cbr_(0) set packetsize_ 100$cbr_(0) set interval. 1.0$cbr_(0) set random. 0$cbr_(0) attach-agent $udp_(0)4. 2协议的实现由于改进的协议ns-802.ll-mts.ee和ns-802.11-mts.h是在慕于竞争的802.11协议的基础 上继承而来,因此,修改ns-2.29/mac b mac-802_l 1 .
10、h和mac.h头文件。在在macsute枚举 类型中添加mts帧结构。由于ns2采用的是分裂对象模型,既可以用otcl对象也可以用c+程序进行修改,需 要修改协议的c+代码:mac802_l l:recv_hand() assert(pktrx_);assert(rx_state_=mac_recv|rx_state_=mac_coll);if(tx_activc_) packet: free(pktrx_);goto done; if( dh->dh_scontrol = sta_seqno_;) packet:free(pktrx_);sct_nav(uscc(phymib_.gct
11、eifs();goto done;)if(dst != (u_int32_t)index_) set_nav(mh->dh_duration);修改send函数,首先检杏是否有mts数据包,如果收到mts数据包,说明节点有数 据耍发送,数据发送成功。流程图如图1.3 发送完成图1.3数据发送检测流程图 函数程序如下:mac802_l l:send(packet *p, handler *h)double rtime;struct hdr_mac802_ll* dh = hdr_mac802_ll(p);energymodel *em = netif_->node()->ene
12、rgy_model();讦(em && em->sleep() em->set_node_sleep(0); em->set_node_state(energy model: inroute);callback_ = h;if(pkttx_ = 0)return -1;else scnddata(p);check_pktmts();timeout = txtime(pkttx_);settxstate(mac_send);if(mhwakeup_.status()=smac_send)startsend();else fprintf(stderr, “erro
13、rs');cxit(l);)对packet.h进行修改,在ns-allinone-2.29/ ns-2.29/ common文件夹卜,添加定义访问协议报头的指针:#dcfinc hdr_namac(p) (hdr_namac *)hdr_mac:acccss(p)增加na-mac包类型(协议标志),所有的包类型都是pt_开头,如pt_tcp,pt_udp 等,在枚举类型enum packet_t中增加:pt_namac在类class p_info的构造函数添加标,忐,这样就可以通过协议标识寻找协议对应的字符 串:name_pt_namac=nnamach修改缺省类型,在*/ns-all
14、inone-2.29/ns-2.29/tcl/lib目录卜修改ns-lib.tcl文件,添加路由协议:simroute set ragent $sclf crcatc-simroutc-agcnt $nodc讦 $routingagent_ = "simroute" sragent port-dmux $node demuxjsnode instvar 11_sragent add-11 $ll_(0)sragent use-11 0在ns-mobilenode.tcl中添加ifq队列和trace对象:$mac ifq $ifq$mac trace-target $rcvt
15、讦 $imepflag != set rcvt ssclf mobility-trace rccv "mac" else set rcvt emu-trace reev "mac" $selfj$mac trace-target $rcvt绑定c卄和otcl。otcl对象屮调用对应的c+对象方法,ns是通过command () 函数实现的。将c+中新用到的方法添加到command ()方法中,使得otcl能够正常调 用,修改如下:else if(strcmp(argv 1 , "trace-target")=o) tracetarge
16、t_ = (nsobject*)tclobject:lookup(argv2);if(tracetarget_=o)return tcl_error;return tcl_ok; else if(strcmp(argvl, “ifq”)= 0) ifq = (priqueue*)tclobject:look up(argv2);if(ifq=o)return tcl_error;return tcl_ok; else if(strcmp(argvl, "level'1) = 0) level_ = atoi(argv2);mhwakeup_.sched(level_*recv
17、time+recvtime);return tcl_ok;-修改ns2的编译文件,以便对经过上述修改后的ns2重新进行编译,修改makefile文 件:mac/channel.o mac/mac.o mac/ll.o mac/mac-802_l 1-mts.o 建立模型z后,运行ns-2.29/mac/t的tel文件,1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1(zrihailli1 1 1 1 1 1 iie ilu1ii11ji 102):nj *丄rootl»l-l»ptop: /hortie/l»l/- 口 nam: out.namnarn console vl. 11io or夕朗臼口 *okb/s <okb/5£me yiews analysisout .hmm图1.4数据发送检测图由仿真结果可知,在不增大网络延迟的情况下,当网络负载较大时,在smac协 议中,数据包发送频率
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家禽饲养业区域品牌塑造与市场推广策略研究考核试卷
- 纺织品的智能化生产和智能化应用考核试卷
- 纤维板生产中的新材料应用研究考核试卷
- 窗帘行业客户关系管理考核试卷
- 公路工程监理与质量控制考核试卷
- 春季常见传染病预防知识教育课件
- 成人高等教育心理学实验设计与分析考核试卷
- 小麦加工过程中的节能技术与环保措施考核试卷
- 绿色生活与节能引领考核试卷
- 水产养殖环境保护法律实务考核试卷
- 2024年上海市公安机关文职辅警、公安机关勤务辅警、检察系统辅助文员招聘笔试参考题库含答案解析
- 2024年四川省南充市中考生物试卷真题(含官方答案)
- 劳动教育智慧树知到期末考试答案章节答案2024年华中师范大学
- 成人高尿酸血症与痛风食养指南(2024年版)
- 2024年首都机场集团招聘笔试参考题库附带答案详解
- 2023年山东省专升本考试高等数学Ⅲ试题和答案
- 抗血栓药物临床应用与案例分析课件
- 吉林省地方教材家乡小学二年级下册家乡教案
- 儿童长期卧床的护理
- 投标书细节美化教程
- 《小儿支气管肺炎》课件
评论
0/150
提交评论