上义,杜秀娟,2
(1.青海师范大学计算机学院,西宁 810008;2.高原科学与可持续发展研究院,西宁 810008)
水声网络(underwater acoustic networks,UANs)的应用范围与研究价值日益突出,水声网络可广泛应用于军事、科研、民生等众多领域[1]。
在水声网络中,媒体访问控制(medium access control,MAC)协议对整个网络的性能具有重大的影响,因而引起了广泛关注。水声网络具有长端到端延迟、低可用带宽、低能效性等特性[10],除此之外,由于受到洋流和海浪的作用,水声网络节点处于移动的状态[2]。这些因素给水声网络MAC协议的设计带来了一定的挑战。陆地无线网络的MAC协议不适用于水下环境中,或其工作效率非常低。针对这些情况,设计一个适合水声网络通信需求的MAC协议尤为重要。
水声网络与陆地无线传感器网络存在非常多的差异,最明显的区别在于陆地无线传感器是通过电磁波来信号来进行通信。电磁波与光波不适用于水下环境,即使能够使用也会在水中大大衰减,无法达到我们所预期的效果。为了解决电磁波与光波在水下衰减的问题,水下通信通常采用声波来进行[4]。
水声信道衰减(dB)可表示为,如式(1)所示。
式(1)中,l表示节点间的传输距离,f表示信号频率,k表示是水声模型相关量。10 log(a(f))表示吸收系数。
声信号在水下传播过程中存在一定的传输损耗,如式(2)所示。
式(2)中,k×10 log(l)为总扩散损耗,l×10 loga(f)为吸收损耗。当采用柱形扩散时k=1,采用球形扩散时k=2,一般情况下k=1.5。
根据Throp的表达式计算的能量吸收系数10 loga(f)如式(3)所示。
式(3)一般适用于数百赫兹频率以上的信号,对于频率小的吸收系数公式如式(4)。
媒体访问控制协议是位于水声网络中节点体系架构中的数据链路层,其主要责任在于以一定的高效率方式给水声网络中的节点分配有限的水声信道资源,保证节点间的通信互不干扰,从而提高网络性能[3]。因此,MAC协议能否高效地使用水声信道是保证水声网络通信效率的最关键因素之一[5]。选择一个合适的MAC协议对网络性能有很大影响,尤其是对于低带宽和高延迟的信道尤为重要。
由于水下环境的特殊性,所用通信介质的不同,导致许多现有的陆地无线传感器网络MAC协议不适用于水声网络中,即便能够使用但其效率也无法达到所预期的效果[6]。同陆地无线传感器网络相比,水声网络具有长而可变传播时延、低可用带宽、能量有限性等特点的限制,给水声网络MAC协议的设计带来了挑战。在协议设计时,应着重考虑能效性、网络吞吐量、信道利用率、包交付率、协议公平性和自适应性等因素,同时也要解决隐藏终端、暴露终端、时空不确定性等问题,以下这些约束对MAC协议的设计带来了重大挑战。
一般情况下,能耗在水声网络中是一个重要问题,水声网络节点工作在恶劣的水下环境中。能耗的增加通常会缩短传感器节点的电池寿命,再者,在水下环境中更换电池或进行充电都是非常困难且花费成本的工作[7]。为了加长网络的生存周期,设计MAC协议时应当充分考虑水声网络高能耗的特性,提出具有高能效的MAC协议[8-9]。
我在青木的奶茶店看到了我最不愿意见的人。一个女孩坐在我原来的位置上,对面是,秦明。 这个和我在一起时说最讨厌奶茶的人,此刻却在这儿坐得四平八稳。不过,这一切,已经与我无关。
隐藏终端问题可以定义为传感器节点无法感应到它的传输范围以外的节点状态,如果节点与其传输范围以外的一个或一个以上的节点具有共同的邻居节点,即预期目标节点。而且节点与其传输范围以外的节点选择同一时间点向预期目标节点发送数据包,那么就存在在接收节点处发生碰撞的可能性。如图1所示,节点B和节点C在同一时刻向节点A进行传输报文,当节点C向节点A发送数据时,由于节点B无法感知节点C的传输,同时向节点A发送数据,从而在接收节点A处发生数据冲突,节点C在节点B的传输范围外,但在接收节点A的传输范围之内,因此当节点B向节点A发送数据时,节点C对于节点B来说是隐藏终端。同理,节点B是节点C的隐藏终端。隐藏终端极容易造成数据碰撞,从而影响网络的性能。
图1 隐藏终端示意图
所谓暴露终端,是节点侦听到信道中信号传输,以为信道此刻处于忙碌状态若发送可能会发生冲突,从而推迟其自身的传输。实际上,其发送对正在进行的通信不会发生冲突,这种情况就是出现了暴露终端问题。如图2所示,节点B正向节点A发起传输,此时节点C试图向节点D发送数据,但是节点C监听到信道中节点B的传输,并且节点C认为自己的传输可能与节点B的传输引起冲突,因此节点C延迟其传输。实际上,节点C的传输不会干扰节点B的通信。暴露终端会造成水声信道资源的浪费,从而导致网络吞吐量比较低。
图2 暴露终端示意图
由于水声网络具有长传播延迟等特点,并节点会随着水的流动而移动,因此接收节点接收到数据帧的时间不仅与发送数据帧的时间有关,而且与接收节点与发送节点的位置距离有关。因此,在传输过程中数据碰撞问题主要关乎于时间和空间的2维不确定性,这个问题称为时空不确定性[10]。
如图3(a)所示,发送节点1和2选择同一时刻向一个接收节点发送数据帧,显而易见两个数据帧在接收节点处没有发生碰撞,这是因为发送节点1,2到同一接收节点的位置距离不相等;在图3(a)中,发送节点1和2也是选择同一时刻向接收节点发送数据帧,但由于发送节点1因移动其位置发生改变,从而导致发送节点1和2到接收节点的距离相等,因此两个数据帧在接收节点处发生碰撞。
图3 时空不确定性
由于水下工作环境的特殊性,远近效应是影响协议性能的因素之一,设计MAC协议时需要考虑的问题。远近效应是受传输距离的影响,当发送信号时节点采用大小相同功率的情况下,那么传输距离越大,则信号衰弱越大;传输距离越小,则信号衰弱越小[10]。如图4所示,节点D与节点A之间的距离明显节点B与节点A之间的距离,因此,接收节点A接收来自每个发送节点的不同信噪比级的信号。
图4 远近效应
根据水声网络的特征,通信介质的不同,众多学者已提出了许多适用于水下环境的MAC协议。这些协议按照节点竞争信道的方式,大致可分为三类:无竞争型的MAC协议、基于竞争型的MAC协议以及混合MAC协议[11],如图5所示。
图5 水声网络MAC协议分类
无竞争mac协议的优点主要包括:避免了节点间进行数据传输时的冲突;减少了节点间相互干扰造成的能量损耗;在传输过程中不需要太多的控制信息,节省了控制包的开销;信道利用率相对较高;数据通信延迟比较小[15-16];可进行并发传输。然而,该类型的MAC协议在低负载网络环境中时,空闲时隙会增多,网络吞吐量会降低,信道利用率也降低,且可扩展性较差,灵活性较低,难以适应网络中因节点加入或失效而引起的拓扑结构的变化[13]。
基于竞争Mac协议,是网络中所有有数据要传输的节点通过竞争的方式去抢占信道使用权。如果节点在信道中传输的数据与其他节点产生了冲突碰撞时,则节点需要以一定的规则进行重传,直到数据传输成功为止[15]。基于竞争MAC协议的优势在于节点抢占到信道使用权后使用信道的全部带宽去传输数据,同时这种协议对时间同步要求较低。因此,基于竞争MAC协议更适合于低负载、节点稀疏的网络环境。然而,在网络负载高或节点密集的网络环境中,这种MAC协议大大增加了节点间因竞争信道使用权而发生冲突的概率,不仅降低了数据交付率,同时浪费了网络能量等资源。基于竞争MAC协议包括随机多址接入方式和基于握手多址接入方式以及基于状态接入方式。
近年来,水下混合MAC协议的研究与设计引起了部分学者的关注。不同类型MAC协议其应用场景与优缺点各异,为了能够更好地发挥不同类型MAC协议的优势,部分学者通过研究多种类型MAC协议设计出混合MAC协议,提高网络性能。目前已被提出的混合MAC协议有:①Kredo等人提出了一种混合MAC协议[19],H-MAC协议利用基于竞争和基于调度的优势,协议周期分为竞争周期与调度周期,在竞争周期中预约信道,在调度周期中传输数据。H-MAC协议通过基于竞争和基于调度的优势提高了协议的利用率[17],降低了能耗。②文献[20-22]提出了一种基于分布式CDMA与Aloha节能MAC协议(UW-MAC),该协议采用CDMA机制传输有效数据之前,通过随机访问机制传输扩展头(EH)的短帧,然后发送节点调整其伪随机序列的长度和信号功率,来降低在接收节点处的多址干扰(MAI)。UW-MAC协议的目标是保证高网络吞吐量、低信道访问延迟和低能耗。
近年来,许多国内外学者提出了大量适用于水下环境的MAC协议,下面简单地比较几种典型的水声网络的MAC协议,如表1所示。
表1 水下MAC协议性能比较
近年来,水声网络的研究取得了一定的成果,其中包含优秀MAC协议的提出。本文阐述了MAC协议的分类和相应的优缺点,并通过表1对近年来的几种典型MAC协议的性能进行比较。同时介绍了水声信道的特点与衰减,总结了设计MAC协议时需要考虑的因素和解决的问题。目前,较多的水声网络MAC协议是为了实现高吞吐量、高能效性等性能而进行设计或改进,但同时这些MAC协议也牺牲了一些性能,比如扩展性、自适应能力,等等。目前有许多优秀MAC协议解决了隐藏终端等问题,模拟水下仿真中实现了高性能,但实际水下环境中网络拓扑是处于移动状态,且在水下很难实现精确的时间同步,因此,这些MAC协议在真实的水下环境中,其工作效率无法达到预期的效果。
未来研究中,我们应当着重考虑水下环境中节点的移动性和时间同步的问题。设计一种能够自适应网络规模变化和拓扑移动,并能实现精确时间同步的高性能水声网络MAC协议。