基于冲突容忍协议的隐藏终端改进方法*
2020-05-11曹天蕊续欣莹
曹天蕊,续欣莹
(1.太原城市职业技术学院,太原 030027;2.太原理工大学,太原 030024)
0 引言
物联网技术对我国军队人- 车- 物信息化管理系统建设,以及在实现战场感知的精确化、系统化和智能化方面能起到很好的推动作用[1-2]。在国防信息化建设无线网络节点部署后,无线传感器节点就能够通过多跳自组织网络的方式完成信息的收集[3]。无线传感器节点通过多跳自组织网络的方式,节点之间将感知的信息彼此传递,就能够实现军队人、车、物与网络的相联。节点在发送信息之前要进行信道探测。如果探测到信道中有其他节点与上级节点通信,则选择退避等待;如果探测到信道中没有其他节点与上级节点通信,则发送信息至上级节点[4-5]。
在移动自组织网络中,众多无线传感器节点共用信道,非常容易发生多个节点共同向一个节点发送信息。为了避免冲突的发生,节点在发送信息时事先会探测信道是否被占用,也就是是否有其他节点正在与接收节点通信。如果通信的话,则选择等待一段时间再次探测信道,如果信道没有被占用,则发送信息。小规模的传感器网络中,节点之间适当地协商有助于减少节点碰撞,但是随着节点部署规模的增大,节点密度的升高会带来诸多的问题,从而影响军队物资实时监控[6]。
如果节点都采取退避的机制,则过多的退避势必带来信道利用率无法保证。Ji 等研究者在发现这个问题后,提出了冲突容忍的策略来实现多个节点的并发传输,通过适度地调节节点并发传输的概率,能够提高信道利用率[7]。在冲突容忍传输机制中,多个节点都在接收节点的半径范围内,都能将自己的感知数据传递到接收节点。但是,由于通信距离,共用信道噪声和多径效应等影响,节点有可能无法监测到存在隐藏终端问题[8-9]。这样就导致发送节点在接收节点处发生了数据碰撞,虽然信道资源被占用,节点的能量被浪费。但是,节点的信息却无法传输出去,降低了系统的信道利用率,系统的实时性也无法得到保证。
本文针对冲突容忍传输机制中可能会出现的隐藏终端的问题,对现有的冲突容忍传输机制进行了深入分析和改进,提出了利用马尔科夫预测模型来分析网络设置向量计时器,从而使发送节点保留更多的无线传输信道的使用权,预测模型通过分析现有信道中的信息传输速率来提供自适应的数据传输占用时间,从而减少隐藏终端的发生,更进一步提高基于冲突容忍传输机制的信道利用率。
1 冲突容忍信道利用率模型
传统的基于冲突退避的协议,在节点覆盖密度小的情况下适用,原本发送节点和接收节点适度的协议,有利于节点之间信道的竞争[10]。但是,随着节点密度增加,节点之间如果依然使用这种协商退避机制,会导致信道利用率不高,系统信息传输延迟增加,系统吞吐量下降等[11-12]。基于冲突容忍的传输协议是利用了节点之间能彼此通信,节点能够利用物理层中的捕获效应实现多个冲突数据包的恢复解码。下面通过构建信道利用率模型来具体分析。
节点发送数据包的概率为PT,为了简单描述节点发送的微观时间,统一用时隙来表述。节点的时隙状态包含3 种时隙状态:空闲时隙状态,成功发送时隙状态,冲突时隙状态,各时隙状态表示如下:
如果节点总的数量为N,且这个N 个节点都没有发送信息,意味着信道中没有发生节点通信。此时信道空闲,空闲时隙的概率Pi,可表示为:
节点发送成功代表众多节点中至少一个节点与接收节点通信成功,假设发送成功的节点数位n。当超过发送节点的数量超过一个时,在接收节点处,节点的接收成功率会下降,此处,我们引入一个捕获函数Pcapture:
式中,ξ 是一个零均值的高斯变量,σ2代表了方差,γ代表了接收节点和发送节点之间的距离,对于成功时隙发生的概率为Ps,表达式如下:
由于信道的时隙状态只有3 种状态,分别为空闲时隙状态,成功时隙状态和碰撞时隙状态。成功时隙状态和空闲时隙状态已经求得,则碰撞时隙状态Pc,表达式如下:
既然已经知道了3 种时隙发生的概率表达时,再加入时隙分配,即可求得信道利用率Putilization,表达式如下:
式中,Ts代表成功时隙持续的时间,Ti代表空闲时隙持续的时间,Tc代表碰撞时隙持续的时间。此处需要注意的是,如果信道中有隐藏终端,节点在发送信息前由于噪声影响,通信距离受限等影响是无法监测到另外一个节点是否也正在发送信息至接收节点,这个持续考虑在内持续时间为Td,对信道利用率Putilization修正后,表达式如下:
2 隐藏终端
在无线传感网中,节点散乱的随机分布在需要监测的环境中。节点之间通过协商合作,信道监听,退避等待等操作维持着传感器网络整体之间的连接[13]。但是由于传感器自身特点和无线传感网特性,不可避免地会产生隐藏终端的问题[14],原因总结如下:
1)节点是散乱分布的,一旦节点被部署下去,节点之间就会通过无线自组织网络的方式进行多跳组网,实现将感知信息的收集传递。有的节点频繁通信,有的节点处于多跳节点的必经路由。这样就导致节点之间的能量消耗不均匀,很容易出现节点能量耗尽的情况,即节点死去。虽然网络发生了变化节点依然可以通过多跳自组织网络的形式继续传递信息,但是网络的动态性是无法改变的。节点在无法探测到的地方,有可能还会存在其他节点与此节点存在竞争信道的行为(如图1 所示)。
图1 节点隐藏终端问题
2)无线传感网的本质是广播式信道传输,多个节点共享传输信道,节点之间遵循的是分时隙传播信息,维持各自的醒睡机制。如果无法做到所有节点全网时钟同步,节点之间很容易发生醒睡节奏出现同步的情况[15]。两个节点同时醒来或节点同时需要传输感知信息,且彼此都在接收节点的通信半径范围内,不在发送节点的彼此探测范围内,则容易出现通信碰撞。
3)节点的内部时钟制作精度无法高度统一,即使无线传感网中做到了所有节点的时钟同步,避免节点之间的互相影响。但是,由于节点的制作工艺和制作成本,无法保证部署的节点来自于同一个生产厂商和同一批次,更无法保证所有节点的内部时钟,晶振是统一的。
3 改进协议
3.1 接收节点调节NAV
发送节点由于各种因素限制,无法知道超过自己通信范围内是否有其他节点与发送节点通信。但是,接收节点却明确知道此时是否有多个发送节点在竞争信道。隐藏终端问题,对于发送节点而言无法预判,但是对于接收节点而言却始终可见。我们可以利用网络分配向量(Net Allocation Vector,NAV)来估计节点的数据传输时间。
如果直接来估计节点的数据传输持续时间NAV 难于实现,如果估计的NAV 传输时间与节点实际的传输信息持续时间大,其他竞争节点或是隐藏终端的节点就会延迟访问信道,信道利用率还是得不到保证;如果NAV 传输时间与实际的传输信息持续时间小,其他节点就会提前访问信道,引起节点之间的信息冲突。NAV 的估值是个关键问题,估值太大和太小都会对信道的利用率产生影响。我们一方面借助分组信息来估值,一方面借助马尔可夫预测来辅助估值。
3.2 增加控制分组
在控制分组中,可以增加控制分组信息,数据发送起始和数据发送截止。当发送节点加入数据发送起始(Data Send Start,DSS)和数据发送截止(Data Send Finish,DSF)后,接收节点通过在接收到DSS和DSF 控制信息后,通过计算发送节点的发送起始时间和截止时间就能够得到节点发送信息的持续时间。虽然节点加入控制分组信息后能够有效减少其他节点过早的竞争信道或者迟滞竞争信道带来的信道利用率浪费的问题。但是,对于接收节点而言,当多个发送节点竞争激烈,在接收节点处无法正确解码,更无从从控制分组信息中获取节点的NAV值时,就需要进一步借助预测模型来进行估值。
3.3 马尔可夫预测辅助估值
马尔可夫预测能够根据不同的初始状态,以及不同状态之间的状态转移概率来预测状态的变化趋势,马尔科夫预测是一种动态的随机预测过程,之后的转移概率仅与现在的状态及此时的状态转移概率有关。对于节点网络分配向量而言,其当前的长度状态为SN,下一个时刻的长度状态为SN+1,则利用马尔科夫预测的表达式如下:
从当前的状态SN转移到下一步状态SN+1,将所有可能的Pij都依次排列展示开,构成状态概率矩阵,表达式如下:
该状态概率矩阵每次使用过程是一个此时状态和下一个状态之间的转换,状态矩阵是一个不断迭代学习的过程。通过预测的值与实际通过控制信息测得的NAV 值相比较,每预测正确一次,其对应的状态转移概率会增加,则在下一次预测中的话语权重变大,反之,则话语权重减少,之后的多次状态转移预测的准确率会越来越高。
4 改进方法仿真与分析
4.1 实验仿真设置
本节将对改进方法的性能进行分析评价,实验采用的是NS-2 仿真软件[13],拓扑结构采用随机非对称拓扑结构,适用于分析协议在隐藏终端下的性能比较。实验中,选择的节点个数为10 个,时间窗口为28 ms,这样设置基本能保证无线传感器网络节点在MAC 层遇到的多数单层竞争节点个数情况(实验仿真具体设置如表1 所示)。
表1 实验仿真场景设置
4.2 实验结果分析
图2 是CoCo 协议与本文提出的改进协议的吞吐量对比。从图中可以看到,CoCo 协议随着测试次数的增加其抖动幅度更加明显,因为CoCo 协议在节点隐藏终端问题上没有很好地解决。如果隐藏终端问题较小,CoCo 协议表现良好,但是隐藏终端问题限制了CoCo 协议的高吞吐量,这也就意味着本文提出的协议有更强的解决隐藏终端问题的能力。
图2 两种协议吞吐量对比
如图3 所示,就明确隐藏终端节点数量的情况下,对比CoCo 协议与本文提出的改进协议的吞吐量的对比。改进的协议的吞吐量性能方面相比CoCo协议有一定的优势。尤其是隐藏终端节点数量达到5 时,改进的协议依然拥有良好的性能,其吞吐量相比CoCo 协议提高了27.24%。
图3 两种协议吞吐量对比(在隐藏终端情况下)
图4 对比了CoCo 协议与本文提出的改进协议的信道利用率的对比,信道利用率从侧面反映信道利用率与节点发送速率的影响。本文提出的改进协议相比CoCo 协议,随着数据包大小的增加,其在信道利用率上有了明显的提高,在数据包长度较大时,其优势能够达到30.76%。这些都得益于本文提出的改进方法在时间窗口和空闲侦听长度进行了适度减少和灵活调整,由此可见,隐藏终端问题如果没有得到很好的解决,直接影响了系统信道的利用率,全网的传输时延也无法保证。
之后,分别对本文改进协议的两种核心机制:控制分组信息和马尔可夫预测共同决定网络分配向量的长度进行了对比。
如图5 所示,只有马尔科夫预测的改进方法,其在系统吞吐率方面依然不够优秀,其对自己的下一个状态的预判不能得到很好的修正。只有控制分组信息机制的改进方法,虽然在吞吐量上有了一定的提高,但是,该机制无法进行局部的修正。只有将两者共同结合,本文提出的改进协议才能在系统吞吐量上有抖动较小的优越性能。
图4 两种协议的信道利用率对比
图5 改进协议吞吐量对比(在不同机制下)
5 结论
本文提出的基于冲突容忍传输协议的隐藏终端问题改进方法,增加了数据控制分组信息和马尔可夫预测,能够及时调制网络分配向量的长度,致使节点之间数据碰撞减少,解决了隐藏终端的过分干扰,即使在隐藏终端节点个数较多时,依然有良好的系统吞吐率。随着未来国防信息化建设,传感器网络规模的增大隐藏终端问题越来越凸显,时刻影响着系统的吞吐量和信道利用率,本文提出的改进方法对未来的国防信息化建设提供了一定的指导意义。