一种基于素数法和按需借地址的无线传感网地址分配方法

文档序号:10616117阅读:374来源:国知局
一种基于素数法和按需借地址的无线传感网地址分配方法
【专利摘要】本发明提供了一种基于素数法和按需借地址的无线传感网地址分配方法,该方法使未入网节点的地址为已入网节点地址乘以不小于已入网节点最大地址因子的素数,使每一个节点的地址都能分解为唯一的素数乘积,保证了地址的唯一性,解决了地址冲突问题。同时本方法中的欲入网节点在已入网节点无地址可分配时,会使用树状路由向协调器申请地址池,协调器会给此节点分配一个素数作为地址池,节点得到地址池后,成为外围根节点向其他未入网邻居节点分配地址,邻居节点得到地址后成为其子节点;通过向协调器借地址池的方法,不但解决了地址枯竭的问题,而且向协调器借地址池可以得到大容量的地址池,减少了借地址的次数,降低了消息开销。
【专利说明】
-种基于素数法和按需借地址的无线传感网地址分配方法
技术领域
[0001] 本发明设及到无线传感网络组网技术领域,尤其设及到无线传感网的无冲突地址 分配领域。
【背景技术】
[0002] 为了使无线传感器节点组织成一个网络,在无线网络传感网络节点开启后,节点 不可避免地需要进行地址的请求和分配。现有的地址分配算法分为两个大类:无冲突地址 分配算法和有冲突地址分配算法。无冲突地址分配策略存在一个固定的公式,每个节点可 W接受固定数量的未入网节点,其缺陷是存在地址枯竭问题。在节点密度非均匀的网络中, 会同时出现地址过剩和地址不足的情况,且节点深度超过某个值就无法获取到地址,需要 通过借地址来进行地址均衡;有冲突地址分配算法中的典型代表是随机地址分配算法,每 个节点通过得到随机地址入网,其地址分配不受节点分布不均匀及节点深度的影响,但节 点入网后需要进行泛洪来进行冲突检测,增大了消息开销。

【发明内容】

[0003] 为了解决现有技术存在的上述问题,本发明提供了一种基于素数法和按需借地址 的无线传感网地址分配方法。该方法属于无冲突地址分配方法,该方法使未入网节点的地 址为已入网节点地址乘W不小于已入网节点最大地址因子的素数,使每一个节点的地址都 能分解为唯一的素数乘积,保证了地址的唯一性,解决了地址冲突问题。同时本方法中的欲 入网节点在已入网节点无地址可分配时,会使用树状路由向协调器申请地址池,协调器会 给此节点分配一个素数作为地址池,节点得到地址池后,成为外围根节点向其他未入网邻 居节点分配地址,邻居节点得到地址后成为其子节点;通过向协调器借地址池的方法,不但 解决了地址枯竭的问题,而且向协调器借地址池可W得到大容量的地址池,减少了借地址 的次数,降低了消息开销。
[0004] 素数法的思想是基于算数基本定理。算术基本定理可表述为:任何一个大于1的自 然数N,如果N不为素数,那么N可W唯一分解成有限个素数的乘巧
其中Pl<P2<P3<......<Pn且均为素数,指数曰1是正整数。在素数法形成的树状网络中,根 节点或协调器地址为1,它W递增的方式分配素数给子节点作为地址,成为已入网节点;已 入网节点再向未入网节点分配地址,未入网节点地址值为已入网节点地址乘W-个素数, 此素数的值从已入网节点地址值的最大素数因子开始,W递增方式分配。可W看出,网络中 每一个节点的地址值对应树状网络中的唯一的位置。
[0005] 为实现W上发明目的,采用的技术方案是:
[0006] -种基于素数法和按需借地址的无线传感网地址分配方法,包括中屯、区域节点地 址分配阶段和外围区域节点地址分配阶段,具体如下:
[0007] (1)中屯、区域节点地址分配阶段:
[000引 S11.未入网节点广播入网请求向邻居节点请求入网,若存在已入网的邻居节点, 则此邻居节点会发送允许入网消息至未入网节点;
[0009] S12.未入网节点收到允许入网消息后向已入网的邻居节点发送请求地址信息,邻 居节点收到请求地址信息后,成为未入网节点的父节点,父节点计算未入网节点的地址,并 将地址信息发送至未入网节点,其中未入网节点地址为父节点地址与不小于父节点最大地 址因子的素数的乘积;
[0010] S13.未入网节点接收地址信息后,查看地址是否在0-65533内,若是则入网成功, 否则入网失败,未入网节点成为外围区域节点,然后进入外围区域节点地址分配阶段;
[0011] (2)外围区域节点地址分配阶段
[0012] S21.外围区域节点选择深度最小且已入网的邻居节点作为父节点,然后通过树状 路由向协调器请求地址;
[0013] S22.协调器接收到地址请求信息后,查询素数表得到还未分配的最小的素数地 址,将此地址通过树状路由分配给外围区域节点,外围区域节点得到地址后,入网成功。
[0014] (3)未入网节点主动请求地址阶段
[0015] 若进行(1)、(2)的过程中出现丢包,则进入该阶段,其具体步骤如下:
[0016] S31.未入网节点广播请求入网;
[0017] S32.已入网节点收到广播信息,单播回复信息告知未入网节点入网;
[0018] S33.未入网节点收到回复信息,设置定时器,时间到后向发送回复信息的地址最 小的已入网节点单播地址分配请求消息请求入网;
[0019] S34.已入网节点在地址池中选择素数并将之与已入网节点的地址相乘得到新地 址,并将新地址发送至未入网节点;
[0020] S35.未入网节点接收新地址,入网成功。
[0021] 优选地,所述外围区域节点入网成功后称之为外围根节点,外围根节点广播 "find"消息,告知其他外围区域节点入网,其他外围区域节点采用中屯、区域节点地址分配 阶段的入网方式入网。
[0022] 优选地,步骤S12中,若未入网节点收到多个允许入网信息,则选择地址最小的已 入网的邻居节点发送请求地址信息。
[0023] 与现有技术相比,本发明的有益效果是:
[0024] 本方法通过引入素数地址分配方法,解决了地址冲突问题;采用每个节点保留地 址池的策略,使大部分节点只需要向邻居节点请求地址,大大降低了节点平均消息量;引入 了外围节点向协调器借地址池的方法,解决了地址枯竭的问题。
【附图说明】
[0025] 图1是完整的节点入网的地址分配流程图。
[0026] 图2是中屯、区域节点入网的消息交互过程图。
[0027] 图3是外围区域根节点入网的消息交互过程图。
[002引图4是节点主动请求入网的消息交互过程图。
[0029] 图5是中屯、区域节点地址分配图例。
[0030] 图6是外围区域节点地址分配图例。
[0031] 图7是全网节点地址分配图例。
【具体实施方式】
[0032] 附图仅用于示例性说明,不能理解为对本专利的限制;
[0033] W下结合附图和实施例对本发明做进一步的阐述。
[0034] 实施例1
[0035] 本发明的技术方案为:采用一种基于素数和借地址的无线传感网地址分配方法, 如图1~7所示,包含=个阶段策略,分别是中屯、区域节点地址分配阶段策略,外围节点地址 分配阶段策略,未入网节点主动请求地址阶段策略,WZi浊ee无线传感网的地址分配为例, 下面将对其分别作出阐述。
[0036] 1.中屯、区域节点地址分配阶段策略
[0037] 图2为路径建立阶段父节点与子节点的消息交互过程图。具体步骤如下所示。
[0038] 1)协调器作为地址分配的起始节点,广播"Find"消息,告知其他节点入网。协调器 中存储有2-65533的6542个素数。其中2-31的11个素数分配给子节点,37-65521的6531个素 数分配给外围区域节点。由于2-31之内的11个素数可分配的地址数为3413个,足够分配给 中屯、区域的节点。而外围区域素数根节点对地址分配的能力从31开始随素数增大逐渐下 降,因此将31W后的素数分配给外围区域可使外围区域根节点对地址的分配能力最强。
[0039] 2)路由器收到"Find"消息,向协调器发送"Request"消息请求入网。每个路由器存 储0-256范围内的54个素数,由于中屯、区域节点地址因子不大于31,外围区域节点地址因子 不大于外围根节点地址值,且可用地址值不大于65533,因此路由器存储256范围内的素数 可使每个地址值都有可能被分配。
[0040] 3)协调器向路由器发送"Alloc"消息,将素数地址依次分配给子节点,协调器最多 接收11个子节点。
[0041] 4)路由器收到"Alloc"消息,入网成功后,广播"Find"消息,此时路由器作为地址 池,给其他节点分配地址。
[0042] 5)若路由器收到其他路由器的入网请求,W下称未入网路由器为子节点,已入网 路由器为父节点。子节点收到"Find"消息,向父节点发送"Request"消息请求入网。父节点 向子节点发送"Alloc"消息,其中包含父节点的地址的素数因子a和b,及父节点素数表中还 未分配的最小的素数C,需满足a< = b< = 31,子节点接收到"Alloc"消息,将消息中的素数因 子做乘积计算得到自身地址曰帥。例如图5中,节点6地址为6,它的地址因子为2*3,它的父节 点地址为2。若地址在65533内,则入网成功,广播叩ind"消息,并持续向下分配地址;若超过 65533,则第一阶段请求地址失败,启动外围节点地址分配阶段策略。
[0043] 2.外围节点地址分配阶段策略
[0044] 外围节点地址分配阶段策略具体步骤如下。
[0045] 1)当第一阶段中子节点向父节点请求地址失败,则子节点会向父节点发送 "Borrow"消息,向协调器借地址,父节点接收到此消息,会将此消息转发给它的父节点,直 到协调器;每个节点在转发时,会在路由表中记录源节点和子节点的地址;协调器收到借地 址消息后,在可用地址池中寻找最小的素数作为分配给源节点的地址,封装到"Reply"消息 中向子节点发送,子节点收到"Reply"消息后通过路由表查找到下一跳地址,继续转发,直 到子节点收到"Reply"消息,将消息中的素数值作为自己的地址,节点入网成功,称之为外 围根节点。节点广播"Find"消息,告知其他外围节点入网。其过程如图3所示。
[0046] 2)因节点地址为素数乘积,且限制在65536W内,因此中屯呕域深度限制为16W 下。外围区域节点因节点深度太大而无法入网,因此只能与外围根节点组网。外围路由节点 收到外围根节点的"Find"消息,发送"Request"消息请求入网,外围根节点寻找地址池中最 小素数b,将其与本节点地址a相乘,得到要分配地址,通过"Alloc"消息发送,外围路由节点 收到"Alloc"消息,入网成功。
[0047] 3)外围区域也是一个树状网络,它的地址分配规则如下:父节点地址为素数乘积 a*b*c,其中a为外围根节点的素数地址;子节点分配到的素数为d,它得到的地址是a*b*c* d,其中b< = ^ = d< = a。例如图6中,节点1554的地址为1554,它的地址因子为37*2*3*7,其 中37是外围区域的一个根节点,它的父节点是中屯、区域的一个叶子节点,在W37为根形成 的子树中,所有节点地址的素数因子不大于37。运种地址分配方式可保证全网无地址重复。 [004引3.未入网节点主动请求地址阶段策略
[0049] 在分配地址的过程中,如果出现丢包,地址分配会失败。此时未入网主动请求地址 可提高入网率。主动请求地址阶段策略如图4所示,具体步骤如下。
[0050] 1)未入网节点广播"0巧ban"消息,请求入网。
[0051] 2)已入网路由节点收到"0巧ban"消息,单播回复"Find"消息,告知未入网节点入 网。
[0052] 3)未入网节点收到"Find"消息,设置定时器,时间到后向发送消息的地址最小的 节点单播"Request"消息请求入网。
[0053] 4)已入网路由节点在地址池中选择素数并与本节点地址相乘得到新地址,通过 "Alloc"消息发送。未入网节点收到消息后,入网成功。
[0054] 显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对 本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可 W做出其它不同形式的变化或变动。运里无需也无法对所有的实施方式予W穷举。凡在本 发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求 的保护范围之内。
【主权项】
1. 一种基于素数法和按需借地址的无线传感网地址分配方法,其特征在于:包括中心 区域节点地址分配阶段、外围区域节点地址分配阶段、未入网节点主动请求地址阶段,具体 如下: (1) 中心区域节点地址分配阶段:511. 未入网节点广播入网请求向邻居节点请求入网,若存在已入网的邻居节点,则此 邻居节点会发送允许入网消息至未入网节点;512. 未入网节点收到允许入网消息后向已入网的邻居节点发送请求地址信息,邻居节 点收到请求地址信息后,成为未入网节点的父节点,父节点计算未入网节点的地址,并将地 址信息发送至未入网节点,其中未入网节点地址为父节点地址与不小于父节点最大地址因 子的素数的乘积;513. 未入网节点接收地址信息后,查看地址是否在0-65533内,若是则入网成功,否则 入网失败,未入网节点成为外围区域节点,然后进入外围区域节点地址分配阶段; (2) 外围区域节点地址分配阶段521. 外围区域节点选择深度最小且已入网的邻居节点作为父节点,然后通过树状路由 向协调器请求地址;522. 协调器接收到地址请求信息后,查询素数表得到还未分配的最小的素数地址,将 此地址通过树状路由分配给外围区域节点,外围区域节点得到地址后,入网成功; (3) 未入网节点主动请求地址阶段 若(1)、(2)的过程中出现丢包,则进入该阶段,其具体步骤如下:531. 未入网节点广播请求入网;532. 已入网节点收到广播信息,单播回复信息告知未入网节点入网;533. 未入网节点收到回复信息,设置定时器,时间到后向发送回复信息的地址最小的 已入网节点单播地址分配请求消息请求入网;534. 已入网节点在地址池中选择素数并将之与已入网节点的地址相乘得到新地址,并 将新地址发送至未入网节点;535. 未入网节点接收新地址,入网成功。2. 根据权利要求1所述的基于素数法和按需借地址的无线传感网地址分配方法,其特 征在于:所述外围区域节点入网成功后称之为外围根节点,外围根节点广播"find"消息,告 知其他外围区域节点入网,其他外围区域节点采用中心区域节点地址分配阶段的入网方式 入网。3. 根据权利要求2所述的基于素数法和按需借地址的无线传感网地址分配方法,其特 征在于:步骤S12中,若未入网节点收到多个允许入网信息,则选择地址最小的已入网的邻 居节点发送请求地址信息。
【文档编号】H04L29/12GK105979023SQ201610308134
【公开日】2016年9月28日
【申请日】2016年5月10日
【发明人】黄晓, 林岸森, 熊弼, 洪诗钢
【申请人】中山大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1