陶建军,黄 勤,胡 飞,王常虎,杨海芬
(1.西南通信研究所,四川 成都 610041;2.电子科技大学,四川 成都 611731)
0 引言
移动自组网(Mobile Ad-hoc NETworks,MANETs)是一种不依赖于固定基础设施的无线、多跳、自组织的移动通信网络。网络中的每个节点具有数据接收和数据发送的功能,能够在任何时间、任何地点被快速地组建起来。移动自组网具有诸多优点,被广泛应用在没有条件架设基础设施的场景中[1-3]。
移动自组织网络的信道接入方式主要有竞争类介质访问控制层(Media Access Control,MAC)协议、分配类MAC 协议和混合类MAC 协议。竞争类协议主要有载波侦听多址访问/冲突避免(Carrier Sense Multiple Access with Collision Avoid,CSMA/CA)协议等,其特点是通过竞争的方式获取信道;分配类协议主要有码分多址(Code Division Multiple Access,CDMA)、频分多址(Frequency Division Multiple Access,FDMA)和时分多址(Time Division Multiple Access,TDMA)3 类,其特点是信道资源固定分配给网络节点。目前移动自组网的广播协议中,以竞争类协议为主,基于CSMA 协议的广播通信方案按照其发送机制可以分为基于简单泛洪的广播方案[4-5]、基于概率转发的广播方案[6-7]和基于可靠转发的广播方案[8-9]3 种。
在简单泛洪方案中每个节点都向自己的邻居节点广播,由于无线传输在空间上具有广播特性,一个空间区域可能同时受到多个移动节点的无线信号覆盖,所以简单的泛洪可能引发广播风暴,产生大量冗余广播、信道竞争和传输碰撞[10]。在基于概率转发方法的广播方案中,每个节点以某种概率向自己的邻居节点广播,只有部分节点随机地参与广播数据的转发,节约了带宽,减少了冲突。基于可靠转发的广播方案中,节点通过邻居信息判断出下一跳节点,并赋予转发权限,只有获得转发权限的节点参与转发过程。
尽管基于概率转发和基于可靠转发的广播方案中通过算法一定程度上减少了冗余数据的传输,但在这样的网络中,节点竞争失败的概率依然会随着网络负载的增加而增大,尤其是在复杂信道环境下,网络的性能下降愈加明显。文献[11]提出空间复用时分多址(Self-Organizing Time Division Multiple Access,STDMA)技术,可以在有效解决链式网络中节点竞争的同时,有效解决传统TDMA效率低下的问题,但是在节点随机分布的网络中,其时隙分配复杂且低效。协同通信技术可以利用空间分集改善网络传输性能,文献[12-13]基于纠错编码和相位抖动提出一种自主协同通信方案,可以在解决信道资源抢占的同时利用空间分集带来的传输增益。最常见的协同通信方法有分布式空时编码(Distributed Space Time Coding,D-STC)[14]和分布式波束成形(Direct Copper Bond,D-CB)[15-17]。然而协同技术需要大量节点间的协调,分布式波束成形技术需要节点知道协同发送的发射节点数量,并且需要所有的发射节点和接收节点知道信道信息。在动态拓扑的网络中,频繁更新节点间的协调信息,这些限制了协同通信技术在无线自组网中的应用。在网络动态拓扑变化的情况下如何协调节点是研究者需要解决的问题。
本文针对移动自组网场景,提出了一种基于协同通信的广播网络方案,充分利用基于竞争类协议在低负载下的传输优势传输竞争报文,利用动态时隙分配使节点能够进行协同通信,同时利用协同通信带来的传输优势完成数据广播。仿真实验结果表明,相较于基于竞争类协议的广播算法,本文方案在控制开销、负载能力、数据投递率及鲁棒性方面有显著提高。
1 研究背景
1.1 STDMA 技术
在移动自组网中,MAC 层采用信道资源固定分配的方式可以有效避免信道资源的抢占,典型的是TDMA 技术,其基本思想是将时间分割成帧,再将帧分为若干时隙,给每个节点分配独一无二的时隙。TDMA 接入技术从根本上解决了信道冲突问题,但这种时隙分配方式使得网络在单个时隙内只有一个节点发送数据,极大地浪费了信道资源,因此一般应用在无法对信道占用做出及时判断的远距离组网中,例如航空自组网。
STDMA 由传统TDMA 改进而来,能够将同一时隙按照不同空间位置分配给不同的节点,其核心是时隙分配算法。在节点随机分布的网络中,文献[18]将时隙分配抽象为图染色问题,并通过贪婪算法和遗传算法对其进行优化。而在链式网络中,节点间距在3 跳及以上时,则两节点之间的数据传输可以看作互不干扰,因此本文将3 个时隙作为一个循环,将相同的时隙号分配给间距3 跳的节点以保证节点间不会相互干扰。
定义:存在B个节点的网络,标记节点集合V=(v0,v1,…,vB-1),vi和vj分别表示节点i和节点j,0 ≤i,j≤B-1,v0表示源节点,T(vi)表示节点vi时隙。STDMA 时隙分配算法描述如下:
(1)网络中节点同步,时隙计数m初始化为0,随时隙增长。源节点分配时隙T(v0)为0,并准备发送包含自身时隙T(v0)的时隙分配报文。
(2)定义节点vi自身时隙T(vi)与m%3(%为取余)相等时为此节点的数据发送时隙。节点若已分配时隙,在数据发送时隙发送时隙分配报文。若节点未分配时隙,则等待时隙分配报文的到来。
(3)若节点vi首次接收到来自上一跳节点vj的时隙分配报文,则根据报文中的时隙信息分配自己的时隙,否则丢弃报文。具体算法为:
重复步骤(2),进行下一跳的时隙分配。
网络中节点完成时隙分配算法后,数据传输过程如图1 所示,即网络中的每个节点接收到数据包后,在满足发送条件的时隙中发送数据包。在时隙计数为3 时,网络中的源节点和节点3 可以同时发送数据包而不会产生数据冲突。STDMA 技术通过空间复用的方式,能够有效提高网络传输效率,降低传输延时。
图1 数据传输过程
1.2 自主协同通信技术
自主协同通信技术是一种需要较少节点间协调的通信方案,方案中假设有N个发射节点协同发送数据,发射节点将源数据进行分组,训练序列生成器给每个发射分组插入相同的训练序列,发射节点独立地对符号进行相位旋转,旋转值对于每组都是恒定的,因此在同一组中,复合信道的唯一变化是由信道传播因素所导致的。接收端收到从协同发射节点发出的经过相位旋转后的复合信号,通过训练序列估计信道响应并进行解码。假设整个过程只考虑发送和接收信号的等效基带模型,发射节点发送具有单位能量的符号分组s[k]。对于发射节点n,产生的随机相位和幅值分别为P[n,k]和A[n,k],将公共符号s[k]乘以相位P[n,k]和幅值A[n,k],得到传输符号为:
考虑在无记忆信道下引入附加增益G[n]和相位F[n],则接收端收到N个协同发射机发射的复合数据z[k]为:
其中,噪声样本φ[k]独立于发送符号和协同发射机的数量,则公式(3)可以表示为:
式中:C[k]和Q[k]分别是每个独立信道所施加的复合增益和相位。在考虑AWGN 信道中仅有两个协同发射节点的情况下,式(3)可以写为:
相位序列P[1,k]和P[2,k]利用信道估计得知,即接收机知道复合相位Q[k],并对接收信号进行反旋转,得到z[k]为:
如此,接收端即可进行译码。自主协同通信方案中协同节点只需保持TDMA 时间同步,利用相位抖动和现代前向纠错码即可实现协作通信,这使得节点间无须使用额外的冲突避免协议,在减少传输开销的同时,增强了传输的可靠性。
2 方案设计
在移动自组网的广播方案中,数据链路层往往采用CSMA 协议来避免信道的冲突,但是随着网络负载的增加,网络中会产生大量的冗余报文,造成数据冲突,使得过多的网络资源消耗在信道竞争与数据重传上,复杂的信道环境进一步影响了数据包的投递率,极大地限制了自组网广播的效率。虽然一些方案通过限制节点转发等方式一定程度降低了冗余报文与数据冲突的概率,但是这些方案往往需要增加控制开销来维持网络的拓扑关系,带来的性能提升有限,而协同通信机制可以在有效解决信道资源抢占的同时充分利用空间分集带来的传输增益。本文通过STDMA 动态时隙分配机制协调节点间的发射关系,将自主协同通信技术应用在数据传输上,并与采用CSMA 机制的广播方案相结合,设计出基于协同通信的广播算法。
整个广播过程划分为多个周期,如图2 所示,每个周期分为竞争、时隙分配和数据传输3 个阶段,其中竞争阶段采用CSMA 机制,利用其在低负载下的传输优势传输少量竞争报文,分配广播权限;时隙分配阶段利用STDMA 时隙分配算法完成时隙的动态分配,使节点传输满足自主协同通信;数据传输阶段充分利用协同通信带来的传输优势,完成数据的广播。通过将3 个过程周期化,克服网络动态拓扑带来的影响。
图2 广播过程
方案中竞争阶段分配固定的时间大小,时隙分配和数据传输阶段分配M个时隙,而固定时间大小和时隙阈值M的设置应考虑具体场景,对于网络节点密集、有较多广播需求的场景,其固定时间大小应适当增加,以保证竞争报文的广播;对于节点移动频繁的网络,应设置较小的时隙阈值M,以应对网络拓扑的变换。
竞争阶段需要完成节点初始化与广播权限的分配,流程如图3 所示,具体步骤如下文所述。
图3 竞争阶段流程
定义:VB表示广播竞争节点集合,VW为普通节点集合,vS为广播节点。初始条件为vS∈V,且VB∪VW=V,VB∩VW=∅。
(1)若节点vi已初始化,进入步骤(2);否则,节点初始化参数a(vi)为1,用于产生竞争随机值。
(2)有广播需求的节点vi加入集合VB,产生随机值δ(vi)∈[0,a(vi)],作为竞争条件,其余节点作为普通节点,加入集合VW。
(3)广播竞争节点在竞争阶段采用洪泛协议广播竞争报文(Control Packet Transmission,CPT)δtx(vi),其中δtx(vi)表示发送节点vi产生的随机值δ(vi)。
(4)节点vj首次接收到CPT,取得δtx(vi)并进行报文转发。若vj∈VB,且δ(vj)小于δtx(vi),则节点vj本周期竞争失败,更新参数a(vj)=1-δ(vj),加入普通节点集合VW。
(5)对于节点vi∈VB,且竞争阶段结束时δ(vi)一直属于最小值,则节点vi取得广播权限,在本周期中成为广播节点vS。
(6)进入控制报文阶段。
如图4 所示为控制报文与数据传输阶段流程。在控制报文阶段,通过控制报文完成网络中节点时隙的分配;在数据传输阶段,通过自主协同通信算法每个节点按照已分配好的时隙进行数据传输。具体步骤如下文所述。
图4 控制报文阶段与数据传输阶段流程
控制报文阶段:
(1)节点初始化参数时隙阈值M,参数时隙计数m为0,随时隙增长。广播节点vS定义自身时隙T(vS)为0。发送包含时隙的控制报文,进入数据传输阶段。普通节点则等待时隙分配。
(2)若节点首次接收到时隙分配报文,则根据接收到控制报文中的时隙信息分配自己的时隙。
(3)若节点在自身分配时隙后再次收到时隙分配报文,丢弃报文并将自身节点种类从普通节点变更为中继节点;否则,自身节点种类从普通节点变更为边界节点。
(4)进入数据传输阶段。
数据传输阶段:
(1)广播节点vS准备发送数据包,在节点的数据发送时隙进行数据包广播。
(2)若节点为中继节点,并且是首次接收到此数据包,则在数据发送时隙协同转发数据包,若接收到重复的数据包,则丢弃。
(3)若节点为边界节点,则节点在接收到数据包后,不进行任何转发。
(4)若时隙计数m小于时隙阈值M,则重复步骤(1)、(2)、(3);若时隙计数m大于等于M,进入步骤(5)。
(5)节点种类变更为普通节点,时隙计数清零,各节点时隙清除,进入竞争阶段。
图5 给出了时隙分配与数据传输示例。如图所示,节点vS获得广播权限后,进入时隙分配阶段,T(vS)和时隙计数m初始化为0。此时,vS满足发送条件,发送包含自身时隙T(vS)的时隙分配报文。由于无线信道的特性,距离源节点一跳的邻居节点都会收到包含广播节点时隙信息的报文。源节点vS的邻居节点读取报文中时隙信息T(vS),按式(1)分配时隙为1,并等待发送时隙的到来。
图5 时隙分配与数据传输示例
随着时隙计数m的增长,广播节点开始发送数据报文,此时网络中可能存在正在进行时隙分配过程的节点,但是与广播节点至少有3 跳距离,并不会对数据发送产生影响,这也是STDMA 空间复用带来的传输优势。当一跳节点收到数据包时,等待发送时隙进行转发。到达发送时隙时,动态时隙分配机制使得所有一跳节点满足自主协同通信的条件,能够协同地将数据包发送至两跳节点,广播节点同样会收到来自一跳节点的数据包,因为是已经发送过的数据包,对比后丢弃。网络中节点重复这个过程,完成数据广播过程。当时隙计数m与时隙阈值M相等时,时隙计数m清零,节点时隙清除,进入下一个广播周期。
3 性能仿真及结果分析
本文采用NS-2 离散网络仿真软件对提出的协同广播方案进行仿真,并与采用洪泛协议、北美国家广播(North Country Public Radio,NCPR)协议和逻辑块寻址(Logical Block Addressing,LBA)协议的广播网络在不同节点密度、网络负载以及移动速度下的网络性能进行对比,节点移动采用随机移动模型,详细的仿真参数如表1 所示。
表1 默认仿真参数
图6 仿真了不同任务负载下不同广播协议的分组传输开销。可以看出,洪泛协议的分组传输开销随着任务负载的增加而增加,当任务负载大于30 packet/s 时,传输开销明显增加,这是因为洪泛过程中会产生大量的冗余分组,造成了大量的冲突,增加了网络的传输开销。基于概率转发的NCPR 和基于可靠转发的LBA 协议通过减少节点的转发,一定程度上限制了冗余报文,降低了传输开销,但当任务负载达到50 packet/s 时,传输开销也有了明显涨幅,说明网络中的信道竞争开始出现。在基于协同通信的广播中,节点间按照分配好的时隙对数据包只进行一次转发,大幅度降低了分组传输的 开销。
不同任务负载对于投递率的影响如图7 所示。由于协同通信可以在避免信道资源抢占的同时充分利用空间分集带来的传输增益,所以网络投递率一直处于较高水平。NCPR 和LBA 协议网络投递率相较于协同通信广播下降了2.0%~6.3%。 展示了不同移动速度对广播控制开销的影响。实验结果表明,移动速度对LBA 和NCPR 的控制开销有明显影响,随着节点移动速度的增加,网络拓扑变化加快,链路的稳定性下降,NCPR 和LBA 协议需要更多的控制开销来维护网络的拓扑,以保证数据的传输。基于协同通信的广播网络由于是周期性更新网络,只在竞争阶段和时隙分配阶段产生控制开销,所以控制开销受节点移动的影响不大。
图9 给出了不同移动速度对分组投递率的影响。可以看出,所有广播方案的性能都随着节点移动速度的增大而降低。洪泛协议由于每个节点都参与广播,因此投递率相较于其他3 个广播协议仍处于较高水平。协同通信的广播由于节点间的协同带来的优势,在低移动速度下有较高投递率,但随着节点移动速度增加,网络拓扑变化破坏了时隙分配,节点间会出现一定冲突,导致投递率下降。而LBA与NCPR 这种需要维护邻居信息的广播协议,节点的移动使得网络的投递率大幅降低。
图9 移动速度对投递率的影响
在节点数量低于150 时,随着节点数量的增加,数据包投递率均有了一定的提升,除洪泛协议外的3 种协议平均时延均有一定的下降。节点数量高于150 时,随着节点数量的提升,基于协同通信的广播网络投递率和平均延时趋于稳定,其他3 种协议投递率逐渐下降,平均延时出现明显增加。这主要是因为在节点稀疏的网络环境里,节点数量的上升使得网络的连通性增加,提升了网络投递率。对于协同广播网络,网络的平均延时主要取决于时隙的大小和传输时隙的数量,网络连通性增加使得网络的平均传输时隙降低,也进一步降低了端到端平均延时。对于NCPR 和LBA 协议,网络连通性增加使得网络的开销进一步减小,这使得广播方案的运行更加有效,降低了端到端平均延时。但在节点密集的网络环境里,持续增加的节点使得网络变得更加拥挤,采用CSMA 竞争协议的广播方案会加剧信道的竞争和冲突,增加重传的概率,导致平均时延的增加和数据包投递率的下降。对于协同广播网络,节点密度的增加带来更多的传输增益,也进一步提高了网络的连通性,而网络广播所占用的平均时隙数量并没有增加,这使得网络能够在较低平均时延下仍保持较高的传输投递率。
4 结语
为了提高移动自组网的广播性能,针对目前基于CSMA 竞争信道广播协议存在的问题,本文将动态时隙分配技术与协同通信算法相结合,提出了一种基于协同通信的广播方案。该方案分为竞争阶段、时隙分配阶段以及数据传输阶段。利用基于CSMA竞争信道的广播协议在低负载下的传输优势进行广播权限竞争,利用时隙分配和协同通信带来的传输优势,完成数据的广播,并通过将3 个过程周期化,克服了网络动态拓扑带来的影响。仿真结果表明,基于协同通信的广播方案在传输开销、投递率和平均延时方面都优于NCPR 和LBA 广播协议。在节点数量较多或网络负载较高时,基于协同通信的广播方案不会产生大量的冗余传输及信道竞争,这使得该方案的网络性能有更加明显的优势。