首页 > 专利 > 常熟理工学院 > 一种高效的物联网实现方法专利详情

一种高效的物联网实现方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2017-12-06
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2018-03-27
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2020-07-28
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2037-12-06
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201711274370.4 申请日 2017-12-06
公开/公告号 CN107749900B 公开/公告日 2020-07-28
授权日 2020-07-28 预估到期日 2037-12-06
申请年 2017年 公开/公告年 2020年
缴费截止日
分类号 H04L29/12H04L29/08 主分类号 H04L29/12
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 6
权利要求数量 7 非专利引证数量 1
引用专利数量 1 被引证专利数量 0
非专利引证 1、2006.06.08王晓喃.基于定位信息的无线传感器网络IPv6地址配置方案《.计算机应用研究》.2011,第28卷(第12期),;
引用专利 US2006120317A 被引证专利
专利权维持 5 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 常熟理工学院 当前专利权人 常熟理工学院
发明人 王晓喃 第一发明人 王晓喃
地址 江苏省苏州市常熟市常熟理工学院(东南校区)计算机科学与工程学院 邮编 215500
申请人数量 1 发明人数量 1
申请人所在省 江苏省 申请人所在市 江苏省苏州市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
江苏圣典律师事务所 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
胡建华
摘要
本发明提供了一种高效的物联网实现方法,所述物联网只包括移动节点不包括基础设置,移动节点分为两类节点:已配置节点和新节点;已配置节点为已经配置具有网络唯一性的地址的节点,新节点为未配置具有网络唯一性的地址的节点;节点通过本发明所提供的通信实现方法,可拥有具有唯一性的地址,彼此之间实现正确的通信,同时可以快速获取数据。本发明可应用于交通路况检控及农业工程化等诸多领域,具有广泛的应用前景。
  • 摘要附图
    一种高效的物联网实现方法
  • 说明书附图:图1
    一种高效的物联网实现方法
  • 说明书附图:图2
    一种高效的物联网实现方法
  • 说明书附图:图3
    一种高效的物联网实现方法
  • 说明书附图:图4
    一种高效的物联网实现方法
  • 说明书附图:图5
    一种高效的物联网实现方法
  • 说明书附图:图6
    一种高效的物联网实现方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2020-07-28 授权
2 2018-03-27 实质审查的生效 IPC(主分类): H04L 29/12 专利申请号: 201711274370.4 申请日: 2017.12.06
3 2018-03-02 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种高效的物联网实现方法,其特征在于,所述物联网只包括移动节点不包括基础设置,移动节点分为两类节点:已配置节点和新节点;已配置节点为已经配置具有网络唯一性的地址的节点,新节点为未配置具有网络唯一性的地址的节点;
新节点启动后,随机产生一个正整数L1,随机从自己的介质访问控制地址中选取L1个比特,并构建一个临时地址,该临时地址的比特长度为L1,值为从介质访问控制地址中随机选取的L1个比特;在一个新节点获取地址之前,由其临时地址唯一标识;
一个移动节点的地址由三部分组成,第一部分为网络ID,唯一标识一个物联网,一个物联网中所有节点的网络ID都相同,网络ID由m比特的横坐标和n比特的纵坐标构成;第二部分为节点坐标,节点坐标中由m比特的节点横坐标和n比特的节点纵坐标构成;第三部分为k比特的节点ID,用于区分一个物联网中具有相同节点坐标的节点;m,n,k均为正整数;
物联网启动后,所有移动节点均为新节点,使用临时地址标识;所述物联网中部分节点能够获取自己的定位坐标;新节点定期在一跳范围内广播一个信标消息,该信标消息的源地址为自己的临时地址,负载为该新节点的定位坐标;如果一个新节点没有定位坐标,则将定位坐标设置为(-1,-1);物联网启动后,开始进行地址初始化;
新节点广播信标消息后,执行下述操作:
步骤101:开始;
步骤102:新节点侦听邻居新节点的信标消息,根据信标消息的源地址获取邻居节点的总数记为N,新节点计算信标消息负载的定位坐标不等于(-1,-1)的信标消息个数记为n1,如果所述n1个信标消息的定位坐标为(xc,yc),xc≠-1,yc≠-1,1≤c≤n1≤N,新节点使用公式(1)和公式(2)计算自己的定位坐标(xe,ye),然后将定位坐标(xe,ye)作为下一次广播的信标消息的负载;
步骤103:新节点判断n1是否等于N,如果是,则执行步骤104,否则执行步骤102;
步骤104:结束。

2.根据权利要求1所述的一种高效的物联网实现方法,其特征在于,新节点获取定位坐标后,执行下述操作获取网络ID:
步骤201:开始;
步骤202:新节点构建一个坐标四元组<最大横坐标,最小横坐标,最大纵坐标,最小纵坐标>,然后构建一个长度四元组<临时地址,网络ID横坐标长度,网络ID纵坐标长度,节点ID长度>,其中最大横坐标和最小横坐标的值为新节点的定位坐标的横坐标,最大纵坐标和最小纵坐标为新节点的定位坐标的纵坐标,临时地址为新节点的临时地址,网络ID横坐标长度、网络ID纵坐标长度以及节点ID长度均为随机数;新节点保存构建的坐标四元组和长度四元组,然后广播一个选举消息,该选举消息的源地址为该新节点的临时地址,负载为构建的坐标四元组和长度四元组;
步骤203:一个新节点从邻居节点收到一个选举消息后,将自己保存的坐标四元组和长度四元组与选举消息中的坐标四元组和长度四元组进行比较:
如果满足条件1,新节点则将保存的坐标四元组的最大横坐标更新为接收到的选举消息中的坐标四元组的最大横坐标;条件1:新节点保存的坐标四元组的最大横坐标小于接收到的选举消息中的坐标四元组的最大横坐标;
如果满足条件2,新节点则将保存的坐标四元组的最大纵坐标更新为接收到的选举消息中的坐标四元组的最大纵坐标;条件2:新节点保存的坐标四元组的最大纵坐标小于接收到的选举消息中的坐标四元组的最大纵坐标;
如果满足条件3,新节点则将保存的坐标四元组的最小横坐标更新为接收到的选举消息中的坐标四元组的最小横坐标;条件3:新节点保存的坐标四元组的最小横坐标大于接收到的选举消息中的坐标四元组的最小横坐标;
如果满足条件4,新节点则将保存的坐标四元组的最小纵坐标更新为接收到的选举消息中的坐标四元组的最小纵坐标;条件4:新节点保存的坐标四元组的最小纵坐标大于接收到的选举消息中的坐标四元组的最小纵坐标;
如果满足条件5、条件6、条件7或者条件8中的任一个条件,新节点则将保存的长度四元组更新为接收到的选举消息中的长度四元组;
条件5:新节点保存的长度四元组的临时地址大于接收到的选举消息中的长度四元组的临时地址;
条件6:新节点保存的长度四元组的临时地址等于接收到的选举消息中的长度四元组的临时地址并且新节点保存的长度四元组的网络ID横坐标长度大于接收到的选举消息中的长度四元组的网络ID横坐标长度;
条件7:新节点保存的长度四元组的临时地址和网络ID横坐标长度等于接收到的选举消息中的长度四元组的临时地址和网络ID横坐标长度并且新节点保存的长度四元组的网络ID纵坐标长度大于接收到的选举消息中的长度四元组的网络ID纵坐标长度;
条件8:新节点保存的长度四元组的临时地址、网络ID横坐标长度和网络ID纵坐标长度等于接收到的选举消息中的长度四元组的临时地址、网络ID横坐标长度和网络ID纵坐标长度并且新节点保存的长度四元组的节点ID长度大于接收到的选举消息中的长度四元组的节点ID长度;
步骤204:如果条件1到条件8都不满足,新节点执行步骤206,否则执行步骤205;
步骤205:如果条件5~8都不满足,新节点更新接收到的选举消息的负载,即负载只包含坐标四元组,如果1~4都不满足,新节点更新接收到的选举消息的负载,即负载只包含长度四元组,如果条件5~8中至少有一个条件满足且条件1~4中至少有一个条件满足,新节点不更新接收到的选举消息的负载;
新节点将选举消息转发到邻居节点,执行步骤203;
步骤206:新节点丢弃接收到的选举消息;
步骤207:新节点等待一段时间,如果在这段时间中没有接收到选举消息或者接收到选举消息但是条件1~8都不满足,则执行步骤208,否则执行步骤203;
步骤208:结束;
通过上述过程,物联网中的所有节点能够获取相同的坐标四元组<最大横坐标xmax,最小横坐标xmin,最大纵坐标ymax,最小纵坐标ymin>和长度四元组<临时地址TAmin,网络ID横坐标长度mmin,网络ID纵坐标长度nmin,节点ID长度kmin>;
物联网中的每个节点根据公式(3)和公式(4)计算网络ID的横坐标xID和纵坐标yID;
xID=(xmax+xmin)/2  (3)
yID=(ymax+ymin)/2  (4)
物联网中的每个新节点构建一个地址,该地址的比特长度为2mmin+2nmin+kmin,其中网络ID横坐标长度为mmin,值为xID,网络ID纵坐标长度为nmin,值为yID,节点坐标的横坐标的比特长度为mmin,值为该新节点的定位横坐标,节点坐标的纵坐标的比特长度为nmin,值为该新节点的定位纵坐标,节点ID的比特长度为kmin,值为0。

3.根据权利要求2所述的一种高效的物联网实现方法,其特征在于,新节点构建地址后,广播一个信标消息,该信标消息的源地址为临时地址,负载为构建的地址,然后新节点执行下述操作:
步骤301:开始;
步骤302:新节点侦听邻居新节点的信标消息,然后根据信标消息的源地址获取邻居节点的总数N1,新节点判断它构建的地址与接收到的N1个邻居新节点发送的信标消息负载中构建的地址是否相同,如果是,执行步骤304,否则执行步骤303;
步骤303:新节点将构建的地址的节点ID设置为1,节点ID地址空间设置为[2,2k-1],执行步骤305;
步骤304:新节点计算N1个邻居新节点发送的信标消息负载中地址与自己构建的地址相同的信标消息个数记为n2,然后将自己的临时地址与所述n2个信标消息的源地址按升序排列,如果排序后新节点的临时地址排在第p个位置,1≤p≤n2+1,则新节点通过公式(5)和公式(6)计算自己的节点ID空间的下限L(p)和节点ID空间的上限U(p),最终将自己构建的地址的节点ID设置为L(p),将节点ID空间设置为[L(p)+1,U(P)];
步骤305:新节点将构建的地址作为自己的地址,并转化为已配置节点;
步骤306:结束;
新节点变为已配置节点后,其广播的信标消息的源地址为其获取的地址,负载为网络ID横坐标长度mmin、网络ID纵坐标长度nmin、节点ID长度kmin以及节点ID空间的下限和上限;
地址初始化结束后,每个新节点获取地址并转化为已配置节点。

4.根据权利要求3所述的一种高效的物联网实现方法,其特征在于,如果新节点X在地址初始化结束后启动,它侦听邻居已配置节点的信标消息并获取网络ID横坐标长度mmin、网络ID纵坐标长度nmin以及节点ID长度kmin,然后选择从可分配节点ID长度最大的邻居已配置节点Y获取地址,在已配置节点Y的节点ID区间为[L,U],L和U为正整数且L步骤401:开始;
步骤402:新节点X发送地址请求消息,地址请求消息的目的地址为已配置节点Y的地址,源地址为自己的临时地址;
步骤403:已配置节点Y收到地址请求消息后,选择节点ID空间[L1,U],L步骤404:新节点X收到地址响应消息后,构建一个地址,该地址的比特长度为2mmin+
2nmin+kmin,其中,网络ID横坐标长度为mmin,网络ID纵坐标长度为nmin,节点坐标的横坐标的比特长度为mmin,节点坐标的纵坐标的比特长度为nmin,节点ID的比特长度为kmin,值为0,然后将该地址的前2mmin+2nmin位比特值设置为地址响应消息的源地址的前2mmin+2nmin位比特值,将地址的后kmin位比特设置为L1,将自己标记为已配置节点,同时将自己的节点ID空间设置为[L1+1,U];
步骤405:结束;
通过上述过程,新节点通过邻居节点获取具有唯一性的地址,从而进行正确通信。

5.根据权利要求1所述的一种高效的物联网实现方法,其特征在于,在已配置节点X1位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络ID纵坐标长度为n1,节点ID长度为k1,已配置节点X1的节点ID为Lx的条件下,如果已配置节点X1的节点ID长度为0,即节点空间ID的上限小于下限,已配置节点X1发起地址回收过程:
步骤501:开始;
步骤502:已配置节点X1广播地址回收消息;
步骤503:物联网中与已配置节点X1具有相同节点坐标的已配置节点收到地址回收消息后,返回地址回收响应消息,如果收到地址回收消息且与已配置节点X1具有相同节点坐标的已配置节点的节点ID为L2,节点ID空间为[L2+1,U2],那么地址回收响应消息的负载为[L2,U2];
步骤504:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的源地址获取返回的地址回收响应消息的总数记为N3,如果[Lx,Lx]与所有地址回收响应消息中的节点ID空间的并集等于[1,2k1-1],则执行步骤506,否则执行步骤505;
步骤505:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的负载判断出有N4段没有被占用的节点ID空间,对于每一段没有被占用的节点ID空间[Lq,Uq],Lq和Uq分别为空间下限和上限,1≤q≤N4,已配置节点X1执行下述操作:如果Lq等于Lx+
1,那么已配置节点X1将[Lq,Uq]设置为自己的节点ID空间;否则,已配置节点X1选择接收到的地址回收响应消息,该地址回收响应消息负载中的节点ID空间上限等于Lq-1,然后发送一个地址回收确认消息,该地址回收确认消息的目的地址为选中的地址回收响应消息的源地址,源地址为自己的地址,负载为[Lq,Uq];目的已配置节点接收到地址回收确认消息后,将自己的节点ID空间的上限设置为Uq;
步骤506:结束。

6.根据权利要求1所述的一种高效的物联网实现方法,其特征在于,如果已配置节点X2位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络ID纵坐标长度为n1,节点ID长度为k1,网络ID的横坐标为x1,网络ID的纵坐标为y1,物联网A2内,网络ID横坐标长度为m2,网络ID纵坐标长度为n2,节点ID长度为k2,网络ID的横坐标为x2,网络ID的纵坐标为y2;
如果已配置节点X2既能收到信标消息b1又能收到信标消息b2,则物联网A1和物联网A2发生合并操作,其中,信标消息b1负载中的网络ID横坐标长度为m1,网络ID纵坐标长度为n1,节点ID的比特长度为k1,且信标消息b1的源地址的网络ID的横坐标为x1,网络ID的纵坐标为y1;信标消息b2负载中的网络ID横坐标长度为m2,网络ID纵坐标长度为n2,节点ID的比特长度为k2,且信标消息b2的源地址的网络ID的横坐标为x2,网络ID的纵坐标为y2;
如果已配置节点X2的网络ID小于信标消息b2的源地址的网络ID值,则已配置节点X2发起下述网络合并操作:
步骤601:开始;
步骤602:已配置节点X2广播网络合并消息,该网络合并消息负载为物联网A1的网络ID横坐标长度m1,网络ID纵坐标长度n1,节点ID的比特长度k1,网络ID的横坐标x1,网络ID的纵坐标y1,物联网A2的网络ID横坐标长度m2,网络ID纵坐标长度n2,节点ID的比特长度k2,网络ID的横坐标x2,网络ID的纵坐标y2;
步骤603:如果物联网A1的已配置节点接收到该网络合并消息,则执行步骤604,否则执行步骤605;
步骤604:物联网A1的已配置节点接收到该网络合并消息后,执行以下操作:
步骤6041,将网络ID横坐标长度设置为m1+m2,值设置为(x1+x2)/2;
步骤6042,将网络ID纵坐标长度设置为n1+n2,值设置为(y1+y2)/2;
步骤6043,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为该已配置节点的节点坐标的横坐标,后m2位比特值设置为0,否则,将节点坐标的横坐标的前m2位比特值设置为0,后m1位比特值设置为该已配置节点的节点坐标的横坐标;
步骤6044,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为该已配置节点的节点坐标的纵坐标,后n2位比特值设置为0,否则,将节点坐标的纵坐标的前n2位比特值设置为0,后n1位比特值设置为该已配置节点的节点坐标的纵坐标;
步骤6045,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
步骤6046,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地址,执行步骤606;
步骤605:物联网A2的已配置节点接收到该网络合并消息后,执行以下操作:
步骤6051,将网络ID横坐标长度设置为m1+m2,值设置为(x1+x2)/2;
步骤6052,将网络ID纵坐标长度设置为n1+n2,值设置为(y1+y2)/2;
步骤6053,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为0,后m2位比特值设置为该已配置节点的节点坐标的横坐标,否则,将节点坐标的横坐标的前m2位比特值设置为该已配置节点的节点坐标的横坐标,后m1位比特值设置为0;
步骤6054,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为0,后n2位比特值设置为该已配置节点的节点坐标的纵坐标,否则,将节点坐标的纵坐标的前n2位比特值设置为该已配置节点的节点坐标的纵坐标,后n1位比特值设置为0;
步骤6055,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
步骤6056,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地址,执行步骤606;
步骤606;结束。

7.根据权利要求4所述的一种高效的物联网实现方法,其特征在于,如果已配置节点X3在规定时间内没有收到任何节点广播的信标消息,则转化为新节点;如果已配置节点X3收到的所有信标消息均来自新节点,则转化为新节点并执行步骤101~104,201~208以及301~306重新进行地址初始化;
如果已配置节点X3收到的所有信标消息的网络ID与自己的网络ID都不同,则执行步骤
401~405获取新地址。
说明书

技术领域

[0001] 本发明涉及一种实现方法,尤其涉及的是一种高效的物联网实现方法。

背景技术

[0002] 物联网中的节点之间通信通过中间节点的转发和路由来实现,因此,每个节点必须配有具有唯一性的地址来实现通信,因此,实现下一代物联网需要解决的关键技术之一就是地址自动配置问题。
[0003] 目前的地址配置分为有状态地址配置和无状态地址配置两种形式,有状态地址配置方案采用服务器/客户端的通信方式分配地址,即节点向服务器提出申请地址的请求,然后由服务器统一为物联网内的节点分配地址。由于下一代物联网没有任何基础设施,例如服务器,因此,有状态地址配置方案无法应用到下一代物联网中。在无状态地址配置方案中,每个被分配的地址都需要在整个物联网中进行重复地址检测以确保它的唯一性,导致了大量的控制包开销,消耗了大量的物联网资源,因此也不适用于下一代物联网使用。
[0004] 因此针对下一代物联网需要建立一种低开销的地址自动配置方案来实现移动通信。

发明内容

[0005] 发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种高效的物联网实现方法。
[0006] 技术方案:本发明公开了一种高效的物联网实现方法,所述物联网只包括移动节点不包括基础设置,移动节点分为两类节点:已配置节点和新节点;已配置节点为已经配置具有网络唯一性的地址的节点,新节点为未配置具有网络唯一性的地址的节点;
[0007] 新节点启动后,随机产生一个正整数L1,随机从自己的介质访问控制地址(即MAC地址)中选取L1个比特,并构建一个临时地址,该临时地址的比特长度为L1,值为从介质访问控制地址中随机选取的L1个比特;在一个新节点获取地址之前,由其临时地址唯一标识;
[0008] 一个移动节点的地址由三部分组成,第一部分为网络ID,唯一标识一个物联网,一个物联网中所有节点的网络ID都相同,网络ID由m比特的横坐标和n比特的纵坐标构成;第二部分为节点坐标,节点坐标中由m比特的节点横坐标和n比特的节点纵坐标构成;第三部分为k比特的节点ID,用于区分一个物联网中具有相同节点坐标的节点;m,n,k均为正整数,任意两个移动自组网中,网络ID的横坐标长度、纵坐标长度或者节点ID的长度可以不同;
[0009] 物联网启动后,所有移动节点均为新节点,使用临时地址标识;所述物联网中部分节点能够获取自己的定位坐标,例如通过gps;新节点定期在一跳范围内广播一个信标消息,该信标消息的源地址为自己的临时地址,负载为该新节点的定位坐标;如果一个新节点没有定位坐标,则将定位坐标设置为(-1,-1);物联网启动后,开始进行地址初始化;
[0010] 新节点广播信标消息后,执行下述操作:
[0011] 步骤101:开始;
[0012] 步骤102:新节点侦听邻居新节点的信标消息,根据信标消息的源地址获取邻居节点的总数记为N,新节点计算信标消息负载的定位坐标不等于(-1,-1)的信标消息个数记为n1,如果所述n1个信标消息的定位坐标为(xc,yc),xc≠-1,yc≠-1,1≤c≤n1≤N,新节点使用公式(1)和公式(2)计算自己的定位坐标(xe,ye),然后将定位坐标(xe,ye)作为下一次广播的信标消息的负载;
[0013]
[0014]
[0015] 步骤103:新节点判断n1是否等于N,如果是,则执行步骤104,否则执行步骤102;
[0016] 步骤104:结束。
[0017] 本发明所述方法中,新节点获取定位坐标后,执行下述操作获取网络ID:
[0018] 步骤201:开始;
[0019] 步骤202:新节点构建一个坐标四元组<最大横坐标,最小横坐标,最大纵坐标,最小纵坐标>,然后构建一个长度四元组<临时地址,网络ID横坐标长度,网络纵坐标长度,节点ID长度>,其中最大横坐标和最小横坐标的值为新节点的定位坐标的横坐标,最大纵坐标和最小纵坐标为新节点的定位坐标的纵坐标,临时地址为新节点的临时地址,网络ID横坐标长度、网络纵坐标长度以及节点ID长度均为随机数;新节点保存构建的坐标四元组和长度四元组,然后广播一个选举消息,该选举消息的源地址为该新节点的临时地址,负载为构建的坐标四元组和长度四元组;
[0020] 步骤203:一个新节点从邻居节点收到一个选举消息后,将自己保存的坐标四元组和长度四元组与选举消息中的坐标四元组和长度四元组进行比较:
[0021] 如果满足条件1,新节点则将保存的坐标四元组的最大横坐标更新为接收到的选举消息中的坐标四元组的最大横坐标;条件1:新节点保存的坐标四元组的最大横坐标小于接收到的选举消息中的坐标四元组的最大横坐标;
[0022] 如果满足条件2,新节点则将保存的坐标四元组的最大纵坐标更新为接收到的选举消息中的坐标四元组的最大纵坐标;条件2:新节点保存的坐标四元组的最大纵坐标小于接收到的选举消息中的坐标四元组的最大纵坐标;
[0023] 如果满足条件3,新节点则将保存的坐标四元组的最小横坐标更新为接收到的选举消息中的坐标四元组的最小横坐标;条件3:新节点保存的坐标四元组的最小横坐标大于接收到的选举消息中的坐标四元组的最小横坐标;
[0024] 如果满足条件4,新节点则将保存的坐标四元组的最小纵坐标更新为接收到的选举消息中的坐标四元组的最小纵坐标;条件4:新节点保存的坐标四元组的最小纵坐标大于接收到的选举消息中的坐标四元组的最小纵坐标;
[0025] 如果满足条件5、条件6、条件7或者条件8中的任一个条件,新节点则将保存的长度四元组更新为接收到的选举消息中的长度四元组;
[0026] 条件5:新节点保存的长度四元组的临时地址大于接收到的选举消息中的长度四元组的临时地址;
[0027] 条件6:新节点保存的长度四元组的临时地址等于接收到的选举消息中的长度四元组的临时地址并且新节点保存的长度四元组的网络ID横坐标长度大于接收到的选举消息中的长度四元组的网络ID横坐标长度;
[0028] 条件7:新节点保存的长度四元组的临时地址和网络ID横坐标等于接收到的选举消息中的长度四元组的临时地址和网络ID横坐标并且新节点保存的长度四元组的网络ID纵坐标长度大于接收到的选举消息中的长度四元组的网络ID纵坐标长度;
[0029] 条件8:新节点保存的长度四元组的临时地址、网络ID横坐标和网络ID纵坐标等于接收到的选举消息中的长度四元组的临时地址、网络ID横坐标和网络ID纵坐标并且新节点保存的长度四元组的节点ID长度大于接收到的选举消息中的长度四元组的节点ID长度;
[0030] 步骤204:如果条件1到条件8都不满足,新节点执行步骤206,否则执行步骤205;
[0031] 步骤205:如果条件5~8都不满足,新节点更新接收到的选举消息的负载,即负载只包含坐标四元组,如果1~4都不满足,新节点更新接收到的选举消息的负载,即负载只包含长度四元组,如果条件5~8中至少有一个条件满足且条件1~4中至少有一个条件满足,新节点不更新接收到的选举消息的负载;
[0032] 新节点将选举消息转发到邻居节点,执行步骤203;
[0033] 步骤206:新节点丢弃接收到的选举消息;
[0034] 步骤207:新节点等待一段时间,例如1s,如果在这段时间中没有接收到选举消息或者接收到选举消息但是条件1~8都不满足,则执行步骤208,否则执行步骤203;
[0035] 步骤208:结束;
[0036] 通过上述过程,物联网中的所有节点能够获取相同的坐标四元组<最大横坐标xmax,最小横坐标xmin,最大纵坐标ymax,最小纵坐标ymin>和长度四元组<临时地址TAmin,网络ID横坐标长度mmin,网络纵坐标长度nmin,节点ID长度kmin>;
[0037] 物联网中的每个节点根据公式(3)和公式(4)计算网络ID的横坐标xID和纵坐标yID;
[0038] xID=(xmax+xmin)/2  (3)
[0039] yID=(ymax+ymin)/2  (4)
[0040] 物联网中的每个新节点构建一个地址,该地址的比特长度为2mmin+2nmin+kmin,其中网络ID的横坐标的比特长度为mmin,值为xID,网络ID的纵坐标的比特长度为nmin,值为yID,节点坐标的横坐标的比特长度为mmin,值为该新节点的定位横坐标,节点坐标的纵坐标的比特长度为mmin,值为该新节点的定位纵坐标,节点ID的比特长度为kmin,值为0。
[0041] 本发明所述方法中,新节点构建地址后,广播一个信标消息,该信标消息的源地址为临时地址,负载为构建的地址,然后新节点执行下述操作:
[0042] 步骤301:开始;
[0043] 步骤302:新节点侦听邻居新节点的信标消息,然后根据信标消息的源地址获取邻居节点的总数N1,新节点判断它构建的地址与接收到的N1个邻居新节点发送的信标消息负载中构建的地址是否相同,如果是,执行步骤304,否则执行步骤303;
[0044] 步骤303:新节点将构建的地址的节点ID设置为1,节点ID地址空间设置为[2,2k-1],执行步骤305;
[0045] 步骤304:新节点计算N1个邻居新节点发送的信标消息负载中地址与自己构建的地址相同的信标消息个数记为n2,然后将自己的临时地址与所述n2个信标消息的源地址按升序排列,如果排序后新节点的临时地址排在第p个位置,1≤p≤n2+1,则新节点通过公式(5)和公式(6)计算自己的节点ID空间的下限L(p)和节点ID空间的上限U(p),最终将自己构建的地址的节点ID设置为L(p),将节点ID空间设置为[L(p)+1,U(P)];
[0046]
[0047]
[0048] 步骤305:新节点将构建的地址作为自己的地址,并转化为已配置节点;
[0049] 步骤306:结束;
[0050] 新节点变为已配置节点后,其广播的信标消息的源地址为其获取的地址,负载为网络ID横坐标长度mmin、网络纵坐标长度nmin、节点ID长度kmin以及节点ID空间的下限和上限;
[0051] 地址初始化结束后,每个新节点获取地址并转化为已配置节点。
[0052] 节点通过执行上述过程可以快速配置地址,从而快速获取数据。
[0053] 本发明所述方法中,如果新节点X在地址初始化结束后启动,它侦听邻居已配置节点的信标消息并获取网络ID横坐标长度mmin、网络纵坐标长度nmin以及节点ID长度kmin,然后选择从可分配节点ID长度最大的邻居已配置节点Y获取地址,在已配置节点Y的节点ID区间为[L,U],L和U为正整数且L
[0054] 步骤401:开始;
[0055] 步骤402:新节点X发送地址请求消息,地址请求消息的目的地址为已配置节点Y的地址,源地址为自己的临时地址;
[0056] 步骤403:已配置节点Y收到地址请求消息后,选择节点ID空间[L1,U],L
[0057] 步骤404:新节点X收到地址响应消息后,构建一个地址,该地址的比特长度为2mmin+2nmin+kmin,其中,网络ID的横坐标的比特长度为mmin,网络ID的纵坐标的比特长度为nmin,节点坐标的横坐标的比特长度为mmin,节点坐标的纵坐标的比特长度为mmin,节点ID的比特长度为kmin,值为0,然后将该地址的前2mmin+2nmin位比特值设置为地址响应消息的源地址的前2mmin+2nmin位比特值,将地址的后kmin位比特设置为L1,将自己标记为已配置节点,同时将自己的节点ID空间设置为[L1+1,U];
[0058] 步骤405:结束;
[0059] 通过上述过程,新节点通过邻居节点获取具有唯一性的地址,从而进行正确通信。
[0060] 本发明所述方法中,在已配置节点X1位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络纵坐标长度为n1,节点ID长度为k1,已配置节点X1的节点ID为Lx的条件下,如果已配置节点X1的节点ID长度为0,即节点空间ID的上限小于下限,已配置节点X1发起地址回收过程:
[0061] 步骤501:开始;
[0062] 步骤502:已配置节点X1广播地址回收消息;
[0063] 步骤503:物联网中与已配置节点X1具有相同节点坐标的已配置节点收到地址回收消息后,返回地址回收响应消息,如果收到地址回收消息且与已配置节点X1具有相同节点坐标的已配置节点的节点ID为L2,节点ID空间为[L2+1,U2],那么地址回收响应消息的负载为[L2,U2];
[0064] 步骤504:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的源地址获取返回的地址回收响应消息的总数记为N3,如果[Lx,Lx]与所有地址回收响应消息中的节点ID空间的并集等于[1,2k1-1],则执行步骤506,否则执行步骤505;
[0065] 步骤505:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的负载判断出有N4段没有被占用的节点ID空间,对于每一段没有被占用的节点ID空间[Lq,Uq],Lq和Uq分别为空间下限和上限,1≤q≤N4,已配置节点X1执行下述操作:如果Lq等于Lx+1,那么已配置节点X1将[Lq,Uq]设置为自己的节点ID空间;否则,已配置节点X1选择接收到的地址回收响应消息,该地址回收响应消息负载中的节点ID空间上限等于Lq-1,然后发送一个地址回收确认消息,该地址回收确认消息的目的地址为选中的地址回收响应消息的源地址,源地址为自己的地址,负载为[Lq,Uq];目的已配置节点接收到地址回收确认消息后,将自己的节点ID空间的上限设置为Uq;
[0066] 步骤506:结束。
[0067] 上述过程可以实现地址快速回收从而确保地址配置的正确性和成功率。
[0068] 本发明所述方法中,如果已配置节点X2位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络纵坐标长度为n1,节点ID长度为k1,网络ID的横坐标为x1,网络ID的纵坐标为y1,物联网A2内,网络ID横坐标长度为m2,网络ID的纵坐标长度为n2,节点ID长度为k2,网络ID的横坐标为x2,网络ID的纵坐标为y2;
[0069] 如果已配置节点X2既能收到信标消息b1又能信标消息b2,则物联网A1和物联网A2发生合并操作,其中,信标消息b1负载中的网络ID横坐标比特长度为m1,网络纵坐标的比特长度为n1,节点ID的比特长度为k1,且信标消息b1的源地址的网络ID的横坐标为x1,网络ID的纵坐标为y1;信标消息b2负载中的网络ID横坐标比特长度为m2,网络ID的纵坐标的比特长度为n2,节点ID的比特长度为k2,且信标消息b2的源地址的网络ID的横坐标为x2,网络ID的纵坐标为y2;
[0070] 如果已配置节点X2的网络ID小于信标消息b2的源地址的网络ID值,则已配置节点X2发起下述网络合并操作:
[0071] 步骤601:开始;
[0072] 步骤602:已配置节点X2广播网络合并消息,该网络合并消息负载为物联网A1的网络ID横坐标比特长度m1,网络纵坐标的比特长度n1,节点ID的比特长度k1,网络ID的横坐标x1,网络ID的纵坐标y1,物联网A2的网络ID横坐标比特长度m2,网络ID的纵坐标的比特长度n2,节点ID的比特长度k2,网络ID的横坐标x2,网络ID的纵坐标y2;
[0073] 步骤603:如果物联网A1的已配置节点接收到该网络合并消息,则执行步骤604,否则执行步骤605;
[0074] 步骤604:物联网A1的已配置节点接收到该网络合并消息后,执行以下操作:
[0075] 步骤6041,将网络ID的横坐标比特长度设置为m1+m2,值设置为(x1+x2)/2;
[0076] 步骤6042,将网络ID的纵坐标比特长度设置为n1+n2,值设置为(y1+y2)/2;
[0077] 步骤6043,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为该已配置节点的节点坐标的横坐标,后m2位比特值设置为0,否则,将节点坐标的横坐标的前m2位比特值设置为0,后m1位比特值设置为该已配置节点的节点坐标的横坐标;
[0078] 步骤6044,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为该已配置节点的节点坐标的纵坐标,后n2位比特值设置为0,否则,将节点坐标的纵坐标的前n2位比特值设置为0,后n1位比特值设置为该已配置节点的节点坐标的纵坐标;
[0079] 步骤6045,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
[0080] 步骤6046,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地址,执行步骤606;
[0081] 步骤605:物联网A2的已配置节点接收到该网络合并消息后,执行以下操作:
[0082] 步骤6051,将网络ID的横坐标比特长度设置为m1+m2,值设置为(x1+x2)/2;
[0083] 步骤6052,将网络ID的纵坐标比特长度设置为n1+n2,值设置为(y1+y2)/2;
[0084] 步骤6053,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为0,后m2位比特值设置为该已配置节点的节点坐标的横坐标,否则,将节点坐标的横坐标的前m2位比特值设置为该已配置节点的节点坐标的横坐标,后m1位比特值设置为0;
[0085] 步骤6054,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为0,后n2位比特值设置为该已配置节点的节点坐标的纵坐标,否则,将节点坐标的纵坐标的前n2位比特值设置为该已配置节点的节点坐标的纵坐标,后n1位比特值设置为0;
[0086] 步骤6055,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
[0087] 步骤6056,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地,执行步骤606;
[0088] 步骤606;结束。
[0089] 上述过程可以快速实现网络合并从而实现数据的正确通信。
[0090] 本发明所述方法中,如果已配置节点X3在规定时间内没有收到任何节点广播的信标消息,则转化为新节点;如果已配置节点X3收到的所有信标消息均来自新节点,则转化为新节点并执行步骤101~104,201~208以及301~306重新进行地址初始化;
[0091] 如果已配置节点X3收到的所有信标消息的网络ID与自己的网络ID都不同,则执行步骤401~405获取新地址。
[0092] 有益效果:本发明提供了一种高效的物联网实现方法,节点通过本发明所提供的通信实现方法,可拥有具有唯一性的地址,彼此之间实现正确的通信,同时可以快速获取数据。本发明可应用于交通路况检控及农业工程化等诸多领域,具有广泛的应用前景。

附图说明

[0093] 下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
[0094] 图1为本发明所述的初始化流程示意图。
[0095] 图2为本发明所述的网络ID流程示意图。
[0096] 图3为本发明所述的地址配置流程示意图。
[0097] 图4为本发明所述的获取地址流程示意图。
[0098] 图5为本发明所述的地址回收流程示意图。
[0099] 图6为本发明所述网络合并流程示意图。具体实施方式:
[0100] 本发明提供了一种高效的物联网实现方法,节点通过本发明所提供的通信实现方法,可拥有具有唯一性的地址,彼此之间实现正确的通信,同时可以快速获取数据。本发明可应用于交通路况检控及农业工程化等诸多领域,具有广泛的应用前景。
[0101] 本发明公开了一种高效的物联网实现方法,所述物联网只包括移动节点不包括基础设置,移动节点分为两类节点:已配置节点和新节点;已配置节点为已经配置具有网络唯一性的地址的节点,新节点为未配置具有网络唯一性的地址的节点;
[0102] 新节点启动后,随机产生一个正整数L1,随机从自己的介质访问控制地址中选取L1个比特,并构建一个临时地址,该临时地址的比特长度为L1,值为从介质访问控制地址中随机选取的L1个比特;在一个新节点获取地址之前,由其临时地址唯一标识;
[0103] 一个移动节点的地址由三部分组成,第一部分为网络ID,唯一标识一个物联网,一个物联网中所有节点的网络ID都相同,网络ID由m比特的横坐标和n比特的纵坐标构成;第二部分为节点坐标,节点坐标中由m比特的节点横坐标和n比特的节点纵坐标构成;第三部分为k比特的节点ID,用于区分一个物联网中具有相同节点坐标的节点;m,n,k均为正整数;
[0104] 物联网启动后,所有移动节点均为新节点,使用临时地址标识;所述物联网中部分节点能够获取自己的定位坐标;新节点定期在一跳范围内广播一个信标消息,该信标消息的源地址为自己的临时地址,负载为该新节点的定位坐标;如果一个新节点没有定位坐标,则将定位坐标设置为(-1,-1);物联网启动后,开始进行地址初始化;
[0105] 如图1所示,新节点广播信标消息后,执行下述操作:
[0106] 步骤101:开始;
[0107] 步骤102:新节点侦听邻居新节点的信标消息,根据信标消息的源地址获取邻居节点的总数记为N,新节点计算信标消息负载的定位坐标不等于(-1,-1)的信标消息个数记为n1,如果所述n1个信标消息的定位坐标为(xc,yc),xc≠-1,yc≠-1,1≤c≤n1≤N,新节点使用公式(1)和公式(2)计算自己的定位坐标(xe,ye),然后将定位坐标(xe,ye)作为下一次广播的信标消息的负载;
[0108]
[0109]
[0110] 步骤103:新节点判断n1是否等于N,如果是,则执行步骤104,否则执行步骤102;
[0111] 步骤104:结束。
[0112] 如图2所示,新节点获取定位坐标后,执行下述操作获取网络ID:
[0113] 步骤201:开始;
[0114] 步骤202:新节点构建一个坐标四元组<最大横坐标,最小横坐标,最大纵坐标,最小纵坐标>,然后构建一个长度四元组<临时地址,网络ID横坐标长度,网络纵坐标长度,节点ID长度>,其中最大横坐标和最小横坐标的值为新节点的定位坐标的横坐标,最大纵坐标和最小纵坐标为新节点的定位坐标的纵坐标,临时地址为新节点的临时地址,网络ID横坐标长度、网络纵坐标长度以及节点ID长度均为随机数;新节点保存构建的坐标四元组和长度四元组,然后广播一个选举消息,该选举消息的源地址为该新节点的临时地址,负载为构建的坐标四元组和长度四元组;
[0115] 步骤203:一个新节点从邻居节点收到一个选举消息后,将自己保存的坐标四元组和长度四元组与选举消息中的坐标四元组和长度四元组进行比较:
[0116] 如果满足条件1,新节点则将保存的坐标四元组的最大横坐标更新为接收到的选举消息中的坐标四元组的最大横坐标;条件1:新节点保存的坐标四元组的最大横坐标小于接收到的选举消息中的坐标四元组的最大横坐标;
[0117] 如果满足条件2,新节点则将保存的坐标四元组的最大纵坐标更新为接收到的选举消息中的坐标四元组的最大纵坐标;条件2:新节点保存的坐标四元组的最大纵坐标小于接收到的选举消息中的坐标四元组的最大纵坐标;
[0118] 如果满足条件3,新节点则将保存的坐标四元组的最小横坐标更新为接收到的选举消息中的坐标四元组的最小横坐标;条件3:新节点保存的坐标四元组的最小横坐标大于接收到的选举消息中的坐标四元组的最小横坐标;
[0119] 如果满足条件4,新节点则将保存的坐标四元组的最小纵坐标更新为接收到的选举消息中的坐标四元组的最小纵坐标;条件4:新节点保存的坐标四元组的最小纵坐标大于接收到的选举消息中的坐标四元组的最小纵坐标;
[0120] 如果满足条件5、条件6、条件7或者条件8中的任一个条件,新节点则将保存的长度四元组更新为接收到的选举消息中的长度四元组;
[0121] 条件5:新节点保存的长度四元组的临时地址大于接收到的选举消息中的长度四元组的临时地址;
[0122] 条件6:新节点保存的长度四元组的临时地址等于接收到的选举消息中的长度四元组的临时地址并且新节点保存的长度四元组的网络ID横坐标长度大于接收到的选举消息中的长度四元组的网络ID横坐标长度;
[0123] 条件7:新节点保存的长度四元组的临时地址和网络ID横坐标等于接收到的选举消息中的长度四元组的临时地址和网络ID横坐标并且新节点保存的长度四元组的网络ID纵坐标长度大于接收到的选举消息中的长度四元组的网络ID纵坐标长度;
[0124] 条件8:新节点保存的长度四元组的临时地址、网络ID横坐标和网络ID纵坐标等于接收到的选举消息中的长度四元组的临时地址、网络ID横坐标和网络ID纵坐标并且新节点保存的长度四元组的节点ID长度大于接收到的选举消息中的长度四元组的节点ID长度;
[0125] 步骤204:如果条件1到条件8都不满足,新节点执行步骤206,否则执行步骤205;
[0126] 步骤205:如果条件5~8都不满足,新节点更新接收到的选举消息的负载,即负载只包含坐标四元组,如果1~4都不满足,新节点更新接收到的选举消息的负载,即负载只包含长度四元组,如果条件5~8中至少有一个条件满足且条件1~4中至少有一个条件满足,新节点不更新接收到的选举消息的负载;
[0127] 新节点将选举消息转发到邻居节点,执行步骤203;
[0128] 步骤206:新节点丢弃接收到的选举消息;
[0129] 步骤207:新节点等待一段时间,如果在这段时间中没有接收到选举消息或者接收到选举消息但是条件1~8都不满足,则执行步骤208,否则执行步骤203;
[0130] 步骤208:结束;
[0131] 通过上述过程,物联网中的所有节点能够获取相同的坐标四元组<最大横坐标xmax,最小横坐标xmin,最大纵坐标ymax,最小纵坐标ymin>和长度四元组<临时地址TAmin,网络ID横坐标长度mmin,网络纵坐标长度nmin,节点ID长度kmin>;
[0132] 物联网中的每个节点根据公式(3)和公式(4)计算网络ID的横坐标xID和纵坐标yID;
[0133] xID=(xmax+xmin)/2  (3)
[0134] yID=(ymax+ymin)/2  (4)
[0135] 物联网中的每个新节点构建一个地址,该地址的比特长度为2mmin+2nmin+kmin,其中网络ID的横坐标的比特长度为mmin,值为xID,网络ID的纵坐标的比特长度为nmin,值为yID,节点坐标的横坐标的比特长度为mmin,值为该新节点的定位横坐标,节点坐标的纵坐标的比特长度为mmin,值为该新节点的定位纵坐标,节点ID的比特长度为kmin,值为0。
[0136] 如图3所示,新节点构建地址后,广播一个信标消息,该信标消息的源地址为临时地址,负载为构建的地址,然后新节点执行下述操作:
[0137] 步骤301:开始;
[0138] 步骤302:新节点侦听邻居新节点的信标消息,然后根据信标消息的源地址获取邻居节点的总数N1,新节点判断它构建的地址与接收到的N1个邻居新节点发送的信标消息负载中构建的地址是否相同,如果是,执行步骤304,否则执行步骤303;
[0139] 步骤303:新节点将构建的地址的节点ID设置为1,节点ID地址空间设置为[2,2k-1],执行步骤305;
[0140] 步骤304:新节点计算N1个邻居新节点发送的信标消息负载中地址与自己构建的地址相同的信标消息个数记为n2,然后将自己的临时地址与所述n2个信标消息的源地址按升序排列,如果排序后新节点的临时地址排在第p个位置,1≤p≤n2+1,则新节点通过公式(5)和公式(6)计算自己的节点ID空间的下限L(p)和节点ID空间的上限U(p),最终将自己构建的地址的节点ID设置为L(p),将节点ID空间设置为[L(p)+1,U(P)];
[0141]
[0142]
[0143] 步骤305:新节点将构建的地址作为自己的地址,并转化为已配置节点;
[0144] 步骤306:结束;
[0145] 新节点变为已配置节点后,其广播的信标消息的源地址为其获取的地址,负载为网络ID横坐标长度mmin、网络纵坐标长度nmin、节点ID长度kmin以及节点ID空间的下限和上限;
[0146] 地址初始化结束后,每个新节点获取地址并转化为已配置节点。
[0147] 如图4所示,如果新节点X在地址初始化结束后启动,它侦听邻居已配置节点的信标消息并获取网络ID横坐标长度mmin、网络纵坐标长度nmin以及节点ID长度kmin,然后选择从可分配节点ID长度最大的邻居已配置节点Y获取地址,在已配置节点Y的节点ID区间为[L,U],L和U为正整数且L
[0148] 步骤401:开始;
[0149] 步骤402:新节点X发送地址请求消息,地址请求消息的目的地址为已配置节点Y的地址,源地址为自己的临时地址;
[0150] 步骤403:已配置节点Y收到地址请求消息后,选择节点ID空间[L1,U],L
[0151] 步骤404:新节点X收到地址响应消息后,构建一个地址,该地址的比特长度为2mmin+2nmin+kmin,其中,网络ID的横坐标的比特长度为mmin,网络ID的纵坐标的比特长度为nmin,节点坐标的横坐标的比特长度为mmin,节点坐标的纵坐标的比特长度为mmin,节点ID的比特长度为kmin,值为0,然后将该地址的前2mmin+2nmin位比特值设置为地址响应消息的源地址的前2mmin+2nmin位比特值,将地址的后kmin位比特设置为L1,将自己标记为已配置节点,同时将自己的节点ID空间设置为[L1+1,U];
[0152] 步骤405:结束;
[0153] 通过上述过程,新节点通过邻居节点获取具有唯一性的地址,从而进行正确通信。
[0154] 如图5所示,在已配置节点X1位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络纵坐标长度为n1,节点ID长度为k1,已配置节点X1的节点ID为Lx的条件下,如果已配置节点X1的节点ID长度为0,即节点空间ID的上限小于下限,已配置节点X1发起地址回收过程:
[0155] 步骤501:开始;
[0156] 步骤502:已配置节点X1广播地址回收消息;
[0157] 步骤503:物联网中与已配置节点X1具有相同节点坐标的已配置节点收到地址回收消息后,返回地址回收响应消息,如果收到地址回收消息且与已配置节点X1具有相同节点坐标的已配置节点的节点ID为L2,节点ID空间为[L2+1,U2],那么地址回收响应消息的负载为[L2,U2];
[0158] 步骤504:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的源地址获取返回的地址回收响应消息的总数记为N3,如果[Lx,Lx]与所有地址回收响应消息中的节点ID空间的并集等于[1,2k1-1],则执行步骤506,否则执行步骤505;
[0159] 步骤505:已配置节点X1查看所有接收到的地址回收响应消息,根据地址回收响应消息的负载判断出有N4段没有被占用的节点ID空间,对于每一段没有被占用的节点ID空间[Lq,Uq],Lq和Uq分别为空间下限和上限,1≤q≤N4,已配置节点X1执行下述操作:如果Lq等于Lx+1,那么已配置节点X1将[Lq,Uq]设置为自己的节点ID空间;否则,已配置节点X1选择接收到的地址回收响应消息,该地址回收响应消息负载中的节点ID空间上限等于Lq-1,然后发送一个地址回收确认消息,该地址回收确认消息的目的地址为选中的地址回收响应消息的源地址,源地址为自己的地址,负载为[Lq,Uq];目的已配置节点接收到地址回收确认消息后,将自己的节点ID空间的上限设置为Uq;
[0160] 步骤506:结束。
[0161] 如果已配置节点X2位于物联网A1内,物联网A1的网络ID横坐标长度为m1,网络纵坐标长度为n1,节点ID长度为k1,网络ID的横坐标为x1,网络ID的纵坐标为y1,物联网A2内,网络ID横坐标长度为m2,网络ID的纵坐标长度为n2,节点ID长度为k2,网络ID的横坐标为x2,网络ID的纵坐标为y2;
[0162] 如果已配置节点X2既能收到信标消息b1又能信标消息b2,则物联网A1和物联网A2发生合并操作,其中,信标消息b1负载中的网络ID横坐标比特长度为m1,网络纵坐标的比特长度为n1,节点ID的比特长度为k1,且信标消息b1的源地址的网络ID的横坐标为x1,网络ID的纵坐标为y1;信标消息b2负载中的网络ID横坐标比特长度为m2,网络ID的纵坐标的比特长度为n2,节点ID的比特长度为k2,且信标消息b2的源地址的网络ID的横坐标为x2,网络ID的纵坐标为y2;
[0163] 如图6所示,如果已配置节点X2的网络ID小于信标消息b2的源地址的网络ID值,则已配置节点X2发起下述网络合并操作:
[0164] 步骤601:开始;
[0165] 步骤602:已配置节点X2广播网络合并消息,该网络合并消息负载为物联网A1的网络ID横坐标比特长度m1,网络纵坐标的比特长度n1,节点ID的比特长度k1,网络ID的横坐标x1,网络ID的纵坐标y1,物联网A2的网络ID横坐标比特长度m2,网络ID的纵坐标的比特长度n2,节点ID的比特长度k2,网络ID的横坐标x2,网络ID的纵坐标y2;
[0166] 步骤603:如果物联网A1的已配置节点接收到该网络合并消息,则执行步骤604,否则执行步骤605;
[0167] 步骤604:物联网A1的已配置节点接收到该网络合并消息后,执行以下操作:
[0168] 步骤6041,将网络ID的横坐标比特长度设置为m1+m2,值设置为(x1+x2)/2;
[0169] 步骤6042,将网络ID的纵坐标比特长度设置为n1+n2,值设置为(y1+y2)/2;
[0170] 步骤6043,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为该已配置节点的节点坐标的横坐标,后m2位比特值设置为0,否则,将节点坐标的横坐标的前m2位比特值设置为0,后m1位比特值设置为该已配置节点的节点坐标的横坐标;
[0171] 步骤6044,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为该已配置节点的节点坐标的纵坐标,后n2位比特值设置为0,否则,将节点坐标的纵坐标的前n2位比特值设置为0,后n1位比特值设置为该已配置节点的节点坐标的纵坐标;
[0172] 步骤6045,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
[0173] 步骤6046,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地址,执行步骤606;
[0174] 步骤605:物联网A2的已配置节点接收到该网络合并消息后,执行以下操作:
[0175] 步骤6051,将网络ID的横坐标比特长度设置为m1+m2,值设置为(x1+x2)/2;
[0176] 步骤6052,将网络ID的纵坐标比特长度设置为n1+n2,值设置为(y1+y2)/2;
[0177] 步骤6053,将节点坐标的横坐标的比特长度设置为m1+m2,如果m1小于m2,则将节点坐标的横坐标的前m1位比特值设置为0,后m2位比特值设置为该已配置节点的节点坐标的横坐标,否则,将节点坐标的横坐标的前m2位比特值设置为该已配置节点的节点坐标的横坐标,后m1位比特值设置为0;
[0178] 步骤6054,将节点坐标的纵坐标的比特长度设置为n1+n2,如果n1小于n2,则将节点坐标的纵坐标的前n1位比特值设置为0,后n2位比特值设置为该已配置节点的节点坐标的纵坐标,否则,将节点坐标的纵坐标的前n2位比特值设置为该已配置节点的节点坐标的纵坐标,后n1位比特值设置为0;
[0179] 步骤6055,如果k1大于k2,则将节点ID的比特长度设置为k1,否则将节点ID的比特长度设置为k2,节点ID的值为该已配置节点的节点ID值,节点ID空间保持不变;
[0180] 步骤6056,该已配置节点将构建的网络ID,节点坐标以及节点ID相结合构成一个新地,执行步骤606;
[0181] 步骤606;结束。
[0182] 如果已配置节点X3在规定时间内没有收到任何节点广播的信标消息,则转化为新节点;如果已配置节点X3收到的所有信标消息均来自新节点,则转化为新节点并执行步骤101~104,201~208以及301~306重新进行地址初始化;
[0183] 如果已配置节点X3收到的所有信标消息的网络ID与自己的网络ID都不同,则执行步骤401~405获取新地址。
[0184] 实施例1
[0185] 基于表1的仿真参数,本实施例模拟了本发明中的物联网实现方法,性能分析如下:当节点数量增加的情况下,地址配置代价和延迟随之增加,当节点数量减少的情况下,地址配置代价和延迟随之降低,地址配置的平均延迟为48ms。
[0186] 表1仿真参数
[0187]
[0188] 本发明提供了一种高效的物联网实现方法的思路,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部份均可用现有技术加以实现。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号