本发明属于无线网络领域,特别涉及远距离条件下无线adhoc网络p坚持机制参数优化方法。
背景技术
adhoc网络是一种新型的无线网络。它由一系列地位完全平等的移动节点组成,无需任何固定或预设的网络设施。网络中的节点通常以分布式竞争的方式使用信道资源,常用的无线网络信道访问控制(mediumaccesscontrol,mac)协议多采用载波检测(carriersensemultipleaccess,csma)的方式来避免网络中节点间的冲突问题。然而传统的无线adhoc网络mac协议多为近距离条件下的通信所设计的,面对如弹机协同,卫星组网,无人机蜂群等日益增长的远距离条件下的无线adhoc网络通信需求,传统的mac协议通常需要做出相应的调整以及参数优化来获得更好的性能指标。
p坚持机制是一种典型的csma协议,其基本的工作方式如下所述:当一个节点准备进入发送数据状态前,先通过载波检测的方式判断信道状态。若信道忙,则该节点持续侦听信道,若检测到信道空闲并且持续空闲一个基本时隙长度δ,则该节点按照一定概率的p的选择性的发送数据分组,换句话说,节点的发送概率为p。因此该节点有q=1-p的概率选择不发送数据,也即将传输数据的任务延迟到下一个时隙。如果信道再次持续空闲一个基本时隙长度δ,则它或者传送数据,或者再次延迟,其概率分别为p和q。这个过程会一直持续下去,直到该数据分组被发送出去,再发送下一个数据分组。根据p坚持机制的规约可以得知,节点必须在基本时隙长度δ内正确的判断信道状态,从而减少不必要的冲突。为了将p坚持机制应用到无人机蜂群自组网中,在本节的研究中将基本时隙长度δ定义为最大传播时延加上天线的收发转换时间,通常我们取这个时间为10μs,从而保证网络中所有节点能够在一个基本时隙长度内正确的检测出信道状态。
步骤1:网络中的节点在发送数据之前先通过载波检测的方式判断信道状态。
步骤2:若节点检测到信道变忙,则该节点持续侦听信道;若节点检测到信道持续空闲一个退避时隙长度δ的时间,则节点以概率p选择是否发送数据,其中δ定义为节点间的最大传播时延与天线的收发转换时间之和。
步骤3:若节点检测到信道空闲且选择不发送数据,则节点继续侦听信道,直到信道再次空闲一个退避时隙长度δ的时间,重新节点以概率p选择是否发送数据。
由上述分析可知,发送概率p的取值对远距离条件下无线adhoc网络p坚持机制性能有重要影响。在参与竞争的网络节点数量一定的条件下,如果p的取值过小,则会延长节点在竞争过程中的等待时间,导致信道利用率降低,网络饱和吞吐量下降;反之,如果p的取值过小,则会使得节点在竞争信道资源过程中的冲突加剧,同样也会降低网络饱和吞吐量。为了获得最大的网络饱和吞吐量,本发明对p坚持机制过程进行建模,通过分析求解得到发送概率p的最优取值。
技术实现要素:
本发明的目的是针对远距离条件下无线adhoc网络p坚持机制,提出一种发送概率p参数优化方法,从而获得最大的网络饱和吞吐量。为了实现该目的,本发明所采用的步骤是:
步骤1:根据节点所处的时隙状态的不同将时隙分为空闲周期和忙碌周期,其中忙碌周期又可分为5种不同的情况进行讨论,求出每种情况下时隙长度的大小和该种情况的概率。
步骤2:根据网络饱和吞吐量的定义,求解出在网络规模一定的条件下,远距离条件下无线adhoc网络p坚持机制网络饱和吞吐量的表达式。
步骤3:对网络饱和吞吐量的数学表达式进行分析,通过泰勒展开的方式,求解出在网络规模较大的条件下发送概率p的理论最优取值的解析解popt。
本发明提出的远距离条件下无线adhoc网络p坚持机制参数优化方法已经在exata网络仿真环境中实现。网络节点在单跳传输范围之内,最大传输距离为20km;考虑不同网络规模条件,网络节点总数量分别为20,30,和40;物理层采用dsss模型,信道传输速率为18.4mbit/s;网络层采用静态路由,传输层采用udp协议;基本时隙长度76.7μs;数据包大小为1024bytes,仿真时间为100s。
附图1给出了在不同网络规模条件下,通过改变发送概率p得到的网络饱和吞吐量的仿真值与本发明得到的计算值的对比。仿真值与计算值的一致性说明了本发明在不同发送概率p的取值条件下确定网络饱和吞吐量方法的有效性。在发送概率p变化的条件下,本发明得到的网络饱和吞吐量计算值为凸函数,说明了本发明提出的远距离条件下无线adhoc网络p坚持机制存在最优参数取值的有效性。
附图说明
图1是p坚持机制的周期状态划分图;
图2是本发明的仿真和计算结果图。
具体实施方式
下面结合实施例对本发明作进一步详细描述。
本发明提出的远距离条件下无线adhoc网络p坚持机制参数优化方法已经在无线网络仿真环境exata中实现,并通过仿真结果证明了该方法的有效性。下面给出本发明的具体实施步骤:
步骤1:根据节点所处的时隙状态的不同求出每种情况下时隙长度的大小和该种情况的概率。
为得出网络饱和吞吐量表达式,需先对各个时隙上可能出现的情况进行分析,这里的时隙不仅仅指的是基本时隙长度δ,节点成功或失败的一次传输过程都称之为一个时隙。假设网络中有n个节点并且所有节点都在单跳范围内,节点在检测到信道空闲并且持续空闲一个基本时隙长度δ后,都以概率p的可能性选择性的发送数据分组。基于以上假设,可以将每个节点在任一时隙所处的状态分为以下几种情况:
①该节点选择不发送数据分组,并且网络中其它所有节点也都选择不发送数据分组,将这种状态的概率表示为
pi=(1-p)n(1)
这时,不定时隙长度ti即为基本时隙长度δ的值。
②网络中只有该节点选择发送数据分组,其它节点均选择不发送,将这种状态的概率表示为
ps=p(1-p)n-1(2)
上式表示网络中总节点数为n,其中一个节点以概率p选择发送数据分组,其他节点都选择以概率(1-p)不发送数据分组,由此可得出该节点选择发送并且发送成功概率为ps。
这时,时隙长度ts为
ts=tdata+sifs+tack+2×tpro+δ(3)
上述公式中,tdata代表数据分组的传输时间,tack代表确认帧的传输时间,tpro代表平均传播时延,δ代表基本时隙长度。这里的ts除了数据帧的传输时间之外还要加上一个基本时隙长度δ,原因是因为信道由忙变空闲之后,网络中的节点要先侦听信道持续空闲一个基本时隙长度δ后才选择是否以概率p发送数据或者以概率(1-p)延迟发送。
③该节点选择发送数据分组,但是网络中还存在其它节点在该时隙内发送了数据分组,导致该节点发送失败,将这种状态的概率表示为
pf=p[1-(1-p)n-1](4)
上式表示网络中总节点数为n,其中一个节点以概率p选择发送数据分组,其它节点都选择不发送数据分组的概率为(1-p)n-1,至少有一个同时选择在该时隙内选择发送数据分组的概率为[1-(1-p)n-1],由此可得出该节点选择发送并且发送失败的概率为pf。
这时,时隙长度tf为
tf=tdata+tacktimeout+δ(5)
其中
tacktimeout=sifs+tack+2×tpromax+δ(6)
上述公式中tpromax代表最大传播时延。为了确认发送节点发送的数据分组是否被接收节点成功收到,发送节点一旦发送完数据分组之后就会开启一个定时器,其时长为tacktimeout,包含了ack帧的传输时间和两倍的最大传播时延,保证在正常情况下发送节点可以收到来自接收节点的ack确认帧。
④该节点选择不发送数据分组,网络中存在其它节点选择发送数据分组并且发送成功,但接收节点并不是该节点,将这种概率表示为
上述公式中的(1-p)表示该节点选择不发送数据分组的概率,(n-1)p(1-p)n-2表示网络中的其它(n-1)个节点只有一个节点选择发送数据分组的概率,(n-2)/(n-1)表示接收节点不是该节点的概率。这时,时隙长度tisn为
tisn=tdata+sifs+tack+tpro+δ(8)
⑤该节点选择不发送数据分组,网络中存在其它节点选择发送且发送成功,并且接收节点就是该节点,将这种概率表示为
上述公式中除最后一项与公式(7)不同外,其它项的含义均相同,其中1/(n-1)表示接收节点是该节点的概率。由于接收节点就是该节点,在整个的通信过程中没有传播时延的等待问题,因此这时的时隙长度tism为
tism=tdata+sifs+tack+δ(10)
⑥该节点选择不发送数据分组,网络中存在其它节点选择发送但是发送节点不止一个导致发送失败,将这种概率表示为
pif=(1-p)[1-(1-p)n-1-(n-1)p(1-p)n-2](11)
上述公式中,(1-p)表示该节点选择不发送数据分组的概率,(1-p)n-1表示网络中的其它(n-1)个节点都不发送数据分组的概率,(n-1)p(1-p)n-2表示网络中的其它(n-1)个节点只有一个节点选择发送数据分组的概率,1减去这二者概率之和即为网络中其它(n-1)个节点至少有两个节点发送的概率。这时,时隙长度tif为
tif=tdata+δ(12)
步骤2:求出网络饱和吞吐量的数学表达式。
网络吞吐量定义为网络中单位时间内成功接收到的信息,单位为bit/s。当网络负载增加时,网络吞吐量也相应增加,直到最大值。此后,随着网络负载的增加,网络吞吐量稍有下降,最终趋于稳定。网络饱和吞吐量即定义为网络工作在稳定状态时的吞吐量。综上所述,网络饱和吞吐量s可以表示为
其中e[p]代表数据包的平均长度。
步骤3:确定远距离条件下p坚持机制发送概率p的最优取值的解析解。
把上述公式(1)~(12)代入式(13),可知除了变量p以外其它均为常量,因此可对变量p求一阶导数得出s’(p),分析s’(p)即可求出在发送概率p取何值时s有最大值,即网络的饱和吞吐量取到最大。整理上式可得
令
求s的最大值等价于求y的最小值,
则满足y’(p)=0且范围处于[0,1]之间的方程的解即为s取最大值的点popt。
但是上述方程是一个超越方程,并不存在解析解,只能通过数值搜索的方法求出近似解。进一步分析当n(大于20)很大时,此时先通过数值模拟的方法求解出了popt,发现popt的值很小,这时pf、pism、pif相较于pisn而言均是一个非常小的量,我们可以将四者合并为pf’,重新整理上述公式可得
pf′=1-p(1-p)n-1-(1-p)n(17)
这时,时隙长度tf’为
tf′=tisn(18)
此时公式(15)转换为
对上式求一阶导数可得,
令y’(p)=0并进行化简整理后可以得到
(1-p)n(tf′-ti)+(np-1)tf′=0(21)
对上式进行泰勒展开可得
其中o(p)代表泰勒展开中三次方及其以上的余项,由于p值很小,可近似忽略,此时上述方程可转化为
则可解得
则popt即为当前网络规模条件下发送概率p的最优取值的解析解。
本发明申请书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。