0

    CN105228211A_一种无线网络路由的实现方法有效

    2023.05.05 | admin | 225次围观

    1. 一种无线网络路由的实现方法,其特征在于,所述无线网络包括两种节点:一个以 上接入路由器和一个以上无线节点,无线网络通过接入路由器接入到互联网; 无线节点设置在道路两边的基础设施上,相邻无线节点或者无线节点与相邻接入路由 器之间能够互相通信;两个路口之间的道路称为路段,路段中的无线节点划分为三类:开 始节点,普通节点和结束节点;开始节点的邻居节点数量大于2,结束节点的邻居节点数量 等于1或者大于2,普通节点的邻居节点数量等于2 ; 一个路段中的所有节点构成一个超级节点;一个接入路由器以及所有通过该接入路由 器连接到互联网的超级节点构建成一个子网,该子网的拓扑结构为树状结构,称为超级节 点树,超级节点树的根节点为接入路由器;一个超级节点中的开始节点与该超级节点的父 超级节点中的结束节点逻辑相连; 无线网络的节点的IPv6地址由三个部分构成,第一部分为全局网络前缀,唯一标识一 个子网,一个子网内所有无线节点的全局网络前缀都相同,等于相同子网内接入路由器的 全局网络前缀;第二部分为i比特的超级节点ID,唯一标识一个超级节点及对应路段,位于 一个路段中的所有无线节点的超级节点ID都相同;第三部分为j比特的节点ID,唯一标识 一个无线节点; 接入路由器的IPv6地址预先设置,接入路由器的超级节点ID为O;超级节点ID和节点ID构成链路地址;链路地址的长度为16比特或者64比特,即i和j的和等于16或者64 ; 超级节点的超级节点ID的有效长度L,L

    2. 根据权利要求1所述的一种无线网络路由的实现方法,其特征在于,接入路由器和 结束节点保存一个超级节点ID分配表,每个分配表包含T-I个表项,每个表项由三个域构 成:超级节点ID域,分配状态域,生命周期;分配状态域有三个值:未分配,半分配,已分配; 未分配表示超节点ID可供分配,半分配表示超级节点ID已经分配但是未收到确认信息,如 果在规定时间中没有收到确认信息,那么该超级节点ID则转变为未分配状态,已分配状态 则表示超级节点ID已经分配,不能再分配给其他节点; 如果一个超级节点中的开始节点检测到接入路由器为其邻居节点,那么所述开始节点 从邻居路由器获取超级节点ID,否则选择链路地址有效长度最小且可分配超级节点ID数 量较大的结束节点获取超级节点ID;如果开始节点检测到两个以上结束节点的链路地址 有效长度最小且可分配超级节点ID数量都相同,那么所述开始节点选择从信号最强的结 束节点获取超级节点ID; 开始节点SNl从结束节点ENl获取超级节点ID的过程包括以下步骤: 步骤101:开始; 步骤102:开始节点SNl向结束节点ENl发送超级节点请求命令帧,超级节点请求命令 帧的源链路地址为临时链路地址; 步骤103:结束节点ENl从超级节点ID分配表中选取最小未分配的值X,将该值X标记 为半分配状态,然后构建一个有效长度为c+Ll的超级节点ID,其中Ll为结束节点ENl的 超级节点ID的有效长度,c的比特值设置为x,Ll比特值设置为结束节点ENl的超级节点 ID,结束节点ENl向开始节点SNl返回一个超级节点响应命令帧,超级节点响应命令帧的负 载为构建的超级节点ID; 步骤104:开始节点SNl收到超级节点响应命令帧后,在超级节点内广播节点ID确认 帧,节点ID确认命令帧的负载为全局网络前缀和结束节点ENl分配开始节点SNl的超级节 点ID; 步骤105 :如果收到节点ID确认命令帧的节点为普通节点,则进行步骤106,否则进行 步骤111 ; 步骤106:如果普通节点第一次收到节点ID确认命令帧,则进行步骤107,否则进行步 骤 108; 步骤107:第一次收到节点ID确认命令帧的普通节点转发该节点ID确认命令帧并且 记录节点ID确认命令帧中的全局网络前缀、超级节点ID以及自己到达该节点ID确认命令 帧的源节点的跳数,执行步骤105;源节点即为节点ID确认命令帧源地址指定的节点; 步骤108 :如果满足条件一,则进行步骤109,否则进行步骤110 ; 条件一的三个输入参数分别为:普通节点第二次收到的节点ID确认命令帧,第二次收 到节点ID确认命令帧的普通节点,普通节点第一次收到的节点ID确认命令帧; 条件一:普通节点第二次收到的节点ID确认命令帧中的超级节点ID的有效长度小于 该普通节点记录的超级节点ID的有效长度,或者普通节点第二次收到的节点ID确认命令 帧中的超级节点ID的有效长度等于普通节点记录的超级节点ID的有效长度且第二次收到 的节点ID确认命令帧的源链路地址小于该普通节点第一次收到的节点ID确认命令帧的源 链路地址; 步骤109:第二次收到节点ID确认命令帧的普通节点丢弃原来记录的数据,并记录第 二次收到的节点ID确认命令帧中的全局网络前缀,超级节点ID以及到达第二次收到的 节点ID确认命令帧源节点的跳数,同时转发第二次收到的节点ID确认命令帧,执行步骤 105 ; 步骤110:第二次收到节点ID确认命令帧的普通节点丢弃第二次收到的节点ID确认 命令帧,进行步骤114 ; 步骤111:如果收到节点ID确认命令帧的开始节点发送了超级节点请求命令帧并收到 了超级节点响应命令帧且满足条件二,则进行步骤112,否则进行步骤113; 条件二的三个输入参数分别为:收到节点ID确认命令帧的开始节点收到的超级节点 响应命令帧,收到节点ID确认命令帧的开始节点,开始节点收到的节点ID确认命令帧; 条件二:超级节点响应命令帧中的超级节点ID的有效长度小于开始节点收到的节点ID确认命令帧中的超级节点ID的有效长度,或者超级节点响应命令帧中的超级节点ID的 有效长度等于开始节点收到的节点ID确认命令帧中的超级节点ID的有效长度且开始节点 的临时链路地址小于开始节点收到的节点ID确认命令帧的源地址; 步骤112 :收到节点ID确认命令帧的开始节点在超级节点内部广播一个新的节点ID确认命令帧跟踪网络查看路由情况适下面那个命令可以实现,该新的节点ID确认命令帧负载为全局网络前缀和获取的超级节点ID,进行步 骤 105 ; 步骤113 :收到节点ID确认命令帧的开始节点将自己标记为结束节点,记录收到的节 点ID确认命令帧中的全局网络前缀和超级节点ID,以及自己到达节点ID确认命令帧的源 节点的跳数; 步骤114 :如果开始节点SNl没收到节点ID确认命令帧或者满足条件三,则进行步骤 115,否则进行步骤117; 条件三的三个输入参数分别为:开始节点SNl收到的超级节点响应帧,开始节点SN1, 开始节点SNl收到的节点ID确认命令帧; 条件三:开始节点SNl收到的超级节点响应命令帧中的超级节点ID的有效长度小于开 始节点SNl收到的节点ID确认命令帧中的超级节点ID的有效长度,或者开始节点SNl收 到的超级节点响应命令帧中的超级节点ID的有效长度等于开始节点SNl收到的节点ID确 认命令帧中的超级节点ID的有效长度且开始节点SNl的临时链路地址小于开始节点SNl 收到的节点ID确认命令帧的源地址; 步骤115 :开始节点SNl向结束节点ENl发送一条超级节点确认命令帧,该超级节点确 认命令帧的负载为分配的超级节点ID; 步骤116 :结束节点ENl收到超级节点确认命令帧后,将分配给开始节点SNl的值X的 状态修改为已分配,执行步骤118 ; 步骤117 :开始节点SNl将自己标记为结束节点并且记录下自己收到的节点ID确认命 令帧中的全局网络前缀,超级节点ID以及自己到达节点ID确认命令帧的源节点的跳数;如 果结束节点ENl在规定时间内没有收到超级节点确认命令帧,将分配给开始节点SNl的值 X的状态修改为未分配; 步骤118 :结束; 开始节点SNl从接入路由器ARl获取超级节点ID的过程包括以下步骤: 步骤401 :开始; 步骤402 :开始节点SNl向接入路由器ARl发送超级节点请求命令帧,超级节点请求命 令帧的源链路地址为临时链路地址; 步骤403 :接入路由器ARl从超级节点ID分配表中选取最小未分配的值X,将该值X标 记为半分配状态,然后构建一个有效长度为c+L3的超级节点ID,其中L3为接入路由器ARl 的超级节点ID的有效长度,c的比特值设置为x,L3比特值设置为接入路由器ARl的超级 节点ID,接入路由器ARl向开始节点SNl返回一个超级节点响应命令帧,超级节点响应命令 帧的负载为构建的超级节点ID; 步骤404 :开始节点SNl收到超级节点响应命令帧后,在超级节点内广播节点ID确认 帧,节点ID确认命令帧的负载为全局网络前缀和接入路由器ARl分配给开始节点SNl的超 级节点ID; 步骤405 :如果收到节点ID确认命令帧的节点为普通节点,则进行步骤406,否则进行 步骤411 ; 步骤406 :如果普通节点第一次收到节点ID确认命令帧,则进行步骤407,否则进行步 骤 408 ; 步骤407 :第一次收到节点ID确认命令帧的普通节点转发该节点ID确认命令帧并且 记录节点ID确认命令帧中的全局网络前缀、超级节点ID以及自己到达该节点ID确认命令 帧的源节点的跳数,执行步骤405 ;源节点即为节点ID确认命令帧源地址指定的节点; 步骤408 :如果满足条件四,则进行步骤409,否则进行步骤410 ; 条件四的三个输入参数分别为普通节点第二次收到的节点ID确认帧,第二次收到节 点ID确认帧的普通节点,普通节点第一次收到的节点ID确认帧; 条件四:普通节点第二次收到的节点ID确认命令帧中的超级节点ID的有效长度小于 普通节点记录的超级节点ID的有效长度,或者普通节点第二次收到的节点ID确认命令帧 中的超级节点ID的有效长度等于普通节点记录的超级节点ID的有效长度且普通节点第二 次收到的节点ID确认命令帧的源链路地址小于普通节点第一次收到的节点ID确认命令帧 的源链路地址; 步骤409 :第二次收到节点ID确认命令帧的普通节点丢弃原来记录的数据,并记录第 二次收到的节点ID确认命令帧中的全局网络前缀,超级节点ID以及到达第二次收到的 节点ID确认命令帧源节点的跳数,同时转发第二次收到的节点ID确认命令帧,执行步骤 405 ; 步骤410 :第二次收到节点ID确认命令帧的普通节点丢弃第二次收到的节点ID确认 命令帧,进行步骤414 ; 步骤411 :如果收到节点ID确认命令帧的开始节点发送了超级节点请求命令帧并收到 了超级节点响应命令帧且满足条件五,则进行步骤412,否则进行步骤413 ; 条件五的三个输入参数分别为:收到节点ID确认命令帧的开始节点收到的超级节点 响应命令帧,收到节点ID确认命令帧的开始节点,开始节点收到的节点ID确认命令帧; 条件五:超级节点响应命令帧中的超级节点ID的有效长度小于开始节点收到的节点ID确认命令帧中的超级节点ID的有效长度,或者超级节点响应命令帧中的超级节点ID的 有效长度等于开始节点收到的节点ID确认命令帧中的超级节点ID的有效长度且开始节点 的临时链路地址小于开始节点收到的节点ID确认命令帧的源地址; 步骤412 :收到节点ID确认命令帧的开始节点在超级节点内部广播一个新的节点ID确认命令帧,该新的节点ID确认命令帧负载为全局网络前缀和获取的超级节点ID,进行步 骤 405 ; 步骤413 :收到节点ID确认命令帧的开始节点将自己标记为结束节点,记录收到的节 点ID确认命令帧中的全局网络前缀和超级节点ID,以及自己到达节点ID确认命令帧的源 节点的跳数; 步骤414 :如果开始节点SNl没收到节点ID确认命令帧或者满足条件六,则进行步骤 415,否则进行步骤417 ; 条件六的三个输入参数分别为:开始节点SNl收到的超级节点响应帧,开始节点SN1, 开始节点SNl收到的节点ID确认命令帧; 条件六:开始节点SNl收到的超级节点响应命令帧中的超级节点ID的有效长度小于开 始节点SNl收到的节点ID确认命令帧中的超级节点ID的有效长度,或者开始节点SNl收 到的超级节点响应命令帧中的超级节点ID的有效长度等于开始节点SNl收到的节点ID确 认命令帧中的超级节点ID的有效长度且开始节点SNl的临时链路地址小于开始节点SNl 收到的节点ID确认命令帧的源地址; 步骤415 :开始节点SNl向接入路由器ARl发送一条超级节点确认命令帧,该超级节点 确认命令帧的负载为分配的超级节点ID; 步骤416 :接入路由器ARl收到超级节点确认命令帧后,将分配给开始节点SNl的值X的状态修改为已分配,执行步骤418 ; 步骤417 :开始节点SNl将自己标记为结束节点并且记录下自己收到的节点ID确认命 令帧中的全局网络前缀,超级节点ID以及自己到达节点ID确认命令帧的源节点的跳数;如 果接入路由器ARl在规定时间内没有收到超级节点确认命令帧,将分配给开始节点SNl的 值X的状态修改为未分配; 步骤418 :结束; 一个超级节点获取超级节点ID之后,该超级节点中的每个开始节点、普通节点和结束 节点都获取了到达开始节点的距离参数h,它们将自己的节点ID设置为距离参数值h加1, 并与超级节点ID以及全局网络前缀相结合获得了具有全球唯一性的IPv6地址。

    3. 根据权利要求1所述的一种无线网络路由的实现方法,其特征在于,超级节点中的 每个节点保存一个邻居表,每个表项包括两个域:超级节点ID域和开始节点域;超级节点 ID域记录邻居超级节点的超级节点ID,开始节点域记录该邻居节点是否为开始节点的邻 居节点,开始节点域有两个值,真和假,如果开始节点域值为假,那么该邻居节点为结束节 点的邻居节点; 超级节点中的开始节点和结束节点通过接收邻居节点的信标帧建立邻居表;开始节 点和结束节点建立邻居表之后,在超级节点内广播信标帧,信标帧负载为建立的邻居表;由 此,超级节点中所有的开始节点,普通节点和结束节点都能获取开始节点和结束节点建立 的邻居表,即开始节点和结束节点的邻居表的并集;超级节点建立邻居表后,向接入路由器 发送注册消息,注册消息负载为邻居表;由此接入路由器保存了所在超级树里的所有超级 节点的邻居表; 如果超级节点SP4是超级节点SPl的祖先节点,超级节点SPl的超级节点ID的有效 长度为L2,超级节点SP4的超级节点ID的有效长度为L4,那么超级节点SPl到达超级节点 SP4的距离Hl如公式(2)所示,即两个超级节点的距离为跨越超级节点的个数: Hl= (L2-L4)/c公式(2)。

    4. 根据权利要求3所述的一种无线网络路由的实现方法,其特征在于,在普通节点CNl 和普通节点CN2的全局网络前缀相同,普通节点CNl隶属于超级节点SPl,普通节点CN2隶 属于超级节点SP2,超级节点SPl中的结束节点为EN1,开始节点为SN1,超级节点SP2中的 结束节点为EN2,开始节点为SN2,超级节点SPl和超级节点SP2隶属于一个子网,数据帧所 在的超级节点为当前超级节点的情况下,普通节点CNl与普通节点CN2的通信过程包括如 下步骤: 步骤201 :开始; 步骤202 :普通节点CNl构建一个数据帧,数据帧的目的地址为普通节点的链路地址; 步骤203 :普通节点CNl或者收到该数据帧的节点查看自己的邻居表,如果超级节点SP2为当前超级节点的邻居节点,即普通节点CNl或者收到该数据帧的节点所在的超级节 点的邻居节点,执行步骤204,否则执行步骤205 ; 步骤204 :普通节点CNl或者收到该数据帧的节点将数据帧路由到超级节点SP2,进行 步骤206 ; 步骤205 :如果当前超级节点的邻居表L中存在n个表项,每个表项所标识的邻居超级 节点为SPk,1彡k彡n,超级节点SPk与超级节点SP2的共同祖先为超级节点Ak,超级节点 SPk到达超级节点Ak的距离与超级节点SP2到达超级节点Ak的距离之和为hk,则当前超级 节点将数据帧转发给满足公式(3)的邻居节点SPni,I

    5. 根据权利要求1所述的一种无线网络路由的实现方法,其特征在于,如果一个超级 节点的邻居节点的全局网络前缀与自己的全局网络前缀不同,那么该超级节点称为边界超 级节点;每个开始节点、普通节点或者结束节点保存一个边界超级节点表,每个表项包括四 个域:超级节点ID域,距离域,邻居全局网络前缀域以及邻居超级节点ID域;其中,超级节 点ID域值为边界超级节点的超级节点ID,距离域为到达该边界超级节点的距离,邻居全局 网络前缀和邻居超级节点ID分别为该边界超级节点的邻居节点中隶属于不同子网的邻居 超级节点的全局网络前缀和超级节点ID; 边界超级节点中的开始节点和结束节点通过接收邻居无线节点的信标帧建立边界超 级节点表;边界超级节点中的开始节点和结束节点建立边界超级节点表之后,广播信标帧, 信标帧负载为边界超级节点表;超级节点收到边界超级节点表后,将收到的边界超级节点 表与自己的边界超级节点表做并操作,保存并操作之后的边界超级节点表,然后广播信标 帧,信标帧负载为边界超级节点表,由此边界超级节点所在超级节点树中的每个超级节点 都能获取边界超级节点表。

    6. 根据权利要求5所述的一种无线网络路由的实现方法,其特征在于,在普通节点CNl 和普通节点CN7的全局网络前缀不同,普通节点CNl所在的超级节点SPl位于子网Sl中, 普通节点CN7所在的超级节点SP7位于子网S2中,子网S2中的接入路由器为AR2,超级节 点SP7到达接入路由器AR2的距离为h2的情况下,普通节点CNl与普通节点CN7的通信过 程包括如下步骤: 步骤301 :开始; 步骤302 :普通节点CNl构建一个数据消息,数据消息的目的地址为CN7的IPv6地址; 步骤303 :普通节点CNl或者收到该数据消息的节点查看边界超级节点表,如果超级节 点SP7为当前超级节点的邻居节点,则执行步骤304,否则执行步骤305 ; 步骤304 :普通节点CNl或者收到该数据消息的节点将该数据消息转发到超节点SP7, 进行步骤312 ; 步骤305 :在当前超级节点存在一个邻居超级节点,该邻居超级节点与超级节点S7的 共同祖先为超级节点SP-A,该邻居超级节点到达超级节点SP-A的距离与超级节点SP7到达 超级节点SP-A的距离之和为dl,当前超级节点SP到达接入路由器ARl的距离为hi的情况 下,如果满足公式(4),则进行步骤306,否则进行步骤307 ; dl〈hl+h2 公式(4); 步骤306 :当前超级节点将数据消息转发给该邻居超级节点,该邻居超级节点将数据 消息转发给超级节点SP7,进行步骤312 ; 步骤307 :如果当前超级节点的边界超级节点表中存在邻居全局路由前缀为S2且邻居 超级节点ID为SP7的表项,那么当前超级节点从这些表项中选取距离值最小的表项,在表 项的距离值为d2,超级节点ID值为㊀匕的情况下,如果满足公式(5),则进行步骤308,否则 进行步骤309 ; d2〈hl+h2 公式(5); 步骤308 :当前超级节点将该数据消息转发给超节点ID为SPx的超级节点,执行步骤 303 ; 步骤309:当前超级节点如果不是接入路由器AR1,则进行步骤310,否则进行步骤 311 ; 步骤310 :当前超级节点将数据消息转发给它的父超级节点跟踪网络查看路由情况适下面那个命令可以实现,进行步骤303 ; 步骤311 :接入路由器ARl将数据消息转发给接入路由器AR2,接入路由器AR2根据超 级节点树将数据消息路由到超级节点SP7 ; 步骤312 :超级节点SP7中的开始节点或者结束节点收到数据消息后,将该数据消息转 发给普通节点CN7 ; 步骤313 :结束。

    版权声明

    本文仅代表作者观点。
    本文系作者授权发表,未经许可,不得转载。

    发表评论