一种无线自组网的分段式地址分配方法
【专利摘要】本发明公开了一种无线自组网的分段式地址分配方法,未入网的路由节点上电后,首先执行关联入网的流程;然后向周围的节点发送信标请求帧,并接收周围节点发来的信标帧,所述帧中包含地址段长度信息;优先选择地址段长度较长的节点作为自己的父节点;最后向选定的父节点发送入网请求帧,所述帧中包含分配给该节点的地址和一个地址段。根据加入网络后的节点的自身地址段大小的不同可分为三种状态,节点在每种状态下进行不同的处理流程,不需要大量的内存空间来存储地址列表,减轻了对单一地址分配节点的依赖,一定程度上减小了入网的延时,并且增强了网络的稳定性,有效降低了网络负载和延时问题。
【专利说明】一种无线自组网的分段式地址分配方法
【技术领域】
[0001] 本发明涉及无线自组网的网络层协议栈开发,属于无线自组网领域,具体涉及一 种无线自组网的分段式地址分配方法。
【背景技术】
[0002] 无线自组网络是一种特殊的无线移动通信网络。网络中所有节点的地位平等,无 需设置任何中心控制节点,具有很强的抗毁性。网络中的节点不仅具有普通移动终端所需 的功能,而且具有报文转发能力。当通信的源节点和目的节点不在直接通信范围之内时,它 们可以通过中间节点转发报文进行通信。有时节点间的通信可能要经过多个中间节点的转 发,即报文要经过多跳才能到达目的地,这是无线自组网络与其他移动通信网络的最根本 的区别。无线自组网络的节点通过分层的网络协议和分布式算法的相互协调,实现网络的 自动组织和运行。地址分配机制是决定无线组网性能好坏的关键因素。节点的16位网络 地址分配方法在组网、入网以及路由连接过程中起到了重要的作用。每一个加入网络的节 点,除了拥有自身固定的64位IEEE长地址,还会获得所在网络提供的16位网络短地址,采 用16位短地址可以有效地减小每个数据包的长度。目前有两类常见的地址分配方式。
[0003] -类是层次型地址分配机制。在这种机制中,路由连接很容易,只需要根据地址的 值并按照一定的算法来判断下一跳地址。采用这种地址分配机制,不需要协调器作为中心 节点。但是一旦网络中节点位置发生变化,网络不会保存该节点的位置。所以,对于节点移 动性较强的网络,当网络拓补结构不规则的变化时,会造成网络资源的浪费。
[0004] 另一类是平面型地址分配机制。在这种机制下,节点的地址是随机分配的,地址的 分布与网络拓补无关。这类分配方法可以细分为2种,一种是中心管理机制,另一种是分布 管理机制。在中心管理机制下,网络中选取一个节点来统一管理地址分配。这种分配方法 的优点是,不需要进行整个网络范围内的地址冲突检查,有效地降低了网络负载。但是缺点 也是显而易见的,地址分配节点需要大量的内存空间来存储地址列表。网络中的每个节点 在加入网络时都需要和该节点通信,一旦协调器处于忙碌状态,节点的入网延时会大大增 力口。在分布管理机制下,并不是只有单一节点具有地址分配能力,网络中的路由节点也可以 进行地址分配。新加入网络的节点首先选择具有地址分配能力的父节点。父节点随机选出 一个地址,然后以广播的方式通知周围具有地址分配能力的节点,其它节点收到之后,再广 播出去。通过这种洪泛的方式,让网络中所有节点都收到该通知。如果有某个节点回复该 通知,则表明该地址已经被使用。然后父节点重新再选择地址,重复之前的过程,直到选择 的地址未被使用,才将该地址分配给子节点。这样做的优点是,减轻了对单一地址分配节点 的依赖,一定程度上减小了入网的延时,并且增强了网络的稳定性。缺点是,每次随机分配 地址后,必须进行地址冲突检查,这种检测带来了很高的网络负载。
【发明内容】
[0005] 本发明的目的是提出一种无线自组网的分段式地址分配方法,解决平面型地址分 配机制带来的网络负载和延时问题,并且采用基于状态监测的方法,解决该机制自身带来 的地址耗尽和泄露问题。
[0006] 本发明的技术方案是:一种无线自组网的分段式地址分配方法,未入网的路由节 点上电后,首先执行关联入网的流程;然后向周围的节点发送信标请求帧,并接收周围节点 发来的信标帧,所述帧中包含地址段长度信息;优先选择地址段长度较长的节点作为自己 的父节点;最后向选定的父节点发送入网请求帧,所述帧中包含分配给该节点的地址和一 个地址段。
[0007] 加入网络后的节点周期性地检查自身的地址段长度,根据自身地址段大小的不同 可分为三种状态:正常状态、临界状态和耗尽状态,节点在每种状态下进行不同的处理流 程。
[0008] 所述地址段长度阈值设定为4,当地址段长度大于或等于4时,节点处于正常状 态;当地址段长度大于〇且小于4时,节点处于临界状态;当地址段长度等于0时,节点处于 耗尽状态。
[0009] 节点处于正常状态时,处理流程如下: 1) 节点广播一个地址段信息帧给一跳范围内的邻居节点,所述帧中包含地址段长度、 地址范围以及当前状态信息; 2) 节点接收到邻居节点发来的地址段信息帧,并获取邻居节点的当前地址段长度信 息,如果邻居节点的地址段长度是自身的5倍以上,则向该邻居节点发送地址请求信息帧; 3) 邻居节点收到地址请求信息帧后,回复一个地址请求响应帧,把自身地址段长度的 一半分配给该节点,所述帧中包含分配给该节点的地址段长度和范围信息; 4) 两个节点各自更新自身以及邻居节点的地址段范围和长度信息。
[0010] 节点处于临界状态时,处理流程如下: 1) 节点洪泛一个临界状态帧给网络中的所有路由节点,该帧中包含了自身地址段长度 以及当前状态信息; 2) 网络中的路由节点收到该帧后,会把自身的地址段长度与之比较,如果超过临界状 态节点地址段长度的3倍,则该节点会回复一个临界状态响应帧,把自身地址段长度的三 分之一分配给临界状态节点,帧中包含分配给该节点的地址段长度和范围信息; 3) 两个节点各自更新自身以及邻居节点的地址段长度和范围信息。
[0011] 节点处于耗尽状态时,在后面的周期中不会再广播或洪泛地址段信息帧,其处理 流程如下: 1) 节点广播一个地址耗尽帧给一跳范围内的邻居节点,该帧中包含当前状态信息; 2) 邻居节点收到该帧后,会记录下该节点的当前状态。
[0012] 在某个周期中,如果节点不能收到邻居节点的地址段信息,节点首先会检测邻居 节点的状态;如果邻居节点不是处于耗尽状态,节点会检查邻居节点最后一次广播的地址 段信息,并把自身原有的地址段与之合并;节点更新完自身地址段信息后,广播一个地址段 信息帧,通知邻居节点来及时更新信息。
[0013] 本发明的优点是: 此发明提供的无线自组网的分段式地址分配方法,根据加入网络后的节点的自身地址 段大小的不同可分为三种状态,节点在每种状态下进行不同的处理流程,不需要大量的内 存空间来存储地址列表,减轻了对单一地址分配节点的依赖,一定程度上减小了入网的延 时,并且增强了网络的稳定性,有效降低了网络负载和延时问题,并且采用基于状态监测的 方法,解决该机制自身带来的地址耗尽和泄露问题。
【专利附图】
【附图说明】
[0014] 下面结合附图及实施例对本发明作进一步描述: 图1是本发明一种无线自组网的分段式地址分配方法的流程图; 图2是本发明一种无线自组网的分段式地址分配方法的正常状态地址段重配示意图; 图3是本发明一种无线自组网的分段式地址分配方法的临界状态地址段获取示意图。
【具体实施方式】
[0015] 为使本发明的目的、技术方案和优点更加清楚明了,下面结合【具体实施方式】并参 照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发 明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本 发明的概念。
[0016] 实施例: 一种无线自组网的分段式地址分配方法,首先节点通过关联方式加入网络。网络 中的第一个路由节点组建完网络并分配给自己0x0000地址后,维持一张地址范围表 (Nmin, Nmax)。当一个具有地址分配能力的路由节点通过它加入网络时,它把Nmin地 址分配给节点,同时Nmin=Nmin+l。对于新加入网络的路由节点,也有一张地址范围表 (N,min, N,max),其中 N,min= (Nmax-Nmin)/2, N,max=Nmax。然后 Nmax= (Nmax_Nmin)/2, 两个节点都更新自己的地址表。相当于父节点除了分配一个特定的地址给路由子节点,还 将自己地址段的一半交给该子节点,以便该子节点让更多的子孙节点加入。
[0017] 加入网络后的节点,根据自身地址段大小的不同可分为三种状态:正常状态、临界 状态和耗尽状态。图1为节点工作流程图。节点周期性地检查自身的地址段长度,地址段 长度阈值设定为4。当地址段长度大于或等于4时,节点处于正常状态;当地址段长度大于 0且小于4时,节点处于临界状态;当地址段长度等于0时,节点处于耗尽状态。节点在每 种状态下进行不同的处理流程。
[0018] 在网络建立之初,由于网络中节点数目较少,节点的地址段长度比较充裕,长度值 一般都大于地址长度阈值4。此时的节点处于正常状态,按照如下步骤进行处理: 步骤a :节点广播一个地址段信息帧给一跳范围内的邻居节点,帧中包含地址段长度、 地址范围以及当前状态等信息。
[0019] 步骤b :节点接收到邻居节点发来的地址段信息帧,并获取邻居节点的当前地址 段长度信息。如果邻居节点的地址段长度是自身的5倍以上,则向该邻居节点发送地址请 求信息帧。
[0020] 步骤c :邻居节点收到地址请求信息帧后,会回复一个地址请求响应帧,把自身 地址段长度的一半分配给该节点。帧中包含分配给该节点的地址段长度和范围信息。
[0021] 步骤d :两个节点各自更新自身以及邻居节点的地址段长度和范围信息。
[0022] 下面举例说明这种地址重配过程。如图2所示的正常状态地址段重配过程,节点 N1和节点N2是一跳范围内的邻居节点,N1的地址段长度为10,N2的地址段长度为60。在 某个地址检测周期来临后,N1和N2检测到自身都处于正常状态,于是向邻居节点广播自身 的地址段长度信息。N1从N2发送的地址段信息帧中获取N2的地址段长度是自身的6倍, 然后N1便向N2请求分配地址段。N2会拿出自身地址段产长度的一般分配给N1。分配过 后N1和N2的地址段长度分别为40和30。
[0023] 通过周期性的地址段重配,我们可以保证局部范围内节点的地址段长度基本相 同。但是当这个局部范围内不断有新节点加入时,便有可能导致这个范围内的节点地址段 长度普遍比较小,因而地址段重配过程也相对减少。当节点的地址段长度小于4,也就是低 于地址段阈值时,节点就进入了临界状态。节点处于临界状态时,按照如下步骤进行处理: 步骤a:节点洪泛一个临界状态帧给网络中的所有节点,该帧中包含了自身地址段长 度信息以及当前状态。
[0024] 步骤b:网络中的路由节点在收到该帧后,会把自身的地址段长度与之比较,如果 超过临界状态节点地址段长度的3倍,则该节点会回复一个临界状态响应帧,把自身地址 段长度的三分之一分配给临界状态节点。帧中包含分配给该节点的地址段长度和范围信 息。
[0025] 步骤c:两个节点更新自身以及邻居节点的地址段长度和范围信息。
[0026] 如图3所示的临界状态地址分配过程,节点N1地址段长度为3,处于临界状态,而 N1周围邻居节点N2和N3的地址段长度都不够,这种情况下N1会通过洪泛的方式向网络中 的其他路由节点发送临界状态帧。N4、N5、N6和N7是网络中其他部分的路由节点。N6的 地址段长度为40,在收到N1的临界状态帧并进行地址段长度比较后,发现自身地址段长度 是N1的3倍以上,便把自身的三分之一的地址段分配给N1。分配完以后,N1和N6的地址 段长度分别为16和27。
[0027] 当网络中节点数目趋于饱和时,处于临界状态的节点可能不能分配到来自其他节 点给予的地址段,因此该节点的地址段数目随着子节点的加入而不断减小。一旦节点的地 址段长度为〇时,节点便处于耗尽状态,处于耗尽状态的节点在后面的周期中不会再广播 或洪泛地址段信息帧。节点处于耗尽状态时,按照如下步骤进行处理: 步骤a:节点广播一个地址耗尽帧给一跳范围内的邻居节点,该帧中包含当前状态信 息。
[0028] 步骤b :邻居节点收到该帧后,会记录下该节点的当前状态。
[0029] 无论节点处于正常状态还是临界状态,它周围的邻居节点都会周期性地获得它的 地址段信息。如果在某个周期中,节点A不能收到某个邻居节点B的地址段信息,节点A首 先会检测节点B所处的状态。如果节点B处于耗尽状态,则说明节点B因为没有可分配地 址段才不发送地址段信息。如果节点B不是处于耗尽状态,则说明节点B处于非正常工作 状态,此时节点A会进行地址段回收工作。节点A会检查节点B最后一次广播或洪泛的地 址段信息,并把自身原有的地址段与之合并。节点A更新完自身地址段信息后,会马上广播 一个地址段信息帧,通知邻居节点来及时更新信息。
[0030] 应当理解的是,本发明的上述【具体实施方式】仅仅用于示例性说明或解释本发明的 原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何 修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨 在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修 改例。
【权利要求】
1. 一种无线自组网的分段式地址分配方法,其特征在于,未入网的路由节点上电后,首 先执行关联入网的流程;然后向周围的节点发送信标请求帧,并接收周围节点发来的信标 帧;优先选择地址段长度较长的节点作为自己的父节点;最后向选定的父节点发送入网请 求帧。
2. 根据权利要求1所述的无线自组网的分段式地址分配方法,其特征在于,所述信标 帧中包含地址段长度信息,所述入网请求帧中包含分配给该节点的地址和一个地址段信 息。
3. 根据权利要求1所述的无线自组网的分段式地址分配方法,其特征在于,加入网络 后的节点周期性检查自身的地址段长度,根据自身地址段大小的不同分为三种状态:正常 状态、临界状态和耗尽状态,节点在每种状态下进行不同的处理流程。
4. 根据权利要求3所述的无线自组网的分段式地址分配方法,其特征在于,所述地址 段长度阈值设定为4,当地址段长度大于或等于4时,节点处于正常状态;当地址段长度大 于0且小于4时,节点处于临界状态;当地址段长度等于0时,节点处于耗尽状态。
5. 根据权利要求3所述的无线自组网的分段式地址分配方法,其特征在于,节点处于 正常状态时,处理流程如下: 1) 节点广播一个地址段信息帧给一跳范围内的邻居节点,所述帧中包含地址段长度、 地址范围以及当前状态信息; 2) 节点接收到邻居节点发来的地址段信息帧,并获取邻居节点的当前地址段长度信 息,如果邻居节点的地址段长度是自身的5倍以上,则向该邻居节点发送地址请求信息帧; 3) 邻居节点收到地址请求信息帧后,回复一个地址请求响应帧,把自身地址段长度的 一半分配给该节点,所述帧中包含分配给该节点的地址段长度和范围信息; 4) 两个节点各自更新自身以及邻居节点的地址段范围和长度信息。
6. 根据权利要求3所述的无线自组网的分段式地址分配方法,其特征在于,节点处于 临界状态时,处理流程如下: 1) 节点洪泛一个临界状态帧给网络中的所有路由节点,该帧中包含了自身地址段长度 以及当前状态信息; 2) 网络中的路由节点收到该帧后,会把自身的地址段长度与之比较,如果超过临界状 态节点地址段长度的3倍,则该节点会回复一个临界状态响应帧,把自身地址段长度的三 分之一分配给临界状态节点,帧中包含分配给该节点的地址段长度和范围信息; 3) 两个节点各自更新自身以及邻居节点的地址段长度和范围信息。
7. 根据权利要求3所述的无线自组网的分段式地址分配方法,其特征在于,节点处于 耗尽状态时,在后面的周期中不会再广播或洪泛地址段信息帧,其处理流程如下: 1) 节点广播一个地址耗尽帧给一跳范围内的邻居节点,该帧中包含当前状态信息; 2) 邻居节点收到该帧后,会记录下该节点的当前状态。
8. 根据权利要求1-7任一项所述的无线自组网的分段式地址分配方法,其特征在于, 在某个周期中,如果节点不能收到邻居节点的地址段信息,节点首先会检测邻居节点的状 态;如果邻居节点不是处于耗尽状态,节点会检查邻居节点最后一次广播的地址段信息,并 把自身原有的地址段与之合并;节点更新完自身地址段信息后,广播一个地址段信息帧,通 知邻居节点来及时更新信息。
【文档编号】H04L29/12GK104104746SQ201410337413
【公开日】2014年10月15日 申请日期:2014年7月16日 优先权日:2014年7月16日
【发明者】周晓明, 王薇, 归成希, 张燕 申请人:苏州博联科技有限公司