郑 杰 敏
(哈尔滨工程大学 信息与通信工程学院,哈尔滨 150001)
媒体接入控制技术(Medium Access Control,MAC)以解决网络中多节点接入信道问题为目标设计[1-3].保证各个节点都能公平的发送数据,减少数据碰撞,高效利用信道资源[4-5].在水声通信中,水声信道特性影响着水声通信网络的效率[6].水声信道特性导致水声MAC协议的设计面临以下挑战[7].
相比于电磁波的传播速度,声波传播速度很慢,导致数据传播时延很大.因此在设计水声MAC协议时必须要考虑时延影响.数据的传输和确认导致了节点在发送完数据后等待确认的时间内处于空闲状态,这造成了信道利用率较低[8].
在陆地无线通信网络中,在同一时刻,如果多个节点发送信息给同一个接收节点,那么接收节点不能成功解析这些信息[9-11].但在水声通信网络中,由于传播时延大以及数据包发送时间的不确定,可能导致与陆地通信网络中完全相反的结果.针对于时空不确定性问题,通过合理安排数据的传输,可以改善网络的性能[1].见图1.
图1 时空不确定性Figure 1 spatial-temporal uncertainty
在基于握手的水声MAC协议中,节点对通过发送控制包来进行对信道的预约[12],但是由于水声传播速度慢以及时空不确定问题的影响,当多节点同时竞争信道时,节点的控制包的发送导致信道拥挤,当节点接收到竞争对手的控制包,将会放弃本次预约过程,从而导致信道预约的成功率低,需要对传统的水声握手MAC协议进行改进以适用于水声网络.
由于多节点竞争的存在将大大影响网络的性能,提出基于握手机制的轮询附加传输MAC协议(HPA-MAC),设计相应的机制改善多节点竞争问题,并通过利用时间不确定降低端到端时延.
图2 控制包传输Figure 2 control packet transmission
UNTF中第m个节点发送NTF的时间可以由前一个节点发送时间计算得到:
(4)
如果第m个附加节点发送NTF时间满足式(5)关系,即NTF的发送干扰了发送节点接收CTS控制包,则需要推迟NTF的发送时间.
(5)
即:
(6)
为了避免干扰CTS控制包的接收,第m个附加节点的NTF包被发送节点接收推迟到CTS接收之后,因此可以通过CTS的接收时间计算第m个附加节点的NTF包发送时间:
(7)
在HPA-MAC协议中,将使用节点轮询附加传输机制改善网络的信道利用率.在邻居节点轮询发送数据时,通过利用节点之间的时延和数据包传输时间关系,会出现图 3中A、C节点并行传输,不产生碰撞,合理安排各附加节点的数据包发送时间,可以让发送节点在最短时间内完成数据的收发过程,减少数据排队时间.
图3 收发节点双向传输模型Figure 3 Bidirectional transmission of Tx-Rx nodes
图4 收发节点单向传输模型Figure 4 Unidirectional transmission of Tx-Rx nodes
1)由于收发节点之间数据传输有两种情况,因此第一个附加节点发送时间计算也有两种情况:
(a) 收发节点双向传输
第一个附加节点在发送数据时需要避免数据在发送节点S和接收节点R处发生数据碰撞,同时保证数据到达发送节点的时间尽可能早.
首先可以计算出双向传输阶段所需要的时间:
DBI=DCR+DUCR
(8)
(9)
Ddata+dS,R+dguard
(10)
其中:DBI是双向传输需要时间,DCR是完整双向传输周期占用时间,DUCR是非完整双向传输周期占用时间,K为收发双方双向发送的数据包数量.
通过式(8)所计算的双向传输需要时间,可以计算发送节点S和接收节点R结束数据包接收的时间为:
(11)
第一个附加节点为了避免干扰发送/接收节点数据包的接收,发送时间必须满足:
(12)
(b) 收发节点单向传输
第一个附加节点在发送数据时需要避免发送节点还在发送数据时以及接收节点在接收时到达.
(13)
(14)
为了使第一个附加节点的数据能成功被发送节点收到,且不干扰接收节点的接收,发送时间需满足:
(15)
Ddata+dguard+di-1,S]
(16)
(17)
为了保证发送节点接收第个(i-1)节点的数据包与接收第i个节点的数据包不产生冲突,且第(i-1)个节点的数据包在第i个节点数据包之前被接收,需满足:
(18)
上式可以转化为:
(19)
由于第i个节点发送时间不能在第1个附加节点之前发送,那么第i个节点发送时间可以确定:
di-1,S-di,S)
(20)
根据上述分析,各个附加节点的发送时间可以计算得到,附加节点在相应的时间发送可以避免数据包碰撞.
网络中所有节点静态分布在3 000 m×3 000 m的矩形区域内,网络中的所有节点都能相互通信.仿真数据包长度为1 200比特,节点数量为10个,数据传输速率为2.4 kb/s,数据包最大生存时间为100 s,数据包产生服从泊松分布.对比协议由ALOHA-AN协议[13]和BiC-MAC协议[14-15].
图 5比较了四种协议的吞吐量,可以看到HPA-MAC随着负载的增长不断增长,ALOHA-AN的吞吐量存在饱和现象.HPA-MAC协议的吞吐量优于ALOHA-AN和BiC-MAC协议,这是因为HPA-MAC针对于握手协议中传输方式进行改进,HPA-MAC允许网络中发送节点的邻居加入通信,数据包收发数量多.
图5 吞吐量Figure 5 Throughput
图 6比较了三种协议的端到端时延.可以看到在负载小于0.18 pkts/s时,ALOHA-AN协议的时延最小;在负载大于0.18 pkts/s时,HPA-MAC协议的时延最小.在小负载时产生数据包数量较少,HPA-MAC发送数据包的数量较少,三次控制包交互导致时延较大.随着负载的增长,HPA-MAC一次成功握手能够发送多个数据包,因此时延降低.
图6 端到端时延Figure 6 End to end delay
本文研究了水声通信网络多节点竞争时提高信道利用率的机制.通过使用RTS侦听和竞争比较机制有效提高网络握手的成功效率,计算控制包的发送时间避免了碰撞;在数据传输阶段通过邻居节点轮询并行传输机制使得吞吐量大大提升,并有效降低了高负载下的时延.仿真验证了协议的有效性.