CN104468867A - 一种无线局域网中ip地址动态分配方法 - Google Patents
一种无线局域网中ip地址动态分配方法 Download PDFInfo
- Publication number
- CN104468867A CN104468867A CN201410829938.4A CN201410829938A CN104468867A CN 104468867 A CN104468867 A CN 104468867A CN 201410829938 A CN201410829938 A CN 201410829938A CN 104468867 A CN104468867 A CN 104468867A
- Authority
- CN
- China
- Prior art keywords
- address
- conflict
- node
- hello
- local area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种无线局域网中IP地址动态分配方法,利用协议中周期性广播的HELLO包来传送IP地址,每个节点建立表格来存储IP和MAC的对应关系,节点在收到HELLO包时,判断HELLO包携带的IP地址是否和表中的冲突,冲突则发送冲突通知给冲突节点,冲突节点重新生成IP地址,并丢弃此HELLO包;反之,继续处理HELLO包。本发明将IP分配与L2MPM协议结合,实现了动态IP分配及冲突检测和解决的方法;采用了新的HELLO包帧结构和冲突通知包结构;实现了基于L2MPM协议的WMN网络中动态IP配置。本发明的方法简单,操作方便,较好的解决了现有技术基于L2MPM协议搭建的拓扑是动态变化的,维护网络结构的分群本身工作量很大,不适合节点移动快,拓扑变化剧烈网络的问题。
Description
技术领域
本发明属于局域网技术领域.,尤其涉及一种无线局域网中IP地址动态分配方法。
背景技术
任何一种网络中每个节点通信的前提都是具有全网唯一的IP地址,WMN也不例外,通信两端节点必需有不同IP地址。小规模的应用可以手动配置IP地址,但网络规模变大时,手动配置就显得无能为力,因此需要设计适合L2MPM协议的动态IP分配方法,以方便基于L2MPM协议的WMN部署。
前人提出在进行地址分配之前,对网络的所有节点进行分群,把一组相距小于或等于r跳的节点划分为一个群,选举邻居节点数最多的节点作为群首节点,孤立节点可自立为群首。群内所有节点共同构成一个子网,群首节点负责选择一个子网ID,并且在所有群首节点中进行Duplicate Address Detection(DAD)检测以保证该子网ID的唯一性。在子网ID确定下来以后,群首向群内节点周期性地广播Router Advertisements(RA)消息,消息中包含子网ID。新加入节点先随机产生一个本地链路地址,并在群内进行DAD检测,如果检测到没有冲突,则将该本地链路地址和接收到的RA中的子网ID合成节点地址,否则重新选取地址,并重复上述过程。该算法实现了网络结构的分群,将本地链路地址的DAD检测限制在群内,而ID的DAD检测限制在群首之间,降低了协议开销。
现有技术基于L2MPM协议搭建的拓扑是动态变化的,维护网络结构的分群本身是一笔不小的开销,该算法不适合节点移动快,拓扑变化剧烈的网络。
发明内容
本发明的目的在于提供一种无线局域网中IP地址动态分配方法,旨在解决现有技术基于L2MPM协议搭建的拓扑是动态变化的,维护网络结构的分群本身工作量很大,不适合节点移动快,拓扑变化剧烈网络的问题。
本发明是这样实现的,一种无线局域网中IP地址动态分配方法,该无线局域网中IP地址动态分配方法利用协议中周期性广播的HELLO包来传送IP地址,每个节点建立表格来存储IP和MAC的对应关系,节点在收到HELLO包时,判断HELLO包携带的IP地址是否和表中的冲突,冲突则发送冲突通知给冲突节点,冲突节点重新生成IP地址,并丢弃此HELLO包;反之,继续处理HELLO包。
进一步,该无线局域网中IP地址动态分配方法包括两个新的帧结构和一个新的发送/接收函数。
进一步,帧结构包括:
包类型:标识HELLO消息;
Version:收到的HELLO消息的版本号与自己的Version相同则处理,不同则丢弃;
TTL:HELLO消息生存期;
标识:标识直接邻居、双向链路、可视化;
Initiator IP地址:产生HELLO消息的节点的IP地址;
Seq:HELLO消息的新旧;
Initiator MAC地址:产生HELLO消息的接口地址;
Sender MAC地址:转发HELLO消息的节点的MAC地址;
flag:标识是否是网关节点;
qos:链路质量;
冲突通知包格式:
头部:L2MPM协议头部;
标识:冲突通知包标识;
IP地址:冲突的IP地址;
Dst:冲突节点的MAC地址;
Src:发送冲突通知的节点的MAC地址。
进一步,新的发送/接收函数如下:
新定义的发送冲突通知函数格式如下:
L2MPM_send_collimsg(structL2MPM_pri*m_pri,__be32ip,uint8_t*mac);
新定义的接收冲突通知函数格式如下:
L2MPM_receive_collimsg(struct sk_buff*skb,struct L2MPM_port*receive_if)。
本发明的另一目的在于提供一种所述的无线局域网中IP地址动态分配方法在基于WIFI的WMN场景的应用。
本发明提供的无线局域网中IP地址动态分配方法,通过周期性广播携带节点IP地址的HELLO包将IP地址分配与L2MPM协议结合,实现动态IP分配,解决了大规模网络中IP分配问题;每个节点收到HELLO包后提取其中IP地址和MAC地址,与存储表中的IP和MAC条目比较,若存在冲突,节点发送冲突通知给冲突节点,通知其重新选择IP,实现了冲突检测并解决冲突,使网络中节点拥有全网唯一IP;采用了新的HELLO包帧结构和冲突通知包结构,突破传统IP分配方法,减小网络开销;实现了基于L2MPM协议的WMN网络中动态IP分配,解决拓扑变化剧烈的网络的IP地址分配问题。本发明的方法简单,操作方便,较好的解决了现有技术基于L2MPM协议搭建的拓扑是动态变化的,维护网络结构的分群本身工作量很大,不适合节点移动快,拓扑变化剧烈网络的问题,使得WMN部署更简单化,自动化。
附图说明
图1是本发明实施例提供的无线局域网中IP地址动态分配方法流程图;
图2是本发明实施例提供的Init函数流程图;
图3是本发明实施例提供的RandIP函数流程图;
图4是本发明实施例提供的ConfigIP函数流程图;
图5是本发明实施例提供的检测IP冲突记录文件流程图;
图6是本发明实施例提供的HELLO包处理流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图及具体实施例对本发明的应用原理作进一步描述。
如图1所示,本发明实施例的无线局域网中IP地址动态分配方法包括以下步骤:
步骤一,从程序参数列表中解析出需要的参数,并建立对IP记录文件变化的监控机制;
步骤二,节点随机选择一个IP并通过ifconfig配置IP地址,将IP地址填充到HELLO包中通知给其它节点;
步骤三,检测IP冲突记录文件是否有改动,若有则读取文件中改动的IP地址,与之前随机选择的IP比较是否相同,相同则重新随机选择并配置,不相同则不做处理。
本发明的工作原理:
本发明利用协议中周期性广播的HELLO包来传送IP地址,并建立表格来存储IP和MAC的对应关系,在收到HELLO包时,判断其中携带的IP地址是否和表中的冲突,若冲突则发送冲突通知给冲突节点,冲突节点重新生成IP地址,并丢弃此HELLO包;反之,继续处理HELLO包。该方法适用于使用基于WIFI的WMN场景。
本发明包括两个新的帧结构和一个新的发送/接收函数:
(1)新的帧结构:如表1和表2所示
表1HELLO消息的一般格式
1.包类型:标识HELLO消息;
2.Version:收到的HELLO消息的版本号与自己的Version相同则处理,不同则丢弃;
3.TTL:HELLO消息生存期;
4.标识:标识直接邻居、双向链路、可视化等;
5.Initiator IP地址:产生HELLO消息的节点的IP地址;
6.Seq:HELLO消息的新旧;
7.Initiator MAC地址:产生HELLO消息的接口地址。
8.Sender MAC地址:转发HELLO消息的节点的MAC地址;
9.flag:标识是否是网关节点;
10.qos:链路质量。
表2冲突通知包格式
头部 | 标识 | IP地址 | Dst | Src |
头部:L2MPM协议头部;
标识:冲突通知包标识;
IP地址:冲突的IP地址;
Dst:冲突节点的MAC地址;
Src:发送冲突通知的节点的MAC地址;
(2)新的发送/接收函数:
新定义的发送冲突通知函数格式如下:
L2MPM_send_collimsg(structL2MPM_pri*m_pri,__be32ip,uint8_t*mac);
新定义的接收冲突通知函数格式如下:
L2MPM_receive_collimsg(struct sk_buff*skb,struct L2MPM_port*receive_if)。
本发明是为WMN中节点提供一种分配IP地址的方法,使WMN部署更简单,更自动化;设定某一网段的地址作为地址池;每个节点启动后从地址池中随机选择一个IP地址,将此随机选择的IP地址分配给网卡;如果地址池选择的比较大则冲突的概率就会变小,但仍存在冲突的可能;为了检测到冲突并解决,本发明将IP地址添加到HELLO包中发送,每个节点存储一张表格维护IP和MAC的绑定关系,每个收到HELLO包的节点,将HELLO包中的IP地址、MAC地址与列表中的对比,若IP相同但MAC不同,则表明IP地址发生冲突,此节点需要发送冲突通知给冲突节点,冲突节点收到冲突通知后重新随机选择IP;HELLO包是周期性广播的,当节点收到HELLO包时就会检测IP地址是否与自己列表中的冲突;因此,即使在网络融合后,也可自动检测IP地址是否冲突并进行处理;当网络分割时,需要解决IP地址的回收问题,可以在列表中设置超时时间,若某节点离开网络,则该时间会不断增长直到超时,超时后将从列表中删除该节点对应的条目,回收其IP地址。
各子函数流程图如图2:从程序参数列表中解析出需要的参数,并建立对IP记录文件变化的监控机制。
如图3所示,RandIP函数随机生成一个32位整数,取其低24位作为本机号,并以作为网络号与本机号合成一个IP地址。
如图4所示,ConfigIP函数通过ifconfig配置IP地址。
如图5所示,利用poll/sysfs_notify机制检测IP冲突记录文件的内容变化事件并从中读出最近更新。
如图6所示,每个节点在发送HELLO包时都读取自己的IP地址添加到HELLO包中发送,在接收到HELLO包时按上述流程图处理,提取HELLO包中的IP地址与列表中的比较,若IP不同,则直接添加新的条目到HELLO包中,若IP相同,MAC也相同,则更新条目的生存期,若IP相同,MAC不同,则发送冲突通知给冲突节点。节点接收到冲突通知后,将冲突的IP地址写入冲突文件,并通过sysfs_notify通知上层程序读取IP地址。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种无线局域网中IP地址动态分配方法,其特征在于,该无线局域网中IP地址动态分配方法利用协议中周期性广播的HELLO包来传送IP地址,每个节点建立表格来存储IP和MAC的对应关系,节点在收到HELLO包时,判断HELLO包携带的IP地址是否和表中的冲突,冲突则发送冲突通知给冲突节点,冲突节点重新生成IP地址,并丢弃此HELLO包;反之,继续处理HELLO包。
2.如权利要求1所述的无线局域网中IP地址动态分配方法,其特征在于,该无线局域网中IP地址动态分配方法包括两个新的帧结构和一个新的发送/接收函数。
3.如权利要求2所述的无线局域网中IP地址动态分配方法,其特征在于,帧结构包括:
包类型:标识HELLO消息;
Version:收到的HELLO消息的版本号与自己的Version相同则处理,不同则丢弃;
TTL:HELLO消息生存期;
标识:标识直接邻居、双向链路、可视化;
Initiator IP地址:产生HELLO消息的节点的IP地址;
Seq:HELLO消息的新旧;
Initiator MAC地址:产生HELLO消息的接口地址;
SenderMAC地址:转发HELLO消息的节点的MAC地址;
flag:标识是否是网关节点;
qos:链路质量;
冲突通知包格式:
头部:L2MPM协议头部;
标识:冲突通知包标识;
IP地址:冲突的IP地址;
Dst:冲突节点的MAC地址;
Src:发送冲突通知的节点的MAC地址。
4.如权利要求2所述的无线局域网中IP地址动态分配方法,其特征在于,新的发送/接收函数如下:
新定义的发送冲突通知函数格式如下:
L2MPM_send_collimsg(struct L2MPM_pri*m_pri,__be32ip,uint8_t*mac);
新定义的接收冲突通知函数格式如下:
L2MPM_receive_collimsg(struct sk_buff*skb,struct L2MPM_port*receive_if)。
5.一种如权利要求1-4任意一项所述的无线局域网中IP地址动态分配方法在基于WIFI的WMN场景的应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410829938.4A CN104468867B (zh) | 2014-12-26 | 2014-12-26 | 一种无线局域网中ip地址动态分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410829938.4A CN104468867B (zh) | 2014-12-26 | 2014-12-26 | 一种无线局域网中ip地址动态分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104468867A true CN104468867A (zh) | 2015-03-25 |
CN104468867B CN104468867B (zh) | 2019-03-26 |
Family
ID=52914214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410829938.4A Expired - Fee Related CN104468867B (zh) | 2014-12-26 | 2014-12-26 | 一种无线局域网中ip地址动态分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104468867B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915390A (zh) * | 2016-06-07 | 2016-08-31 | 中电华瑞技术有限公司 | 一种电力线网络中根节点网络协调方法和系统 |
CN105959431A (zh) * | 2016-06-07 | 2016-09-21 | 中电华瑞技术有限公司 | 一种电力线网络中多网络的网络号协调方法和系统 |
CN108198399A (zh) * | 2018-01-19 | 2018-06-22 | 荣如 | 一种家电通用集成化遥控器 |
CN108259641A (zh) * | 2017-12-29 | 2018-07-06 | 北华大学 | 一种日语口语训练装置中的控制系统 |
WO2018133051A1 (zh) * | 2017-01-20 | 2018-07-26 | 华为技术有限公司 | 一种地址冲突的检查方法及装置 |
CN108429750A (zh) * | 2018-03-13 | 2018-08-21 | 湖南城市学院 | 一种基于大数据的音乐播放控制系统及控制方法 |
CN108510123A (zh) * | 2018-04-04 | 2018-09-07 | 农业部环境保护科研监测所 | 一种基于物联网的湿地保护与开发的优化分析方法 |
CN108923939A (zh) * | 2018-06-26 | 2018-11-30 | 青岛科技大学 | 基于读数据分析的共享汽车的计费管理系统及方法、应用 |
CN108989477A (zh) * | 2018-06-28 | 2018-12-11 | 荆门市第二人民医院 | 基于物联网的妇产科护理中的康复数据管理方法及系统 |
CN109067436A (zh) * | 2018-09-25 | 2018-12-21 | 河南科技大学 | 一种后向兼容的无线局域网多ap协同通信方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148398A1 (en) * | 2003-01-15 | 2004-07-29 | Samsung Electronics Co., Ltd. | Method of automatically registering an IP address and domain name in IP protocol version 6 |
CN102291448A (zh) * | 2011-08-08 | 2011-12-21 | 华南理工大学 | 移动自组织网络中基于地理位置的ip地址自动分配方法 |
CN103188354A (zh) * | 2013-03-29 | 2013-07-03 | 北京东土科技股份有限公司 | 一种节点地址冲突的检测方法及装置 |
CN103647709A (zh) * | 2013-11-28 | 2014-03-19 | 杭州华三通信技术有限公司 | 一种arp表项建立方法和装置 |
-
2014
- 2014-12-26 CN CN201410829938.4A patent/CN104468867B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040148398A1 (en) * | 2003-01-15 | 2004-07-29 | Samsung Electronics Co., Ltd. | Method of automatically registering an IP address and domain name in IP protocol version 6 |
CN102291448A (zh) * | 2011-08-08 | 2011-12-21 | 华南理工大学 | 移动自组织网络中基于地理位置的ip地址自动分配方法 |
CN103188354A (zh) * | 2013-03-29 | 2013-07-03 | 北京东土科技股份有限公司 | 一种节点地址冲突的检测方法及装置 |
CN103647709A (zh) * | 2013-11-28 | 2014-03-19 | 杭州华三通信技术有限公司 | 一种arp表项建立方法和装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915390A (zh) * | 2016-06-07 | 2016-08-31 | 中电华瑞技术有限公司 | 一种电力线网络中根节点网络协调方法和系统 |
CN105959431A (zh) * | 2016-06-07 | 2016-09-21 | 中电华瑞技术有限公司 | 一种电力线网络中多网络的网络号协调方法和系统 |
WO2018133051A1 (zh) * | 2017-01-20 | 2018-07-26 | 华为技术有限公司 | 一种地址冲突的检查方法及装置 |
CN108259641A (zh) * | 2017-12-29 | 2018-07-06 | 北华大学 | 一种日语口语训练装置中的控制系统 |
CN108198399A (zh) * | 2018-01-19 | 2018-06-22 | 荣如 | 一种家电通用集成化遥控器 |
CN108429750A (zh) * | 2018-03-13 | 2018-08-21 | 湖南城市学院 | 一种基于大数据的音乐播放控制系统及控制方法 |
CN108510123A (zh) * | 2018-04-04 | 2018-09-07 | 农业部环境保护科研监测所 | 一种基于物联网的湿地保护与开发的优化分析方法 |
CN108923939A (zh) * | 2018-06-26 | 2018-11-30 | 青岛科技大学 | 基于读数据分析的共享汽车的计费管理系统及方法、应用 |
CN108989477A (zh) * | 2018-06-28 | 2018-12-11 | 荆门市第二人民医院 | 基于物联网的妇产科护理中的康复数据管理方法及系统 |
CN109067436A (zh) * | 2018-09-25 | 2018-12-21 | 河南科技大学 | 一种后向兼容的无线局域网多ap协同通信方法 |
CN109067436B (zh) * | 2018-09-25 | 2021-09-21 | 河南科技大学 | 一种后向兼容的无线局域网多ap协同通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104468867B (zh) | 2019-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104468867A (zh) | 一种无线局域网中ip地址动态分配方法 | |
CN101600156B (zh) | 一种移动自组织网络地址自动分配方法 | |
US7876756B2 (en) | Packet transmitting method, relay node and receiving node | |
CN101883048B (zh) | 多维网络的路由方法 | |
US10129202B2 (en) | Optimizing global IPv6 address assignments | |
US20140167979A1 (en) | Smart meter system, management router, and meter | |
CA2755331C (en) | Peer-to-peer communications in ami with source-tree routing | |
EP2022280A2 (en) | System and method for distributing proxying error information in wireless networks | |
CN106604344B (zh) | 一种基于rpl的用电信息系统及其组网和通信方法 | |
CN102185749A (zh) | 采用树形拓扑关系避免路由环路的方法 | |
CN101102283A (zh) | 一种在无线接入点上优化未知单播转发的方法及设备 | |
CN102186261A (zh) | 一种WLAN中IPv6邻居发现协议的实现方法和装置 | |
CN103841621A (zh) | 一种基于6LoWPAN树型网络的冗余路由方法 | |
CN103297342A (zh) | 节能的ZigBee网络树型拓扑形成方法 | |
CN105072586B (zh) | 嵌入式无线自组织网络中对广播消息的转发的管理方法 | |
CN101867973A (zh) | 多维网络及其数据传输方法 | |
KR20120030413A (ko) | 세그먼팅된 네트워크에서의 통신을 위해 네트워크 어스레스를 할당하는 방법 | |
CN103354567A (zh) | 一种同步媒体访问控制地址的方法和设备 | |
US9226219B2 (en) | System and method for route learning and auto-configuration | |
Singh et al. | Non-root-based hybrid wireless mesh protocol for wireless mesh networks | |
EP2482589A3 (en) | Method and system for flooding and multicast routing in an AD-HOC network | |
JP4913208B2 (ja) | アドレス解決方法 | |
CN102694874A (zh) | IPv6无线传感器网络的地址配置方法 | |
Xiaonan et al. | Cluster-based and distributed IPv6 address configuration scheme for a MANET | |
CN104104746A (zh) | 一种无线自组网的分段式地址分配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190326 Termination date: 20211226 |