CN105847278A - 一种分布式自适应传输路由协议 - Google Patents
一种分布式自适应传输路由协议 Download PDFInfo
- Publication number
- CN105847278A CN105847278A CN201610289758.0A CN201610289758A CN105847278A CN 105847278 A CN105847278 A CN 105847278A CN 201610289758 A CN201610289758 A CN 201610289758A CN 105847278 A CN105847278 A CN 105847278A
- Authority
- CN
- China
- Prior art keywords
- node
- ogm
- local
- link
- hop
- 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
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/023—Limited or focused flooding to selected areas of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/12—Communication route or path selection, e.g. power-based or shortest path routing based on transmission quality or channel quality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/32—Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种分布式自适应传输路由协议,具体执行步骤如下:每个节点定期广播OGM,从而通知其链路本地邻居该节点的存在;链路本地邻居的接收发起人消息根据特定的协议转发规则中继转播;网络因此泛洪这些信源;这些泛洪过程是通过单跳的邻居执行的;执行两跳邻居;依次类推执行三跳邻居,执行四跳邻居;OGM以UDP方式重复广播发送,因此泛洪直到每个节点收到至少一次,或直到它们由于通信链路丢包,或者直到TTL值已过期别丢失。本发明实现对网络实时维护最优路径和其余多跳路径,并且能过做到对路由自动修复和重组。本发明能够快速有效的确定每个目标节点的最佳下一跳,这种方法不需要找出或者计算出完整的路由。
Description
技术领域
本发明涉及ad-hoc网络的多路径路由技术领域,具体是一种路由传输协议,尤其是一种分布式自适应传输路由协议。
背景技术
无线通信网络由于能快速、灵活、方便地支持用户的移动,而成为个人通信和因特网发展的方向,成为了实现“任何人在任何时间,任何地点与任何人进行任何信息的交换”这一理想通信目标的最具潜力方案之一,在过去这么多年里,无线用心技术取得了突飞猛进的发展,从人工操作的无线电报网络到使用扩频技术的自动化无线局域、个域网络,无线网络的应用领域随着技术的进步不断地扩展,特别是近几年,无线通信网络无论在技术上还是在商业上都取得了飞速的发展,它完成了从第一代模拟通信到第二代数字通信及第二代数字通信到第三代宽带多媒体通信的转变。
目前,世界上第三代移动通信技术产业化的同时,已把研究重点转入下一代无线网络研究上,一般认为,下一代无线网络不再是全新的单一结构的网络技术,而是多种无线网络技术的融合,是一个多级网络形态,无线网络中的多跳连接将会成为下一代无线通信网络发展的必然趋势,也就是说,以多跳无线连接为主要组网方式的Ad Hoc网络、无线多跳自组织网络和无线传感网络将会成为下一代无线网络的技术热点。
发明内容
本发明的目的在于提供一种分布式自适应传输路由协议,是一种专为无线自组织多跳网络设计的主动路由协议,包括可移动的自组织网络(MANET),以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:
一种分布式自适应传输路由协议,具体执行步骤如下:
第一步:每个节点定期广播OGM,从而通知其链路本地邻居该节点的存在;链路本地邻居的接收发起人消息根据特定的协议转发规则中继转播;网络因此泛洪这些信源;
第二步:这些泛洪过程是通过单跳的邻居执行的;
第三步:执行两跳邻居;依次类推第四步执行三跳邻居,第五步执行四跳邻居;
OGM以UDP方式重复广播发送,因此泛洪直到每个节点收到至少一次,或直到它们由于通信链路丢包,或者直到TTL值已过期别丢失;
收到的来自链路本地邻居的一个给出的OGM的数量,被用来评估单/多跳路由的质量;
为了寻找最佳路由,协议计算收到的信源,并记录链路本地邻居转发的OGM;运用这个OGM,协议维持一个本地链路表,它能够区分新的信源和旧的转发的信源,确保每个OGM只被记录一次。
作为本发明进一步的方案:所述协议的每个数据包被封装成一个单一的UDP数据包,数据包由一个OGM和0个或不少于1个HNA扩展信息组成;其中OGM大小为固定的12个8比特,OGM跟随0个或不少于1个HNA扩展信息;每个HNA扩展信息紧跟前一个OGM消息后,必须分别进行处理;HNA扩展信息有一个固定大小的5个8比特字节;
序列号为导向,接收OGM的序列号是每个OGM发送的密钥信息;序列号都记录在专用的滑动窗口,直到它们被认为是超出范围;滑动窗口中的序列号是用来作为检测到的链接和路径度量的质量的记录;序列号的范围为0到2^16-1;此序列号周期性的从0到2^16-1,当达到最大值时,再次从0开始。
作为本发明进一步的方案:所述协议的网关如下:每一个节点具有访问网络连接和路由的功能,能作为一个网关;该网关发布传输位于OGM中的GWFlags标志;如果节点不准备接入到网络,则该节点设定GWFlags为0;否则,GWFlags包含所提供的带宽编码;提供节点应该将此值设置为可用带宽的最佳近似估计值;
GWFlags编码用带宽以Kbit/s表示,上行和下行带宽的计算方法的依据如下:
下行带宽=32*(S+2)*2^down kbit/s
上行带宽=((up+1)*(下行带宽))/8kbit/s
节点为了保证其确定功能,并以多种方式决定网关;节点能为用户设置他的静态网关,而不是仅仅是协议决定的自动获取的最佳网关。
作为本发明进一步的方案:所述协议的协议路由表如下:如果从一个OGM通过HNA扩展信息从一个未知的源或到达一个未知网络/主机,它会被添加到路由表中,选择最佳本地链路的双向邻居作为网关;如果目标是一台主机,最佳双向单跳邻居为目标的主机路由将被添加;如果目标是一个网络,由HNA扩展信息发布包括OGM的消息,通过添加网络路由中最佳的双向单跳邻居;如果双向单跳邻居不被选中作为本身的网关,则单跳源节点不能作为最佳的它本身的网关,必须通过另一个双向单跳邻居的主机进行路由选择;如果到目的地的最佳的排序邻居发生变化,路由表必须被更新;节点从已知的源节点收到一个单一的OGM或HNA扩展信息的间隔时间超过WINDOW_SIZE和PURGE_TIMEOUT的值的时候,该路线被认为是过期,将从路由表中被删除;删除的时间间隔对比滑动窗口的大小设置;
协议路由表维护时,每个节点通过把自己的MAC地址放入到自己的OGM中,然后通过周期性的广播发送出去;其它节点接收到OGM后,会进行一系列的判断,经判断后后,会丢弃数据包或者更新自己的源节点列表,然后进行重广播操作;所述重广播是指将广播接收到的OGM重新广播出去;判断过程如下:
第一步,判断是否是标准广播包头大小;如果大小不符合规定,会被接收节点直接丢弃;
第二步,对接收节点来说,如果接收数据包的标识说明是广播,但目的地址是单播的话,将被丢弃;
第三步,OGM的发送者地址是网络中某一个MAC地址,如果该地址是一个广播地址,将被丢弃;
第四步,接收节点接收到自己广播出去的消息,将会被丢弃;这里的消息是指自己网卡发出去还未被转发的消息;
第五步,广播包的TTL值小于2的话,将会被丢弃;
经过上述几个步骤判断后,接收节点会更新滑动窗口的元节点OGM,然后进行重新广播准备,该准备阶段也需要进行三个判断;
第一步,检查数据包是不是一个副本;是的话将丢弃;
第二步,检查数据包序列号是不是陈旧的;是的话将丢弃;
第三步,检查数据包是不是已经被其它网关节点发送了;是的话将丢弃;
接着就会建立双向链路进行重广播数据包;节点会周期性的发送OGM,接收节点也会周期性的维护源节点列表的内容,接收节点将要在规定时间内接收到源节点的OGM,否则将会被判断源节点失效,路由表中的信息将会被清除。
作为本发明进一步的方案:所述协议的传输质量TQ如下:本地链路的传输质量是通过从邻居节点接收到的OGM的数量间接计算出来的;本地节点统计本地滑动窗口内的所有接收到的OGM,这里用接收质量RQ来代表这一数值;在这些接收到的OGM中,由自己发出而又被邻居节点重新广播的OGM,本地节点同样维护了一个滑动窗口,统计接收到的此类OGM,用EQ来表示这一数值;本地链路的EQ是通过传输质量TQ和接收质量RQ的乘积得到的,公式为:
EQlocal=TQlocal*RQlocal
所以传输质量TQ表示为:
TQlocal=EQlocal/RQlocal
在极端情况下,接收到的数据包数量过少,协议会判断该链路失效,从而将链路传输质量TQ值为0。
与现有技术相比,本发明的有益效果是:
为了克服单跳网络的不足,本发明通过对节点多跳传输过程中的数据包格式,路由表的 建立和维护以及度量值TQ计算的设定,能够实现单跳或者多跳通信链路的方式主动维护无线多跳网络中的所有存在的节点的信息。能够确定无线多跳网络中每个目标节点的一个单跳邻居,用来作为与目标节点通信的最好的网关。能够实现对网络实时维护最优路径和其余多跳路径,并且能过做到对路由自动修复和重组。本发明能够快速有效的确定每个目标节点的最佳下一跳,这种方法不需要找出或者计算出完整的路由。
附图说明
图 1为本发明Marimesh协议OGM广播示意图。
图 2为本发明Marimesh协议路由更新示意图。
图 3为本发明Marimesh协议TQ计算示意图。
图 4为本发明Marimesh协议无线多跳网络场景示意图。
图 5为本发明Marimesh协议无线多跳网络节点与链路集合示意图。
图 6是Marimesh数据包格式图。
图 7是OGM大小信息图。
图 8是HNA扩展信息图。
图 9是滑动窗口中的序列号列表图。
图 10是GWFlags标志位图。
图 11是本发明Marimesh协议接口通讯图。
具体实施方式
下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例中,请参阅图 11,本发明从硬件接口接收到OGM后发往路由模块,经过发送模块转发给别的节点;本节点要发数据出去:从上层应用发到软件接口经过单播包模块发送出去;若收到给自己的单播包从硬件接口到路由模块通过软件接口到上层应用;不是给自己的单播包经过路由模块转发出去。
一种分布式自适应传输路由协议(即Marimesh协议),所述Marimesh具体执行步骤如下:
第一步:每个节点定期广播OGM,从而通知其链路本地邻居它的存在。链路本地的邻居接收发起人消息根据特定的协议转发规则中继转播。网络因此泛洪这些信源。
第二步:这些泛洪过程是通过单跳的邻居执行的。
第三步:执行两跳邻居。依次类推第四步执行三跳邻居,第五步执行四跳邻居。
OGM以UDP方式重复广播发送,因此泛洪直到每个节点收到至少一次,或直到它们由于通信链路丢包,或者直到TTL(生存时间)值已过期别丢失。在实践过程中OGM包丢失是由于干扰,碰撞或者堵塞引起的。
收到的来自链路本地邻居的一个给出的OGM源的数量,被用来评估单/多跳路由的质量。
为了寻找最佳路由,协议计算收到的信源,并记录链路本地邻居转发的信息。运用这个信息,协议维持一个本地链路表,它能够区分新的信源和旧的转发的信源,确保每个OGM只被记录一次。
所述Marimesh数据包格式如图 6所示。每个数据包被封装成一个单一的UDP数据包。数据包由一个OGM和0个或多个HNA扩展信息组成。其中OGM大小为固定的12个8比特,如图 7所示。
OGM可以跟随0个或多个HNA扩展信息。每个扩展信息紧跟前一个OGM消息后,必须分别进行处理。HNA扩展信息有一个固定大小的5个8比特字节,如图 8所示。
序列号为导向。事实上,接收OGM的序列号是每个OGM发送的密钥信息。序列号都记录在专用的滑动窗口,直到它们被认为是超出范围。因此,这样的滑动窗口总是包含最近 接收到的序列号的组。滑动窗口中的序列号是用来作为检测到的链接和路径度量的质量的记录。序列号的范围不是无限空间,但被限制在范围为0到2^16-1。由于空间有限,所有的算术运算必须进行2^16模。此序列号周期性的从0到2^16-1,当达到最大值时,再次从0开始。列表如图 9所示。
所述Marimesh网关如下:每一个节点具有访问网络连接和路由的功能,可以作为一个网络网关。该网关发布传输位于OGM包中的GWFlags标志。如果节点不准备接入到网络,它必须设定GWFlags为0。否则,GWFlags包含所提供的带宽编码。提供节点应该将此值设置为可用带宽的最佳近似估计值。GWFlags标志位如图 10所示。
GWFlags编码大致可用带宽以Kbit/s表示,上行和下行带宽的计算方法的依据如下:下行带宽=32*(S+2)*2^down kbit/s
上行带宽=((up+1)*(下行带宽))/8kbit/s
节点能够从几个方面确定网关,在网络中的各个节点可以选择决定使用的下载速度和连接质量,或以此为依据作为自身网关或作为确定移动节点的一个最佳的下载速度网关合适的解决方案,但网关将会被频繁的更换使用。
节点为了保证其确定功能,并以多种方式决定网络网关。这对我们来说是相当有用的,例如,能够选择的下载速度以及网关的连接强度,查看条件组合的优先级。例如移动节点可能是重要的,因为它可能优先级比较高的,而重点不是它们的网关具有自己的网络连接的速度上。另一方面允许静态用户接受一个比较差网关,虽然本身是一个较好的网关。而在某些情况下,这两种方法结合起来虽然动态选择的互联网网关总是由于开关从一个网关到另一个而与它带来的可能性的所有连接被重置。因此,路由协议可以为用户设置他的静态网关,而不是仅仅是协议决定的自动获取的最佳网关。
所述Marimesh协议路由表如下:如果从一个OGM通过HNA从一个未知的源或到达一个未知网络/主机,它会被添加到路由表中,选择最佳本地链路的双向邻居作为网关。如果目标是一台主机,最佳双向单跳邻居为目标的主机路由将被添加。如果目标是一个网络,由HNA信息发布包括OGM的消息,通过添加网络路由中最佳的双向单跳邻居。双向单跳邻居可能不会被选中作为本身的网关。这种情况下单跳源节点不能作为最佳的它本身的网关,必须通过另一个双向单跳邻居的主机进行路由选择。如果到目的地的最佳的排序邻居发生变化,路由表必须被更新。节点从已知的源节点收到一个单一的OGM或HNA的间隔时间较长,超过WINDOW_SIZE和PURGE_TIMEOUT的值的时候,路线被认为是过期,将被从路由表中删除。删除的时间间隔应该对比滑动窗口的大小设置。
路由表维护时,每个节点通过把自己的MAC地址放入到自己的OGM消息中,然后通过周期性的广播发送出去。其它节点接收到OGM消息后,会进行一系列的判断,经判断后后,会丢弃数据包或者更新自己的源节点列表,然后进行重广播操作。所谓重广播是指将广播接收到的OGM消息重新广播出去。判断过程如下:
第一步,判断是否是标准广播包头大小。如果大小不符合规定,会被接收节点直接丢弃。
第二步,对接收节点来说,如果接收数据包的标识说明是广播,但目的地址是单播的话,将被丢弃。
第三步,OGM的发送者地址是网络中某一个MAC地址,如果该地址是一个广播地址,将被丢弃。
第四步,接收节点接收到自己广播出去的消息,将会被丢弃。这里的消息是指自己网卡发出去还未被转发的消息。
第五步,广播包的TTL值小于2的话,将会被丢弃。
经过这几个步骤判断后,接收节点会更新滑动窗口的元节点OGM,然后进行重新广播准备,该准备阶段也需要进行三个判断。
第一步,检查数据包是不是一个副本。
第二步,检查数据包序列号是不是陈旧的。
第三步,检查数据包是不是已经被其它网关节点发送了。是的话将丢弃
接着就会建立双向链路进行重广播数据包。节点会周期性的发送OGM消息,接收节点也会周期性的维护源节点列表的内容,接收节点将要在规定时间内接收到源节点的OGM,否则将会被判断源节点失效,路由表中的信息将会被清除。
所述Marimesh协议的传输质量TQ如下:
本地链路的质量是通过从邻居节点接收到的OGM消息的数量间接计算出来的。本地节点统计本地滑动窗口内的所有接收到的OGM消息,这里用RQ(Receive Quality)来代表这一数值。在这些接收到的OGM消息中,由自己发出而又被邻居节点重新广播的OGM消息,本地节点同样维护了一个滑动窗口,统计接收到的此类OGM消息,用EQ(Echo Quality)来表示这一数值。本地链路的EQ是通过传输质量TQ和接收质量RQ的乘积得到的,公式为:
EQlocal=TQlocal*RQlocal
所以传输质量TQ就可以表示为:
TQlocal=EQlocal/RQlocal
在极端情况下,接收到的数据包数量过少,协议会判断该链路失效,从而将链路传输质量TQ值为0。
Marimesh协议路由是一种无线网络实现多跳传输的协议,无线网络中,每个节点都会广播OGM包,邻居节点通过接受这些OGM包来知道该节点的存在。邻居节点则是根据一定的协议规则来重广播,通知网络中的其它节点该节点的存在信息。每个节点只做一次被认为是最优下一跳的重广播OGM包。
如 图 1所示,为Marimesh协议OGM包广播示意图,上电后每个节点自动周期性的广播OGM包,邻居收到后进行转播。
在一般的无线网络AP中,如果接入AP的终端设备过多,到达一定数量时,会导致网络阻塞导致带宽降低。而在该分布式自适应传输路由协议的多跳网络中将不会出现这种情况,该网络的冗余机制可以避免网络阻塞,而且具有强大的通信负载平衡功能,防止链路中断。每个节点都会根据负载选择相邻的单跳网络的最佳路径,从而有效的避免因单跳网络而产生的网络阻塞和断路问题。如图 1中所示,D节点要和A节点通信,根据得到传输质量最好的那条路,选出最好的邻居节点链路质量能够选择信号最好的邻居点(C或者F),比较然后逐次往上判断。D节点通过B节点和C节点,接收到来自A节点的广播包,判断出,D节点的最优下一跳是C节点,同样C节点的最优下一跳是B节点,以及B节点是与A通信的最优下一跳。从而实现D节点和A节点的通信。
如 图 2所示,为Marimesh协议路由更新示意图,在网络发生故障时,Marimesh协议可以由另一条路由实现数据传输,也就是说网络的每个节点可以使用多路由,当不用时作为备用传输路径。我们经常使用的E-mail就是使用该多路由机制在用户邮箱重组数据包信息。无线多跳网络的每个节点到达目标节点可以由多条路由实现。当网络正常传输数据时,一旦该链路发生故障,自动搜索获取最佳链路为其传输路径,并且无线网络的协议支持移动节点路由,网络的链路只要在辐射覆盖范围内,整个网络将不受运动或者个别节点影响。图 2中节点A到节点D的通讯有三条路径,分别是A-B-D,A-F-D,A-E-D等,初始最佳通讯路径是A-B-D,当收到干扰B-D断路时,该网络会自动寻找其它最优路径A-F-D,保证数据传输通畅。
如 图 3所示,为Marimesh协议TQ计算示意图,在多跳网络建立时,网络中的各节点仅一个无线通信接口应对无线通信中的干扰信号,是一种非对等链路,为了更准确的衡量整个链路质量的优劣,分布式自适应传输路由协议将链路质量分为三个部分:对于A点来说,如图 a所示,RQ是A收到B发送信息的可能性大小;如图 b所示,EQ是A发给B再转回来收到的可能性大小;如图 c所示,TQ是A成功发送给B的可能性大小。节点发往某本地邻居节点的OGM包的百分比,即公式是:TQ=EQ/RQ。
如 图 4所示,为Marimesh协议无线多跳网络场景示意图。在无线多跳网络中,有六个可 以通信的节点A,B,C,D,E,F。在每个节点中均部署且运行了本发明的分布式自适应传输路由协议,待协议运行稳定后,可以形成图 4中的拓扑环境示意图。那么,一个可能的消息发送过程可以描述为以下部分:
(1)节点A准备向节点F发送消息。
(2)节点A通过查阅路由信息表,它只会选择所有一跳的路径,即链路集合{(A,B),(A,C),(A,D)},这样才能到达一跳邻居集合相应的集合如图 5(a)所示。
(3)节点A根据统计数据,计算出分别与节点B,C,D链路的TQ值。根据TQ值的不同,节点A使用TQ值最大的路径。
(4)假设链路(A,B)是最好的链路,节点A向节点B发送消息。
(5)因为节点B并不是目标节点F,所以要重复算法的步骤一到四。
(6)将图 G缩减成图 S。节点B只考虑一跳链路集合{(B,C),(B,E)),这样到达邻居节点集合相应的集合如图 5(b)所示。
(7)节点B根据链路(B,C)和(B,E)的TQ值,来选择TQ值最大的路径。
(8)假设链路(B,E)是最好的链路,节点B向节点E发送消息。
(9)因为节点E不是目标节点F,所以要重复算法的步骤一到四。
将图 S缩减成缩减图 S,如图 5(C)所示。节点E为了到达邻居节点集{C,F},只会考虑链路集合{(E,F),(E,C)}。而节点F是目标节点,所以只有一条链路可以达到节点F,所以链路(E,F)是最佳路径。至此,算法结束。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
Claims (5)
1.一种分布式自适应传输路由协议,其特征在于,它的具体执行步骤如下:
第一步:每个节点定期广播OGM,从而通知其链路本地邻居该节点的存在;链路本地邻居的接收发起人消息根据特定的协议转发规则中继转播;网络因此泛洪这些信源;
第二步:上述泛洪过程是通过单跳的邻居执行的;
第三步:执行两跳邻居;
依次类推第四步执行三跳邻居,第五步执行四跳邻居;
OGM以UDP方式重复广播发送,因此泛洪直到每个节点收到至少一次,或直到它们由于通信链路丢包,或者直到TTL值已过期别丢失;
收到的来自链路本地邻居的一个给出的OGM的数量,被用来评估单/多跳路由的质量;
为了寻找最佳路由,协议计算收到的信源,并记录链路本地邻居转发的OGM;运用这个OGM,协议维持一个本地链路表,它能够区分新的信源和旧的转发的信源,确保每个OGM只被记录一次。
2.根据权利要求1所述的分布式自适应传输路由协议,其特征在于,所述协议的每个数据包被封装成一个单一的UDP数据包,数据包由一个OGM和0个或不少于1个HNA扩展信息组成;其中OGM大小为固定的12个8比特,OGM跟随0个或不少于1个HNA扩展信息;每个HNA扩展信息紧跟前一个OGM消息后,必须分别进行处理;HNA扩展信息有一个固定大小的5个8比特字节;
序列号为导向,接收OGM的序列号是每个OGM发送的密钥信息;序列号都记录在专用的滑动窗口,直到它们被认为是超出范围;滑动窗口中的序列号是用来作为检测到的链接和路径度量的质量的记录;序列号的范围为0到2^16-1;此序列号周期性的从0到2^16-1,当达到最大值时,再次从0开始。
3.根据权利要求1所述的分布式自适应传输路由协议,其特征在于,所述协议的网关如下:每一个节点具有访问网络连接和路由的功能,能作为一个网关;该网关发布传输位于OGM中的GWFlags标志;如果节点不准备接入到网络,则该节点设定GWFlags为0;否则,GWFlags包含所提供的带宽编码;提供节点应该将此值设置为可用带宽的最佳近似估计值;
GWFlags编码用带宽以Kbit/s表示,上行和下行带宽的计算方法的依据如下:
下行带宽=32*(S+2)*2^down kbit/s
上行带宽=((up+1)*(下行带宽))/8kbit/s
节点为了保证其确定功能,并以多种方式决定网关;节点能为用户设置他的静态网关,而不是仅仅是协议决定的自动获取的最佳网关。
4.根据权利要求1所述的分布式自适应传输路由协议,其特征在于,所述协议的路由表如下:如果从一个OGM通过HNA扩展信息从一个未知的源或到达一个未知网络/主机,它会被添加到路由表中,选择最佳本地链路的双向邻居作为网关;如果目标是一台主机,最佳双向单跳邻居为目标的主机路由将被添加;如果目标是一个网络,由HNA扩展信息发布包括OGM的消息,通过添加网络路由中最佳的双向单跳邻居;如果双向单跳邻居不被选中作为本身的网关,则单跳源节点不能作为最佳的它本身的网关,必须通过另一个双向单跳邻居的主机进行路由选择;如果到目的地的最佳的排序邻居发生变化,路由表必须被更新;节点从已知的源节点收到一个单一的OGM或HNA扩展信息的间隔时间超过WINDOW_SIZE和PURGE_TIMEOUT的值的时候,该路线被认为是过期,将从路由表中被删除;删除的时间间隔对比滑动窗口的大小设置;
协议路由表维护时,每个节点通过把自己的MAC地址放入到自己的OGM中,然后通过周期性的广播发送出去;其它节点接收到OGM后,会进行一系列的判断,经判断后后,会丢弃数据包或者更新自己的源节点列表,然后进行重广播操作;所述重广播是指将广播接收到的OGM重新广播出去;判断过程如下:
第一步,判断是否是标准广播包头大小;如果大小不符合规定,会被接收节点直接丢弃;
第二步,对接收节点来说,如果接收数据包的标识说明是广播,但目的地址是单播的话,将被丢弃;
第三步,OGM的发送者地址是网络中某一个MAC地址,如果该地址是一个广播地址,将被丢弃;
第四步,接收节点接收到自己广播出去的消息,将会被丢弃;这里的消息是指自己网卡发出去还未被转发的消息;
第五步,广播包的TTL值小于2的话,将会被丢弃;
经过上述几个步骤判断后,接收节点会更新滑动窗口的元节点OGM,然后进行重新广播准备,该准备阶段也需要进行三个判断;
第一步,检查数据包是不是一个副本;是的话将丢弃;
第二步,检查数据包序列号是不是陈旧的;是的话将丢弃;
第三步,检查数据包是不是已经被其它网关节点发送了;是的话将丢弃;
接着就会建立双向链路进行重广播数据包;节点会周期性的发送OGM,接收节点也会周期性的维护源节点列表的内容,接收节点将要在规定时间内接收到源节点的OGM,否则将会被判断源节点失效,路由表中的信息将会被清除。
5.根据权利要求1所述的分布式自适应传输路由协议,其特征在于,所述协议的传输质量TQ如下:本地链路的传输质量是通过从邻居节点接收到的OGM的数量间接计算出来的;本地节点统计本地滑动窗口内的所有接收到的OGM,这里用接收质量RQ来代表这一数值;在这些接收到的OGM中,由自己发出而又被邻居节点重新广播的OGM,本地节点同样维护了一个滑动窗口,统计接收到的此类OGM,用EQ来表示这一数值;本地链路的EQ是通过传输质量TQ和接收质量RQ的乘积得到的,公式为:
EQlocal=TQlocal*RQlocal
所以传输质量TQ表示为:
TQlocal=EQlocal/RQlocal
在极端情况下,接收到的数据包数量过少,协议会判断该链路失效,从而将链路传输质量TQ值为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610289758.0A CN105847278B (zh) | 2016-05-03 | 2016-05-03 | 一种分布式自适应传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610289758.0A CN105847278B (zh) | 2016-05-03 | 2016-05-03 | 一种分布式自适应传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105847278A true CN105847278A (zh) | 2016-08-10 |
CN105847278B CN105847278B (zh) | 2022-02-08 |
Family
ID=56591345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610289758.0A Active CN105847278B (zh) | 2016-05-03 | 2016-05-03 | 一种分布式自适应传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105847278B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109412953A (zh) * | 2018-12-27 | 2019-03-01 | 北京比新科技有限公司 | 一种基于区块链overlay网络的路由信息交互方法 |
CN109600312A (zh) * | 2019-01-04 | 2019-04-09 | 南京邮电大学 | 一种面向智能终端自组网的BATMAN-Adv协议优化设计方法 |
CN109861916A (zh) * | 2018-10-31 | 2019-06-07 | 深圳向云科技有限公司 | 一种数据处理方法及相关设备 |
CN109996189A (zh) * | 2018-01-03 | 2019-07-09 | 怀尔帕斯公司 | 用于广播消息的协同重复的系统 |
CN111148175A (zh) * | 2019-12-30 | 2020-05-12 | 沈阳理工大学 | 一种无线自组织网络中自适应路由修复方法 |
CN112205034A (zh) * | 2018-03-29 | 2021-01-08 | 古伊有限公司 | 用于在网状网络中管理和控制动态隧道协议的系统和方法 |
CN112312373A (zh) * | 2020-10-30 | 2021-02-02 | 星络智能科技有限公司 | 信道优化方法、系统及计算机可读存储介质 |
CN112363971A (zh) * | 2020-11-10 | 2021-02-12 | 王志平 | 一种超级计算机架构实现方法 |
CN113261344A (zh) * | 2019-01-08 | 2021-08-13 | 索尼集团公司 | 多跳路由中的快速阻塞发现和恢复 |
CN113474666A (zh) * | 2019-02-01 | 2021-10-01 | 诺宝公司 | 分布式数据库中节点故障检测与解决 |
CN114338513A (zh) * | 2021-12-24 | 2022-04-12 | 南京邮电大学 | 基于跨层信息感知的无线多跳路由快速决策方法和系统 |
CN114467318A (zh) * | 2019-10-08 | 2022-05-10 | 昕诺飞控股有限公司 | 用于针对ad-hoc数据需要来控制临时网关的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296180A (zh) * | 2008-06-19 | 2008-10-29 | 上海交通大学 | 基于吞吐量性能的无线Mesh网络自适应路由方法 |
US7978612B2 (en) * | 2008-10-13 | 2011-07-12 | Cisco Technology, Inc. | Two-hop relay for reducing distance vector routing information |
CN102821437A (zh) * | 2012-08-13 | 2012-12-12 | 东南大学 | 一种无线自组网按需距离矢量路由方法 |
-
2016
- 2016-05-03 CN CN201610289758.0A patent/CN105847278B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101296180A (zh) * | 2008-06-19 | 2008-10-29 | 上海交通大学 | 基于吞吐量性能的无线Mesh网络自适应路由方法 |
US7978612B2 (en) * | 2008-10-13 | 2011-07-12 | Cisco Technology, Inc. | Two-hop relay for reducing distance vector routing information |
CN102821437A (zh) * | 2012-08-13 | 2012-12-12 | 东南大学 | 一种无线自组网按需距离矢量路由方法 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109996189A (zh) * | 2018-01-03 | 2019-07-09 | 怀尔帕斯公司 | 用于广播消息的协同重复的系统 |
CN109996189B (zh) * | 2018-01-03 | 2022-09-16 | 怀尔帕斯公司 | 用于广播消息的协同重复的系统 |
CN112205034A (zh) * | 2018-03-29 | 2021-01-08 | 古伊有限公司 | 用于在网状网络中管理和控制动态隧道协议的系统和方法 |
CN109861916A (zh) * | 2018-10-31 | 2019-06-07 | 深圳向云科技有限公司 | 一种数据处理方法及相关设备 |
CN109861916B (zh) * | 2018-10-31 | 2021-08-31 | 深圳向云科技有限公司 | 一种数据处理方法及相关设备 |
CN109412953A (zh) * | 2018-12-27 | 2019-03-01 | 北京比新科技有限公司 | 一种基于区块链overlay网络的路由信息交互方法 |
CN109600312B (zh) * | 2019-01-04 | 2021-03-12 | 南京邮电大学 | 一种面向智能终端自组网的BATMAN-Adv协议优化设计方法 |
CN109600312A (zh) * | 2019-01-04 | 2019-04-09 | 南京邮电大学 | 一种面向智能终端自组网的BATMAN-Adv协议优化设计方法 |
CN113261344B (zh) * | 2019-01-08 | 2024-05-31 | 索尼集团公司 | 多跳路由中的快速阻塞发现和恢复 |
CN113261344A (zh) * | 2019-01-08 | 2021-08-13 | 索尼集团公司 | 多跳路由中的快速阻塞发现和恢复 |
US11822441B2 (en) | 2019-02-01 | 2023-11-21 | Nuodb, Inc. | Node failure detection and resolution in distributed databases |
CN113474666A (zh) * | 2019-02-01 | 2021-10-01 | 诺宝公司 | 分布式数据库中节点故障检测与解决 |
CN113474666B (zh) * | 2019-02-01 | 2023-10-27 | 诺宝公司 | 分布式数据库中节点故障检测与解决 |
CN114467318A (zh) * | 2019-10-08 | 2022-05-10 | 昕诺飞控股有限公司 | 用于针对ad-hoc数据需要来控制临时网关的方法和装置 |
CN111148175A (zh) * | 2019-12-30 | 2020-05-12 | 沈阳理工大学 | 一种无线自组织网络中自适应路由修复方法 |
CN111148175B (zh) * | 2019-12-30 | 2023-02-07 | 沈阳理工大学 | 一种无线自组织网络中自适应路由修复方法 |
CN112312373A (zh) * | 2020-10-30 | 2021-02-02 | 星络智能科技有限公司 | 信道优化方法、系统及计算机可读存储介质 |
CN112363971A (zh) * | 2020-11-10 | 2021-02-12 | 王志平 | 一种超级计算机架构实现方法 |
CN114338513A (zh) * | 2021-12-24 | 2022-04-12 | 南京邮电大学 | 基于跨层信息感知的无线多跳路由快速决策方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105847278B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105847278A (zh) | 一种分布式自适应传输路由协议 | |
Wang et al. | CORMAN: A novel cooperative opportunistic routing scheme in mobile ad hoc networks | |
Hassanein et al. | Routing with load balancing in wireless ad hoc networks | |
CA2488204C (en) | System and method for forming, maintaining and dynamically reconfigurably routing in an ad-hoc network | |
CN1906898B (zh) | 用于在ad-hoc网中有效地路由的方法和系统 | |
US7551562B2 (en) | Determining bidirectional path quality within a wireless mesh network | |
Zhou et al. | Load-balanced wireless ad hoc routing | |
Iwao et al. | Dynamic data forwarding in wireless mesh networks | |
US20090190514A1 (en) | Method for enhancement of multicasting forwarding protocol in a wireless network | |
CN110324877A (zh) | 基于伺服骨干网与Vikor多标准决策的中继机器人路由方法 | |
Boushaba et al. | Source-based routing in wireless mesh networks | |
Sagar et al. | Evaluating and Comparing the Performance of DYMO and OLSR in MANETs and in VANETs | |
Gharavi et al. | Multigate mesh routing for smart grid last mile communications | |
Nguyen et al. | A load-aware routing metric for wireless mesh networks | |
CN104053208B (zh) | 无线自组网中基于信道分配的路由方法、装置 | |
Zhou et al. | A novel routing protocol for ad hoc sensor networks using multiple disjoint paths | |
Ahmeda et al. | Review of routing metrics and protocols for wireless mesh network | |
Khan et al. | M-AODV: Modified Ad Hoc On-demand distance vector routing scheme | |
Azadm et al. | A performance comparison of proactive and reactive routing protocols of mobile ad-hoc network (MANET) | |
Coll-Perales et al. | Energy efficient routing protocols for multi-hop cellular networks | |
Roy et al. | Performance optimization of ad hoc on demand vector routing protocol in cognitive radio network | |
Hilmani et al. | An Advanced Comparative Study of Routing Protocols in LoRaWAN | |
Le et al. | LARM: A load-aware routing metric for multi-radio wireless mesh networks | |
Bano et al. | Probabilistic broadcasting Protocol in ad hoc network and its advancement: a Review | |
Le et al. | Load-aware routing protocol for multi-radio wireless mesh networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Hangzhou City, Zhejiang province Binjiang District 310051 shore road 650 Building 1 room 1708 Applicant after: Hangzhou Ying flying Technology Co., Ltd. Address before: Hangzhou City, Zhejiang province Binjiang District 310051 shore road 650 Building 1 room 1708 Applicant before: HANGZHOU HANSHE TECHNOLOGY CO., LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |