CN103167483A - 一种基于隧道的数据转发方法、设备及系统 - Google Patents
一种基于隧道的数据转发方法、设备及系统 Download PDFInfo
- Publication number
- CN103167483A CN103167483A CN2011104216919A CN201110421691A CN103167483A CN 103167483 A CN103167483 A CN 103167483A CN 2011104216919 A CN2011104216919 A CN 2011104216919A CN 201110421691 A CN201110421691 A CN 201110421691A CN 103167483 A CN103167483 A CN 103167483A
- Authority
- CN
- China
- Prior art keywords
- address
- packet
- terminal
- itr
- identity
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种基于隧道的数据转发方法、设备及系统,身份和位置分离网络中的终端可以采用私有地址或者全局地址,这样,当终端发起数据通信时,如果发起通信的终端采用私有地址,ITR对数据包进行源地址的私有地址转换,转换成全局地址,如果数据包的目的地址为ITR预先分配的映射地址,则意味着通信对端采用的是私有地址,则需要将映射地址再次转换成私有地址,这样,使得身份和位置分离网络不同子网内的终端可以采用的相同的私有地址成为可能,避免像现有技术那样,终端必须使用一对一的固定的EID,克服了现有身份和位置分离网络技术中不支持终端身份标识重复使用所带来的运营成本高、资源利用率低和用户安全性不高等问题。
Description
技术领域
本发明涉及移动通信技术领域,尤其涉及一种基于隧道的数据转发方法、设备及系统。
背景技术
随着网络的发展,互联网的规模越来越庞大。传统的TCP/IP网络中IP地址具有双重功能,即作为网络终端的位置标识,又作为网络中终端的身份标识。然而到了移动互联网时代,用户终端移动性与多宿主的问题越来越多。当主机移动到新的网络时,其位置发生变化,随之其IP地址也发生变化。IP地址的变化导致通信的中断。此外,一些通信技术如多宿主、流量工程的使用,零散的路由添加到各个路由表中,破坏了网络前缀的可聚合性,导致路由表膨胀。
为了解决上述问题,身份和位置分离网络的解决方案被提出,主要思想是将代表终端身份和位置的IP分为位置标识和身份标识两个概念。终端使用身份标识(Endpoint ID,EID)通信,其位置标识由网络的出口/入口路由器的地址(Routing Location,RLOC)来决定。
身份和位置分离网络重用了路由的技术,改变了一定的网络拓扑结构,结合传送网技术最小化的改造现有的网络路由传送技术。
在终端侧:使用终端身份标识EID来跟踪套接字(socket),建立连接、发送和接受数据包。
在网络侧:身份和位置分离网络架构中引入隧道路由,包括入口隧道路由器(Ingress tunnel router,ITR)和出口隧道路由器(Engress tunnel router,ETR)。数据包在进入传输网时由隧道路由器封装成身份和位置分离网络的数据包,并在到达目的地前解封装。身份和位置分离网络的数据包外层报头的IP地址是RLOCs地址,内层报头是EIDs。在进入隧道路由器时,由隧道路由器查询映射服务器,获知目标EID的对应RLOC信息,从而封装成身份和位置分离网络的数据包。
现有身份和位置分离网络的解决方案存在以下问题:
在现有身份和位置分离网络技术中为终端分配的身份标识不能重叠,不支持终端身份标识重复使用,网络需要规划出新的IPv4地址段来保证名址网互通的需求;如使用公有地址空间的话,在当前IP地址紧张形势下,可实施性较差;而使用私有地址空间,现有RFC1918所定义的地址数量又很难满足ID地址不重叠的需求;此外,身份和位置分离网络在现网中部署时,需要重新考虑IP编址、IP地址分配等功能改造,运营成本(Operating Expense,OPEX)较高。从资源利用率上考虑,为每一个接入身份和位置分离网络的主机分配全球唯一的EID,资源利用率较低。
另外,从安全性考虑,每个用户拥有一个固定的EID会暴露用户的隐私,攻击者可以通过目标EID查询目标位置RLOC,用户网络记录等信息,对用户隐私保护不够。
发明内容
本发明实施例提供了一种种基于隧道的数据转发方法、设备及系统,用以克服现有身份和位置分离网络技术中不支持终端身份标识重复使用所带来的运营成本高、资源利用率低和用户安全性不高等问题。
基于上述问题,本发明实施例提供的一种基于隧道的数据转发方法,包括:
入口隧道路由器ITR接收自身所属子网中终端发送的数据包并进行如下处理:
当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;
当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;
将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
本发明实施例提供的一种入口隧道路由器,包括:
接收模块,用于接收所述入口隧道路由器所属子网中终端发送的数据包;
地址处理模块,用于对接收模块接收的数据包进行如下处理:当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;以及当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;
封装模块,用于将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
本发明实施例提供的映射服务器,包括:
接收模块,用于入口隧道路由器ITR发送的所述ITR所属子网中终端对通信终端域名的DNS查询请求;
查询模块,用于在存储模块存储的各终端的注册信息中查询所述通信对端域名对应的位置标识和身份标识,将查询到的所述通信对端域名及对应的位置标识和身份标识的绑定信息返回至所述ITR;
存储模块,用于存储各终端的注册信息。
本发明实施例提供的一种基于隧道的数据转发系统,包括:
终端,位于入口隧道路由器ITR所属子网中,用于向所述ITR发送数据包;
ITR,用于对终端发送的数据包进行如下处理:当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;以及当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;并将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
本发明实施例的有益效果包括:
本发明实施例提供的基于隧道的数据转发方法、设备及系统,身份和位置分离网络中的终端可以采用私有地址或者全局地址,这样,当终端发起数据通信时,如果发起通信的终端采用私有地址,ITR对数据包进行源地址的私有地址转换,转换成全局地址,如果数据包的目的地址为ITR预先分配的映射地址,则意味着通信对端采用的是私有地址,则需要将映射地址再次转换成私有地址,这样,使得不同身份和位置分离网络的子网内的终端可以采用的相同的私有地址成为可能,避免像现有技术那样,终端必须使用一对一的固定的EID,并且,本发明实施例提供的基于隧道的数据转发方法、设备及系统,仍然采用位置标识和身份标识的编址方法,可以很好地与现有身份和位置分离网络兼容,能够在广泛部署IPv4地址的网络中实现,使用范围广,减少了对身份和位置分离网络重新进行编制的需求,减少了网络部署的OpenX,达到节约EID标识资源的目的,并且由于各终端使用子网内的私有地址,对于外部网络来说其地址是被屏蔽的,可加大外部主机攻击的难度,相对提高了终端隐私的安全性。
附图说明
图1为本发明实施例提供的基于隧道的数据转发方法的网络架构图;
图2为本发明实施例提供的基于隧道的数据转发方法的流程图;
图3为本发明实施例提供的对通信对端域名的DNS查询过程的流程图;
图4为本发明实施例提供的实例一的网络架构图;
图5为本发明实施例提供的实例一的信令交互流程图;
图6为本发明实施例提供的实例二的网络架构图;
图7为本发明实施例提供的实例三的网络架构图;
图8为本发明实施例提供的入口隧道路由器的结构图;
图9为本发明实施例提供的映射服务器的结构图;
图10为本发明实施例提供的基于隧道的数据转发系统的结构图。
具体实施方式
下面结合说明书附图,对本发明实施例提供的一种基于隧道的数据转发方法、设备及系统的具体实施方式进行说明。
在对本发明实施例提供的基于隧道的数据转发方法进行说明之前,对本发明实施例提供的基于隧道的数据转发方法的网络架构进行简单的介绍,如图1所示,入口隧道路由器(ITR)连接有身份和位置分离网络的子网,该子网中有终端需要向其他子网的终端或者非身份和位置分离网络的终端发起通信,终端发送的数据包需要经过ITR封装后经过隧道发送给对端。
本发明实施例提供的一种基于隧道的数据转发方法,如图2所示,具体包括以下步骤:
S201、ITR接收自身所属子网中终端发送的数据包;
S202、ITR对接收的数据包进行如下处理:
当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;
当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;
S203、将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
本发明实施例提供的上述基于隧道的数据转发方法,由于身份和位置分离网络的子网中发起数据通信的终端可以采用私有地址,也可以采用私有地址之外的如身份和位置分离网络的全局地址,并且,数据通信的对端,也可以采用私有地址、或者私有地址之外例如身份和位置分离网络的全局地址或者IP地址。在ITR侧,对于所属子网的终端的身份标识(源地址),若其采用私有地址,在进行隧道封装之前,进行地址转换,将其转换成身份和位置分离网络的全局地址,对于通信对端采用私有地址的情况下,为其分配一个映射地址,这样,在进行隧道封装之前,可以将该映射地址再次转换成私有地址。不同子网终端的身份标识的多样化,使得不同子网中的不同终端使用相同身份标识成为可能,实现了终端身份标识的复用。
较佳地,由于本发明实施例中,身份和位置分离网络中的终端均以域名作为身份标识,在发起数据通信之前,若通信对端为身份和位置分离网络其他子网中的终端,则还需要在向ITR发送数据包之前,发起对通信对端域名的DNS查询的过程,如3所示,具体流程如下:
S301、ITR接收终端发起的对通信对端域名的DNS查询请求,并将DNS查询请求转发至映射服务器;
S302、ITR接收映射服务器根据自身保存的各终端的注册信息返回的查询结果,并保存查询结果中通信对端域名及对应的位置标识和身份标识的绑定信息;
S303、ITR判断所保存的绑定信息中的身份标识为私有地址或者为身份和位置分离网络的全局地址;若为私有地址,执行下述步骤S304,否则,执行下述步骤S305;
S304、分配一个该子网中的映射标识,并将该映射标识与绑定信息绑定,将分配的映射标识返回至发送域名服务(Domain Name Service,DNS)查询请求的所述终端;
S305、将所保存的身份标识返回至发送DNS查询请求的终端。
本发明实施例中,由于身份和位置分离网络中的终端使用域名标识自己,在通信时,可以使用私有地址或者全局地址来标识,因此,在数据通信之前,映射服务器需提供DNS查询功能。映射服务器中存储的绑定信息如下表1所示:
表1
域名 | 位置标识 | 身份标识 |
www.x.org | RLOC1 | pEID1 |
www.y.org | RLOC2 | EID2 |
www.z.org | RLOC3 | pEID1 |
从上表1看出,不同终端,例如www.x.org和www.z.org这两个终端,都可以复用pEID1的私有地址,www.y.org的终端使用的是全局地址EID2。
在本发明实施例中,映射服务器中存储的绑定信息,是终端在初始化阶段在映射服务器中注册自身的域名、位置标识和身份标识的过程中生成的。在上述S302中,映射服务器根据通信对端的域名,在存储的注册信息中,查询该通信对端的域名、以及该域名对应的位置标识和身份标识的绑定信息。
上述S302中,ITR所保存的位置标识、身份表示和映射标识的绑定信息如下表2所示:
表2
位置标识 | 身份标识 | 映射标识 |
RLOC1 | pEID1 | EID1 |
RLOC2 | EID2 | / |
RLOC3 | pEID1 | EID3 |
经过上述S301-S305即DNS查询过程后,若通信对端使用的是私有地址,则终端会以该私有地址对应的映射地址为目的地址向通信对端发送数据包,若通信对端使用的是身份和位置分离网络的全局地址,则终端会直接使用该全局地址作为目的地址向通信对端发送数据包。
较佳地,如果通信对端是非身份和位置分离网络中的终端,则终端会直接使用其IP地址作为目的地址向该通信对端发送数据包,而不需要提前发起上述DNS查询过程。
较佳地,本发明实施例提供的基于隧道的数据转发方法中的步骤S303,也因为不同的情况需要进行不同的处理,具体地,分为下述三种情况:
第一种情况、经过S302处理后的数据包的目的地址为私有地址,那么对数据包进行封装的过程,通过下述方式实现:
ITR将自身的接口地址确定为封装的数据包外层的源地址;
ITR根据本地保存的映射标识与终端的位置标识和身份标识的绑定关系,查询该映射地址对应的位置标识;将查询到的位置标识确定为数据包外层的目的地址;
ITR根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
第二种情况、经过S302处理后的数据包的目的地址为身份和位置分离网络的全局地址,那么对数据包进行封装的过程,通过下述方式实现:
ITR将自身的接口地址确定为封装的数据包外层的源地址;
ITR根据本地保存的终端的位置标识和身份标识的绑定信息,查询该身份和位置分离网络的全局地址对应的位置标识,将查询到的位置标识确定为数据包外层的目的地址;
ITR根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
第三种情况、经过S302处理后的数据包的目的地址为IP地址,那么对数据包进行封装的过程,通过下述方式实现:
ITR将自身的接口地址确定为封装的数据包外层的源地址;
将身份和位置分离网络的边界路由器(PITR)的地址确定为封装的数据包外层的目的地址地址;
根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
下面以三个简单的实例对本发明实施例提供的上述基于隧道的数据转发方法进行说明:
实例一:
如图4所示的网络架构,两个终端X,Y通信。两者均使用私有地址(pEID1)的网络。X的位置标识为RLOC1,Y的位置标识为RLOC2,X,Y接入到网络时均向映射服务器注册其私有EID-RLOC和域名的绑定信息。X欲发起向Y的通信域名请求,具体的数据通信的流程如图5:
步骤A:终端X根据目的节点Y的域名向映射服务器查询目的节点Y的EID。映射服务器返回注册的绑定信息:Y-RLOC2-pEID1。ITR收到后发现此EID为私有身份标识,则分配并缓存一个映射的EID2对应Y的信息RLOC2-pEID1,并回复节点X的DNS信息为EID2。
步骤B:终端X根据目的节点Y的EID2的信息,构建普通数据包,源地址为自己的私有地址pEID1。
步骤C:ITR先查看数据包的源地址,发现为私有地址pEID1,根据绑定记录将源地址更换为全局EID1。然后根据目的节点Y的EID2查询自己的EID-RLOC缓存列表,获知其为映射绑定信息,真实地址应为RLOC2的pEID1,所以将目的地址更换为Y的标识pEID1,然后加上RLOC1->RLOC2包头封装成身份和位置分离网络的数据包发送出去。
步骤D:出口路由器收到后解封装,按照目的EID标识pEID1发给终端Y。
实例二:
如图6所示的网络架构,采用全局地址的节点X欲向私有EID的节点Y通信,节点X标识为EID1位置标识为RLOC1,并知道节点Y的域名Y。节点Y身份标识为pEID2,位置标识为RLOC2,两者都在映射服务器注册过域名、EID信息和RLOC绑定信息。节点X发起向节点Y的通信流程如下:
步骤A:终端X根据目的节点Y的域名向映射服务器查询目的节点Y的EID。自身使用全局EID因此ITR不做NAT转换绑定。映射服务器返回目的节点Y的信息绑定RLOC2-pEID2。ITR发现对端节点的EID为私有标识,则做分配一个映射的EID2绑定Y的信息RLOC2-pEID2,并回复节点X的DNS信息为Y-EID2;
步骤B:终端X根据目的节点Y的EID的信息,构建普通数据包;
步骤C:ITR查看数据包,源地址为全局地址不需要转换。目的EID为EID2,查询自己的EID-RLOC缓存列表,获知其为映射绑定信息,真实地址应为RLOC2的pEID1,所以将目的地址更换为Y的标识pEID1,然后加上RLOC1->RLOC2包头封装成身份和位置分离网络的数据包发送出去;
步骤D:出口路由器收到后解封装,将内层数据包按照EID标识pEID2发给终端Y。
实例三:
如图7所示的网络架构,使用私有地址的身份和位置分离网络中的节点X欲访问非身份和位置分离网络中的节点Y,X身份标识为pEID1,位置标识为RLOC1,Y使用合法的IP地址IP1。节点X知道Y的IP地址。在本实例中,由于通信对端采用IP地址,则终端不需要在发送包之前进行DNS查询。其通信的流程如下:
步骤A:节点X构造正常的身份和位置分离网络的报文,以Y的IP地址为目的EID,发送给ITR。
步骤B:ITR发现数据包源地址为私有EID,做NAT映射为EID1,并以目的节点的IP地址为EID查询其对应的RLOC地址,发现自己缓存列表中没有对应信息,则向映射服务器发起EID-RLOC查询。
步骤C:映射服务器以Y的IP地址为EID查询RLOC,发现没有记录,则回复ITR无映射记录。
步骤D:ITR将此数据包的源地址经NAT转换成映射的EID2标识,然以自己RLOC为源地址,边界代理路由器(PETR)的地址为目的地址封装并转发。
步骤E:PETR收到此数据包后解封装,能看到内层目的节点的IP地址,然后通过普通的路由方式发给目的节点Y。
反向流程类似,可以看成使用全局EID的节点发起向使用私有EID的节点通信的过程,区别为数据包进入身份和位置分离网络时先被路由到PITR,由PITR向映射服务器做DNS映射查询和NAT映射转换。
基于同一发明构思,本发明实施例还提供了一种入口隧道服务器、映射服务器及基于隧道的数据转发系统,由于这些设备和系统所解决问题的原理与前述基于隧道的数据转发方法相似,因此该设备和系统的实施可以参见前述方法的实施,重复之处不再赘述。
如图8所示,本发明实施例提供的一种入口隧道路由器,包括:
接收模块801,用于接收该入口隧道路由器所属子网中终端发送的数据包;
地址处理模块802,用于对接收模块801接收的数据包进行如下处理:当数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持源地址不变;以及当数据包的目的地址为ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成通信对端的私有地址;否则,保持目的地址不变;
封装模块803,用于将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
本发明实施例提供的路由器,如图8所示,还包括:发送模块804、存储模块805和分配模块806;其中:
上述接收模块801,还用于在接收终端发送的数据包之前,接收该终端发起的对通信对端域名的DNS查询请求;以及接收映射服务器根据自身保存的各终端的注册信息返回的查询结果;
发送模块804,用于将该DNS查询请求转发至映射服务器;以及当判断所保存的绑定信息中的身份标识是私有地址时,将分配模块806分配的映射标识返回至发送DNS查询请求的终端;以及当判断所保存的绑定信息中的身份标识是身份和位置分离网络的全局地址时,将存储模块805所保存的该通信对端域名对应的身份标识返回至发送DNS查询请求的终端;
存储模块805,用于存储查询结果中通信对端域名及对应的位置标识和身份标识的绑定信息;以及将分配模块分配806的映射标识与绑定信息绑定;
分配模块806,用于当判断所保存的绑定信息中的身份标识是私有地址时,分配一个所述子网中的映射标识。
较佳地,上述封装模块803,具体用于当经过处理后的数据包的目的地址为映射地址时,将入口隧道路由器的接口地址确定为封装的数据包外层的源地址;根据存储模块805保存的映射标识与终端的位置标识和身份标识的绑定关系,查询该映射地址对应的位置标识;将查询到的位置标识确定为数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
较佳地,上述封装模块803,具体用于经过处理后的数据包的目的地址为身份和位置分离网络的全局地址时,将入口隧道路由器的接口地址确定为封装的数据包外层的源地址;根据存储模块805保存的终端的位置标识和身份标识的绑定信息,查询该身份和位置分离网络的全局地址对应的位置标识,将查询到的位置标识确定为数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
较佳地,上述封装模块803,具体用于经过处理后的数据包的目的地址为IP地址时,将入口隧道路由器的接口地址确定为封装的数据包外层的源地址;将身份和位置分离网络的边界路由器的地址确定为封装的数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
本发明实施例提供的映射服务器,如图9所示,包括:
接收模块901,用于入口隧道路由器(ITR)发送的该ITR所属子网中终端对通信终端域名的DNS查询请求;
查询模块902,用于在存储模块903存储的各终端的注册信息中查询通信对端域名对应的位置标识和身份标识,将查询到的通信对端域名及对应的位置标识和身份标识的绑定信息返回至该ITR;
存储模块903,用于存储各终端的注册信息。
如图9所示,上述映射服务器,还包括:注册模块904,用于处理身份和位置分离网络中终端的注册请求;
存储模块903,进一步用于将终端在注册过程中发送的终端的域名、位置标识和身份标识绑定并保存;身份标识为私有地址或者身份和位置分离网络的全局地址。
本发明实施例提供的基于隧道的数据转发系统,如图10所示,包括:
终端1001,位于入口隧道路由器ITR所属子网中,用于向所述ITR发送数据包;
ITR 1002,用于对终端1001发送的数据包进行如下处理:当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;以及当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;并将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
进一步地,本发明实施例提供的基于隧道的数据转发系统,还包括:映射服务器1003;
终端1001,还用于在向ITR发送的数据包之前,通过ITR 1002向映射服务器1003发起对通信对端域名的DNS查询请求;
ITR 1002,进一步用于将DNS查询请求转发至映射服务器1003;以及接收映射服务器1003根据自身保存的各终端的注册信息返回的查询结果,并保存查询结果中通信对端域名及对应的位置标识和身份标识的绑定信息;以及当判断所保存的绑定信息中的身份标识是私有地址时,分配一个该子网中的映射标识,并将映射标识与绑定信息绑定;将分配的映射标识返回至发送DNS查询请求的终端1001;当判断所保存的绑定信息中的身份标识是身份和位置分离网络的全局地址时,将所保存的身份标识返回至发送DNS查询请求的终端1001;
映射服务器1003,用于在自身保存的各终端的注册信息中查询DNS查询请求中通信对端域名对应的位置标识和身份标识,将查询到的通信对端域名及对应的位置标识和身份标识的绑定信息返回至ITR 1002。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明实施例可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本发明实施例提供的基于隧道的数据转发方法、设备及系统,身份和位置分离网络中的终端可以采用私有地址或者全局地址,这样,当终端发起数据通信时,如果发起通信的终端采用私有地址,ITR对数据包进行源地址的私有地址转换,转换成全局地址,如果数据包的目的地址为ITR预先分配的映射地址,则意味着通信对端采用的是私有地址,则需要将映射地址再次转换成私有地址,这样,使得身份和位置分离网络不同子网内的终端可以采用的相同的私有地址成为可能,避免像现有技术那样,终端必须使用一对一的固定的EID,并且,本发明实施例提供的基于隧道的数据转发方法、设备及系统,仍然采用位置标识和身份标识的编址方法,可以很好地与现有身份和位置分离网络兼容,能够在广泛部署IPv4地址的网络中实现,使用范围广,减少了对身份和位置分离网络重新进行编制的需求,减少了网络部署的OpenX,达到节约EID标识资源的目的,并且由于各终端使用子网内的私有地址,对于外部网络来说其地址是被屏蔽的,可加大外部主机攻击的难度,相对提高了终端隐私的安全性。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (14)
1.一种基于隧道的数据转发方法,其特征在于,包括:
入口隧道路由器ITR接收自身所属子网中终端发送的数据包并进行如下处理:
当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;
当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;
将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
2.如权利要求1所述的方法,其特征在于,所述ITR在接收所述终端发送的数据包之前,还包括:
所述ITR接收所述终端发起的对通信对端域名的域名服务DNS查询请求,并将所述DNS查询请求转发至映射服务器;
所述ITR接收映射服务器根据自身保存的各终端的注册信息返回的查询结果,并保存所述查询结果中所述通信对端域名及对应的位置标识和身份标识的绑定信息;
当所述ITR判断所保存的绑定信息中的身份标识是私有地址时,分配一个所述子网中的映射标识,并将所述映射标识与所述绑定信息绑定,将分配的映射标识返回至发送DNS查询请求的所述终端;
当所述ITR判断所保存的绑定信息中的身份标识是身份和位置分离网络的全局地址时,将所保存的身份标识返回至发送DNS查询请求的所述终端。
3.如权利要求2所述的方法,其特征在于,所述经过处理后的数据包的目的地址为映射地址;
所述将经过处理的数据包进行封装,具体包括:
所述ITR将自身的接口地址确定为封装的数据包外层的源地址;
所述ITR根据本地保存的映射标识与终端的位置标识和身份标识的绑定关系,查询该映射地址对应的位置标识;将查询到的位置标识确定为数据包外层的目的地址;
所述ITR根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
4.如权利要求2所述的方法,其特征在于,所述经过处理后的数据包的目的地址为身份和位置分离网络的全局地址;
所述将经过处理的数据包进行封装,具体包括:
所述ITR将自身的接口地址确定为封装的数据包外层的源地址;
所述ITR根据本地保存的终端的位置标识和身份标识的绑定信息,查询该身份和位置分离网络的全局地址对应的位置标识,将查询到的位置标识确定为数据包外层的目的地址;
所述ITR根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
5.如权利要求1所述的方法,其特征在于,所述经过处理后的数据包的目的地址为IP地址;
所述将经过处理的数据包进行封装,具体包括:
所述ITR将自身的接口地址确定为封装的数据包外层的源地址;
将所述身份和位置分离网络的边界路由器的地址确定为封装的数据包外层的目的地址地址;
根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
6.一种入口隧道路由器,其特征在于,包括:
接收模块,用于接收所述入口隧道路由器所属子网中终端发送的数据包;
地址处理模块,用于对接收模块接收的数据包进行如下处理:当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;以及当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;
封装模块,用于将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
7.如权利要求6所述的路由器,其特征在于,还包括:发送模块、存储模块和分配模块;
所述接收模块,还用于在接收所述终端发送的数据包之前,接收所述终端发起的对通信对端域名的DNS查询请求;以及接收映射服务器根据自身保存的各终端的注册信息返回的查询结果;
所述发送模块,用于将所述DNS查询请求转发至映射服务器;以及当判断所保存的绑定信息中的身份标识是私有地址时,将分配模块分配的映射标识返回至发送DNS查询请求的所述终端;以及当判断所保存的绑定信息中的身份标识是身份和位置分离网络的全局地址时,将存储模块所保存的该通信对端域名对应的身份标识返回至发送DNS查询请求的所述终端;
所述存储模块,用于存储所述查询结果中所述通信对端域名及对应的位置标识和身份标识的绑定信息;以及将所述分配模块分配的映射标识与所述绑定信息绑定;
所述分配模块,用于当判断所保存的绑定信息中的身份标识是私有地址时,分配一个所述子网中的映射标识。
8.如权利要求7所述的路由器,其特征在于,所述封装模块,具体用于当经过处理后的数据包的目的地址为映射地址时,将所述入口隧道路由器的接口地址确定为封装的数据包外层的源地址;根据所述存储模块保存的映射标识与终端的位置标识和身份标识的绑定关系,查询该映射地址对应的位置标识;将查询到的位置标识确定为数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
9.如权利要求7所述的路由器,其特征在于,所述封装模块,具体用于经过处理后的数据包的目的地址为身份和位置分离网络的全局地址时,将所述入口隧道路由器的接口地址确定为封装的数据包外层的源地址;根据所述存储模块保存的终端的位置标识和身份标识的绑定信息,查询该身份和位置分离网络的全局地址对应的位置标识,将查询到的位置标识确定为数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
10.如权利要求6所述的路由器,其特征在于,所述封装模块,具体用于经过处理后的数据包的目的地址为IP地址时,将所述入口隧道路由器的接口地址确定为封装的数据包外层的源地址;将所述身份和位置分离网络的边界路由器的地址确定为封装的数据包外层的目的地址;根据确定出的数据包外层的源地址和目的地址对接收的数据包进行封装。
11.一种映射服务器,其特征在于,包括:
接收模块,用于入口隧道路由器ITR发送的所述ITR所属子网中终端对通信终端域名的域名服务DNS查询请求;
查询模块,用于在存储模块存储的各终端的注册信息中查询所述通信对端域名对应的位置标识和身份标识,将查询到的所述通信对端域名及对应的位置标识和身份标识的绑定信息返回至所述ITR;
存储模块,用于存储各终端的注册信息。
12.如权利要求11所述的映射服务器,其特征在于,还包括:注册模块,用于处理身份和位置分离网络中终端的注册请求;
所述存储模块,进一步用于将终端在注册过程中发送的终端的域名、位置标识和身份标识绑定并保存;所述身份标识为私有地址或者身份和位置分离网络的全局地址。
13.一种基于隧道的数据转发系统,其特征在于,包括:
终端,位于入口隧道路由器ITR所属子网中,用于向所述ITR发送数据包;
ITR,用于对终端发送的数据包进行如下处理:当所述数据包的源地址为该子网的私有地址时,将其转换成身份和位置分离网络的全局地址;否则,保持所述源地址不变;以及当所述数据包的目的地址为所述ITR预先分配的该子网内的映射地址时,根据本地保存的该映射地址与通信对端私有地址的绑定信息,将其转换成所述通信对端的私有地址;否则,保持所述目的地址不变;并将经过处理的数据包进行封装,将封装后的数据包通过隧道发送。
14.如权利要求13所述的系统,其特征在于,还包括:映射服务器;
所述终端,还用于在向所述ITR发送的数据包之前,通过所述ITR向所述映射服务器发起对通信对端域名的域名服务DNS查询请求;
所述ITR,进一步用于将所述DNS查询请求转发至映射服务器;以及接收映射服务器根据自身保存的各终端的注册信息返回的查询结果,并保存所述查询结果中所述通信对端域名及对应的位置标识和身份标识的绑定信息;以及当判断所保存的绑定信息中的身份标识是私有地址时,分配一个所述子网中的映射标识,并将所述映射标识与所述绑定信息绑定;将分配的映射标识返回至发送DNS查询请求的所述终端;当判断所保存的绑定信息中的身份标识是身份和位置分离网络的全局地址时,将所保存的身份标识返回至发送DNS查询请求的所述终端;
所述映射服务器,用于在自身保存的各终端的注册信息中查询所述DNS查询请求中所述通信对端域名对应的位置标识和身份标识,将查询到的所述通信对端域名及对应的位置标识和身份标识的绑定信息返回至所述ITR。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110421691.9A CN103167483B (zh) | 2011-12-15 | 2011-12-15 | 一种基于隧道的数据转发方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110421691.9A CN103167483B (zh) | 2011-12-15 | 2011-12-15 | 一种基于隧道的数据转发方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103167483A true CN103167483A (zh) | 2013-06-19 |
CN103167483B CN103167483B (zh) | 2016-02-24 |
Family
ID=48590141
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110421691.9A Active CN103167483B (zh) | 2011-12-15 | 2011-12-15 | 一种基于隧道的数据转发方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103167483B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109996307A (zh) * | 2017-12-29 | 2019-07-09 | 华为技术有限公司 | 一种数据路由方法以及终端 |
CN110213069A (zh) * | 2018-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据转发方法、装置、容灾系统及存储介质 |
CN111342987A (zh) * | 2018-12-19 | 2020-06-26 | 广州五壹工程师信息技术有限公司 | 一种通过手机远程调试局域网设备的方法 |
CN113285894A (zh) * | 2021-04-26 | 2021-08-20 | 之江实验室 | 基于可编程交换机的身份标识网络移动性控制方法及系统 |
CN113873503A (zh) * | 2021-11-08 | 2021-12-31 | 深圳市共进电子股份有限公司 | 网关桥接连网方法、装置及路由器 |
WO2022134970A1 (zh) * | 2020-12-21 | 2022-06-30 | 中兴通讯股份有限公司 | 位置信息转换方法、网关、控制器、终端、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104634A (zh) * | 2009-12-17 | 2011-06-22 | 华为技术有限公司 | 非lisp站点与lisp站点通信的方法、装置及系统 |
CN102170386A (zh) * | 2010-02-26 | 2011-08-31 | 中兴通讯股份有限公司 | 身份标识与位置分离的实现方法、系统及数据封装方法 |
CN102238058A (zh) * | 2010-04-20 | 2011-11-09 | 中兴通讯股份有限公司 | 数据报文处理方法、入口隧道路由器及系统 |
-
2011
- 2011-12-15 CN CN201110421691.9A patent/CN103167483B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102104634A (zh) * | 2009-12-17 | 2011-06-22 | 华为技术有限公司 | 非lisp站点与lisp站点通信的方法、装置及系统 |
CN102170386A (zh) * | 2010-02-26 | 2011-08-31 | 中兴通讯股份有限公司 | 身份标识与位置分离的实现方法、系统及数据封装方法 |
CN102238058A (zh) * | 2010-04-20 | 2011-11-09 | 中兴通讯股份有限公司 | 数据报文处理方法、入口隧道路由器及系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109996307A (zh) * | 2017-12-29 | 2019-07-09 | 华为技术有限公司 | 一种数据路由方法以及终端 |
CN109996307B (zh) * | 2017-12-29 | 2021-06-01 | 华为技术有限公司 | 一种数据路由方法以及终端 |
US11405844B2 (en) | 2017-12-29 | 2022-08-02 | Huawei Technologies Co., Ltd. | Data routing method and terminal |
CN110213069A (zh) * | 2018-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据转发方法、装置、容灾系统及存储介质 |
CN111342987A (zh) * | 2018-12-19 | 2020-06-26 | 广州五壹工程师信息技术有限公司 | 一种通过手机远程调试局域网设备的方法 |
WO2022134970A1 (zh) * | 2020-12-21 | 2022-06-30 | 中兴通讯股份有限公司 | 位置信息转换方法、网关、控制器、终端、设备及介质 |
CN113285894A (zh) * | 2021-04-26 | 2021-08-20 | 之江实验室 | 基于可编程交换机的身份标识网络移动性控制方法及系统 |
CN113873503A (zh) * | 2021-11-08 | 2021-12-31 | 深圳市共进电子股份有限公司 | 网关桥接连网方法、装置及路由器 |
CN113873503B (zh) * | 2021-11-08 | 2023-12-15 | 深圳市共进电子股份有限公司 | 网关桥接连网方法、装置及路由器 |
Also Published As
Publication number | Publication date |
---|---|
CN103167483B (zh) | 2016-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100534087C (zh) | 利用双协议栈将IPv4转换为IPv6的设备及其方法 | |
CN103167483B (zh) | 一种基于隧道的数据转发方法、设备及系统 | |
CN102347993B (zh) | 一种网络通信的方法和设备 | |
CN102457586B (zh) | 一种实现二层网络的扩展方法及扩展的二层网络 | |
US20130182651A1 (en) | Virtual Private Network Client Internet Protocol Conflict Detection | |
CN102209121A (zh) | IPv6网络和IPv4网络之间互通的方法和装置 | |
WO2003021866A2 (en) | Point-to-point protocol over ethernet for mobile platforms | |
CN102238058B (zh) | 数据报文处理方法、入口隧道路由器及系统 | |
CN102238059B (zh) | 数据报文处理方法、系统及接入服务节点 | |
CN1875654A (zh) | 包括两个网络的电信系统 | |
CN103701950A (zh) | 一种ip地址的分配方法及装置 | |
CN102571999B (zh) | 一种数据传输方法、系统及接入网关 | |
CN102025600A (zh) | 一种数据传输、接收的方法及系统及路由器 | |
CN102394947A (zh) | IPv4与IPv6的地址翻译方法、装置、系统及ALG设备 | |
CN101754318B (zh) | 一种旁路数据的传输方法、系统及接入点网络设备 | |
CN102970387A (zh) | 一种域名解析方法、装置及系统 | |
CN102447747A (zh) | 一种与私有网络的交互方法、装置及系统 | |
EP2983337B1 (en) | Method and system for facilitating the establishment of a virtual private network in a cellular communication network | |
US9705794B2 (en) | Discovery of network address allocations and translations in wireless communication systems | |
CN102571592B (zh) | 具有端口绑定功能的三层交换设备和数据报文转发方法 | |
CN102984697B (zh) | 基于移动终端的ip通信方法、设备和系统 | |
CN101938531A (zh) | 一种IPv4网络与IPv6网络通信的方法、系统及装置 | |
US9667592B2 (en) | Efficient utilization of internet protocol addresses | |
CN102957755A (zh) | 一种地址解析方法、装置及信息传输方法 | |
CN102439918A (zh) | 一种报文转发的方法、设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |