王希阳,姜胜明,杨恺健
(上海海事大学 信息工程学院, 上海 201306)
基于接收端信号的水声网络MAC协议*
王希阳,姜胜明,杨恺健
(上海海事大学 信息工程学院, 上海 201306)
水声网络的信道具有数据速率低以及传播时延长的特点,如果采用握手机制减少数据冲突,将降低信道利用率和网络的吞吐量。提出了一种基于接收节点发送短信号告知邻居节点其接收状态的水声网络MAC协议,即当接收节点接收数据时,向邻居节点发送短信号通知其当前时刻不要发送数据,解决了隐藏终端和暴露终端的问题,并提高了网络吞吐量;除此之外,使用短信号还能够降低能量损耗。仿真结果表明该协议能够实现上述目的。
信号;接收端;水声网络;MAC协议
对于共享媒介网络,节点需要媒体接入控制协议控制接入共享信道。共享媒介网络中的隐藏终端和暴露终端问题导致网络吞吐量大大降低。陆地上的无线网络主要有两种方法缓解隐藏终端,一种是采用握手机制,如MACA[1]协议;另一种是通过发送忙信号机制,基于这种机制的MAC协议有BTMA[2]、RI-BTMA[3]和DBTMA[4]。
目前已有许多MAC协议可以解决陆地上无线网络的数据冲突,但是由于陆地上的MAC协议设计是以无线电波作为传播媒介,传播时延非常小,几乎可以忽略,并且可用带宽范围很大,然而水下无线通信传播时延长、可用带宽非常窄,导致这些适用于陆地上的MAC协议不能直接应用到水下无线网络。水下通信主要是通过声波作为通信媒介,而声波在水中的传播速度大约只有1 500 m/s,这导致了非常长的传播时延。水声信道的可用带宽非常窄,只有几到几十千赫兹[5],如果再把信道划分出一部分作为忙信号信道,就会降低信道利用率,所以利用忙信号信道发送忙信号解决数据冲突不适用于水声信道。又由于水声传播时延长,对于基于握手机制的MAC协议也不适用于水下MAC协议。
如果利用声波信号解决数据冲突的问题,就会避免基于握手机制带来的长时延,同时使用非常短的声波信号作为控制信号,提高了信道的利用率。本文基于这种思想提出了一种新颖的水声网络MAC协议,称为“基于接收端信号”的MAC协议(RSSP)。该协议的实现将在本文第2节阐述。
当前,对于水下MAC协议的研究并没有陆地上MAC协议研究成熟,仍然处于研究的初期阶段。由于水声信道的一些独特的特点,使得水下MAC协议设计面临巨大挑战。
顺序式CSMA[6]协议是一种无冲突的水声网络MAC协议。该协议结合了轮询调度算法和CSMA协议。在该协议中,每个节点都以固定的顺序发送数据,不需要等待一个最大的传播时延。该协议有效减少了数据包的冲突。但是每个节点需要一直侦听信道和收到的所有的数据帧,这将增加能量损耗,并且只有轮询到一个节点时,该节点才能发送数据。
T-Lohi[7]是一种在发送节点基于声调竞争信道的水声网络MAC协议。在该协议中,发送一个数据包的时间被分成两个部分,信道预定时间(RP)和数据发送时间。信道预定时间又被分成了许多竞争环(CR)。当发送节点想要发送数据签时,在CR期间先发送一个声调给邻居节点,如果没有收到来自邻居的声调,则该节点成功预定到信道,然后发送数据包。T-Lohi协议利用时空不确定性和高时延特性,检测冲突和竞争信道的节点数,来提高信道利用率,并降低能量损耗。但是该协议需要在竞争环内处于空闲状态监听信道,并且对于水声信道的长时延特点,一个竞争环的时间太长。
在RIPT[8]协议中,提出了一种在接收节点使用握手机制的MAC协议。该协议根据水声信道的长传播时延特点,在接收节点调度多个邻居节点发送数据包的次序。这样能够获得高的吞吐量,同时也减缓了隐藏终端的问题。这个协议也有一些不足之处,采用接收节点调度多个发送节点发送数据顺序的方法,需要非常复杂的流量预测算法,同时对于水下信道长的传播时延,四路握手机制相对降低了信道的利用率。
图1 RSSP协议流程图
2.1协议概述
本文提出的RSSP协议是一种基于竞争式的水下MAC协议。该协议是在接收节点通过发送一个不携带任何信息的短小信号,即通知信号(Notification Signal, NS), 通知邻居节点当前时刻不要发送数据。RSSP协议不需要像握手机制那样在发送数据前,通过发送RTS/CTS控制包预定信道,而是在接收节点接收数据时,向邻居节点发送NS通知邻居节点当前正在接收数据,当邻居节点接收到NS后不会向其他节点发送数据。从而解决了隐藏终端和暴露终端的问题,并提高了信道利用率。该协议的一个主要特点是通过信号解决隐藏终端和暴露终端的问题,发送信号而不是发送控制包(如RTS/CTS),这样不仅提高了频带利用率,同时还降低了能量损耗,减小数据间的干扰。另外一个特点是由接收节点决定邻居节点是否可以发送数据,更有效地减少了数据的冲突。
2.2协议工作过程
当接收节点接收数据时就向邻居节点发送NS,表示接收节点当前处于接收数据状态。若邻居节点侦听到NS,则表示该邻居节点的周围存在处于接收数据的节点;若没有侦听到NS,则表示该邻居节点的周围没有存在处于接收数据状态的节点,如果该节点要发送数据,那么可以发送MAC层队列的数据。从而解决了隐藏终端和暴露终端的问题。RSSP协议流程图如图1所示,描述了节点发送数据包的过程。发送节点1竞争到信道,向接收节点1发送数据帧,接收节点1接收到来自发送节点1的数据帧后,如果发送节点1下一个数据帧的目的地址仍然是接收节点1,则接收节点1向邻居节点(发送节点2、3)发送一个NS,发送节点2、3侦听到NS后,不向其他节点发送数据。发送节点1等待一段时间Td后(其中Td=Tns+TSIFS,Tns为发送NS的时延,TSIFS为从接收状态转为发送状态所需要的时间),向接收节点1发送下一个数据帧,当发送节点1的下一个数据帧的目的地址不是接收节点1时,接收节点1向发送节点1返回ACK确认。
2.2.1数据帧的帧头
在MAC层输出队列里,需要将数据帧进行编号,如图2所示。队列里的数据帧根据目的地址进行编序,如果有几个连续的数据帧要发送到同一目的地址,则对这几个连续数据帧由大到小编号,并在数据帧的帧头里标识该数据帧在连续队列中的编号。接收节点根据数据帧头中的编号决定向邻居节点发送NS,还是向发送节点返回ACK确认包。如果数据帧头中的编号不为1,则接收节点向邻居节点发送一个NS,否则接收节点向发送节点返回ACK确认包。
图2 MAC层数据帧编号
2.2.2接收节点发送通知信号
当一个节点接收到数据时,首先根据数据包的包头信息中数据帧的编号,决定向邻居节点发送一个NS还是一个ACK确认包。如果编号为1,接收节点向发送节点发送一个ACK确认包,然后该节点处于空闲状态;如果编号不为1,则表明发送节点的下一个数据包也是发送给当前的接收节点,此时接收节点向其邻居节点发送一个NS,通知其邻居节点,该节点正在接收数据。邻居节点接收到NS后,知道该节点正处于数据接收状态,此时如果邻居节点有数据要发送,则退避等待该节点接收完数据。这样就实现了接收节点调度发送节点的数据发送。
2.2.3数据的发送
当一个节点要发送数据时,该节点首先侦听是否有来自邻居节点的NS,如果收到来自邻居节点的NS,则该节点等待一段时间 (Wait Period, WP),等待时间WP=τmax+Tns+TSIFS,其中τmax为到邻居的最大传播时延。如果在WP后没有收到NS,则该节点发送数据,否则继续上述过程。如果在要发送数据时没有收到来自邻居节点的NS,该节点需要等待一个WP时间,WP时间后如果没有收到来自邻居节点的NS,则该节点开始发送数据。如果收到邻居的NS,继续重复上述过程。当发送节点发送数据包的编号为1时,发送完该数据包后,等待目的节点返回ACK确认包;当数据包的编号不为1时,发送节点等待Td后发送下一个数据帧,直到当前发送的数据帧的编号为1后,发送节点等待目的节点返回ACK确认包。
3.1仿真场景及参数
本文将对RSSP在静态网络拓扑结构中的网络吞吐量、掉包率和时延3个方面进行分析,并与现有的基于CSMA的MAC协议作对比。在静态网络拓扑中,任意节点随机分布在1 000 m×1 000 m的范围内,节点的发包率服从λ的泊松分布,水声传播速度为1 500 m/s,数据传输速率为4 000 b/s,数据包的长度为256 B。本文的仿真是对MAC协议的性能进行分析,所以所有数据包的丢失都是由于MAC协议性能所导致。本文使用3个指标评价MAC协议的性能。
(1)网络吞吐量:在单位时间内所收到的数据包的字节数。
(2)端到端延迟:所有数据包产生的时间与目的节点接收成功的时间差的平均值。
(3)掉包率:接收到数据包个数与发送数据包个数的比值。
3.2仿真结果
如图3所示,当负载很小时,随着负载的增加两种协议吞吐量相差不大。由于当负载很小时,数据包的冲突很小,所以此时两种协议的性能差不多。但是当负载大于0.01时,RSSP协议的吞吐量明显比CSMA的高。这是因为当负载不断增大时, CSMA协议因隐藏终端而导致的数据包的冲突数量不断增加。RSSP协议利用NS极大程度地减缓了隐藏终端的问题,使得吞吐量有了很大的提高。
图3 RSSP与CSMA的吞吐量的比较
图4所示为RSSP协议与CSMA协议的掉包率的比较。仿真结果中,随着负载的增加,RSSP协议与CSMA协议的掉包率也随之增加。但是当负载大于0.01时,RSSP协议的掉包率明显小于CSMA协议。这也表明了通过在接收节点发送通知信号来控制发送节点发送数据很大程度上减少了数据的冲突,降低了掉包率。虽然RSSP协议采用接收节点发送通知信号的方法能够在很大程度上缓解隐藏终端的问题,但是它不能完全解决隐藏终端问题,所以RSSP协议还是有一定的掉包率。
图4 RSSP与CSMA的掉包率的比较
图5 RSSP与CSMA的时延比较
在图5对比了RSSP协议与CSMA协议的时延。当负载很小时,特别在负载小于0.005时,RSSP协议的时延要比CSMA协议大,这是由于当负载很小时,数据发生冲突的量很少,同时RSSP协议的发送节点在发送数据前需要等待一段时间预定信道,并且发送节点发送连续编号的数据帧时,当发送完一个数据帧时,需要等待一段时间才能发送下一个数据帧,所以RSSP协议的时延要比CSMA协议的时延大。但是当负载比较大时,RSSP协议的时延要比CSMA协议的时延小,这是由于RSSP协议利用接收节点发送通知信号能够极大地减少数据帧的冲突,使得其时延比CSMA协议的时延小。
本文针对水声网络信道长且可变的传播时延问题,为提高网络吞吐量,提出了一种接收节点发送通知信号的方式来控制发送节点发送数据的MAC协议。其利用通知信号来告知邻居节点当前接收节点的状态,邻居节点收到通知信号后,等待发送数据。并且该协议解决了由于长延迟所带来的隐藏终端的问题。在最后的仿真中,分别对比了RSSP协议与经典CDMA协议的吞吐量、掉包率和时延,比较结果表明RSSP协议能够获得比较高的吞吐量和比较低的掉包率。
[1] KARN P. MACA-a new channel access method for packet radio[C]. ARRL/CRRL Amateur Radio 9th Computer Networking Conference, 1990: 134-140.
[2] KLEINROCK L, TOBAGI F A. Packet switching in radio channels: Part I—carrier sense multiple-access modes and their throughput-delay characteristics[J].Communications, IEEE
Transactions on, 1975, 23(12): 1400-1416.
[3] WU C S, LI V. Receiver-initiated busy-tone multiple access in packet radio networks[C]. ACM SIGCOMM Computer Communication Review, ACM, 1987: 336-342.
[4] DENG J, HAAS Z J. Dual busy tone multiple access (DBTMA): a new medium access control for packet radio networks[C]. Universal Personal Communications, 1998 ICUPC'98 IEEE 1998 International Conference on. IEEE, 1998: 973-977.
[5] AKYILDIZ I F, POMPILI D, MELODIA T. Underwater acoustic sensor networks: research challenges[J].Ad Hoc Networks, 2005, 3(3): 257-279.
[6] CHEN Y J, WANG H L. Ordered CSMA: a collision-free MAC protocol for underwater acoustic networks[C]. OCEANS 2007. IEEE, 2007: 1-6.
[7] SYED A A, YE W, HEIDEMANN J. T-Lohi: a new class of MAC protocols for underwater acoustic sensor networks[C]. INFOCOM 2008 the 27th Conference on Computer Communications IEEE, IEEE, 2008: 789-797.
[8] CHIRDCHOO N, SOH W S, CHUA K C. RIPT: a receiver-initiated reservation-based protocol for underwater acoustic networks[J].Selected Areas in Communications, IEEE Journal on, 2008, 26(9): 1744-1753.
Receiver signal based protocol for underwater acoustic networks
Wang Xiyang,Jiang Shengming,Yang Kaijian
(School of Information Engineering, Shanghai Maritime University, Shinghai 201306, China)
The channel of underwater acoustic networks is characterized as low data rate and long propagation delay. Using the handshaking mechanism could reduce the data conflict, it will lower the channel utilization and network throughput. Thus in this paper, we propose a receiver sending short signal based protocol abbreviated to RSSP for underwater acoustic networks. In this protocol, the receiver notifies its neighbors to stop sending by sending a short signal when the receiver receiving data, which can alleviate the hidden terminal and exposed terminal problems to improve throughput. In addition, the RSSP uses a short signal can also reduce energy consumption. The simulation results show that the proposed protocol can acquire above targets.
signal; receiver; underwater acoustic networks; MAC protocol
国家自然科学基金(61472237)
TP393
A
10.19358/j.issn.1674- 7720.2016.15.018
2016-04-15)
王希阳(1989-),男,硕士研究生,主要研究方向:无线通信网络协议和算法、水下传感网络。
姜胜明(1964-),男,博士,教授,主要研究方向:通信网络结构、协议和算法等。
杨恺健(1991-),男,硕士研究生,主要研究方向:无线网络协议。
引用格式:王希阳,姜胜明,杨恺健. 基于接收端信号的水声网络MAC协议[J].微型机与应用,2016,35(15):61-64.