节点预约方式的水声通信网MAC协议设计
2012-06-23王季煜朱敏武岩波
王季煜,朱敏,武岩波
(1.中国科学院 声学研究所,北京100190;2.中国科学院 研究生院,北京100049)
随着海洋科学和海洋开发的发展,水声通信网络近年成为研究的前沿和热点[1].水声通信网通过声通信的方式将各种水下、水面节点连接组网,有效扩大海洋探测范围,提高海洋探测的时效性及稳定性.各国相继开展组网技术的研究,并将其应用于地震监测、战时侦查、设备监控等领域[2-3].
水声通信研究一般分为物理层、MAC层和网络层,其中MAC层主要研究信道的利用方式.在海洋这种带宽相对较窄、通信延时较大的特殊信道下,对MAC层的研究具有重要意义[4],可以很大程度地提高通信的时延、能耗、通信质量等性能.MAC层协议根据是否预先分配资源分为基于竞争方式(contention based)的MAC协议和基于调度方式(schedule based)的MAC协议[5].基于竞争的MAC协议又分为随机访问(random-access based)方式[6]和基于握手约定(handshaking based)的方式.目前使用最多、技术最完善的MAC协议CSMA/CA方式的协议,已经应用于美国SeaWeb计划[7].其中MACAW(medium access with collision avoidance for wireless)[8]作为其典型代表,由于其能耗低、冲突少等特点受到国内外技术研究者及工程项目商的青睐.MACAW通过RTS/CTS握手信号对信道进行预约,保证了通信过程中对信道的独占特性,减小包冲突概率.
但传统的MACAW由于其4次交互过程,一次成功的点到点通信时延除了包含数据包的发送时间,还包含4倍的传输时间.在多跳网络中,这种时延成倍增加.对于战时监测、设备监控中,移动节点接入等需要快速反应的网络应用,这样的时延必然带来很大的损失.所以研究一种可靠性相对较高、时延小的MAC协议具有实际意义.
本文在MACAW信道预约的基础上提出一种节点预约方式的MAC协议——PCTMACAW(preconnection transmission-based MACAW),令处于通信链路上的节点尽早地为本次通信做好准备,形成一种流水线式的传输方式,方便数据包在信道中无停滞的传输,节省了通信时间.与文献[9]相比,本协议提出了节点预约的思想,保留了MACAW的RTS/CTS握手过程,有效地利用握手信号对处于流水线下游的节点进行了预约:同时通过在握手信号中加入数据包的优先级,抑制了流水线外节点的影响;将分布式网络的通信转化为一维的情况,保证了在较大网络负载下该协议的有效性.
1 PCTMACAW协议机制
PCTMACAW是基于节点预约思想的MAC层协议,在MACAW的基础上,把每次对上一跳节点的CTS握手信号同时用作下一跳节点的RTS信号,把对下一跳节点的DATA数据信号同时当作对上一跳节点的ACK信号.这样,链路中的节点在完成RTS/CTS握手的同时,下一跳节点也收到了上游节点通信的CTS信号,进行相应的准备,完成一跳距离的预约;当链路完成数据通信时,下两跳节点也接到了CTS信号,进入准备状态,完成了两跳预约.协议机制如图1所示.下面详细考察“源-A-B-C-D-终”这条路径上的通信情况.
源节点产生数据包,并发往终节点,A~D为转发节点.首先,源节点发送RTS信号给节点A.RTS信号中包含“源-A-B-C-D-终”的整条路径及其距离信息,以及要发送的数据包的长度信息.
节点A接收到来自源节点的RTS之后,立即发送CTSA-S予以回应,该CTSA-S信号同样包含整条路径信息及数据包信息.源节点在接收到CTSA-S信号后,立即发送 DATA信号.同时节点 B也接收到该CTSA-S信号,经过解析发现自己是通信的下一跳节点,则等待一定的时间TB-A后发送回应信号CTSB-A,即将CTSA-S作为A与B通信的RTS信号.其中,保证A在接收完源节点的DATA后即可接收来自B的CTSB-A.其中DSA表示源节点S和A点间的距离;DAB表示节点A与节点B之间的距离;c是声速;LDATA表示DATA的长度;LCTS表示CTS的长度;R表示数据率;T△是时间余量,用以平衡声速变化导致的时间偏移.由于各节点的距离信息在网络路由建立过程中已经完成了全网同步,所以以上信息较易获得.
图1 节点预约方式MAC协议包交换示意Fig.1 Packet exchange in node reservation-based MAC protocol
节点A在发送完CTSA-S之后等待TW1时间:
如果在此期间内没有收到来自源节点的DATA信号,则认为与源节点通信失败,进入等待与源节点再次通信的状态;如果在此时间内收到来自源节点的DATA信号,则表明与源节点通信成功.在接收完DATA信号后,如果节点A接收到来自节点B的CTSB-A信号,则表明与节点B也建立了连接,则节点A立即发送DATA信号给节点B.同时这个DATA作为反馈信号被源节点接收到,完成与源节点的通信.如果节点 A只收到 DATA信号,而没有收到CTSB-A信号,则表明与节点B握手失败,节点A发送ACK信号给源节点,结束与源节点的通信.随后,再以节点A为源节点重新开始数据包DATA的串行发送.
源节点发送完DATA信号后,等待TW0时间:
如果在此时间内,收到来自节点A的DATA信号或ACK信号,则认为本次通信成功,否则认为通信失败.如果通信失败时,源节点按照传统的MACAW的方法进行回退重发,或选择不同的路由后进行重发.
节点C、D按照节点B的方式进行数据的接收及发送.数据一直发送到终节点,终节点反馈一个ACK信号,完成本次数据的通信.
在上述的MAC协议下,中间节点在收到上级节点的数据包DATA之前就已经启动了与下级节点的握手过程,并在整个过程完成之前就提前预约了再下级节点,使其提前做好准备,这样DATA就可以以一种流水线的方式进行发送.所以,如果传输顺利,则DATA从源节点发往目的节点所使用的总时间中,只包含一次额外的握手时间,其他握手时间均与数据包的发送时间复用,从而极大地缩短了通信时延.当流水线在任何中间节点处被阻塞时,都以该节点作为源节点,开始向目标节点以新一轮的流水线式发送.
2 PCTMACAW性能分析
2.1 点到点通信时延
数据包从源节点发往终节点的总时间等于源节点与第1个中间节点交换握手信号的时间,加上数据包DATA在整个流水线中的传输时间,再加上倒数第2级节点接到终节点的反馈信号ACK使用的时间.在DATA传输过程中,每次DATA转发,都要多等待一个CTS的发送时间.所以对于n跳的传播路径,点到点传输平均时间为
式中:Dsd表示源节点到终节点的距离.源节点和第1个中间节点的握手开销与传输中的时间余量的均值一起构成 TΔ.传统 MACAW 使用的时间为
2.2 能量问题
假设节点只包含发送、接收和睡眠[10]这3个能耗状态,其中睡眠状态由于其功率低,只能考虑发送和接收能耗[11].考察一般中间节点的情况,以节点B为例,数据包DATA从接收到转发过程中,发送时间为
接收时间为
而MACAW中,
所以新协议与传统MACAW相差Esave的能量.
另外由于重发次数的增加,也会导致能耗的增加.但在时延限定的网络中,总能耗与时延有关,可表达为Etotal=f(Ttotal),其中Ttotal为总时延.如移动节点与网关节点通信中,时延越长,就可能导致移动节点移动距离越大,从而导致通信失败概率越大.所以对能量的讨论应综合考虑各种因素.
2.3 误包率分析及其对时延的影响
由于节点在流水线发送中,以传给下级的DATA信号作为上级的ACK信号.而LDATA≫LACK,这就使一次点到点的MACAW通信成功概率大幅度减小,假设数据包每比特的误码率是个定值,则总失败概率变为原来的LDATA/LACK倍.从而使数据包的重发次数增加,进而导致时延的增加.
PCTMACAW与传统MACAW相比,在一次点到点通信中,不考虑时延问题,二者唯一的区别是,PCTMACAW以传给下一级节点的DATA信号代替ACK信号传输给上一级.假设发送与接收DATA及ACK信号使用同样的方式与功率,并且每比特误码率恒定,则本协议中接收的误码率为pthiserror=1-(1-pbit)LDATA,传统MACAW的接收误码率为pMACAWerror=1-(1-pbit)LACK.本协议中,中间节点一次通信成功,实际使用的通信时间为Tthisretran=tDATA+Tp,如果重发则使用的时间为
式中:tback是回退时间,这里使用二进制随机回退方式,所以每次回退均值都变为上次的2倍;Tlasttran是上一次发送使用的时间;Tp是传播时间;tRTS、tCTS和tDATA分别是RTS、CTS和DATA的发送时间.由于在重发过程中,ACK信号仍然使用给下级节点的DATA信号代替,所以式(1)中无此项.
在本例中,如果节点B给节点C发送DATA的过程失败,则节点B经过一定的回退时间后,重新开始发送RTS信号,建立连接.增加的时间为
由于tback是回退时间,使用二进制随机回退方式,每次回退均值都变为上次的2倍.所以在n次回退中,增加的总时间为
而传统的MACAW协议下,回退导致增加的时间为
3 PCTMACAW与MACAW性能比较
在一次点到点通信中,节点预约方式的延时为
式中:
传统MACAW方式延时为
式中:
根据式(2)~(5),可以得到在不同的误比特率条件下PCTMACAW与MACAW时延特性随数据包DATA长度变化的曲线,如图2所示.
由图2可以看到随着数据包长的增加,PCTMACAW和MACAW协议时延均增加,但PCTMACAW对包长的变化更加敏感,增加的速度更快.2种MAC方式下,时延均随着误比特率的增加而增加.但MACAW在误比特率增加的时候,时延增加不明显,且与数据包长度无关.而PCTMACAW在误比特率较低时时延性能要优于MACAW,且此时对包长变化不敏感;在误比特率较低时,随着包长的增加,时延迅速增加,在某个位置超过MACAW.所以PCTMACAW适用于低误比特率的环境中.根据文献[9]中结论,水声信道误比特率一般在[10-6,10-2]范围内,所以本例中的假设满足实际要求.
图2 不同误比特率下点到点时延随数据包长度的变化曲线Fig.2 Point-to-point latency in different packet lengths over various EBR
假定通信过程中发射功率Psend=50 W,接收功率Precv=5 W,并且认为数据在其他状态时的能耗可以忽略(在mW级别).则在一次点到点通信中,节点预约方式的能耗为
式中:
传统MACAW方式能耗为
式中:
根据式(6)~(9),可以得到在不同的误比特率条件下PCTMACAW与MACAW能耗随数据包DATA长度变化的曲线,如图3所示.
由图3可以看到,随着包长的增加,PCTMACAW及MACAW的时延均增加,并且PCTMACAW比MACAW增加得稍快.随着误比特率的增加,二者的时延均增加,且误比特率越高,PCTMACAW随着包长的增加变化得越快,而MACAW则保持恒定.但总体来说,PCTMACAW和MACAW性能相差不大.
图3 不同误比特率下节点能耗随数据包长度的变化曲线.Fig.3 Energy consumption in different packet lengths over various BER
4 PCTMACAW性能仿真验证
设定仿真拓扑结构如图4所示.
图4 单链路通信拓扑结构Fig.4 Topology of single communication route
设定6个节点,其中1~5节点为信号源节点,均产生数据包;节点6为目的节点,所有的数据均通过指示的链路传输给节点6;节点间的距离为(2 500,3 500)间的均匀分布值,单位m;节点1~5产生数据包的间隔取(300,700)间的均匀分布,单位是s;节点最大重发次数设定为5次;误比特率设定为10-5;数据包长度取2 000 bit.在PCTMACAW和MACAW协议下,分别统计数据包从产生到传送到目的节点6所用的平均时间以及6个节点使用的总能耗,并进行对比,得到结果如图5(a)所示.
由图5(a)可以看到,在数据包长度为2 000 bit时,每个节点使用PCTMACAW协议后,时延性能均优于传统的MACAW,而且越远离目标节点,性能增加越多;其中第1个节点处,使用PCTMACAW比MACAW时延减少了27.7%.此时,测得MACAW协议每比特能耗为 1.3 J,而 PCTMACAW 协议为1.4 J,差别并不明显,不影响正常使用.所以PCTMACAW协议在常规应用中,在能耗相对稳定的同时,较大程度地减小了时延,具有良好的应用价值.
图5(b)显示当数据包长度为200 bit时,PCTMACAW与MACAW相比,时延性能会获得较大的改善,其中第1个节点处,使用PCTMACAW比MACAW时延压缩了54.8%.当数据包长度更短时,效果将更明显.可见,PCTMACAW在预警、移动节点传输命令等数据包长度较短的应用中具有较大的使用价值.
图5 MACAW与PCTMACAW协议各节点时延对比Fig.5 Latency comparison of MACAW and PCTMACAW
5 结束语
在传统信道预约思想的基础上,提出了节点预约的方法.该方法通过多跳转发的CTS握手信号预约处于通信链路上的下级节点,并通过复用上级节点的CTS及DATA信号,形成一种流水线式的传输协议.经过理论分析,这种方法在误比特率相对较低、包长较短的条件下与传统的MACAW相比,在能耗变化不明显的前提下,具有延时小的优点.适用于移动节点通信、灾难预警、战时侦测等水声通信领域.仿真中显示的是一维情况下PCTMACAW的性能,在分布式网络拓扑结构中,处于流水线旁边的其他节点会影响PCTMACAW的性能.但通过赋予在流水线上传输的数据包以较高的优先级(此优先级信息包含在握手信号中),可以有效地抑制其他节点的发送,使其变成一维传输的情况.另外,如果网络协议用适当ARQ优化后,PCTMACAW的优势将更加明显.但由于本文研究的重点是快速反应网络中时延问题,没有考虑此种网络与普通观测性网络同时工作时网络整体能耗、吞吐量、平均时延等性能,所以下一步研究工作主要集中于寻找不同时延要求的节点共同工作时的最佳MAC协议,并兼顾网络节点的公平性,如“最大-最小公平性”等问题.
[1]应可珍,陈庆章.关于水基网的设想:概念、相关技术和研究热点[J].微机发展,2003,13:121-122.YING Kezhen,CHEN Qingzhang.Supposition of water based network:concept,correlative technology,and study hotspots[J]. Microcomputer Development,2003,13:121-122.
[2]CHAO C M,WANG Y E.A multiple rendezvous multichannel MAC protocol for underwater sensor networks[C]//IEEE Wireless Communications and Networking Conference(WCNC).Sydney,Australia,2010:1-6.
[3]AZAR Z,MANZURI M T.A latency-tolerant MAC protocol for underwater acoustic sensor networks[C]//International Conference on Control,Automation and Systems.Gyeonggido,Korea,2010:849-854.
[4]XIE Peng,CUI Junhong.R-MAC:an energy-efficient MAC protocol for underwater sensor networks[C]//International Conference on Wireless Algorithms,Systems and Applications.Chicago,USA,2007:187-198.
[5]NGUYEN H T,SHIN S Y,PARK S H.State-of-the-art in MAC protocols for underwater acoustics sensor networks[J].LNCS,2007,4809:482-493.
[6]ABRAMSON N.The ALOHA system:another alternative for computer communications[C]//AFIPS Conference Proceedings.New York,USA,1970:281-285.
[7]RICE J.Seaweb acoustic communication and navigation networks[C]//Proceedings of the International Conference on Underwater Acoustic Measurements:Technologies&Results.Heraklion,Greece,2005.
[8]FOO K Y,ATKINS P R,ATKINS P R,et al.A routing and channel access approach for an Adhoc underwater acoustic network[C]//MTTS/IEEE TECHNO-OCEAN '04.Piscataway,USA,2004:789-795.
[9]TAN H P,SEAN W K G,DOYLE L.A multi-hop ARQ protocol for underwater acoustic networks[C]//Proceedings of OCEANS 2007.Aberdeen,Scotland,2007:1-6.
[10]HARRIS A F,STOJANOVIC M,ZORZI M.Idle-time energy savings through wake-up modes in underwater acoustic networks[J].Ad Hoc Networks,2009,7(4):770-777.
[11]MIN K P,RODOPLU V.UWAN-MAC:an energy-efficient MAC protocol for underwater acoustic wireless sensor networks[J].IEEE Journal of Oceanic Engineering,2007,32(3):710-720.