一种利用信道侦听的动态TDMA 协议
2015-03-06白梓佑刘芸江周得敏
白梓佑,刘芸江,周得敏
(空军工程大学 信息与导航学院,陕西 西安 710077)
在战术数据网络中,为了使网络节点有效利用信道资源,一般通过媒质接入控制(Media Access Control,MAC)协议来协调节点接入无线信道的时间[1]。无线网络的MAC 协议可以分为两种类型:竞争型MAC 协议和调度型MAC 协议[2]。TDMA 协议采用时间调度的方式让节点在确定的时刻接入信道,可有效地避免数据冲突,在军事中得到广泛应用,如北约Link16 和Link22 数据链都采用TDMA 协议[3]。但传统TDMA 协议在业务量小或网络节点间业务量不对称的情况下会造成信道资源的严重浪费。
为提高信道利用率,改善网络性能,人们对TDMA协议展开了大量研究。文献[4]将时隙分成竞争部分和数据部分,每个竞争时隙对应一个较大的数据传输时隙,节点在竞争部分获得的交互信息,确定数据段时隙的使用权。文献[5]提出一种无竞争的基于TDMA的CA-TDMA 协议,通过对超帧中竞争时隙的直接分配和数据时隙的相互申请来实现在整个网络中无时隙竞争。文献[6]提出一种适用于Link22 的动态时隙分配算法,在时隙预约阶段,系统为不同数据包划分不同的优先级,根据数据包的优先级生成完整的时隙分配列表。目前,诸多TDMA 的改进协议[4-6]均采用预约的方式提高时隙的利用效率,但当网络中存在暴露终端、隐藏终端问题,或因无线信道传输损耗等问题使得网络中部分节点不能正确接收预约信息时,这些节点将无法确定时隙分配信息,出现不同用户之间发送信息的不同步现象。
本文在传统TDMA 协议的基础上,提出并设计了一种利用信道侦听的动态TDMA 协议(CS-TDMA,TDMA utilizing channel sense),该协议利用无线信道中信号通过广播方式传播的特点,各节点分别根据侦听到的其他节点的信息,独立估计其他节点业务量的大小,当时隙剩余时主动通知业务量大的节点占用将剩余时隙发送数据,避免了时隙分配信息不同步的现象。
1 利用侦听的TDMA 协议
1.1 设计思想
在TDMA 网络中,一个节点发送数据时,其它节点都处于接收状态。因此,根据整个时隙发送数据量的大小,便可判断该节点的时隙是否完全利用。每个节点设置一个计数器对其他节点的业务量情况进行打分,判断业务量大小的临界值设为一个固定值,其取值小于理论最大发送数据量。将每个节点在一段时间内的打分情况进行累加,以此来评估该节点业务量的大小。若某节点时隙剩余,就向业务量评估最高的节点发出ATS(access to send)消息包,通知其立即占用剩余时隙发送数据。由此,便可根据节点间业务量的大小情况动态地占用时隙,且避免了在预约的方法中可能造成时隙使用混乱的情况。CS-TDMA 和TDMA 协议的原理,分别如图1 和图2 所示。
图1 CS-TDMA 协议原理
图2 TDMA 协议原理
1.2 业务量评估算法
采用指数递增的方法为节点的业务量进行打分。网络初始化时,将节点计分和增量值初始化,score=0,gain=1,并选定临界值。若检测到节点发送的数据量达到临界值,为该节点计1 分,若下一时帧的时隙仍然完全利用,计2 分,再下次计4 分,依此类推;若未达到临界值,则减去前一时帧的计分。具体计算方法如下:
步骤1 统计节点N 在时隙n 内发送的数据量Gslot;
步骤2 比较Gslot和Gmax的大小,Gslot>Gmax执行步骤3,否则执行步骤4;
步骤3 gain=2*gain;score=score+gain;跳至步骤5;
步骤4 score=score-gain;
步骤5 若score <=0,score=0,gain=1;
步骤6 存储节点N 在该时隙获得的score 和gain 值,作为下一时帧初始值。
1.3 时隙分配算法
CS-TDMA 协议中,当时隙开始时,处于发送状态的节点首先发送自身缓存的数据,若数据发送完毕,但时隙还有剩余,则向自身统计中的业务量值最高的节点发送ATS 信息;处于接收状态的节点,对接收到的数据进行统计处理,若接收到的是ATS 信息,则立即发送本节点缓存数据直到时隙结束。具体时隙分配流程如图3 所示。
图3 CS-TDMA 协议时隙分配算法
2 建立仿真模型
利用OPNET 仿真平台,仿真模型主要从网络模型、节点模型和进程模型3 个层次建立[7]。网络模型就是将一定数目的节点分布在适合的网络范围内,反应网络的拓扑结构;节点模型体现节点内部的通信流程;进程模型用源代码和有限状态机来描述协议。
2.1 网络和节点模型
场景中设置节点数为12 个,将节点分布于60 km×80 km 的范围内,节点间通信距离约为15 km。节点模型由4 部分组成:source 进程、CS_TDMA 队列、发射天线rt 和接收天线rr。其中,source 进程模拟数据业务的产生,以及发送业务量和接收业务量相关的统计;CS-TDMA 队列负责数据缓存、时隙的划分和分配,并控制节点接入信道,是CS_TDMA 协议的主要实现部分;rt 进程和rx 进程分别负责发送数据到无线信道和从无线信道中接收数据。
图4 网络和节点模型
2.2 CS-TDMA 进程模型
进程模型使用有限状态机(FSM)来描述进程的逻辑行为,有限状态机使用状态转移图来表示状态的转移。根据协议思想,建立的CS-TDMA 进程模型如图5所示,其状态名称及作用表述如下:(1)init(初始化状态)。程序执行时进入本状态,定义统计量和变量,初始化变量。(2)idle(空闲状态)。等待中断。节点产生自中断,或当source 和rr 进程中传来的数据时产生流中断,任意类型中断产生后按时间顺序执行。(3)Stream_intr(接收源数据状态)。当source 进程产生的数据后,发生数据中断,将产生的数据插入缓存队列。(4)Slot_intr(时隙中断状态)。判断当前时隙是否为本节点所占时隙时,发生时隙中断,并转入transmit 状态。(5)Receive(接收信道数据状态)。接收通过rr进程从信道中接收到的数据,包括业务数据、ATS 信息和其他指令信息。(6)Transmit(发送数据至信道状态)。当本节点发生时隙中断或接收到ATS 信息后,将队列中的数据通过上传至rt 进程,发送到信道。
图5 CS-TDMA 进程模型
3 性能分析
通过与TDMA 协议的仿真对比,分析CS-TDMA协议性能。仿真分为两部分:场景一中各节点的业务量大小保持一致,通过修改source 进程中数据包产生的时间间隔进行了多次仿真,模拟网络不同的网络负载程度;场景二中分为两种类型的节点,用两个source进程通过修改数据包产生时间间隔,设置为业务空闲节点和业务繁忙节点,模拟节点间业务量不均匀的情形。
3.1 QoS 性能指标分析
场景一及参数设置:数据包的到达服从Poisson 分布,设置不同的数据包到达时间分别为0.1 s、0.25 s、0.5 s、1 s、2 s、3 s、4 s、5 s,数据发送速率为9.6 kbit·s-1,业务数据包大小200 bit,ATS 数据包大小为32 bit,Gmax 取5 000 bit,队列可容纳数据包数为50,时隙大小1 s,仿真时间1 h。
(1)消息投递率。如图6 所示,数据产生间隔时间为0.25 s 时,理论上网络负载为200×12×4=9 600 bit·s-1,达到饱和业务量。但由于信道不能完全利用,网络仍处于拥挤状态,CS-TDMA 协议较少有时隙剩余,两种协议的消息投递率基本相同;当在时间间隔约为0.5 s时,网络拥挤得以缓解,消息投递率逐渐趋于稳定,由于存在空闲时隙,CS-TDMA 协议可通过ATS 消息动态利用时隙,消息投递率高于TDMA 协议;当数据产生间隔>1 s 后,CS-TDMA 协议的消息投递率高于TDMA协议,并随着间隔增大,差距逐渐减小,这是因业务量减小,TDMA 协议较少会出现拥挤现象。总体上CS-TDMA 协议的正确接收率高于固定TDMA。
图6 消息投递率对比
(2)吞吐量。如图7 所示,在时间间隔<0.25 s 时从消息投递率曲线可看出网络处于拥挤状态,即使间隔再小,网络吞吐量也很难上升。此时,平均每个时隙发送的数据量也达到最大值,可作为业务评估算法单个时隙发送数据的最大值约7 000 bit,但为了确保协议稳定有效,取临界值Gmax=5 000 bit。同时可以发现,CS-TDMA 协议的最大网络吞吐量略高于TDMA协议。当时间间隔逐渐增大时与消息投递率一致,CS-TDMA 协议的优势减小。说明在业务量较小时,TDMA 协议和CS-TDMA 协议均具有良好的性能。
图7 吞吐量对比
(3)时延。如图8 所示,当时间间隔<0.25 s,网络处于拥挤状态时,CS-TDMA 协议的平均端到端时延略低于TDMA 协议;当时间间隔>0.5 s,网络不再拥挤时,CS-TDMA 协议的时延稳定比TDMA 协议约低1 s,说明CS-TDMA 协议可有效且稳定的改进TDMA的时延性能。
图8 平均端到端时延对比
结合消息投递率和吞吐量的分析,可以发现CSTDMA 协议不仅继承量了TDMA 协议保证节点间无碰撞公平发送数据的优点,而且在对实时性要求较高的网络中较TDMA 协议具有更突出的性能。
3.2 业务不均匀情况下的时延性能分析
场景二及参数设置:任意选择6 个节点选为业务繁忙节点,数据包产生间隔0.1 s,剩余6 个节点为业务变化节点,设置不同的数据包到达时间分别为0.1 s、0.5 s、1 s、1.5 s、2 s、2.5 s、3 s、4 s、5 s,其他条件保持不变。
如图9 所示,在各节点间业务量不均匀的情况下,TDMA 协议的平均端到端时延持续较高,虽随着1/2节点业务量的减小而有所降低,但幅度较小,并趋于稳定在较高的时间;CS-TDMA 协议中,当1/2 节点的业务量降低时,网络的端到端时大幅度降低,并稳定相对TDMA 协议较低的时间上,且该时间约等于如图8 所示的各节点业务量均匀时趋于稳定的时间,说明在各节点业务量不均等的情况下,CS-TDMA 实现了时隙的动态利用,网络时延较TDMA 协议有大幅度减小[8]。
图9 平均端到端时延对比
4 结束语
针对TDMA 协议在网络中各节点业务量不均匀的情况下,信道利用率低的问题,本文提出了一种利用信道侦听的CS-TDMA 协议,该协议利用无线网络的广播特性,统计各节点的业务量大小,并在时隙剩余时主动通知业务繁忙节点利用剩余时隙发送数据,实现了时隙的动态利用。仿真结果表明,CS-TDMA 协议在消息投递率和吞吐量方面较TDMA 协议略有提高;在网络时延方面,尤其是当节点间业务量不均匀时,CS-TDMA 协议较TDMA 协议有较大提高。
[1] 李西洋,范平志.移动自组织网络中的多信道MAC 调度码的设计与分析[J].通信学报,2014,35(5):57-64.
[2] 张晓玲,梁炜,于海斌,等.无线传感器网络传输调度方法综述[J].通信学报,2012,33(5):143-157.
[3] 孙继银,付光远,车晓春,等.战术数据链技术与系统[M].北京:国防工业出版社,2009.
[4] Jiang S,Rao J,He D,et al.A simple distributed PRMA for MANETs[J].IEEE Transactions on Vehic Technology,2002,51:293-305.
[5] 任昊翔,郭达伟,邵凝宁,等.一种新型的无竞争的基于TDMA 的MAC 协议[J].传感技术学报,2013,26(1):89-94.
[6] 王塬琨,毛玉泉,丁笑亮,等.一种基于优先级的TDMA 动态时隙分配算法[J].舰船电子工程,2009,29(11):83-86.
[7] 陈敏.OPNET 网络仿真[M].北京:清华大学出版社,2004.
[8] 杨棣,梁刚.在Ad Hoc 网络中的动态TDMA 时隙分配[J].电子科技,2009,22(11):19-22,27.