基于概率量化广播gossip算法的分布式路由同步方法
【技术领域】
[0001] 本发明涉及分布式路由同步技术。
【背景技术】
[0002] 随着社会的进步,通信技术的广泛应用已经成为必然趋势。在实际的应用中,并非 所有的网络都用于实时的信息交换,其中最典型的就是用来进行数据采集、监测等工作的 无线传感器网络。无线传感器网络是一种分布式传感网络,它的末梢是可以感知和检查外 部世界的传感器。无线传感器网络中的传感器通过无线方式通信,因此网络设置灵活,设备 位置可以随时更改,还可以跟互联网进行有线或无线方式的连接。通过无线通信方式形成 的一个多跳自组织网络。这种无线网络以协作的形式感知、采集、处理和传输网络覆盖地理 区域内被感知对象的信息,并最终把这些信息发送给网络的所有者。强大的数据获取和处 理能力使得其应用范围十分广泛,可以被应用于军事、防爆、救灾、环境、医疗、家居、工业等 领域,无线传感器网络已得到越来越多的关注。
[0003] 在实际应用中,无线传感器网络的很多问题都可以被归结为平均共识问题,例如 参数估计、源定位、分布式压缩等。平均共识指的是网络根据各个网络节点的出初始状态通 过信息的交换使各个节点最终达到一致状态。集群路由器指将多个可独立运行的路由交换 结节点过某种高速互联网络连接起来的单映像路由系统。每个路由交换节点包含独立的报 文转发引擎和控制平面的计算资源。而分布式路由同步技术则将路由协议、安全认证、路由 计算等计算密集型模块分布在各个路由节点上并行执行,以解决应用需求迅速增长而造成 的控制平面计算能力不足的问题。
[0004] 由此可以看出,如何有效的解决分布式共识问题是非常关键的。近年来,基于 gossip算法的平均共识问题在无线传感器网络中的应用成为了研究的热点。该算法利用网 络节点的本地信息和其相邻节点信息进行数据交换,可以最终使网络中每个节点的信息达 到网络节点信息的平均值。尽管gossip算法在国内外有很多研究成果,但主要局限于成对 gossip算法的研究,即在一个时钟周期内信息只局限于相邻两点之间传递。这种算法尽管 有非常良好的收敛特性,但是只局限于双向链路,忽略了无线信道的广播特性。近几年出现 的广播gossip算法,具有非常好的广播特性,即当某一个节点开始广播时,所有与之相连的 节点都可以接收到传递的信息并进行数据的更新。由于它不需要反向数据交换,所以此算 法可以应用于非对称的无线信道。此外,这种算法相较于成对gossip算法,具有收敛速度快 的特点。
[0005] 分布式路由同步技术中,由于通信链路的信道容量的限制和每个节点存储能力的 限制,对于均匀量化而言,量化一致性并不是严格的一致性,即所有节点不一定能达到共同 的输出值。这就说明:均匀量化的gossip算法并不能使各个路由节点达到一个严格的共识 状态,从而不能严格的实现路由同步。
【发明内容】
[0006] 本发明是为了均匀量化的gossip算法不能使各个路由节点实现严格的路由同步 的问题,从而提供一种基于概率量化广播gossip算法的分布式路由同步方法。
[0007] 基于概率量化广播gossip算法的分布式同步方法,在进行路由同步时,它由以下 步骤实现:
[0008] 步骤一、初始化节点数据和设置加扰参数ε,包括:
[0009]每个路由节点初始化信息Xl(〇);
[0010] 令伴随变量yi(o)为0;
[0011] 量化每个路由节点的信息;
[0012]设置加扰参数ε;
[0013] 步骤二、进行QUBGA的迭代,对于每个节点,具体过程为:
[0014] 步骤二一、判断节点信息状态值是否趋于稳定,如果判断结果为是,则完成路由同 步;如果判断结果为否,则执行步骤二二;
[0015] 步骤二二、判断节点是否被激活,如果判断结果为否,则执行步骤二三;如果判断 结果为是,则该节点向其邻近节点发送自己的信息值,且将节点伴随变量清零,并返回执行 步骤二一;
[0016] 步骤二三、该节点判断是否接收到其它节点发送的信息,如果判断结果为是,则执 行步骤二四;如果判断结果为否,则节点信息保持不变,并返回步骤二一;
[0017] 步骤二四、更新节点的信息;
[0018] 步骤二五、量化节点的信息;
[0019] 步骤二六、将迭代的次数加1,并返回执行步骤二一。
[0020] 本发明应用概率量化对各个路由节点的信息进行量化,使每个节点达到一个严格 一致的输出值,实现严格的分布式路由同步。
【附图说明】
[0021] 图1是本发明的基于概率量化广播gossip算法的分布式同步方法的流程示意图;
[0022] 图2是在位数为32、节点数为100的情况下,收敛误差的仿真示意图;
[0023] 图3是在位数为32、节点数为500的情况下,收敛误差的仿真示意图;
[0024] 图4是在位数为8、节点数为100的情况下,收敛误差的仿真示意图;
[0025] 图5是在位数为16、节点数为100的情况下,收敛误差的仿真示意图;
[0026] 图6是在位数为8、节点数为100的情况下,收敛速度的仿真示意图;
[0027] 图7是在位数为16、节点数为100的情况下,收敛速度的仿真示意图;
[0028] 图8是在位数为32、节点数为100的情况下,收敛速度的仿真示意图;
【具体实施方式】
[0029]【具体实施方式】一、结合图1说明本【具体实施方式】,基于概率量化广播gossip算法的 分布式路由同步方法,它由以下步骤实现:
[0030] 步骤一:初始化节点数据和选取适当的加扰参数ε :
[0031] 当进行路由同步时,每个路由的初始信息^(0)需要进行初始化,及配置各自的 值。此外,令伴随变量yi(〇)为0。然后,对量化好的路由节点信息按照(8)和(9)所示的方式 进行量化。当网络规模较小时,并且网络拓扑结构已知,那么可以事先计算出最优化的加扰 参数e=ReU2)/2并在布设节点前就设置好该数值。当网络规模大,而且网络拓扑结构位置 的情况下,每个节点可以将该参数设定为0.5。每个路由节点自己包含一个时钟,按照各自 的时钟进行数据的发送和接收。
[0032] 步骤二:QUBGA的迭代过程:
[0033] 1)、当某个节点k在随机时刻被激活时,此路由节点需要向周围节点发送数据。广 播的数据分别为xk(t)和y k(t),当某个相邻节点接收到广播信息后,按照式(14)和(15)对自 己的信息进行更新。
[0034] 2)、对所有发送节点而言,按照公式(10)和(11)对自己的数据进行更新;
[0035] 3)、对于,按照公式(12)和(13)对自己的数据进行更新;
[0036] 4)、每次节点信息发生变化时,都对节点信息进行概率量化,具体量化方式参考公 式(8)和(9)。
[0037]步骤三:迭代结束,完成路由同步过程
[0038]对节点信息按照上述方式进行多步迭代,此时到达网络中路由同步的目的。
[0039]广播gossip算法的大致思想如下:即网络中的每个节点按照各自的时钟周期随机 被激活,并向与之相连的各个节点广播信息。周边节点将接收到的信息和本节点储存的信 息进行加权平均,至此完成一次迭代过程。根据这种规则,在每次迭代的过程中,有多个节 点对节点信息进行更新,而且链路传输都是单向的。这样既能使收敛速度加快,也能适应非 对称网络。
[0040] 具体算法过程描述如下:
[0041] 为方便描述,用一个随机几何图来描述网络的连接情况G(N,R),N代表节点数,R代 表连通半径。用一个NXN的矩阵A表示网络的拓扑结构,即各个节点的连接情况。
[0042]当节点i和节点j之间的距离小于连通半径时,可以认为两个节点有连接关系,这 时令Alj = 1;反之,如果两个节点距离大于等于连通半径时,两个节点无法进行通信,gpAlJ =0。由矩阵A可以容易的得到网络的连接情况。
[0043] 得到如上所示的连接关系后,可以将网络连接图转换为图论中的无向图的表示方 法G =〈V,E>,其中V为G的顶点集;E是无序积V&V的一个多重子集,称E为G的边集。再引入图 论术语:況Γ = !./£厂:(/,./)£ U和=丨々£「:(々、/)£ 丨分别表示节点i的内邻集合和外邻 集合,并且引入< = |Λ/;|为k的出度,尽=|&|为节点j的入度。符号|x|表示集合的势,即集 合中元素的数量。此外,ε为加扰参数,与网络拓扑结构有关。
[0044] 规定每个节点储存着两个信息量,对于第i个节点来讲分别为Xi(t)和yi(t;Lxi(t) 表示对网络平均值的估计值, yi(t)是一个伴随变量。用Xl(0)表示各个节点的初始状态,而 网络的初始均值则可以表示为=Σ"χ ;(0),通过比较均值的变化情况来观察这个算法 的收敛性质。在每一次迭代过程中,即当每个节点按照各自的时钟被激活时,与之有连接关 系的节点都将更新自己的信息,具体更