基于动态中继选择的无人机自组网协作接入协议

2022-02-18 06:44王睿王文灿白丽范兼睿张莉涓雷磊
数据采集与处理 2022年1期
关键词:时隙投递中继

王睿,王文灿,白丽,范兼睿,张莉涓,雷磊

(1.南京航空航天大学电子信息工程学院,南京 210016;2.中国人民解放军96901部队,北京 100089;3.北京航天自动控制研究所,北京 100854)

引 言

无人机自组织网络(unmanned aerial vehicle ad⁃hoc network,UANET)[1⁃2]凭借其抗毁性强、节点机动性高等优势引起了业界与学术界的广泛关注。然而,要充分利用UANET的优势,就必须考虑其特征,如无人机飞行轨迹、能耗、动态拓扑和信道状况等。对于UANET,要在节点高速移动而导致网络拓扑快速变化的情况下保持稳定的性能,必须使用有效的媒体接入控制(Media access control,MAC)协议来协调每个节点的数据包传输,并适应网络流量负载变化。因此,设计实用、可靠和高效的MAC协议是UANET中的关键问题。

MAC协议可以分为3类:基于竞争的MAC协议[3⁃4]、无竞争MAC协议[5⁃6]以及混合MAC协议[7⁃8]。已经证明:在多跳、高网络负载的情况下,基于竞争的MAC协议不具有扩展性。这是由于隐藏终端问题会引起传输冲突的增加[9],并且随着节点数量的增加,传输冲突会变得更加严重。时分多址(Time di⁃vision multiple access,TDMA)接入协议作为一种无竞争的MAC协议,通过时隙调度实现了网络中节点无竞争地发送数据,从而实现了较高的信道利用率,并且在传播时延大的环境以及多跳传输环境中有更优异的表现。

为了提高节点的传输速率、扩大通信覆盖范围,在传统自组织网络MAC协议的基础上,引入了节点间协作通信的概念。协作通信需要网络中的多个节点以协作的方式工作,利用网络中的潜在资源提升网络性能。文献[10]提出了一种可在802.11网络中进行协作通信的协议,利用高数据速率节点帮助低数据速率节点转发数据。利用对传输过程的监听,每个低数据速率节点维护一个协作表,潜在的协作节点可以帮助低数据速率节点进行传输。在传输过程中,每个低数据速率节点可以直接传输或者通过高数据速率协作节点传输,以使总传输时间最小。在文献[11]中提出了一个用于无线传感器网络的协作MAC协议(Cooperative MAC,COMAC),该协议对基于802.11g的无线网络在真实场景下实现协作,并利用从发送方节点的邻近节点侦听到的数据包来实现协作通信。COMAC增加了点对点场景下的传输范围,并提高了数据包递交成功率,同时可节省能耗。文献[12]提出了基于多天线系统的协作Aloha协议(Cooperative Aloha,C⁃Aloha),通过实现分组重传以获得传输分集。该协作MAC协议设计增加了时隙Aloha系统的最大吞吐量,同时C⁃Aloha还可应用于其他基于竞争的MAC协议。文献[13]针对协作通信在MAC层面临的问题和挑战提出了一种跨层协作MAC设计方案,研究如何将物理层协作与MAC层集成,以实现更高的吞吐量和更可靠的通信。该跨层协作MAC协议支持多种传输速率和传输模式,性能优于传统的非协作MAC协议。

上述MAC协议主要针对单跳传输设计。然而,在网络拓扑中,一对源⁃目的S‑D节点之间的通信距离往往大于单跳传输范围。因此,假设有一节点恰好位于一对单跳不可达的S‑D节点共同传输范围内,且该节点具备一定的数据传输能力,则该节点不仅可以发送来自自己应用层的数据包,还可以在S‑D节点对之间转发数据分组,这样的中间节点称为默认中继R节点。然而,在实际通信环境中,由于背景噪声干扰变化、节点高速移动和节点损坏等原因很容易导致默认中继节点性能降低,甚至丧失中继功能,因此对于中继选择与性能的研究非常重要。文献[14]针对基站对移动站的组播通信场景设计了一种基于位置感知的分布式移动中继选择算法,该方法在第1阶段将距离基站较远的成功传输移动站以较高的概率激活为移动中继,从而提升第2阶段的覆盖性能,文章用数值与仿真结果证明了位置感知分布式(Location aware distributed,LAD)算法具有更高的能源利用率与覆盖性能。文献[15]针对多跳放大转发大规模多输入多输出(Multiple input multiple output,MIMO)中继系统设计提出了一个框架,该框架假设每个天线均有功率限制,并且在该框架的基础上利用矩阵单调优化推导出了具有最优解的架构,仿真结果证明该方法具有更好的中继性能。文献[16]专注于多跳放大转发MIMO中继通信,提出了一个包括各种收发器设计的框架,将各种目标函数统一为一个多目标优化问题,将每一跳的中继操作理解为矩阵加权操作,对于仅具有纯成形约束或联合功率约束的两种情况,都得出了最优闭式解。

除此之外,使用辅助中继节点协作传输机制可以大幅提升源节点与目的节点间中继传输的性能。对于一对超出单跳通信范围的S‑D节点来说,可以将除了默认中继节点R之外同样具有中继功能的节点称为辅助中继节点H,辅助中继节点可以在默认中继节点R转发失败时进行协作转发,增加传输成功率,从而提高网络吞吐量。目前已有许多针对辅助中继节点转发机制的研究。文献[17]利用虚拟天线阵,提出了一种基于TDMA的协作MAC协议,即协作TDMA(Cooperative TDMA,C⁃TDMA),使协作传输能够在瑞利衰落信道中进行,以提高正确接收数据包的概率和系统吞吐量。C⁃TDMA协议极大提升了传统TDMA系统的吞吐量。文献[18]提出了用于多跳中继网络的协作中继TDMA(Coopera⁃tive relaying TDMA,CR⁃TDMA)机制,在该网络中,默认中继节点可以利用附近的辅助中继节点帮助转发,缓存队列未满的辅助中继节点可以帮助转发中继数据包。CR⁃TDMA的一个特征是只有当默认中继节点成功地从源节点接收数据包,辅助中继节点才可以开始协作。由于源节点和默认中继节点之间不稳定的信道状况,该条件会导致利用协作资源的效率较低。在文献[18]的基础上,文献[19]对协作机制进行了改进,即无论默认中继节点是否成功接收到了源节点S发送的数据包,都不会影响辅助中继节点的协作行为,只要辅助中继节点成功接收到S节点发送的中继数据包并且自身的网络层队列为空,就会将该数据包加入网络层队列中,并且即使该中继数据包在当前时帧没有被成功转发,也不会将其删除,而是等到下个时帧继续尝试转发。

虽然文献[18]与文献[19]都提出了有效的辅助中继节点协作转发机制,提升了中继节点传输数据包的性能。但目前提出的TDMA协作转发协议均是针对固定网络拓扑设计的,且采用的时隙分配方式均为固定时隙分配,无法对网络拓扑变化或节点突发故障等状况作出快速应对。同时,当节点自身业务流负载较大时,将会影响辅助中继节点的协作性能。

针对上述缺点,本文提出一种基于动态中继选择的无人机自组网协作时分信道接入协议(Dynamic cooperative TDMA,DC⁃TDMA)。在每个时帧周期,该协议都会动态选择有效的默认中继与辅助中继节点以有效适应网络拓扑动态变化,同时采用双队列协作机制可有效避免大流量负载对缓存队列的影响,在提高中继数据包投递率的同时,也能够降低端到端时延。

1 辅助中继节点双队列协作机制

在如图1所示的两跳中继网络中,将源节点S预先确定用于转发数据包给目的节点D的中继节点R称为默认中继节点,节点R周围同样可以中继数据包的节点Hk(k=1,2,…)称为源节点S的辅助中继节点。为提高转发成功率,S节点可以在附近的辅助中继节点的中继缓存队列中没有数据包的情况下,借助它们来帮助转发数据分组。则数据传输可分解为4个类型,即S→R,S→Hk,R→D和Hk→D。

图1 辅助中继节点协作转发示意图Fig.1 Schematic diagram of helper relay nodes’cooperative forwarding

在本协议中,辅助中继节点Hk只有在自身MAC层中继缓存队列为空时才可以开始协作,并将成功接收的中继包存入中继缓存队列头部,否则不参与协作,如图2所示。

图2 协作转发机制缓存队列示意图Fig.2 Schematic diagram of cooperative forwarding mecha⁃nism’s cache queue

如果某一辅助中继节点在当前时帧接收到了一个中继数据包,那么它会侦听当前时帧中默认中继节点R的发送。如果默认中继节点成功发送当前时帧的数据包并收到了目的节点回复的ACK帧,则默认中继节点R和所有携带当前时帧中继数据包的辅助中继节点Hk都会从缓存队列中丢弃该中继数据包。

在辅助中继转发时隙到来时,如节点Hk携带了目的地址为D的中继数据包,则进行转发。源节点S可侦听节点Hk成功发送的数据包,随后检查并丢弃队列中相同数据包。如节点D回送ACK,所有中继节点会从队列中丢弃相同数据包。接下来将对DC⁃TDMA协议的辅助中继节点协作转发性能进行分析。

默认中继节点R的缓存队列长度为L,所以对于R来说,将观察点设置在每个时帧传输时隙的末尾,则缓存队列共有L+1种状态,状态i表示缓存队列中有i个数据包。将系统建模为马尔科夫链,推导DC⁃TDMA协议的协作转发的中继数据包投递率性能。在推导出马尔科夫链的一步概率转移矩阵后,可以求解出马尔科夫链的稳态分布,最终获得DC⁃TDMA协议协作转发的中继数据包递交成功率。

1.1 控制时隙阶段默认中继节点缓存队列状态转移矩阵

将数据传输阶段之前的时隙(即广播时隙、请求时隙、转发请求时隙和分配时隙)统称为控制时隙阶段。中心节点在控制时隙阶段中收集全网节点的请求信息,并进行时隙分配。在控制时隙阶段的每个时隙,默认中继节点只可能以一定概率在非中继缓存队列中添加非中继包,所以中继缓存队列不会产生变化,即控制时隙阶段对中继缓存队列的状态没有影响。

1.2 数据传输阶段默认中继节点缓存队列状态转移矩阵

因为数据传输阶段由K个相同结构的数据帧组成,所以可以先求解一个数据时帧内的状态转移矩阵B。将从状态i转移到状态j的转移概率表示为Pj,i。则状态转移矩阵可以表示为

式中,Bi为与i的初始状态对应的行向量。将默认中继节点R的缓存队列的初始长度分为3类:缓存队列为空,缓存队列已满,缓存队列非空且未满[20]。下面分别推导这3种情况的转移概率。

1.2.1 默认中继节点缓存队列初始状态为空时转移概率

当默认中继节点R的初始缓存队列为空,假设该状态(即i=0)转移到状态j,也就是说缓存队列中增加了j个数据包。由于每个数据时帧中为源节点分配一个时隙,当一个数据时帧结束时,默认中继节点的中继缓存队列中至多增加一个中继数据包,因此,可以求出默认中继节点R的初始状态由状态i=0转移到状态j的概率Pj,0为

式中:Psucc,rs为默认中继节点R成功接收到源节点S发送的中继包的概率,Psucc,hs为辅助中继节点Hk成功接收到源节点S发送中继包的概率,Pidle为辅助中继节点缓存队列为空的概率,Perr,dr为目的节点D没有成功接收到默认中继节点R转发包的概率,nh为辅助中继节点的数量。当默认中继节点成功接收到源节点发送的数据包,但没有完成向目的节点的成功转发,同时辅助中继节点也没有转发成功时,源节点的中继数据包便会缓存在默认中继节点的缓存队列中,等待下一个数据时帧到来时重新发送。

1.2.2 默认中继节点缓存队列初始状态为满时转移概率

当默认中继节点R的初始缓存队列已满,则无法再接收源节点的数据包。所以在默认中继节点R自身数据时隙到来之前,其缓存队列不会变化。在默认中继节点R的转发时隙,如果目的节点成功接收中继数据包,则节点R的缓存队列会丢弃这个数据包,否则继续保持不变。因此在中继时隙结束时,默认中继节点R缓存队列由状态L转移到状态j的概率可以表示为

式中Psucc为默认中继节点成功发送中继数据包的概率。

1.2.3 默认中继节点缓存队列初始非空且未满时转移概率

在上面两个小节中分别推导了默认中继节点缓存队列初始状态分别为i=0,i=L时的状态转移概率Pj,0,Pj,L,根据这两个初始状态的转移概率即可表达出B0,BL。在这一节中,将会继续推导默认中继节点R的初始缓存队列非空且未满时的转移概率Bi(1≤i≤L-1)。

当默认中继节点R的缓存队列初始非空且未满时,缓存队列的状态在源节点发送阶段、默认中继节点转发阶段、辅助结点协作阶段都可能产生变化,所以先分别求出这3个阶段的概率转移矩阵,再进行相乘,即可得到整个时帧的概率转移矩阵。考虑到默认中继节点接收源节点的数据包有成功和不成功这两种情况,所以Bi(1≤i≤L-1)可以表示为

式中,SY,RY,HY分别为默认中继节点成功接收了源节点发送的数据包情况下在源节点发送阶段、默认中继节点转发阶段、辅助中继节点协作阶段的转移概率矩阵,SN,RN,HN分别为默认中继节点未成功收到源节点发送数据包的情况下在源节点发送阶段、默认中继节点转发阶段、辅助中继节点协作阶段的转移概率矩阵。

(1)默认中继节点成功接收源节点数据包情况下的子矩阵推导

当默认中继节点成功接收源节点发送的数据包的情况下,首先对SY进行推导。在源节点传输阶段,默认中继节点的缓存队列中会增加一个中继数据包。因为初始状态为i=0,i=L时的转移概率子矩阵已推导出,所以只考虑1≤i≤L-1,即有L-1种初始状态,所以SY是一个(L-1)×(L+1)的矩阵,即[sj,i](L-1)×(L+1)。sj,i可以表示为

在默认中继节点的转发时隙,RY=[rj,i](L-1)×(L+1),由式(7)可知,经过源节点传输阶段后,默认中继节点缓存队列中至少有2个数据包,所以在中继节点转发时隙开始阶段,一定满足i≥2。在这一时隙中,默认中继节点的中继缓存队列有可能因为成功发送而从队列中删除一个数据包,所以rj,i可以表示为

在剩余的MR-1个时隙中,因为讨论的是默认中继节点缓存队列初始状态(1≤i≤L-1)的情况,即默认中继节点成功接收源节点发送的数据包至少排在队列中第2个,所以该数据包在当前时帧的中继转发时隙不可能进行发送。如果至少有一个辅助中继节点成功接收并转发了源节点的数据包,则在其中一个辅助时隙中,默认中继节点会从缓存队列删除一个数据包。如果所有的辅助中继节点都没有成功接收源节点发送的数据包,则默认中继节点的缓存队列不会发生变化。将矩阵HY表达为HY=[hj,i](L+1)×(L+1),则hj,i可以表示为

(2)默认中继节点未成功接收源节点数据包情况下的子矩阵推导

在默认中继节点没有成功接收源节点发送的数据包的情况下,源节点传输阶段缓存队列中不会增加数据包,矩阵SN=[s_j,i](L+1)×(L+1),s_j,i可以表示为

在默认中继节点转发时隙,RN=[rj,i](L+1)×(L+1),经过源节点传输阶段后,中继节点缓存队列中至少有1个数据包,所以在中继节点转发时隙开始阶段,一定满足i≥1。在这一时隙中,默认中继节点缓存队列有可能因为成功发送而从缓存队列中删除一个数据包,所以rj,i可以表示为

因为默认中继节点没有成功接收源节点的数据包,所以在剩余的MR-1个时隙中,中继节点缓存队列状态将不受辅助中继节点的影响,则

式中I为单位矩阵。随后将式(5~10)代入式(4)可得到Bi(1≤i≤L-1),再联立式(2~3)求出的B0和BL即可得出数据传输阶段默认中继节点缓存队列状态转移矩阵B。

令Πr=(πr0,πr1,···,πrL)为默认中继节点的缓存队列各种状态的的稳态分布,通过求解矩阵方程ΠrB=Πr即可得出稳态分布向量Πr。

接下来对协作的性能进行推导。中继数据包投递成功率可以用每个数据帧中成功转发中继数据包的数量来衡量,只有当默认中继节点和辅助中继节点均没有成功转发时,中继数据包的转发才不会成功,所以投递成功率Th可以表示为

式中Psucc,rs(1-πrL)Psucc为默认中继节点成功接受源节点数据包,同时中继缓存队列非空,并且成功转发给目的节点的概率,则1-Psucc,rs(1-πrL)Psucc为中继节点因队列满而没有成功转发的概率,(1-Psucc,hsPidle)nh为所有辅助节点均没有成功转发的概率,则Th表示中继数据包转发成功的概率。

2 DC‑TDMA协作策略实现步骤

DC⁃TDMA协作策略基于动态时隙分配协议,分为同步过程、时隙请求过程、时隙分配过程以及数据传输过程。DC⁃TDMA时帧结构如图3所示。

图3 DC⁃TDMA时帧结构图Fig.3 DC⁃TDMA time frame structure diagram

2.1 广播同步帧阶段

在每个控制帧的同步时隙阶段,中心节点广播同步帧,用于告知哪些节点在中心节点的一跳通信范围内,同时可以让待入网节点获知网络同步信息,从而发起入网请求。

2.2 时隙请求阶段

时隙请求阶段在网络时帧的请求时隙与转发请求时隙内完成,两种时隙的数量分别为N+1与N,N为网络中节点数。请求时隙的第1个时隙与最后1个时隙用于新加入网络的节点分别进行入网与发送请求帧,从第2个时隙开始的N-1个请求时隙用于网络中除中心节点外的其他与中心节点一跳可达的节点发送各自的数据时隙请求。如果节点收到了两跳节点的数据时隙请求帧,则确认自己具有中继功能,将自己标记为中继节点,随后在后N个转发请求时隙中将请求节点信息转发给中心节点,中心节点将各节点请求发送数据的信息进行存储。中心节点每收到一个数据时隙请求帧,就判断发送节点是否有数据要发送,如果有,则存储到本地记录中。时隙请求阶段结束后,中心节点通过遍历记录,即可获得当前网络时帧内需要发送数据分组的节点信息。在后N个转发请求时隙中,当中心节点收到转发请求帧时,即可知发送该帧的节点具有中继功能,将该节点添加到自身维护的中继节点信息表中。

2.3 时隙分配阶段

时隙分配阶段在网络时帧的分配时隙内完成。时隙分配阶段分别由中心节点与中继节点广播时隙分配帧和转发时隙分配帧。在广播时隙分配帧阶段,中心节点根据请求时隙中存储的待发送节点信息将当前时帧数据发送阶段的时隙分配给有发送需求的节点。同时在每个时帧中动态为每个节点选择分配对应默认中继节点,并通过广播分配帧,将时隙分配信息和默认中继节点分配信息告知自己一跳通信范围内的各个节点。数据传输阶段由K个相同结构的数据帧组成,每个数据帧包含M个数据时隙,M的数量由中心节点决定后通过广播分配帧来让网络中其他节点知晓。每个数据帧由MS个源节点传输时隙与MR个中继节点传输时隙组成,即M=MS+MR。所有中继节点(包括默认中继节点与辅助中继节点)均在自己的转发分配时隙广播转发时隙分配帧,将时隙分配信息告知网络中的两跳节点,至此全网节点都掌握了无冲突的时隙分配信息。

2.4 数据发送阶段

数据发送阶段在数据时隙内完成。全网节点在自己的数据时隙到来时从网络层缓存队列中取出数据包发送。节点接收到数据时隙分配帧后,即可获知本节点在当前时帧内分配到的数据时隙编号。在自身数据时隙到来时,节点在一个时隙的时间内完成数据包的传输与应答。

2.5 节点入网/退网流程

(1)新节点入网流程

当一跳范围内有新节点需要加入网络时,节点首先通过接收当前时帧的同步帧获知时间同步信息以及当前时帧中心节点ID等信息。随后待入网新节点在当前时帧请求阶段的首个请求时隙中向中心节点发送入网请求。同时,在首个请求时隙内,待入网新节点按概率发送入网请求帧以避免冲突。中心节点收到入网请求帧后,回复入网应答帧,同时将当前时帧中的网络节点数告知待入网新节点。

(2)节点退网流程

如果某节点需要主动退出网络,若该节点与中心节点一跳可达,则在自身请求时隙向中心节点发送退网请求帧。若该节点是两跳节点,则向中继节点发送退网请求帧,中继节点收到退网请求帧后,在自身转发时隙向中心节点进行转发。时隙请求阶段结束后,中心节点将当前时帧中退网节点信息加入分配帧告知网络中其他节点,其他节点收到后,对自身维护的网络节点数量、编号等信息进行更新。

3 仿真与结果分析

本节在EXata仿真平台下实现了该协议,并分别从中继数据包投递率和时延两个角度对该协议的性能进行评估分析。节点在仿真区域中按照设定的拓扑分布,每一时帧中数据帧重复数K的取值为10。仿真中网络层采用静态路由,网络中的仿真业务类型为恒定比特率(Constant bit rate,CBR)业务,仿真时长设为60 s,所有仿真结果均为多次仿真取平均后的结果,其他仿真参数如表1所示。

表1 仿真参数Table 1 Simulation parameters

3.1 中继节点均有流量负载情况下协议性能验证分析

首先考虑网络中除默认中继节点之外还有辅助中继节点存在的情况。设网络中源节点S与目的节点D位置固定,中继节点R、H1、H2初始位置均位于源节点与目的节点一跳范围内,且围绕初始位置盘旋,可近似看作位置固定。

中继节点R、H1、H2位置近似固定条件下的仿真拓扑示意图如图4所示。在这样的拓扑条件下,随着节点发包速率由慢到快逐渐增加,3种协议的中继数据包投递率随发包速率的变化曲线如图5所示。由图5可以看出,当节点发包速率为0~900个/s时,TDMA协议与OCR⁃TDMA协议的中继数据包都可以及时被处理,此时中继数据包投递率均为1,而当发包速率逐渐增加为1 000~1 500个/s时,普通TDMA协议由于辅助中继节点不参与协作,故中继数据包投递率低于OCR⁃TDMA,但当发包速率高于1 600个/s后,辅助中继节点负载增加,不再出现网络层为空的情况,所以不参与协作转发,此时性能等同于普通的TDMA协议,中继数据包投递率迅速降低,直到2 300个/s时趋近于0。而本文所提出的协议为了实现两跳范围内内节点的动态中继选择、入网退网,因而引入了节点同步、时隙请求、转发请求、时隙分配和转发分配等控制阶段的时隙开销,导致在数据包发送速率较低时中继数据包投递率略低于TDMA,但由于节点有双队列存在,中继转发队列与应用层数据包到达队列不是同一个,所以不受应用层发包速率的影响,在节点发包速率超过1 600个/s时,辅助中继节点缓存队列不再出现为空的情况,OCR⁃TDMA协议中继数据包投递率急剧下降,但本文所提出的协议依然具有较高的中继数据包投递率,当数据包发送速率达到2 300个/s时,TDMA和OCR⁃TDMA协议中继包投递率几乎为0,本文所提协议依旧具有40%左右的中继数据包投递率。

图4 固定仿真拓扑示意图Fig.4 Schematic diagram of fixed simulation topology

图5 固定拓扑条件下中继包投递率随发包速率变化曲线Fig.5 Curves of relay packet delivery rate changing with the packet sending rate under fixed topology

节点发包速率由慢到快逐渐增加,3种协议的端到端时延随发包速率的变化如图6所示。由图6可以看出,当节点发包速率较低时,数据包到达间隔较大,网络层队列中的数据包会被很快转发,所以具有很低的端到端时延。在发包速率为900~1 500个/s之间时,由于发包速率(即数据包到达率)的增加,因排队时延增加,端到端时延开始增大。其中,由于辅助中继节点未满,存在协作转发,所以这个区间内OCR⁃TDMA的端到端时延显著低于普通TDMA协议。本文所提出的协议由于引入了节点同步、时隙请求、转发请求、时隙分配和转发分配等控制阶段的时隙开销,服务率略低于TDMA与OCR⁃TDMA协议,所以端到端时延最先增加,但在达到0.12 s后即保持稳定的值,而OCR⁃TDMA协议随着发包速率增加直到数据包到达率大于服务率,不再出现队列非空的情况,从而不再参与协作,在发包速率超过1 600个/s后,性能与普通TDMA协 议相同,并急剧 增大,在 发包速 率为1 800个/s时,TDMA与OCR⁃TDMA协议的端到端时延约为本文所提出协议的2倍。

图6 固定拓扑条件下端到端时延随发包速率变化曲线Fig.6 Curves of end⁃to⁃end delay changing with the packet sending rate under fixed topology

3.2 拓扑变化情况下协议性能验证分析

当网络拓扑变化时,本文所提出的协议相比TDMA与OCR⁃TDMA更能适应网络拓扑动态变化。当中继节点动态运动并脱离目的节点视距通信范围时,将不再具有中继转发功能。拓扑变化图如图7所示。

图7 运动仿真拓扑示意图Fig.7 Motion simulation topology diagram

在初始网络拓扑中,源与目的节点位置固定且一跳不可达,节点R与节点H均位于源节点和目的节点一跳通信范围内,以100 m/s的速度朝源节点方向移动,节点R′位于源节点一跳范围内、目的节点一跳范围外,以100 m/s的速度向中继节点反方向移动。虚线区域表示源与目的节点一跳通信范围的交叉重叠部分。

在如上的拓扑动态变化情况下,随着节点发包速率的增加,3种协议的中继数据包投递率随发包速率的变化曲线如图8所示。由图8可以看出,网络拓扑的动态变化导致TDMA协议与OCR⁃TDMA协议在原有默认中继节点(辅助节点)均移动出中继范围后,无法动态选择新节点作为中继节点,所以中继数据包投递率远小于DC⁃TDMA协议。在发包速率为0~800个/s时,3种协议的中继数据包都可以被及时处理,此时投递率比较稳定,但由于TD⁃MA与OCR⁃TDMA协议无法动态选择中继节点,导致数据包投递率只有DC⁃TDMA协议的1/6。当发包速率在800~1 500个/s之间时,由于OCR⁃TDMA协议在辅助节点未失效时可以利用辅助节点进行协作转发,所以相较于TDMA具有更高的投递率。当发包速率超过1 500个/s时,辅助节点应用层到达数据包无法及时处理,网络层队列不为空,无法协作转发,此时OCR⁃TDMA性能等同于TDMA,在发包速率为2 000个/s时投递率趋于0,但DC⁃TDMA由于双队列机制与动态中继选择机制仍可保持较高投递率。

图8 拓扑动态变化情况下中继数据包投递率随发包速率变化曲线Fig.8 Curves of relay data packet delivery rate changing with the packet sending rate un⁃der the dynamic change of topology

随着节点发包速率的增加,3种协议的平均端到端时延随发包速率的变化如图9所示。由图9可以看出,当发包速率在0~800个/s时,由于数据包可以被及时处理,3种协议的中继数据包时延都趋近于0。但当发包速率超过800个/s后,由于拓扑动态变化导致原有中继节点失效以及无辅助节点帮助协作转发,TDMA时延迅速上升。在发包速率为800~1 200个/s时,由于DC⁃TDMA引入了控制阶段的时隙开销,服务率略低于TDMA与OCR⁃TDMA协议,所以端到端时延最先增加,但在发包速率达到1 200个/s时即保持稳定。而由于OCR⁃TDMA协议辅助节点网络层队列不为空无法协助转发,同时也无法应对拓扑动态变化,导致在发包速率超过1 200个/s后时延迅速增大。

图9 拓扑动态变化情况下端到端时延随发包速率变化曲线Fig.9 Curves of end⁃to⁃end delay changing with the packet sending rate under the dynamic change of topology

当发包速率为2 000个/s时,3种协议随仿真时间统计的目的节点接收中继数据包数量如图10所示。由于TDMA协议与OCR⁃TDMA协议中继(辅助)节点均是预先分配,无法动态适应拓扑变化,当中继与辅助中继节点均移动出目的节点一跳通信范围后,则无法参与转发,导致10 s后目的节点无法再接收到源节点数据包。但由于OCR⁃TDMA协议利用了辅助中继节点,所以OCR⁃TDMA相对TDMA可转发更多中继包。DC⁃TDMA协议可动态选择中继与辅助中继节点,当节点R′首先进入源节点与目的节点交叉通信范围时,会发挥辅助中继功能,帮助转发节点R的数据包。而当中继与辅助中继节点均移动出目的节点通信范围后,中心节点会重新选择并指定节点R′作为默认中继节点,从而尽最大可能保证在仿真运行时间内,源节点和目的节点之间一直存在中继节点,相比TDMA与OCR⁃TDMA协议极大提高了网络吞吐量。

图10 发包速率为2 000个/s时接收中继包数量随时间变化曲线Fig.10 Curves of the number of received re⁃lay packets versus time when the pack⁃et sending rate is 2 000 per second

4 结束语

针对高速移动无人机自组织网络环境,提出了DC⁃TDMA,采用中继节点动态选择机制,在每个时帧周期动态选择更新有效的默认中继节点与辅助中继节点,有效适应拓扑变化。采用双队列协作机制,可有效避免大流量负载对缓存队列影响,在提高中继数据包投递率的同时也能降低端到端时延。仿真表明该协议与TDMA协议及OCR⁃TDMA协议相比,在网络流量负载较大、网络拓扑动态变化的情况下均能保持稳定的高数据包投递率与低平均端到端时延。在本文的研究基础上,未来可进一步考虑动态调整时隙分配方案中数据时帧的数量,从而在网络拓扑变化的情况下进一步提升网络性能。

猜你喜欢
时隙投递中继
传统与文化的“投递”
基于时分多址的网络时隙资源分配研究
自适应多中继选择系统性能分析
瑞利信道下全双工中继系统性能研究
基于市场机制的多机场时隙交换放行策略
一种基于时隙优化的邻居发现算法研究
一种高速通信系统动态时隙分配设计
一种基于无线蜂窝网络的共享中继模型
中继测控链路动态分析与计算方法研究
大迷宫