CN101087247A - 在无线通信系统中路由数据的方法 - Google Patents
在无线通信系统中路由数据的方法 Download PDFInfo
- Publication number
- CN101087247A CN101087247A CNA2006100916827A CN200610091682A CN101087247A CN 101087247 A CN101087247 A CN 101087247A CN A2006100916827 A CNA2006100916827 A CN A2006100916827A CN 200610091682 A CN200610091682 A CN 200610091682A CN 101087247 A CN101087247 A CN 101087247A
- Authority
- CN
- China
- Prior art keywords
- node
- internet
- packet
- manet
- aodv
- 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.)
- Pending
Links
Images
Classifications
-
- 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/28—Connectivity information management, e.g. connectivity discovery or connectivity update for reactive routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/26—Route discovery packet
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
提供了一种在无线通信系统(400,430)中路由数据的方法。在该示例性的方法和系统中,如果MANET中的至少一个节点包括与外部连接或者设备(节点2)的连接,那么数据分组就可以被路由到诸如运行Ad-Hoc按需距离矢量协议(AODV)的网络的移动Ad-Hoc网络(MANET)(400)中的任何节点以及外部连接或设备(例如因特网实体)(430),和/或者可以在所述节点与外部连接或设备之间路由数据分组。因此,单个“连接的”MANET节点(节点2)可以与非连接的节点(节点1、3、4、5)共享其外部连接。
Description
技术领域
本发明的示例性实施例一般涉及路由数据的方法,以及更具体来说,涉及在与因特网相连的实体和未与因特网相连的节点之间路由数据的方法。
背景技术
移动Ad-Hoc网络(Mobile Ad-Hoc Network,MANET)路由协议涉及用于在移动设备之间路由消息的协议。MANET路由协议的一个例子是Ad-hoc按需距离矢量协议(Ad-Hoc On-demand DistanceVector,AODV)协议。AODV允许这些移动设备或者节点通过它们的近邻将消息传送到这些移动设备或者节点不能直接与其进行通信的节点。AODV通过发现这些消息可以通过的路线来完成这件事情。AODV确保这些路线不包含环路(例如一个或者多个重复的节点),并且尽力寻找可能的最短路线(例如,基于延迟、被访问节点的数量或者跳(hop)数等)。AODV也能够处理路由中的变化,以及如果出现错误,还能够创建新的路由。
图1示出了传统的AODV网络100。如图1所示,AODV网络100包括分别具有覆盖区域105、110、115、120和125的节点1、2、3、4和5。将能够直接与其他节点进行通信的节点称为“近邻”。
AODV网络100中的各个节点通过监听每个节点按照固定的周期间隔进行广播的“HELLO”消息来跟踪其近邻。当给定节点想要发送消息给非近邻节点时,该节点就广播路由请求(RREQ)消息。RREQ消息包括用于识别发送RREQ消息的节点的源标识符、用于识别要将消息寻址到的非近邻节点的目的地标识符、消息的生存时间、消息的跳计数以及用作消息的唯一标识符的顺序号。生存时间表明了消息处于“激活状态”的持续时间,过了该持续时间,任何节点将不再执行把消息传送到目的地非近邻节点的尝试。跳计数表明了消息从其源点开始经过的当前跳数。跳计数可以在每跳之后增加(例如增加1)。
图2示出了在图1的AODV网络100中的传统消息路由处理。在步骤S200中,节点1确定将消息发送到节点3。如图1所示,节点1的近邻是节点2和4。因此,节点1不能直接与节点3进行通信。节点1广播RREQ,其由节点4和节点2接收。在该示例中,为了简明,目的地标识符是“3”(即到指定节点3),源标识符是“1”(即到指定节点1)。生存时间是“3”(例如,指定一个时间周期,其可以默认是255跳),初始跳计数为“0”(例如,在每一个连续的跳点处都可以将该值增加1,以便收集到目的地的跳测量值)并且顺序号为“0”。因此,由节点1发送的RREQ可以表示为[目的地标识符,源标识符,生存时间,跳计数,顺序号]或者[3,1,3,0,0]。
RREQ[3,1,3,0,0]由近邻节点2和4中的每一个来接收。在步骤S205和S210,节点4和2分别确定目的地标识符是否标识了如下的节点:(i)该节点分别由节点4和2所知,或者(ii)接收节点(例如,节点2或者4)是否由目的地标识符所标识。如果条件(i)和(ii)中的每一个都不满足且生存时间还未终止,则接收节点重新广播所接收的RREQ。因此,在步骤S205,由于节点4不是节点3的近邻而且节点4也不是节点3,所以节点4重新广播RREQ,该RREQ由节点5接收。应当理解,因为节点1是节点4的近邻,所以节点1也将接收到RREQ,但因为节点1是原始发送节点,所以由于节点1将忽略对该重新广播的RREQ的接收而未示出该步骤。另外,尽管未示出,但在从节点4接收到重新广播的RREQ之后,接着将在节点5执行在节点4执行的步骤S205,等等。
返回到步骤S210,节点2是节点3的近邻,因而节点2知道到节点3的路由。然后,节点2确定节点2是否是目的地标识符所标识的节点。因为节点2不是目的地实体,所以节点2将路由回复(RREP)发送回节点1,以表明已经找到到节点3的路由,以及如果节点1想要创建与节点3的双向路由,则节点2还可以产生并单路传送免费(gratuitous)RREP到节点3;否则,节点3就不会获知返回节点1的路由。可选地,如果节点1不想让任何中间节点来发送RREP,则节点2将简单地重新广播RREQ,直到接收到来自实际目的地的RREP为止。RREP类似于RREQ,但RREP包括表明路由的有效持续时间的生存时间。另外,RREP中的跳计数表明到目的地的实际跳数。
节点3接收广播的RREQ并且在步骤S215中确定条件(i)和(ii)是否得到满足。因为条件(ii)得到满足(即节点3是由目的地标识符所标识的节点),所以节点3通过节点2将RREP发送到节点1,并且不会重新广播RREQ。一般,节点1响应于其广播的RREQ而仅接收一个(1)RREP,该RREP可能被配置为要么从中间节点(例如,节点2或者第一个知道目的地节点位置的接收RREQ的节点)发送,要么从目的地节点本身发送。
节点1接收RREP,并且基于RREP的顺序号来确定是否更新到节点3的路由路径。顺序号用作允许节点确定它们的信息相对于其它节点有多“新鲜的(fresh)”的时间标签。每次节点发送新消息时,与该新消息相关的顺序号从先前已发送的消息递增。每个节点对与其进行通话的节点的当前(即最高)顺序号进行记录。顺序号越高表明“越新鲜”或者更加新的路由。
一旦获得了从源节点到目的地节点的路由,源节点就将数据发送到目的地节点,直到接收到路由错误消息(RERR)为止。RERR表示在源节点和目的地节点之间的一个或者多个路由路径中有断开的链路。无论节点什么时候接收到RERR,该节点都将检查其路由表并且删除所有包括“坏”节点(即至少通过旧的路由路径不再与源节点相连的节点)的路由。
一般来说,响应于三(3)种情形而广播RERR。在第一种情形中,节点接收到用于转发的数据分组,但是没有到数据分组的目的地的路由路径。因此,其他节点(即,发送数据分组的节点)误认为到目的地节点的正确的路由路径是通过不知道目的地的该节点。
在第二种情形中,节点接收到使得该节点的路由中的至少一个变得无效的RERR。该节点发送关于当前不可达到的所有新节点的RERR。在第三种情形中,节点检测到该节点不能与其近邻节点中的一个通信。节点更新其路由表,以使得使用不可达到的邻近节点作为第一跳的路由无效。然后,节点发出表明该邻近节点没有被连接的RERR,这使得那些相关联的路由路径无效。
用作主机的大多数通信设备由使用表驱动的路由机制的操作系统(OS)(例如,诸如Linux的开放式源操作系统,诸如Window的非开放式源OS等)来控制。表驱动的路由机制一般使路由请求涌到邻近节点,在本地存储器的表中存储反馈并且对本地表数据执行密集处理,以确定路由路径。同样,多数软件应用逐渐被编程用于通过表驱动的路由机制来使用。具有受限的存储容量和/或电储量的移动通信设备(通常被包括在AODV网络中)不能够执行处理密集的表驱动的路由机制。
少数使用AODV协议和表驱动的路由机制二者的特性的技术已经得到了尝试。内核模式(kernel mode)AODV被配置成通过诸如Linux的开放式源OS来使用。典型地,将程序模块加载到由LinuxOS控制的计算机系统上。被加载的程序模块可以对Linux OS源代码进行改变,以执行AODV路由。然而,内核模式AODV仅在开放式源系统内可用,而不能在运行诸如Window(例如Window95、98、ME、2000、NT、XP、Vista等)的非开放式源OS的系统上执行,因为需要修改OS的低级别的网络堆栈(其仅在开放式源系统上是可配置的)来支持在内核模式中的AODV路由协议。
另一种常规的可选方案是用户模式AODV。一般来说,用户模式AODV包括以高于内核模式或者OS级别的级别来执行AODV路由协议。例如,可以对以任何公知的可执行编程语言(例如,Java,C++等)编写的程序模块进行编译,并且通过主机节点运行该程序模块。与内核模式AODV不同,用户模式AODV以较高的级别来执行,从而可适合于在开放式源或者非开放式源OS中使用。然而,用户模式AODV典型地与增加的处理需求以及增加的等待时间相关联。
图3示出了常规的用户模式AODV网络消息路由处理。在下面对图3的常规处理的描述中,将AODV网络100作为用户模式AODV网络进行了描述。
在步骤S300中,用户模式AODV网络100将默认网关的媒体接入控制(MAC)地址设置为0或者00-00-00-00-00。默认网关是这样的节点,即如果分组没有指定其他地址的话,就“默认”将分组发送到该节点。在步骤S305中,源节点确定是否将分组发送到目的地节点。如果源节点确定不发送分组,则该处理在步骤S305等待,直到源节点希望发送分组为止。否则,如果源节点确定将分组发送到目的地节点,则处理进入到步骤S310。
在步骤S310中,源节点通过将分组的MAC地址设置为全零从而标识默认网关而将分组发送到默认网关。在步骤S315中,默认网关接收并分析该分组,以确定分组要被发送到的实际目的地节点。在确定了目的地节点之后,在步骤S320中,默认网关执行AODV路由发现程序,例如关于图2所描述的处理,以确定从默认网关到目的地节点的路由路径。步骤S320的AODV路由发现程序仅搜索在用户模式AODV网络100中的、到目的地节点的潜在的路由路径。一旦发现合适的路由路径,在步骤S325中,默认网络沿所发现的路由路径将分组发送到目的地节点。
如上所述,常规的内核模式AODV可以仅通过开放式源OS来使用。常规的用户模式AODV比内核模式AODV更加灵活,但执行较为欠佳而且与增加的处理需求相关联。同样,无论内核模式AODV还是用户模式AODV都不能够执行对“网络外的”数据分组(例如,从不具有因特网连接的AODV节点发送到因特网目的地的数据分组,从因特网源实体发送到不具有因特网连接的AODV节点的数据分组等)的路由,因而被限制为对AODV网络100中的节点进行路由,如上面关于图1至3所描述的那样。
发明内容
本发明的一个示例性实施例在于一种路由数据的方法,该方法包括:在通信节点处接收数据分组,该通信节点包括与因特网的连接、以及与未连接到因特网的至少一个其它通信节点的连接,该至少一个其它通信节点和该通信节点中的每一个都包括在相同的移动Ad-Hoc网络(MANET)中;确定是否将数据分组配置成被发送到该至少一个其他通信节点和因特网之一;并且基于该确定步骤将数据分组发送到该至少一个其他通信节点和因特网之一。
本发明的另一个示例性实施例在于一种将数据从不具有因特网连接的源节点路由到因特网目的地实体的方法,该方法包括:将数据分组从源节点发送到具有因特网连接的网关节点,该源节点和网关节点位于相同的MANET内,该数据分组包括用于指示网关节点通过因特网连接将数据分组转发到因特网目的地实体的指令。
本发明的另一个示例性实施例在于一种将数据从因特网源实体路由到不具有因特网连接的目的地节点的方法,该方法包括:将数据分组发送到具有因特网连接且与目的地节点相连的网关节点,该网关节点和目的地节点位于相同的MANET内,该数据分组包括用于指示网关节点将数据分组转发到目的地节点的指令。
本发明的另一个示例性实施例在于一种无线通信系统,该系统包括:与多个通信网络连接的因特网连接,和包括在所述多个通信网络中的MANET,该MANET包括至少一个与因特网连接相连的节点,该至少一个节点被配置成在多个通信网络与MANET中的不与因特网连接相连的节点之间路由数据分组。
本发明的另一个示例性实施例在于一种在MANET与一个或者多个其他网络之间路由数据的方法,该方法包括:首先为MANET中的每个节点分配一个内部地址,以及其次为该MANET分配外部地址,该外部地址用于区分MANET和所述一个或者多个其他网络。
附图说明
根据下面给出的详细描述以及仅借助于示例的方式给出的附图,将更加充分地理解本发明,其中在各个附图中相同的附图标记表示相应的部分,并且其中:
图1示出了常规的Ad-hoc按需距离矢量协议(AODV)网络;
图2示出了在图1的AODV网络中的常规消息路由处理;
图3示出了常规的用户模式AODV网络消息路由处理;
图4示出了根据本发明的一个示例性实施例的AODV网络;
图5示出了根据本发明的一个示例性实施例的AODV消息路由处理。
图6示出了根据本发明的另一个示例性实施例的、用于从图4的AODV网路中的非因特网连接的AODV节点将数据分组发送到因特网内的因特网目的地实体的处理;
图7示出了根据本发明的另一个示例性实施例的、用于从因特网内的因特网目的地实体将数据分组发送到图4的AODV网路中的非因特网连接的AODV节点的处理。
具体实施方式
正如在本发明的背景部分讨论的,常规的Ad-hoc按需距离矢量协议(AODV)网络不能将数据分组从不具有因特网连接的AODV节点路由到因特网目的地实体,而且常规的因特网源实体也不能将数据分组发送到不直接与因特网相连的AODV节点。因此,现在将描述的本发明的示例性实施例旨在一种寻址方案,该方案允许通过具有因特网连接的AODV网络内的AODV节点,将因特网消息路由到AODV网络内的任何希望的AODV节点,和/或路由来自于AODV网络内任何希望的AODV节点的因特网消息。
图4示出了根据本发明的一个示例性实施例的AODV网络400。
在图4的示例性实施例中,AODV网络400包括分别具有覆盖区域405、410、415、420和425的节点1、2、3、4和5。将能够直接与其他节点进行通信的节点称为“近邻”。一般来说,AODV网络400类似于AODV网络100,只是除了AODV网络400中的节点2除了与邻近节点1和3通信之外还与因特网430相连以外。因特网430包括多个通信网络,这些网络可以利用多个公知协议(例如TCP/IP协议)中的任何一个来交换数据分组。
图5示出了根据本发明的一个示例性实施例的AODV消息路由处理。下面将参照图4的AODV网络400来描述图5的示例性AODV消息路由处理。下面描述的操作通过AODV网络400中的节点2(例如与因特网430相连的节点)来执行。
在步骤S500中,节点1、2、3、4和5中的每一个都分配有在AODV网络400中进行路由时使用的内部地址。表1(下面)示出了用于节点1到5中的每一个的示例性内部地址集合。
表1
节点# | 所分配的内部地址 |
1 | 10.0.0.1 |
2 | 10.0.0.2 |
3 | 10.0.0.3 |
4 | 10.0.0.4 |
5 | 10.0.0.5 |
例如,参照图5的步骤S500,节点1到5的内部地址可以手动地(例如独立地通过各个相应节点,通过节点2等)或者自动地(例如,经由为图4的AODV网路400配置的动态主机配置协议(DHCP协议))进行分配。
在分配了内部地址之后,在步骤S505中分配欺骗保留地址(Spoofing reserve address,SRA)以标识图4的AODV网络400。SRA用于区分AODV网络400和与因特网430相连的其他网络,而且还可以用作将数据分组路由到AODV网络400中的一个或者多个节点的目的地地址。在该示例中,AODV网络400的SRA地址是10.255.255.254,AODV网络400的MAC地址是00-00-00-00-00,而MAC/SRA地址是静态的并且在操作期间不会发生变化。
在分配了SRA之后,对地址解析协议(ARP)表和系统路由表进行更新。在AODV网络400中的每个节点处存储有ARP表,而且通过操作系统(例如通过Window2000 professional/server,XP等)来管理系统路由表。与AODV网络400和因特网430相关联的每个计算机都包括本地系统路由表。在涉及内部设备(例如计算机、移动电话、内部路由器等)的第一示例中,系统路由表可以仅包含内联网中的(例如,并非到其它网络的)某个路由。在涉及边界路由器(例如位于网络边缘的路由器)的可选实施例中,系统路由表还可以包括到其他网络的路由。在我们的示例中,ad hoc网络中的所有节点形成子网,它们的系统路由表可以仅包括本地路由;而网关节点的系统路由表可具有非本地路由。
因此,可以由OS使用系统路由表,以确定如何路由数据分组。同时,存在由AODV路由协议使用的AODV路由表。AODV节点一般使用AODV路由表来更新系统的路由表。然而,节点2包括称为网络地址翻译器(NAT)的模块。这种在不具有因特网连接的AODV节点中未出现的NAT用于产生临时IP地址、和/或用于内部节点的传输层端口,以便与例如因特网430上的Web服务器的外部节点进行通信。ARP是TCP/IP协议,用于将IP地址转换为诸如以太网地址的物理地址。通常,希望获取物理地址的节点(例如节点2)在TCP/IP网络(例如因特网430)上广播ARP请求。然后,网络(例如因特网430)上的具有所请求的地址的节点通过其物理硬件地址进行回复。
在步骤S510中,对AODV网络400中的每个节点处的ARP表进行更新,以便通过如下的项目将SRA的MAC地址通知给OS:
因特网地址 | 物理地址 | 类型 |
10.255.255.254 | 00-00-00-00-00 | 静态 |
ARP表项目
同样在步骤S510中,更新在AODV网络400中的每个节点处的路由表,以允许通过如下的项目将寻址到因特网目的地的分组转发到因特网430:
目的地 | 下一个跳点 |
10.0.0.0/255.0.0.0 | 10.255.255.254 |
路由表项目
在步骤S515中,节点2接收数据分组。在步骤S515中在节点2处接收的数据分组可以是如下的任一种数据分组(i)从AODV网络400中的节点(例如节点1、3、4等,或者可以源自节点2本身)发送的且指向AODV网络400中的其他节点的分组;(ii)从AODV网络400中的节点(例如节点1、3、4等,或者可以源自节点2本身)发送且指向因特网430中的因特网目的地的分组;或者(iii)经由因特网430从因特网源发送的且指向AODV网络400中的节点的分组。节点2包括数据分组捕获模块,其被配置成对依照(i)、(ii)或者(iii)中的任一个接收的数据分组进行接收和分析。数据分组包括目的地地址字段,该字段指示期望的目的地实体。在步骤S520中,节点2分析数据分组,以确定由数据分组的目的地地址字段指示的目的地地址是否已知是在AODV网络400中。
现在将关于节点2可以如何确定由目的地地址指示的目的地节点是否已知是在AODV网络400中的而给出示例。AODV网络400中的每一个节点都具有本地IP地址和子网掩码。子网掩码用于标识本地IP地址和外部IP地址。例如,计算机可以具有IP地址135.252.20.29,子网掩码255.255.255.0。因此,诸如135.252.20.XXX的IP地址可以用作子网IP,并且可以直接到达,否则,网关会帮助将分组路由到目的地。正如在现有技术中所熟知的,可以手动或者自动地来执行IP地址的获取。
如果目的地地址已知是在AODV网络400中,则在步骤S525中,节点2使用常规的AODV路由处理(例如,参见常规的附图1到3)将数据分组转发到目的地节点。否则,如果确定数据分组的目的地在AODV网络400之外,则该处理就进入到步骤S530。
在步骤S530中,节点2将所接收的数据分组转发到因特网430。此时,节点2将不再运行AODV路由发现程序,因为该IP地址已知是外部IP地址,而且已经将数据分组转发到节点2。如果输入分组的目的地在因特网内,则由节点2上的NAT模块(例如,其可以被包括在Window服务器中)来捕获数据分组,节点2为输入分组产生并且分配临时外部IP地址和/或者传输层端口。将该分组转发到与因特网430相连的网络接口(例如以太网卡)。如果节点2想要将分组发送到因特网,则以与输入分组相同的方式来处理该分组。
图6示出了根据本发明的另一个示例性实施例的、用于从图4的AODV网路400中的非因特网连接的AODV节点将数据分组发送到因特网430中的因特网目的地实体的处理。特别地,下面参照图6给出的示例描述了将数据分组从节点4发送到因特网430。然而,应当理解,本发明的其他示例性实施例可以使用类似的技术将数据分组从AODV网络400中的任意节点发送到因特网430。
在步骤S600中,节点4确定是否将数据分组发送到相对AODV网络400来说在网络外的目的地,诸如在因特网430中的因特网目的地实体。如果节点4确定将数据发送到网络外的目的地,则该处理进行到步骤S605。如果AODV模块捕获了被指定到外部网络(例如因特网430)的分组,则缓存这些分组。AODV模块启动网关寻找程序来寻找到外部网络的网关。网关寻找程序类似于RREQ/RREP程序,除了目的地IP地址被设置为0.0.0.0以使得只有网关才可以回复该RREQ之外。在找到网关之后,节点4将更新本地路由表并且转发被缓存的分组。
在步骤S610中,节点4使用公知的“内部”AODV路由协议(例如上面参照图1到3描述的那些协议)将数据分组转发到节点2(例如在通过中间节点1之后)。
节点2根据图5中的上述处理来接收并处理数据分组。因此,在步骤S515中在节点2处从节点4接收数据分组,节点2在步骤S520中分析数据分组,并且在步骤S525中确定该数据分组是否是打算送往AODV网络400中的节点的。在步骤S530中节点2将数据分组转发到因特网430(例如转发到因特网中的下一跳路由器),并且在步骤S535中,因特网430使用公知的因特网数据分组路由协议将数据分组路由到其期望的目的地。
图7示出了根据本发明的另一个示例性实施例的、用于从因特网430中的因特网目的地实体将数据分组发送到图4的AODV网路400中的非因特网连接的AODV节点的处理。特别地,下面参照图7给出的示例描述了将数据分组从因特网430发送到节点4(例如不直接与因特网430相连的节点)。然而,应当理解,本发明的其他示例性实施例可以使用类似的技术将数据分组从因特网430发送到AODV网络400中的任意节点。
在步骤S700中,与因特网430相连的因特网实体(例如计算机、移动电话等)确定是否将数据分组发送到AODV网络400中的一个或者多个节点,确定是否对数据分组作出回复。在一个示例中,因特网实体可以确定将数据分组发送到AODV网络400,以响应从AODV网络400中的一个或者多个节点接收到的对信息或其它类型的数据分组的请求。如果因特网实体确定将数据分组发送到AODV网络400(例如,响应于对AODV网络400中的一个或者多个节点所发送的信息的请求),则在步骤S705中,该因特网实体使用公知的因特网路由协议,以与将分组发送到任何其他目的地相同的方式将数据分组发送到网关。一旦接收到该分组,节点2上的NAT模块就捕获该分组并且将所接收的分组路由到指定的目的地AODV节点。因此,在步骤S710中,(1)通过公知的因特网路由协议将数据分组路由到节点2,(2)通过在节点2处的NAT模块来处理所路由的数据分组。该NAT模块处理包括将分组头部中的IP地址转换为相应的AODV IP地址(例如10.0.0.4)。在AODV节点启动与外部网络(例如因特网430)的连接时产生NAT IP地址转换表。接下来,在步骤S710中,(3)节点2处的OS搜索系统路由表并且寻找到目的地节点(例如节点4)的路由。在节点4启动网关寻找程序时产生该路由。
节点2根据图5中的上述处理来接收并处理数据分组。因此,在步骤S515中,在节点2处从因特网430接收数据分组,节点2在步骤S520中分析该数据分组,并且在步骤S525中确定打算将该数据分组发送到AODV网络400中的节点。在步骤S525中,节点2使用公知的“内部”AODV路由协议将数据分组转发到节点4(例如,通过中间节点1),如上面常规的附图1到3中描述的那样。
因此,应当理解,通过上述示例性的AODV路由协议,不具有直接因特网连接的AODV节点可以有效地变为与因特网相连(例如,用于将数据分组上载到因特网和/或者从因特网下载数据分组),只要至少AODV网络中的一个节点具有因特网连接即可。
以上述方式对本发明的示例性实施例进行了描述,显而易见的是,可以用多种方式对本发明进行改变。例如,尽管上文中给出了特定的AODV内部地址(例如10.0.0.1,10.0.0.2等)、子网掩码(例如255.255.255.0)、IP地址(例如10.255.255.254)和MAC地址(例如00-40-96-54-CF-0C),但是应当理解,这些内容仅是为了表示例子,并且还可以针对任何适当的地址指定来配置本发明的其他示例性实施例。同样,尽管AODV网络400示出了五个(5)节点和一个(1)具有与因特网430的连接的节点(即节点2),但是应当理解,本发明的其他示例性实施例还可以针对这样的AODV网络,所述AODV网络具有任意数量的节点并且其中有任意数量的节点具有因特网连接。
此外,尽管上面将本发明的示例性实施例描述为应用在AODV路由协议中,但是应当理解,其他示例性的实施例可以针对用于移动Ad-Hoc网络(MANET)的任意类型的路由协议,而不必限制于AODV。
这些变化并不被认为是脱离本发明的示例性实施例的,并且所有的这些修改都意欲被包括在本发明的范围内。
Claims (10)
1、一种路由数据的方法,包括:
在通信节点(节点2)处接收数据分组,所述通信节点包括与因特网(430)的连接、以及与未连接到因特网的至少一个其它通信节点(节点1、3、4、5)的连接,所述通信节点和所述至少一个其它通信节点中的每一个都包括在相同的移动Ad-Hoc网络(MANET)(400)中;
确定是否将数据分组配置成被发送到因特网和所述至少一个其它通信节点之一(S520);以及
基于所述确定步骤(S525,S530),将数据分组发送到因特网和所述至少一个其他通信节点之一。
2、根据权利要求1的方法,其中所述接收步骤从所述至少一个其他通信节点或者因特网接收数据分组(S610,S710)。
3、根据权利要求2的方法,其中如果所述接收步骤从所述至少一个其他通信节点接收数据分组,则所述确定步骤确定将数据分组配置成被发送到因特网(S610,S515,S520,S530)。
4、根据权利要求2的方法,其中如果所述接收步骤从因特网接收数据分组,则所述确定步骤确定将数据分组配置成被发送到所述至少一个其他通信节点(S710,S515,S520,S525)。
5、一种将数据从不具有因特网连接的源节点(节点1、3、4、5)路由到因特网目的地实体(430)的方法,包括:
将数据分组从源节点发送到具有因特网连接的网关节点(节点2),所述源节点和网关节点位于相同的Ad-Hoc网络(MANET)(400)中,该数据分组包括用于指示网关节点通过因特网连接将数据分组转发到因特网目的地实体的指令。
6、一种将数据从因特网源实体(430)路由到不具有因特网连接的目的地节点(节点1、3、4、5)的方法,包括:
将数据分组发送到具有因特网连接且与目的地节点相连的网关节点(节点2),所述网关节点和目的地节点位于相同的Ad-Hoc网络(MANET)(400)中,数据分组包括用于指示网关节点将数据分组转发到目的地节点的指令。
7、一种无线通信系统(400、430),包括:
连接到多个通信网络(400)的因特网连接(430);以及
包括在所述多个通信网络中的移动Ad-Hoc网络(MANET)(400),所述MANET包括与因特网连接相连的至少一个节点(节点2),所述至少一个节点被配置成在所述多个通信网络与MANET中不与因特网连接相连的节点(节点1、3、4、5)之间路由数据分组。
8、一种在移动Ad-Hoc网络(MANET)(400)和一个或者多个其他网络(430)之间路由数据的方法,包括:
首先为所述MANET中的每个节点分配一个内部地址(S500);以及
其次为所述MANET分配外部地址(S505,S510),所述外部地址用于区分所述MANET和所述一个或者多个其它网络。
9、根据权利要求8的方法,还包括:
将所述MANET中的一个节点或者多个节点指定为因特网网关(节点2),所指定的节点用于接收这样的分组,所述分组为:(i)从所述一个或者多个其他网络发送到所述MANET的分组,或者(ii)从所述MANET发送到所述一个或者多个其他网络的分组。
10、根据权利要求1、5、6、7或者8的方法,其中MANET运行Ad-hoc按需距离矢量协议(AODV)路由协议。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100916827A CN101087247A (zh) | 2006-06-09 | 2006-06-09 | 在无线通信系统中路由数据的方法 |
US11/702,628 US20070286139A1 (en) | 2006-06-09 | 2007-02-06 | Methods of routing data within a wireless communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006100916827A CN101087247A (zh) | 2006-06-09 | 2006-06-09 | 在无线通信系统中路由数据的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101087247A true CN101087247A (zh) | 2007-12-12 |
Family
ID=38821857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006100916827A Pending CN101087247A (zh) | 2006-06-09 | 2006-06-09 | 在无线通信系统中路由数据的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070286139A1 (zh) |
CN (1) | CN101087247A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102100040A (zh) * | 2008-06-09 | 2011-06-15 | 诺基亚公司 | 用于通信路由的方法、装置和计算机程序产品 |
CN103096410A (zh) * | 2011-10-31 | 2013-05-08 | 上海万康无线智能控制系统有限公司 | 一种无线抄表系统中的数据传输方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8077737B2 (en) * | 2008-09-25 | 2011-12-13 | At&T Intellectual Property I, Lp | Method for QoS delivery in contention-based multi hop network |
US8483077B2 (en) | 2009-09-16 | 2013-07-09 | At&T Intellectual Property I, L.P. | QoS in multi-hop wireless networks |
US9629063B2 (en) * | 2012-05-09 | 2017-04-18 | Trellisware Technologies, Inc. | Method and system for global topology discovery in multi-hop ad hoc networks |
US10348767B1 (en) * | 2013-02-26 | 2019-07-09 | Zentera Systems, Inc. | Cloud over IP session layer network |
US10680998B2 (en) * | 2015-11-10 | 2020-06-09 | International Business Machines Corporation | Method, system, and computer program product for a network device in switchless networks |
CA3107919A1 (en) * | 2018-07-27 | 2020-01-30 | GoTenna, Inc. | Vinetm: zero-control routing using data packet inspection for wireless mesh networks |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1395942A4 (en) * | 2001-06-14 | 2009-07-22 | Meshnetworks Inc | EMBEDDED ROUTING ALGORITHMS UNDER THE INTERNET PROTOCOL ROUTING LAYER OF A SOFTWARE ARCHITECTURAL LOG STACK IN A MOBILE AD HOC NETWORK |
EP1584160B1 (en) * | 2003-01-13 | 2011-07-06 | Meshnetworks, Inc. | System and method for achieving continuous connectivity to an access point or gateway in a wireless network following and on-demand routing protocol |
WO2004109476A2 (en) * | 2003-06-05 | 2004-12-16 | Meshnetworks, Inc. | System and method to maximize channel utilization in a multi-channel wireless communication network |
US7280483B2 (en) * | 2003-06-05 | 2007-10-09 | Meshnetworks, Inc. | System and method to improve the network performance of a wireless communications network by finding an optimal route between a source and a destination |
WO2005004420A2 (en) * | 2003-07-02 | 2005-01-13 | Mitsubishi Electric Research Laboratories, Inc. | Method and apparatus for routing data in a personal area network |
US7672307B2 (en) * | 2003-08-22 | 2010-03-02 | Samsung Electronics Co., Ltd. | Apparatus and method for transparent layer 2 routing in a mobile ad hoc network |
-
2006
- 2006-06-09 CN CNA2006100916827A patent/CN101087247A/zh active Pending
-
2007
- 2007-02-06 US US11/702,628 patent/US20070286139A1/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102100040A (zh) * | 2008-06-09 | 2011-06-15 | 诺基亚公司 | 用于通信路由的方法、装置和计算机程序产品 |
CN102100040B (zh) * | 2008-06-09 | 2014-01-22 | 诺基亚公司 | 用于通信路由的方法、装置 |
CN103096410A (zh) * | 2011-10-31 | 2013-05-08 | 上海万康无线智能控制系统有限公司 | 一种无线抄表系统中的数据传输方法 |
Also Published As
Publication number | Publication date |
---|---|
US20070286139A1 (en) | 2007-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5412654A (en) | Highly dynamic destination-sequenced destination vector routing for mobile computers | |
JP6510030B2 (ja) | モノのインターネット(IoT)におけるデバイス場所登録のためのサーバ | |
US7797009B2 (en) | Method and system for providing a network protocol for utility services | |
US8009615B2 (en) | Multi-hop ad-hoc wireless networks that support non-multi-hop wireless terminals | |
CN1926820B (zh) | 在无线多跳网络中使用ndp检测邻节点的方法、通信装置和系统 | |
CN101087247A (zh) | 在无线通信系统中路由数据的方法 | |
US9521608B2 (en) | Techniques to create, update, disseminate, and use dynamic subset backhaul channel lists in a mesh network | |
US7158497B2 (en) | Methods and apparatus for supporting micro-mobility within a radio access network | |
CN100461746C (zh) | 用于优化携带反向路由头部的消息的移动网络中的路由器布置 | |
US7366111B2 (en) | Arrangement for providing optimized connections between peer routers in a tree-based ad hoc mobile network | |
EP1540918B1 (en) | Method and apparatus in a gateway for registering mobile routers of a mobile ad hoc network to respective home agents | |
US7428221B2 (en) | Arrangement for providing network prefix information from attached mobile routers to a clusterhead in a tree-based ad hoc mobile network | |
RU2369976C2 (ru) | Маршрутизация в самоорганизующейся одноранговой сети | |
JP2002534842A (ja) | アドホック・インターネットワーキングのための統一されたルーティング方式 | |
US7787429B2 (en) | Method and apparatus for establishing path in wireless network | |
KR101055416B1 (ko) | 무선 센서 네트워크에서의 라우팅 경로 설정 방법 및 이를 수행하기 위한 장치 | |
RU2007126797A (ru) | Способ оптимизации маршрута передачи данных, соответствующее устройство и система | |
Antonini et al. | Lightweight multicast forwarding for service discovery in low-power IoT networks | |
US11197224B1 (en) | Systems and methods for routing messages through wireless networks | |
Dou et al. | Coordinate-based addressing for MANET | |
JP2005278185A (ja) | センサネットおよびセンサ装置を作動させる方法 | |
JP2007181056A (ja) | 経路選択方法 | |
CN102171977A (zh) | 层级基于移动性标签网络 | |
CN109922442B (zh) | 无线多跳网络与全连接网络的异构网络的地址解析方法 | |
Ait-Salem et al. | A hybrid multiagent routing approach for wireless ad hoc 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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20071212 |