水声网络全双工定向碰撞避免媒体接入控制协议
2023-03-01刘奇佩乔钢SulemanMazhar
刘奇佩 乔钢 Suleman Mazhar
(哈尔滨工程大学水声技术重点实验室 哈尔滨 150001)
(海洋信息获取与安全工信部重点实验室(哈尔滨工程大学) 哈尔滨 150001)
(哈尔滨工程大学水声工程学院 哈尔滨 150001)
1 引言
过去几十年中,由于水声网络(Underwater Acoustic Network, UAN)在舰船导航、海洋勘探、灾害预警等方面的潜力,人们对其产生了极大的兴趣。然而,尽管UAN的性能和鲁棒性在此期间有了很大提高,仍有许多困难需要解决。这些挑战主要来自水声信道,作为已知最复杂的信道环境[1],水声信道具有信号传播速度低(相比较无线信道低5个数量级,导致高传播时延)、信号衰减高、可用带宽低、多普勒频偏严重等不利特点,为高效的水声网络上层协议设计带来巨大挑战。
受上述条件制约,水声通信的物理层通信速率往往较低,通常只有几十到几千bps,具体取决于通信距离和通信频率等因素[2,3],因此相比较于信号的传播时延,信号的传输时延无法忽略。这就导致数据的传输极易受到干扰,因此即便不考虑误码的情况整个网络也会遭受严重的数据包冲突,浪费了本就有限的能量。由于数据发送在水声网络中是一项代价高昂的行为,相对于数据接收来说消耗的能量超出2个数量级[4,5],因此采用高效的媒体接入控制(Medium Access Control, MAC)协议减少数据包冲突以节省能量非常必要[6]。
MAC协议根据对信道的接入方式可分为非竞争式协议和竞争式协议,前者主要包括时分复用(Time Division Multiple Access, TDMA)、码分复用(Code Division Multiple Access, CDMA)、频分复用(Frequency Division Multiple Access, FDMA)等,这类协议通过给每个节点预先分配信道资源的方式工作,无法有效利用高传播时延的水声信道,且无法处理节点流量分布不均的情况[7];后者通过竞争的方式接入信道,这类协议又可以具体分为随机接入方式和握手方式。随机接入协议(典型的如Aloha协议)由于直接发送较长的数据包会导致严重的冲突,因此并不适合UAN;握手协议(如文献[8,9])通过一个典型的4次握手过程实现信道预约、数据发送、可靠传输过程,能够一定程度上避免碰撞并节省能量,但由于无线信道的广播特性又引入了“隐藏终端”和“暴露终端”问题[10],如图1所示。
“隐藏终端”发生在一个节点A感知不到某个位于其发送范围外但位于目的节点接收范围内的节点B时,会导致这两个节点发送的数据包在节点C处发生冲突;而“暴露终端”问题正好相反,发生在一个节点C无意中监听到其他传输行为(表示为图1(b)所示B到A的蓝线)时,会进行退避。但事实上A,B的传输行为并不会影响C向D发送数据,这就导致了信道利用率的无意义下降。
图1 隐藏终端和暴露终端问题
“暴露终端”问题的解决只能通过装备多个天线(UAN里对应为水声换能器)解决[11]。为此,文献[12]提出了一种全双工协议解决上述两类问题。该文献中节点额外装备了一个工作于不同频带的水声换能器,使得节点可以在接收数据时使用额外的空闲天线对信号来源进行回复而不干扰主换能器接收数据,通过告知其接下来的数据传输是否会对自身产生影响,而消除了该问题。具体来说,当节点B向A发送数据时,C需要向D发送数据,由于信道的广播特性B也会受到C的请求,经其判断D并不在自己的影响范围内,因此不进行操作,那么C,D之间就可以建立通信链接。C在这种情况下成为“暴露发送终端”。然而当C成为接收节点时,其处于B的传输范围内,无法正确接收D发送的数据包,因此C回复CTS(Clear-To-Send)的时候会被节点B回复警告信息继而中断接收。该问题称为“暴露接收终端”。
可以看出,全双工技术对“暴露接收终端”问题是无能为力的,这完全由通信机制问题决定,只要让节点C在节点B发送数据的时候不受影响即可解决。定向通信技术(如文献[13,14])可以通过波束形成将波束范围有效约束在一个较小空间范围内从而降低对非通信节点的影响达到该目的。但是该技术会带来“聋节点”问题[15],即一个节点无法感知到其他正在进行的通信过程从而多次发起通信请求而得不到回应,最终会误认为链路中断导致无法通信的情况。
为此,本文提出一个全双工定向碰撞避免(Full-Duplex Directional Collision Avoidance,FDDCA)MAC协议,结合全双工通信技术和定向通信技术的优势来实现链路的无干扰传输,进而提升整个网络的吞吐量和能量效率。
本文的主要创新点如下:
(1)基于声强理论建立了一个高精度多模态指向性换能器能量模型;
(2)针对定向网络的聋节点问题,提出一种使用全双工和定向通信结合的解决方案;
(3)基于上述分析,提出一种全双工定向水声网络碰撞避免MAC协议,该协议首创并实现了一种多扇区管理机制,最大化网络的空间复用。
2 系统模型
2.1 多模态水声换能器
模态换能器是一种可以通过激发不同波束模态以获得预期指向性的特殊水声换能器[16],大多数模态换能器具备3个不同模态,其各个模态对应的波束指向性表现如图2所示。
图2 单个模态对应的波束指向性
如果结合这3种模态,并加以相应权重,可以得到声压函数p(θ)与联合波束模态的关系
其中,Ai对 应于各种模态的权重,θ为空间方位角。
如果对Ai进 行A0=1的正则化,可以得到不同的指向性表现。根据文献[17]对多模态换能器最佳参数的研究,本文选择A1=1.8305,A2=1.3019,此时得到指向性波束相应的–3 dB带宽大约为70°。根据该结果建立一个波束数量为6的可切换天线(换能器)系统,其收/发指向性如图3所示。
图3 系统收/发指向性
整个欧氏平面可以被该波束通过旋转完全覆盖。需要注意的是,由于节点只装备了1个模态换能器,同一时刻只有1个扇区可以被覆盖。
2.2 通信模式
在全向网络中,节点只要位于彼此的通信范围内就可以进行通信,这种类型的网络通常可以由单位圆图进行表示,此时节点的通信模式为全向发送全向接收(Omni-directional transmission with Omni-directional reception, OO)模式。而使用定向通信技术时,一对通信节点只能在它们位于彼此的波束范围内的条件下才能建立连接,即它们的波束必须朝向对方,此时节点的通信模式为定向发送定向接收,(Directional transmission with Directional reception, DD)模式。还有一种通信模式介于两者之间,也就是全向发送定向接收(OD)或定向发送全向接收(DO)模式。3种通信模式各有其优缺点,本文使用OO模型进行一些控制包的传输以达到尽可能大的广播范围,而对于较长且重要的数据包使用DD模式进行发送和接收,这两类通信模式如图4所示。
图4 本文所用两种通信模式示意图
2.3 能量模型
根据水声传播原理[18],一束声波表面的声强I可以表示为
其中,Wp表示信号的声功率,S表示该声波波束的表面积,因此有Wp=IS,表明在声强一定的情况下,声功率与波束表面积呈正比关系。因此,在假定电转换效率相同的情况下,可以通过计算波束的表面积获得不同发送模式的能量消耗。
以Cm表 示模式m的能量消耗,其中m ∈{D,O}分别表示定向模式和全向模式,因此使用微元法计算CD的过程如图5所示。
图5 微元法计算模态换能器能量消耗
根据旋转体表面积公式,可知该波束表面积为
利用换元法将其转换到极坐标空间,可得
其中,ρ(θ)表 示位于方位角θ时表面微元的声压,最后可以求得α=0,β=π时CD ≈2.41。
对于m=O的情况,可以直接代入球体表面积公式计算,可得CO=4π≈12.57。定义能效比(Energy Efficiency Ratio, EER)为两种不同传输模式的能量消耗比,可得
说明在传播范围相同的情况下,使用定向通信技术可以节省约80.8%的能量。如果使用相同发射功率,可以计算得到此刻的定向增益G为
本结论与文献[16]极为接近,证明了本模型的精度。
3 FDDCA协议详解
3.1 协议概述
该协议建立在以下对通信节点结构的假设上:(1)节点能够通过硬件或者算法[19]实时获取自身的位置信息;(2)节点装备1个能够全向收发的普通换能器和1个能够进行定向收发的模态换能器;(3)上述两个换能器工作在不同频带,普通换能器工作频带称为“全向频带”,定向换能器工作频带为“定向频带”;(4)定向换能器可以自由调整激活扇区,但同一时刻只能激活其中1个。
本节所使用术语如表1所示。
表1 术语解释
本协议分为3个阶段,分别是ND阶段、信道竞争阶段和数据传输阶段。通过ND阶段节点会建立相应的邻节点MAC地址和扇区映射表,为下一步竞争信道做准备。进入信道竞争阶段后,节点会以全向的方式向目的节点发送RTS(因此该包是ORTS)以竞争信道,并将定向换能器方向调整为目的节点方向,等待接收。如果目的节点此时空闲,在收到ORTS后会以定向的方式向源节点回复DCTS。源节点一旦收到相应的DCTS,就开始进行数据发送,否则说明目的节点正在忙碌,需要进行随机退避。由于OACK的产生,该退避时间可能会随着OACK的收到而提前结束,这就增加了信道的利用率。如果在退避计时器超时前仍未收到OACK,可以再次尝试竞争信道,由于竞争发生在控制信道,且目的节点的定向换能器指向其通信节点,该次竞争不会导致可能的数据信道冲突,在目的节点控制信道的冲突概率也很低,因为控制包长度很小。
3.1.1 邻节点发现算法
由于定向协议工作需要邻节点的先验信息,因此考虑到目前水声网络的规模较小但节点分布范围较大,该协议设计了一个复杂度为O(1)的稀疏网络ND算法,具体来说,即节点会在网络初始化后一段时间内随机发送n个OHELLO包进行邻节点发现。这个过程不需要采用握手方式,原因在于OHELLO仅仅包含自身的MAC地址和2维坐标,长度分别为8 bit和128 bit,在物理层通信速率2000 bps的情况下该数据包的发送和接收仅仅不到0.1 s,与1500 m传播时延比起来不足1/10,其碰撞几乎可以忽略。为了提高节点的发现概率,令n=3,只要邻节点能成功收到其中任何一个OHELLO即可成功将建立相应映射。
如果该过程采用握手方式,则一个节点至少要发送1 +Ni次 (Ni取决于网络密度),且伴随较大的碰撞概率和时延,在这种情况下,由于OHELLO包的发送是广播形式,一旦碰撞发生,该节点无法得知是哪个报文丢失,只能再次重复该过程。
为了应对可能发生的邻节点发现不完全和网络拓扑结构变化,节点会维护一个邻节点表。每个表项具备一定的生存期,节点每收到一个报文就会根据源节点信息更新该表的生存期,直到生存期结束就会将其中的无效表项删除,直到再次收到该邻节点的相应报文。
3.1.2 信道预约
一旦ND阶段结束,节点尝试发送ORTS进行信道预约,这是因为尽管获得了目的节点的扇区位置,但此刻其定向换能器的朝向未知,无法保证该数据包能被正确接收。目标节点收到ORTS后会立即向源节点回复DCTS,虽然该过程引入了“隐藏终端”问题,如图1(a)所示,节点B在收到A的ORTS后无法通过传统CTS的广播告知节点C进行退避,但由于控制包和接下来数据包的发送与接收发生在不同换能器,即便C此刻接入信道,其行为也不会影响到A,B之间的数据交换。如果C节点向B请求发送,由于B此时已同A建立连接,会向C以全向方式回复一个OEW告知其进行等待,该包包含了自己的预期忙碌时间,C节点收到后会静默该段时间后重新竞争信道。对于节点A也是同样的情况。
3.1.3 数据传输
一个节点收到发给自身的DCTS后将会以定向方式发送数据包,之后会等待ACK。为了保证可靠性传输采用了自动重发请求(Automatic RepeatreQuest,ARQ)技术,为每个数据包设置了传输计数器,如果能够在一定时间内收到相应的OACK说明该数据被成功接收,否则进行重传,直到目的节点成功接收或者该数据包重传次数超过上限。
3.2 多扇区状态管理
对于装备了单个全向换能器的节点来说,其冲突域往往是整个节点的干扰范围,这是由于它能够影响周围的整个区域,该范围内任何一个邻节点的传输都可能会受到干扰。而对于装备了单个定向换能器的节点来说,问题变得更加复杂,因为节点在某个时刻只能干扰到1个扇区,因此对于每一个扇区而言,都需要单独管理其状态,包括忙碌还是空闲,这是由于在复杂的拓扑结构中,不能保证节点的每个扇区只存在1个邻节点。
因此为该协议设计了一个多扇区状态管理器(Multi-Sector State Manager, MSSM),该MSSM通过全向换能器侦听到的数据包对相应扇区进行管理,为其设置合适的退避时间,在计时器运行时该扇区状态为忙碌,此时无法在该扇区进行数据的发送。直到计时器超时或者全向换能器侦听到该扇区方向上的OACK,会重新设置其状态为空闲。
3.3 两类终端问题解决办法
FDDCA通过全双工技术解决“隐藏终端”和“暴露发送终端”问题,通过定向通信技术解决“暴露接收终端”问题,具体方法如下。
如图6所示,节点A和B建立连接后节点C试图接入信道,向节点B请求发送数据,C成为A的隐藏终端,此时A已经成功预约信道,因此B会估算忙碌时间,并将该信息包含在OEW包中以全向的方式发送给C。C收到该OEW包后会按照要求设置相应扇区为忙碌状态,在超时后重新发起竞争。如果提前收到来自B的OACK包则直接退出计时器并更新状态为空闲,并重新开始竞争信道。
图6 FDDCA解决“隐藏终端”
当节点B试图向节点A发送数据,同时节点C向节点D发送数据时,B和C同时成为对方的“暴露发送终端”,如图7所示。节点B检查收到来自C的ORTS后,发现其目的节点并不位于自身范围内,说明其接下来的发送行为不会造成干扰,因此忽略该ORTS。同样对于节点C来说也是如此,因此实现了数据的同步发送。
图7 FDDCA解决“暴露发送终端”
如果节点C向D发送数据的时候A向B请求发送,那么此时节点B成为节点C的暴露接收终端,该问题在通常全双工技术下难以解决,但可以利用定向通信技术解决。从图8可以看出,A尝试向B发起通信的时候,节点C已经与节点D建立了连接,且由于范围原因A并未收到C的ORTS,因此A竞争信道的行为不会受到影响。当B收到A的ORTS后会判断相应扇区空闲,且没有干扰威胁,会向节点A回复DRTS,成功建立连接,实现了信道的空间复用。
图8 FDDCA解决“暴露接收终端”
3.4 聋节点问题的解决
“聋节点”问题发生在如图9所示场景下。对于只装备单个定向换能器的节点来说,当节点A试图与节点B进行通信,而此刻节点B和C已经建立了连接,由于B和C的波束必须同时指向对方,所以节点B无法知道A曾尝试与其通信。在这种情况下,A会反复请求与B进行通信,导致退避时间越来越长,最终会误认为链路无效而删除链路。可以看出该问题产生的关键所在,是节点B无法收到A的发送请求。
图9 “聋节点”问题
该问题可通过FDDCA协议有效解决:A向B请求发送时会使用额外的全向换能器,而不会对B正在进行的数据传输造成影响,因此B收到A的发送请求时会通过全向换能器告知其进行合理时间的等待,这样就避免了节点A退避计时器快速增加而切断链路,最终解决了该问题。
4 仿真结果与分析
为了验证本文所提协议的性能,本仿真对NS-3进行了相应扩展,并设计了两个网络拓扑结构分别验证FDDCA的邻节点发现性能和数据投递性能。前者通过一个分布式网络进行统计,后者通过一种特定网络拓扑进行统计。
4.1 ND协议性能
假设有若干个节点随机分布在一块方形区域内,区域边长5000 m,节点通信范围1000 m,OHELLO包长144 bit,定义邻节点发现效率
其中,Di是 节点i发 现的邻节点数量,而Ni是i通信范围内存在的邻节点数量。统计结果如图10所示。
图10 稀疏网络下邻节点发现效率
可以看出,整个网络在只有15个节点的情况下,单次发现概率就达到了90%以上,随着节点密度的增加,经过6次发现过程也能达到90%的邻节点发现效率,该过程的时间复杂度是O(1),意味着耗费的能量和时间不会增加。
4.2 FDDCA协议数据投递性能
为了验证FDDCA协议对于“暴露终端”和“聋节点”问题的处理效果,本文设计了如图11所示网格状拓扑结构。
图11 仿真拓扑结构
其中9个发送节点按照分别位于网格交点,而4个接收节点位于网格中心,这样的拓扑结构可以使节点构成上述不同问题的发生场景。
由于本协议装备了两个工作于不同频带的换能器,因此表2分别对其进行了说明,发送声源级的选择根据文献[3]对传播损失和噪声提前计算获得,保证对于各个换能器均可达到2000 m传播范围。对比协议选取了水下Aloha (UW-Aloha)协议[20]和时隙地面多址接入(S-FAMA)协议[9],分别为两类典型的水声网络MAC协议,具有极强的代表性,针对协议的吞吐量、能耗、能量效率以及协议开销进行了对比统计,其中能量效率Ee定义为
其中,Ec为网络总能耗,Brcv表示所有接收节点收到的数据量,单位是bit,物理意义为平均成功接收1 bit数据需要耗费的能量。
其他相应仿真参数如表2所示。
表2 仿真参数设置
最终得到整个网络的吞吐量统计结果如图12所示。
从图12可以看出,FDDCA协议在吞吐量表现方面远超UW-Aloha和S-FAMA。尽管UW-Aloha采用了2次握手机制,使得1次传输过程耗费时间相比较FDDCA节省近1/2,但由于随机接入信道方式导致了大量碰撞,导致吞吐量不高。同时,与S-FAMA的对比说明本协议使得多对链路可以同时传输而不互相影响,取得了良好的信道复用率,有效解决了暴露终端和隐藏终端问题。
图12 吞吐量对比
从图13可以看出,网络能耗上FDDCA相比其余协议取得了绝对优势,且趋势稳定,S-FAMA也有比较平衡的趋势,这是由于握手过程对信道进行了预约,防止数据盲目发送导致的丢包,因此大大降低了发送长数据包导致的能量浪费。而UW-Aloha协议网络能耗随着网络流量的增加呈明显上升趋势且没有回落,这也是随机接入协议的主要弊端。
图13 网络能耗对比
最后,对3种协议的能量效率进行统计,结果如图14所示。可以看出,随着数据网络流量的增加,S-FAMA抖动较高而UW-Aloha呈稳定上升状态,后期无法收敛,说明该协议的稳定性较差,不适用于节点密度较大和数据流量较高的网络。而FDDCA相比较其他协议更加稳定且能耗一直处于较低水平,是S-FAMA能耗效率的约6%和UW-Aloha的约10%,这完全得益于全双工技术和定向通信技术的结合。
图14 网络能量效率对比
4.3 FDDCA协议开销
由于FDDCA是一个基于预约的协议,会存在一定的协议开销,为了对文中3种协议的开销进行统一度量,定义协议开销
其中,Bsend表 示网络节点发送的数据量,该指标表示平均收到1 bit数据需要额外发送的数据量。
结果如图15所示。
图15 协议开销对比
可以看出,在提供的网络负载下,FDDCA协议对于对比协议具有极高的优势,这得益于其使用的全双工通信和定向通信技术,使得通信节点能够有效减少对网络中其他节点的干扰,进而整个网络的协议开销始终保持在一个较稳定的状态;同采用握手机制的SFAMA协议由于节点冲突域较大而产生严重的节点间干扰,因此导致的节点退避和数据碰撞使其高于FDDCA协议,但也相对平稳;而UW-Aloha协议由于是随机接入信道而导致大量数据包的碰撞,会随着网络负载的增加而越来越严重,呈不断上升趋势。
5 结论
本文从理论上介绍了多模态换能器的指向性增益,并结合声强理论提出一种数学模型分析其能量消耗,取得了较高的精度。此外,为了有效解决定向传感器网络中的临界点发现、“隐藏终端”、“暴露终端”和“聋节点”难题,本文基于上述模型提出了一种全双工定向水声网络MAC协议FDDCA,本协议通过解决上述问题实现了信道的空间复用,并通过仿真验证了其在邻节点发现效率、网络吞吐量、网络能耗、能效和协议开销方面的巨大优势。