APP下载

一种Ad Hoc网络MAC协议接入阈值的研究*

2018-07-26郑文庆郭建蓬

通信技术 2018年7期
关键词:占用率业务量数据包

郑文庆,金 虎,郭建蓬,冯 辉

(国防科技大学 电子对抗学院,安徽 合肥 230037)

0 引 言

Ad Hoc网络的重要技术之一是对其介质访问控制(Media Access Control,MAC)层协议的设计[1]。它决定了众多节点如何公平、有效地共享无线信道资源。为保证通信网络中高优先级分组的高吞吐量、低延时以及服务质量(Quality of Service,QoS),基于优先级概率统计的多址接入模式(Statistic Prioritybased Multiple Access,SPMA)协议应运而生[2]。

SPMA协议不同于传统的信道接入模式协议。它通过协议栈各层之间的信息传输,可以极低时延完成各节点间的信息交互。SPMA协议不需事先为网络中各节点预约或分配时隙,只需在网络层数据包到达时统计信道占用率,通过将信道占用率与数据包阈值进行比较来决定业务分组是否接入信道[3]。如果此时信道占用率低于数据包阈值,则发送该数据包;如果信道占用率高于数据包阈值,则根据退避算法设定退避时间进行回退等待,到达退避时间后再次检测信道占用率,并与阈值比较,判断是否接入信道。

SPMA协议对信道的接入控制主要取决于各优先级设定的阈值大小。阈值越大,接入信道的概率越大;反之,越小。本文主要研究SPMA协议的接入阈值问题。首先,阐述SPMA协议的运行机制和特点;其次,根据碰撞模型提出各优先级的阈值设置方法;最后,对在该阈值方法下的SPMA协议进行系统仿真,得到系统性能随系统负载变化的变化曲线。

1 SPMA协议运行机制

1.1 信道状态判断

SPMA协议主要为扩频系统设计。该协议下,系统持续监测信道占用情况,并定时持续更新侦听到的收发脉冲数目,根据信道中监测到的收发脉冲的数量和特性,判断信道可能存在的多种状态[4]。SPMA协议信道判断与CSMA协议判断机制不同。CSMA协议只要侦听到有一个节点在发送,此时就判定信道为忙。而SPMA协议是侦听监测信道中的脉冲数目,通过数值计算得到一个有关于信道占用情况的信道占用统计值。当有数据包需要发送时,根据侦听统计得到的脉冲数据,计算当前信道的占用情况,并将计算得到的信道占用统计值与数据包阈值大小进行比较,从而判断是否允许该包发送[5]。

1.2 多优先级QoS机制

SPMA协议的特点是采用了多种优先级的QoS服务机制[6]。当网络层的数据包到达MAC层时,首先根据其优先级分别插入到相对应的队列中;然后,取出队列中最高优先级的数据包,将当前统计得到的信道占用率与此数据包优先级对应的阈值进行比较,如果信道占用率小于阈值,则发送该数据包,如果信道占用率大于阈值,数据包将根据其优先级及信道占用情况退避一段时间,到达时间后再次检测信道占用情况判断是否发送。其中,高优先级对应的阈值在数值上大于低优先级对应的阈值,从而保证高优先级有更大的概率接入信道[7]。

此外,在数据包退避时间内,如果有更低优先级的数据包到达,它将在队列中排队等待传输,直到更高优先级的数据包发送完毕;如果有更高优先级的数据包到达,则退避取消,并立即统计信道占用率,同时与该数据包阈值进行比较,以判断是否能够发送该数据包。

1.3 状态转移与协议流程

SPMA协议的接入控制流程,如图1所示。协议中,数据包优先级的分类是在应用层确定,而实际应用中是人为决定的。当应用层产生的数据包经过网络层到达MAC层时,首先根据优先级将数据包插入对应的队列,判断高优先级队列中是否有包,并将较高优先级数据包转为待发送状态,然后将当前统计得到的信道占用率与待发送数据包的阈值进行比较。如果此时信道占用率低于阈值,则允许发送的数据包从队列中移除并发送;如果信道占用率高于阈值,节点将根据数据包的优先级与信道占用率的值设定退避时间进行回退等待,到达退避时间后,再次检测信道占用率,循环以上流程[8]。SPMA协议的工作状态转移,如图2所示。

图1 SPMA协议接入控制流程

图2 SPMA协议工作状态转移

1.4 流量控制机制

如图3所示,如果网络流量始终很高,当信道负载超过最大信道负载时,系统会首先执行低优先级回退操作,甚至丢弃低优先级的包。如果网络流量居高不下,系统将严重超载。此时,系统将相继退避更高优先级的数据包甚至弃包,直到信道负载下降,退避的数据包才可以接入信道,这叫做“削峰填谷”。这样做的效果是在系统超载时,SPMA协议首先会延迟或抑制低优先级数据包的接入,控制低优先级的流量。随着系统负载的增加,可控制信道负载,保持信道流量在一个比较稳定的水平,以保证系统高优先级业务的QoS质量,且使得整个网络不至于在超载的情况下产生拥塞。

图3 SPMA协议流量控制

2 SPMA协议阈值研究

2.1 碰撞原理

下面简要分析信道中数据包在时频点上的碰撞原理[9]。如果不考虑分组超出队列缓冲容量而导致的丢包,此时网络节点分组的发送成功概率主要取决于分组的碰撞情况。如果在接收端接收到不同节点发送的脉冲在时间和频率上出现重叠,则认为发生了脉冲碰撞[10]。

系统业务分组的发送特点是,将分组拆分为时长t的脉冲并以周期Th发送,其中发送占空比为Tδ=t/Th。由于传播延时不确定,因此假定接收到的信号到达时刻在0~Th内是均匀分布的。假设每分组拆分的脉冲数量为n,且节点数为n个节点(cj,j=1,2,…,n)发送的数据到达接收节点cn+1的时间分别为tj,j=1,2,…,n,则节点cj(j=2,…,n)与另外目标节点c1发生碰撞的条件为|tj-t1|<Th/Tδ。此时,目标节点c1同不超过k个节点发生碰撞的概率为:

式中,Vl为l个节点同目标节点发生时间碰撞的概率,是一个l+1维时间约束区域;m为跳频频点数。

考虑到在物理层发送与接收数据时会采用编码纠错技术,当接收节点接收到的脉冲数量在编码纠错能力范围内时,该数据分组可被成功恢复。假设数据分组拆分为Np个跳频脉冲进行发送,采用编码技术后,当接收到不少于Nm个脉冲时,可认为数据分组被成功接收,则数据分组成功概率为:

2.2 门限阈值研究

门限阈值需要与信道占用率进行比较,因此在研究门限阈值前需要研究信道占用情况。信道占用是基于统计收发数据包的数量得到的,并根据收发数据包的数量之和作一定数学运算,以科学合理地评价信道占用状态。因为本文研究的信道占用状态是根据收发数据包数量之和乘以脉冲时长并除以统计时间窗的时间长度得到的,所以计算信道占用率η(T )如式(3)所示,得到的信道占用率为[0,1]范围内的数。因此,门限阈值的取值设置为[0,1]内的小数。

式中,nr为此节点接收到的数据包数量;nt为此节点发送的数据包数量;t0为数据脉冲时长;T为统计窗口时长。

SPMA协议中,数据包能否立即发送,取决于当前信道占用是否大于数据包对应优先级阈值。优先级阈值设置得过高,允许发送的优先级分组越多,信道负载越大,高优先级分组的传输质量将会降低;优先级阈值设置得过低,更多的低优先级分组将退避,造成不必要的信道资源浪费[11]。因此,需要合理设置优先级阈值,将信道负载控制在良好状态。

假设网络存在优先级0到优先级N-1共N个优先级业务,其中优先级0为最高优先级,各优先级业务所占的比例为ri,优先级对应的阈值为Thresholdi。阈值是由节点所处的电磁环境、物理层协议以及碰撞原理共同决定的。因此,无法给出确定公式。下面首先研究最低优先级阈值如何设置。

在网络系统信道负载不大于最低优先级阈值ThresholdN-1对应的信道业务量时,所有优先级分组均不需要退避且随到随发。此时,可保证各优先级分组传输成功率不低于99%。因此,最低优先级阈值ThresholdN-1可采用ALOHA工作方式获得。测试场景中,节点均采用ALOHA方式。基于信道碰撞原理,各节点无优先级控制,分组随到随发。逐渐增大网络业务量,当分组传输成功率降低至接近99%时,获取此时统计时间窗内信道上发送和接收的脉冲数量之和,经式(3)的数学运算得到ThresholdN-1。

本文的优先级阈值设置综合考虑了碰撞原理、物理层误包率性能和各优先级业务在总业务量中的所占比例,可得到相邻优先级阈值的关系不等式:

可得,各优先级阈值范围可通过最低优先级阈值ThresholdN-1计算得到,如式(5)所示:

通过采用上述方法设置优先级阈值,可以将信道占用控制在最低优先级阈值范围内,保证高优先级分组的传输可靠性。例如,当信道占用刚大于ThresholdN-1时,优先级N-1分组进行退避。由于该业务量场景下信道占用不大于ThresholdN-2,此时系统能够发送优先级N-2分组。为确保高优先级分组的传输成功率不低于99%,且可更大程度地利用信道资源,优先级N-2阈值ThresholdN-2可通过式(6)求得:

综上所述,为提高高优先级业务的传输成功概率,并更大程度地提高信道利用率,其余各优先级阈值计算方法为:

3 仿真分析

3.1 仿真条件

本文采用OPNET仿真工具进行以下仿真实验。为验证系统性能,采用简化的仿真场景。有100个节点分布在100 km×100 km的区域中静止不动,且认为节点与节点间为单跳传输,信道传输速率为2 Mb/s。业务分为优先级0到优先级7共8个优先级,且各优先级所占比例如表1所示。每种优先级业务的包到达时间间隔服从泊松分布,包长为1 024 bit,目的地址选取为随机发送地址。网络系统负载范围为1~10 Mb/s。假设时延仅考虑包接入等待时产生的时延和传输时延,其余时延均不考虑。

表1 各优先级所占比例及阈值取值

为得到各优先级对应的门限阈值,首先采用ALOHA工作方式进行仿真测试,且测试场景与上述SPMA协议场景相同。经过实验研究,得到ALOHA协议下分组成功概率如图4所示。可见,在传输成功概率降为99%时,统计得到的信道占用率为4%,因此Threshold7选取为4%。根据以上阈值设定方法可设置其余优先级阈值如表1所示,并基于以上参数进行仿真实验。

图4 ALOHA协议分组成功概率

3.2 结果分析

本仿真通过对各个优先级分组成功概率和时延采样取值,得到成功率和时延随系统业务量的变化曲线如图5、图6所示。

图5 各优先级成功率随系统业务量变化曲线

图6 各优先级时延随系统业务量变化曲线

图5 为各个优先级分组的成功发送概率随系统业务量的变化曲线。由图5可知,当系统业务量超过一定数值后,最低优先级数据包开始回退产生时延甚至弃包,成功发送概率开始降低,说明此时信道占用已经超过最低优先级对应的阈值。随着系统业务量的逐渐增大,信道负载逐渐增大,较高优先级数据包对应的阈值相继开始小于信道占用,此时开始回退甚至弃包,成功发送概率也开始下降。由于本协议可通过抑制低优先级的接入达到控制信道负载的目的,因此可始终为最高优先级业务提供高QoS保证,其成功发送概率可保持在99%以上。

图6为各优先级端到端时延随系统业务量的变化曲线。由图6可知,当系统业务量超过一定数值后,信道占用开始超过最低优先级阈值,最低优先级进行回退。随着系统业务量的增大,之后较高优先级也依次开始回退,退避的包分组端到端时延急剧增大。图6中,当系统业务量达到一定界限后,低优先级数据包的端到端时延会急剧增大,可使信道负载保持在稳定水平,进而保证系统中高优先级业务的高通信质量。此外,高优先级业务接入信道时优先接入无需等待,因此其端到端时延仅有通信距离产生的很小的传输时延。

4 结 语

为满足系统通信时对多优先级业务的服务质量要求,保证高优先级业务的高QoS质量,本文对SPMA协议接入阈值进行研究。首先阐述了SPMA协议的运行机制,其次根据碰撞原理和ALOHA协议仿真得到SPMA协议的阈值设置方法,最后通过仿真实验验证了本阈值计算方法的可行性。通过以上过程可发现,SPMA协议通过给各个数据包设置不同优先级,同时设置优先级对应的阈值,再通过侦听信道占用状态与预先设置的阈值进行比较来判断是否接入信道,实现了系统对多优先级业务的QoS服务机制,满足了系统对高优先级业务高成功概率、低时延、高服务质量的要求。

猜你喜欢

占用率业务量数据包
二维隐蔽时间信道构建的研究*
1090 MHz信道分析软件设计与实现
2020年业务量达830亿件快递跑出经济活力
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
适当提高“两金”占用率助人助己
上半年云南快递量同比增速全国第三
降低CE设备子接口占用率的研究与应用
C#串口高效可靠的接收方案设计
基于云计算的虚拟机在线迁移算法