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

文档序号:9474928阅读:444来源:国知局
一种无线网络路由的实现方法
【技术领域】
[0001] 本发明涉及一种实现方法,尤其涉及的是一种无线网络路由的实现方法。
【背景技术】
[0002] 无线网络作为一种新型通信网络,能够实现节点与节点之间的多跳无线通信。随 着无线网络技术的不断发展以及各种新应用的不断涌现,迫切需要无线网络能够接入互联 网以满足用户急剧增长的应用需求。
[0003] 无线网络作为一种特殊类型的移动自组网,具有移动速度快、节点数量多、覆盖面 积大等特点。基于IPv6的互联网(以下简称IPv6网络)具有移动性支持、地址资源丰富 以及扩展性强等优点。因此,无线网络接入IPv6网络成为满足用户应用需求的理想解决方 案。
[0004] 目前的研究人员提出了无线网络通过接入基于IPv6的互联网获取网络服务的模 式并定义了相应的协议栈,但是由于无线网络网的体系结构与IPv6网络不通,现有的接入 方法具有一些局限性。因此需要提出一种无线网络的通信实现方法,从而降低数据丢失率, 提尚服务质量。

【发明内容】

[0005] 发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种基于定 位信息的车联网实现方法。
[0006] 技术方案:本发明公开了一种无线网络路由的实现方法,其特征在于,所述无线网 络包括一个以上接入路由器和一个以上无线节点两种节点,无线网络通过接入路由器接入 到互联网;
[0007] 无线节点设置在道路两边的基础设施上,例如路灯等,相邻无线节点或者无线节 点与相邻接入路由器之间能够互相通信;两个路口之间的道路称为路段,路口包括十字路 口,三叉路口和五岔路口,路段中的无线节点划分为三类:开始节点,普通节点和结束节点; 开始节点的邻居节点数量大于2,结束节点的邻居节点数量等于1或者大于2,普通节点的 邻居节点数量等于2 ;
[0008] -个路段中的所有节点构成一个超级节点;一个接入路由器以及所有通过该接入 路由器连接到互联网的超级节点构建成一个子网,该子网的拓扑结构为树状结构,称为超 级节点树,超级节点树的根节点为接入路由器;一个超级节点中的开始节点与该超级节点 的父超级节点中的结束节点逻辑相连;
[0009] 无线网络的节点的IPv6地址由三个部分构成,第一部分为全局网络前缀,唯一标 识一个子网,一个子网内所有无线节点的全局网络前缀都相同,等于相同子网内接入路由 器的全局网络前缀;第二部分为i比特的超级节点ID,唯一标识一个超级节点及对应路段, 位于一个路段中的所有无线节点的超级节点ID都相同;第三部分为j比特的节点ID,唯一 标识一个无线节点;
[0010] 接入路由器的IPv6地址预先设置,接入路由器的超级节点ID为0 ;超级节点ID和 节点ID构成链路地址;链路地址的长度为16比特或者64比特,即i和j的和等于16或者 64 ;
[0011] 超级节点的超级节点ID的有效长度1,1 < i,有效长度1与该超级节点所在超级 节点树所处的深度d成正比,如公式(1)所示,其中,f-1是一个超级节点拥有的最大子节 点数量,一般情况下,C等于2;
[0012] 1 = dXc 公式(1);
[0013] 无线节点启动后,用自己的硬件ID作为临时链路地址,例如MAC地址,并定期广播 信标帧;无线节点通过接收邻居无线节点的信标帧来判断邻居节点的数量;如果一个无线 节点的邻居节点数量为1,则将自己标记上结束节点;如果一个无线节点的邻居节点数量 等于2,则将自己标记为普通节点;如果一个无线节点的邻居节点数量大于2,则将自己标 记为开始节点;
[0014] 无线网络初始状态下,一个超级节点中最多能包含2个开始节点,一个接入路由 器或者一个结束节点广播的信标帧负载为全局网络前缀以及可分配的超级节点ID的数 量;开始节点和普通节点广播的信标帧的负载为全局网络前缀。
[0015] 本发明提出了基于超级节点的体系结构,超级节点的体系结构主要优点在于能够 提高地址配置成功率,从而缩短通信延迟。
[0016] 本发明所述方法中,接入路由器和结束节点保存一个超级节点ID分配表,每个分 配表包含f-1个表项,每个表项由三个域构成:超级节点ID域,分配状态域,生命周期;分 配状态域有三个值:未分配,半分配,已分配;未分配表示超节点ID可供分配,半分配表示 超级节点ID已经分配但是未收到确认信息,如果在规定时间中没有收到确认信息,那么该 超级节点ID则转变为未分配状态,已分配状态则表示超级节点ID已经分配,不能再分配给 其他节点;
[0017] 如果一个超级节点中的开始节点检测到接入路由器为其邻居节点,那么所述开始 节点从邻居路由器获取超级节点ID,否则选择链路地址有效长度最小(即深度最小)且可 分配超级节点ID数量较大的结束节点获取超级节点ID ;如果开始节点检测到两个以上结 束节点的链路地址有效长度最小且可分配超级节点ID数量都相同,那么所述开始节点选 择从信号最强的结束节点获取超级节点ID ;
[0018] 开始节点SN1从结束节点EN1获取超级节点ID的过程包括以下步骤:
[0019] 步骤101:开始;
[0020] 步骤102 :开始节点SN1向结束节点EN1发送超级节点请求命令帧,超级节点请求 命令帧的源链路地址为临时链路地址;
[0021] 步骤103 :结束节点EN1从超级节点ID分配表中选取最小未分配的值X,将该值X 标记为半分配状态,然后构建一个有效长度为c+Ll的超级节点ID,其中L1为结束节点EN1 的超级节点ID的有效长度,c的比特值设置为X,L1比特值设置为结束节点EN1的超级节 点ID,结束节点EN1向开始节点SN1返回一个超级节点响应命令帧,超级节点响应命令帧的 负载为构建的超级节点ID ;
[0022] 步骤104 :开始节点SN1收到超级节点响应命令帧后,在超级节点内广播节点ID 确认帧,节点ID确认命令帧的负载为全局网络前缀和结束节点EN1分配开始节点SN1的超 级节点ID ;
[0023] 步骤105 :如果收到节点ID确认命令帧的节点为普通节点,则进行步骤106,否则 进行步骤111 ;
[0024] 步骤106 :如果普通节点第一次收到节点ID确认命令帧,则进行步骤107,否则进 行步骤108 ;
[0025] 步骤107 :第一次收到节点ID确认命令帧的普通节点转发该节点ID确认命令帧 并且记录节点ID确认命令帧中的全局网络前缀、超级节点ID以及自己到达该节点ID确 认命令帧的源节点的跳数,执行步骤105 ;源节点即为节点ID确认命令帧源地址指定的节 占 .
[0026] 步骤108 :如果满足条件一,则进行步骤109,否则进行步骤110 ;
[0027] 条件一的三个输入参数分别为:普通节点第二次收到的节点ID确认命令帧,第二 次收到节点ID确认命令帧的普通节点,普通节点第一次收到的节点ID确认命令帧;
[0028] 条件一:普通节点第二次收到的节点ID确认命令帧中的超级节点ID的有效长度 小于该普通节点记录的超级节点ID的有效长度,或者普通节点第二次收到的节点ID确认 命令帧中的超级节点ID的有效长度等于普通节点记录的超级节点ID的有效长度且第二次 收到的节点ID确认命令帧的源链路地址小于该普通节点第一次收到的节点ID确认命令帧 的源链路地址;
[0029] 步骤109 :第二次收到节点ID确认命令帧的普通节点丢弃原来记录的数据,并记 录第二次收到的节点ID确认命令帧中的全局网络前缀,超级节点ID以及到达第二次收到 的节点ID确认命令帧源节点的跳数,同时转发第二次收到的节点ID确认命令帧,执行步骤 105 ;
[0030] 步骤110 :第二次收到节点ID确认命令帧的普通节点丢弃第二次收到的节点ID 确认命令帧,进彳丁步骤114 ;
[0031] 步骤111 :如果收到节点ID确认命令帧的开始节点发送了超级节点请求命令帧并 收到了超级节点响应命令帧且满足条件二,则进行步骤112,否则进行步骤113 ;
[0032] 条件二的三个输入参数分别为:收到节点ID确认命令帧的开始节点收到的超级 节点响应命令帧,收到节点ID确认命令帧的开始节点,开始节点收到的节点ID确认命令 帧;
[0033] 条件二:超级节点响应命令帧中的超级节点ID的有效长度小于开始节点收到的 节点ID确认命令帧中的超级节点ID的有效长度,或者超级节点响应命令帧中的超级节点 ID的有效长度等于开始节点收到的节点ID确认命令帧中的超级节点ID的有效长度且开始 节点的临时链路地址小于开始节点收到的节点ID确认命令帧的源地址;
[0034] 步骤112 :收到节点ID确认命令帧的开始节点在超级节点内部广播一个新的节点 ID确认命令帧,该新的节点ID确认命令帧负载为全局网络前缀和获取的超级节点ID,进行 步骤105 ;
[0035] 步骤113 :收到节点ID确认命令帧的开始节点将自己标记为结束节点,记录收到 的节点ID确认命令帧中的全局网络前缀和超级节点ID,以及自己到达节点ID确认命令帧 的源节点的跳数;
[0036] 步骤114 :如果开始节点SN1没收到节点ID确认命令帧或者满足条件三,则进行 步骤115,否则进行步骤117;
[0037] 条件三的三个输入参数分别为:开始节点SN1收到的超级节点响应帧,开始节点 SN1,开始节点SN1收到的节点ID确认命令帧;
[0038] 条件三:开始节点SN1收到的超级节点响应命令帧中的超级节点ID的有效长度小 于开始节点SN1收到的节点ID确认命令帧中的超级节点ID的有效长度,或者开始节点SN1 收到的超级节点响应命令帧中的超级节点ID的有效长度等于开始节点SN1收到的节点ID 确认命令帧中的超级节点ID的有效长度且开始节点SN1的临时链路地址小于开始节点SN1 收到的节点ID确认命令帧的源地址;
[0039] 步骤115 :开始节点SN1向结束节点EN1发送一条超级节点确认命令帧,该超级节 点确认命令帧的负载为分配的超级节点ID ;
[0040] 步骤116 :结束节点EN1收到超级节点确认命令帧后,将分配给开始节点SN1的值 X的状态修改为已分配,执行步骤118 ;
[0041] 步骤117 :开始节点SN1将自己标记为结束节点并且记录下自己收到的节点ID确 认命令帧中的全局网络前缀,超级节点ID以及自己到达节点ID确认命令帧的源节点的跳 数;如果结束节点EN1在规定时间内没有收到超级节点确认命令帧,将分配给开始节点SN1 的值X的状态修改为未分配;
[0042] 步骤118:结束;
[0043] 通过上述过程,无线网络中的每个节点可以获取地址,并进行正确通信从而提高 网络服务。由于本发明以超级节点为单位进行地址配置,因此大大缩短了地址配置延迟和 通信延迟。
[0044] 开始节点SN1从接入路由器AR1获取超级节点ID的过程包括以下步骤:
[0045] 步骤401:开始;
[0046] 步骤402 :开始节点SN1向接入路由器AR1发送超级节点请求命令帧,超级节点请 求命令帧的源链路地址为临时链路地址;
[0047] 步骤403 :接入路由器AR1从超级节点ID分配表中选取最小未分配的值X,将该值 X标记为半分配状态,然后构建一个有效长度为c+L3的超级节点ID,其中L3为接入路由器 AR1的超级节点ID的有效长度,c的比特值设置为x,L3比特值设置为接入路由器AR1的超 级节点ID,接入路由器AR1向开始节点SN1返回一个超级节点响应命令帧,超级节点响应命 令帧的负载为构建的超级节点ID ;
[0048] 步骤404 :开始节点SN1收到超级节点响应命令帧后,在超级节点内广播节点ID 确认帧,节点ID确认命令帧的负载为全局网络前缀和接入路由器AR1分配给开始节点SN1 的超级节点ID ;
[0049
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1