Mesh网络路由协议中的客户端声明过程优化方法

文档序号:9352782阅读:503来源:国知局
Mesh网络路由协议中的客户端声明过程优化方法
【技术领域】
[0001]本发明属于通信技术领域,尤其涉及一种客户端声明过程优化方法,可用于MESH网络路由协议的改进。
【背景技术】
[0002]在存在多个客户端的网络中,先验式路由协议是一类常用的路由协议。在这种路由协议中,无论是否有通信需求,每个节点采用周期性地广播包含完整路由信息的探测包的方法,维护一张包含到达其他节点的路由信息的路由表,即本地转换表。当检测到网络拓扑结构发生变化时,节点会在网络中发送包含更新消息的探测包。收到更新消息的节点将更新自身的本地转换表,确保路由信息的准确性。源节点一旦要发送分组,可以立即获得指向目的节点的路由。典型的先验式路由协议有BATMAN和0LSR。在存在多个客户端的无线MESH网络中,MESH节点向全网节点周期性地广播其服务的客户端消息的过程称为先验式路由协议的客户端声明过程。
[0003]现行MESH网络路由协议中通常使用周期性广播全网所有节点路由信息的方式来实现更新,然而在一个广播周期内,网络中只有部分节点的路由信息发生改变,因此这种“全部发送”的机制势必会造成网络中信息的冗余,增加网络中无用信息的传输,使网络开销变得很大。例如,在《计算机仿真》2006年第23卷第2期《A0DV与DSDV路由协议性能仿真与比较》文章中提到的,现行的BATMAN_adv协议采用“全部发送”机制,源节点周期性的广播探测包来通知邻居节点其存在性,该探测包中包含源节点的MAC地址、源节点的上一跳节点的MAC地址、探测包的序列号等路由控制信息。由于在该机制中,需要周期性地广播此类携带大量控制信息的探测包,因此需要很大的控制开销。
[0004]另一方面,MESH网络的特点在于其支持多用户接入、支持网络规模快速扩展。当网络规模扩大后,各MESH节点服务的客户端的数量会迅速增加,如果采用“全部发送”机制,MESH节点需要向网络中其他节点发送的探测包中就必须包含所有旧客户端和新接入客户端的路由信息,因此网络中传输的信息量会瞬间增多,但由于探测包的存储容量有限,不能同时携带扩展规模后的所有客户端信息进行传输,导致MESH网络中可同时接入的客户端数目受限制。

【发明内容】

[0005]本发明的目的在于提出一种MESH网络路由协议中的客户端声明过程优化方法,以通过对现有MESH网络路由协议中的客户端声明过程进行改进,减小网络开销、增加接入客户端的数目,提高网络利用率和网络的可扩展性。
[0006]为实现上述目的,本发明的技术方案是在MESH网络中,用域VN的值表征网络节点自身所服务的客户端信息的变化情况,并向网络中的其他节点广播和更新自身所服务的客户端信息,其具体步骤包括如下:
[0007](I)初始化步骤:
[0008]网络中的每个节点将其当前所服务的客户端信息存储于自身的本地转换表中,并向网络中的其他节点广播探测包,其他节点收到探测包后,将探测包中携带的信息存储于自身的全局转换表中;
[0009](2)实时更新步骤:
[0010]当某一节点有客户端的接入或移出时,该节点的本地转换表发生变化,其探测包中域VN的值自增,此时,该节点立即向网络中其他节点广播探测包,其他节点收到探测包后,根据探测包的内容,更新全局转换表中该节点对应的域VN的值、客户端地址信息和路由信息。
[0011]本发明与现有技术相比,具有如下优点:
[0012]1.本发明由于执行了实时更新,并只在节点的本地转换表发生变化时才广播其探测包,而在现有技术中,无论节点的本地转换表是否发生改变,节点都会周期性地广播探测包。相比之下,本发明避免了在网络中周期性传输相同探测包的现象,减轻了网络负荷,减小了网络开销。
[0013]2.本发明由于在实时更新中,探测包中只携带域VN的值、亟待更新的客户端地址信息和路由信息,而在现有技术中,探测包中必须包含节点所服务的所有客户端地址信息和路由信息。相比之下,本发明减小了探测包中的无用信息量,解决了网络所服务的客户端数目受探测包大小限制的问题,增加了可同时接入的客户端数目,提高了网络利用率和网络的可扩展性。
【附图说明】
[0014]图1为现有MESH网络架构图;
[0015]图2为本发明的实现流程图;
[0016]图3为本发明中的探测包OGM结构图;
[0017]图4为本发明中的前端阻断机制工作示意图;
[0018]图5为本发明中的转发表查询包结构图;
[0019]图6为用本发明改进前后客户端声明过程的探测包中携带信息量的对比图;
[0020]图7为用本发明改进前后客户端声明过程的网络开销对比图。
【具体实施方式】
[0021]为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和仿真结果,验证本发明的效果。
[0022]参照图1,所述的MESH网络由无线控制器AC、无线接入点AP和客户端组成,其中无线控制器AC控制和管理MESH网络中的无线接入点AP ;无线接入点AP设有3种类型:一是通过有线与无线控制器AC连接的无线接入点MPP,二是与MPP连接但是不接入客户端的无线接入点MP,三是为客户端提供接入服务的无线接入点MAP。这三种类型的无线接入点AP构成了 MESH网络的架构,无线接入点AP之间能自动相互发现并发起建立多跳的无线连接,为客户端提供传输服务。
[0023]本发明是对MESH网络的BATMAN_adv路由协议中的客户端声明过程进行优化,即对客户端声明过程的探测包结构和内容分别进行改进。其改进的关键技术有两点:一是在BATMAN_adv协议的探测包OGM中增加一个域VN,用于表征源节点本地转换表的变化情况,通过判断域VN的值即可确定源节点所服务的客户端信息是否发生了变化;二是在实时更新步骤中,设置探测包OGM中只携带域VN的值、亟待更新的客户端MAC地址和路由信息。
[0024]参照图2,本发明技术方案的实现具体实现如下:
[0025]步骤一:源节点广播探测包0GM。
[0026]当源节点的本地转换表发生改变时,源节点向网络中其他节点广播探测包0GM。
[0027]所述的本地转换表,是用于存储源节点的域VN的值、其当前所服务的客户端地址信息和路由信息的数据链表,当节点服务的客户端状态发生改变时,节点自动更新本地转换表中存储的VN值、客户端地址信息和路由信息。
[0028]所述探测包0GM,是MESH网络BATMAN_adv路由协议中用于描述源节点状态的数据包,该数据包中携带有亟待更新的客户端地址信息和路由信息。
[0029]参照图3,探测包 OGM 包括 Packet Type、Vers1n、TTL、Flags、Sequence Number、Originator Address、Prev1us Sender、Gff Flags、TQ、TT_num_changes、TT_CRC、VN、TT_change_list十三个部分,其中:
[0030]Packet Type:表示数据包类型,探测包OGM的数据包类型是源节点状态描述数据包;
[0031]Vers1n ??是MESH网络路由协议的版本兼容性;
[0032]TTL:表示该探测包OGM的生存时间,若接收节点收到的探测包OGM中的TTL值超过了预先设定的TTL值,则接收节点认为该探测包是无效的;
[0033]Flags ??是MESH网络路由协议的标志符号,标志该包为探测包;
[0034]Sequence Number:表示该探测包OGM的发送序号;
[0035]Originator Address:表示源节点的地址;
[0036]Prev1us Sender:表示转发该包的上一跳转发节点;
[0037]Gff Flags:是网关标志,表示该节点所属的网段;
[0038]TQ:是传输质量标识,表示整个传输路径的品质优劣;
[0039]TT_num_changes:是本地转换表中发生变化的客户端数目;
[0040]TT_CRC:是本地转换表的循环冗余差错校验序列,用于数据传输检错;
[0041]VN:是本发明在探测包中增加的一个域,用来表示源节点本地转换表的序号,其值通过自增来表征节点自身所服务的客户端信息发生了变化;
[0042]TT_change_list:是一个数据列表,用于存储亟待更新的客户端地址信息和路由
?目息O
[0043]步骤二:接收节点接收源节点广播的探测包OGM:接收节点接收源节点广播的探测包0GM,在探测包OGM中查找域VN,并记录域VN的值。
[0044]所述域VN,是本发明在探测包中增加的一个新域,用于表征源节点本地转换表的变化情况。不同步骤中的VN值不同,SP:
[0045]在初始化步骤中,源节点将自身探测包OGM中域VN的初始值设为0,网络中节点建立自身的全局转换表,并将除自身外的其他节点的VN初始值设为O ;
[0046]在实时更新步骤中,每当源节点的本地转换表发生变化时,其探测包OGM中域VN的值就自增I。
[0047]所述的全局转换表,是用于存储网络中除自身外的其他节点的域VN的值、客户端地址信息和路由信息的数据链表。该链表可以被拆分为不等长度的数据链表段,分别存储网络中不同节点的域VN的值、客户端地址信息和路由信息。
[0048]步骤三:判断探测包
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1