无线传感器网络智能建筑节能系统数据传输协议设计与实现
2.2.2 优先级ACK机制
IEEE 802.15.4标准中规定,发送信标帧或确认帧时,应将MAC帧头确认请求子域设置为0,不要求目标接收设备确认,发送任何广播帧确认请求子域都设置为0;MAC数据帧或MAC命令帧发送时,帧控制域确认请求子域应设置为1,接收设备将对发送帧进行确认,若目标接收设备正确接收到该帧将发送一个确认帧,该确认帧的数据顺序编号与所确认的MAC数据帧或MAC命令帧数据顺序编号相同。
若每一个MAC数据帧都要求接收方回复ACK帧,ACK帧在网络中的传输量将不可忽略。同时,若接收方正确接收MAC数据帧后回复的ACK帧在传输过程中丢失,导致MAC数据帧发送方认为上一次数据帧传输失败而重发数据帧,这类现象将引发不必要的数据重传,造成能量浪费。因此需要对IEEE 802.15.4MAC协议ACK机制进行改进。
当网络稳健运行,监测环境中无特殊事件发生时,普通数据周期性由无线传感器网络向外界报告,这部分信息通常具有一定的冗余性。例如,无线传感器网络在一个小时内甚至更长的一段时间内采集建筑物室内的温度数据、光强数据,小量普通数据包的丢失不会对整个建筑节能系统的总体性能产生很大的影响。同时,在无人为等干扰情况下,无线链路状态良好,普通数据传输成功率很高,并不需要每一跳都有ACK确认回复。因此,对数据包的确认采用以下策略:
(1)LP低优先级数据包:不进行ACK确认;
(2)MP中优先级数据包:逐跳的ACK确认;
(3)HP高优先级数据包:逐跳的ACK确认+端到端的ACK确认。
对于低优先级数据包,不进行ACK确认,直接发送或者转发;对于中优先级数据包,进行逐跳的ACK确认,这也是IEEE 802.15.4标准的原先处理方式;对于高优先级数据包,源端发送高优先级数据后并不立即清除,而是将其放至特定缓存区,直到收到来自目的端的ACK确认信息方可清空缓存区,如果在一定时间内没有收到来自目的端的确认信息,则启动重传机制。
3 实际测试环境的搭建与测试
本文利用北京交通大学下一代互联网互联设备国家工程实验室自主开发和研制的微型传感路由器MSRLab6进行验证,MSRLab6节点采用ATmega128作为处理器、射频芯片采用CC2420芯片,能量供应模块使用直流9 V电压供电或直接采用3.3 V干电池供电。验证系统如图6所示,主要是在机械楼7层实际场景部署。其中红色圆形节点(如7011等)为普通节点,红色三角形节点(如1951等)为中继节点,五角星节点(8919)为网关节点。各普通节点在收集每个房间的温湿度、光强等传感信息,通过中继节点以多跳的方式将数据发送至网关节点,网关节点将协议进行转换把数据发送给服务器并保存在本地数据库。在服务器端,用户可以在用户管理端的图形界面上发送命令,通过网关节点发送给普通节点,可以实现改变普通节点的配置,获取节点信息等功能。本文引用地址:https://www.eepw.com.cn/article/161132.htm
测试所发送的数据包如图7所示,前4位为适配头,转换为二进制为前16位,其中第12及13位表示数据包的优先级。“11”代表HP数据,“01”代表MP数据,“00”代表LP数据,对应到图中就分别为“18”,“08”,“00”。
图8是丢包率测试结果,由图可以看出,由于采用了端到端的确认机制可以保证高优先级数据的可靠传输;同时使得中优先级和低优先级数据的丢包率在5跳以内都低于传统的数据传输协议;在6跳以后,由于实际应用环境的复杂性(电磁以及人的干扰等),网络性能不太稳定,数据传输的丢包率增加明显。因此本文提出的智能建筑数据传输协议满足实际应用中不同的应用需求。
图9是时延测试结果,由图可以看出,在数据传输少于3跳的情况下,可靠传输机制对数据时延影响并不大,但在数据传输大于3跳后,可靠传输协议对时延的影响增大,特别是对HP数据,由于优先级高,省去了列队等待的时间,发送时延得到了有效减少。
4 结语
本文首先对无线传感器网络的智能建筑节能系统进行了系统介绍,讨论了研究无线传感器网络数据传输技术的必要性,并结合智能建筑节能的特点和实际需求,设计和实现了一个基于优先级队列及优先级ACK的数据传输方案,对重要信息提供端到端的保证,实现了控制信息的及时、可靠传输。最后,本文通过实际测试平台对提出的协议进行了验证,并证明与传统的传输协议相比,在本传输协议影响下,对于重要的数据,丢包率减少,发送时延减少,各种优先级的数据均得到了更加可靠的传输。
评论