专利名称:Ip报文的发送方法及边界隧道路由器的制作方法
技术领域:
本发明涉及通信领域,具体而言,涉及一种IP报文的发送方法及边界隧道路由器。
背景技术:
用户多穴性又称为多归属(multi-homing),是指用户通过接入多个运营商网络, 在多个运营商之间实现负载均衡和网络的流量分担,在一个运营网络出现故障的情况下, 能够将流量快速切换到另外一个运营网络,从而提高用户网络的可靠性和健壮性。随着网 络的发展,用户对网络的可靠性,安全性的要求越来越高,这种用户多穴性的网络部署越来 越多。图1是根据相关技术的用户多穴性的网络组网部署示意图。如图1所示,网络站点(sitel)通过互联网服务提供商l(InternetService Provider 1,简称为ISP1)接入到网络,边界路由器为路由器RT1,为了提高该站点网络 的可靠性,网络站点又通过互联网服务提供商2anternet Service Provider 2,简称为 ISP2)接入到互联网(Internet),这样当ISPl出现故障的时候,网络站点还可以通过ISP2 与其他网络中的设备通信,从而提高网络站点中用户的可靠性。但是,在相关技术中,这种多穴性的网络部署同时存在网络核心部分路由器规模 过大,部署复杂凌乱的问题,由图1所示,假设网络站点的通过ISPI接入到网络,ISP 1给 网络站点分配的为可聚合的路由前缀192. 168. 1. 0/24,该路由前缀在网站站点向ISPl通 告的时候,ISPl会将该路由前缀进行聚合,假设聚合为192. 168. 0. 0/16,这样ISPl向互联 网(Internet)通告的时候,只需要通告聚合路由前缀192. 168. 0. 0/16,而在ISPl上保存有 到网站站点(sitel)的明细路由前缀192. 168. 1. 0/24即可,而对于互联网(Internet), K 保存有路由前缀192. 168.0.0/16。当网络站点通过多穴接入网络时,需要通过第二个ISP, 即ISP2接入互联网anternet),此时网络站点中的路由地址不会改变,此时网络站点还需 要向ISP2通告路由前缀192. 168. 1.0/24,对于ISP2来说,路由前缀192. 168. 1. 0/ 是不 可聚合的,这样明细路由前缀192. 168. 1.0/24会通过ISP2通告到互联网(Internet)中, 增加了互联网(Internet)中路由表的大小,而且这种多穴性应用使IP地址的分配更加无 规划,更加凌乱。针对相关技术中在多穴性系统中往往由于路由表的问题不能够对IP报文进行正 常发送的问题,目前尚未提出有效的解决方案。
发明内容
针对在多穴性系统中往往由于路由表的问题不能够对IP报文进行正常发送的问 题而提出本发明,为此,本发明的主要目的在于提供一种IP报文的发送方法及边界隧道路 由器,以解决上述问题至少之一。为了实现上述目的,根据本发明的一个方面,提供了一种IP报文的发送方法。
根据本发明的IP报文的发送方法,用于多穴性网络,该方法包括边界隧道路由 器接收IP报文,其中,IP报文的IP地址用终端标识EID地址表示;边界隧道路由器在IP 报文外层封装IP报文头,其中,IP报文头的IP地址用路由位置RLOC地址表示;边界隧道 路由器发送封装后的IP报文。优选地,EID地址或者EID前缀与RLOC地址为一对多的关系。优选地,边界隧道路由器通过RLOC地址对封装后的IP报文进行发送包括边界隧 道路由器选择RLOC地址中最优的RLOC地址发送封装后的IP报文。优选地,边界隧道路由器选择RLOC地址中最优的RLOC地址发送封装后的IP报文 包括边界隧道路由器比较RLOC地址的优先级,并选择优先级最高的RLOC地址作为IP报 文头的源IP地址。优选地,边界隧道路由器选择RLOC地址中最优的RLOC地址发送封装后的IP报文 包括边界隧道路由器选择RLOC地址中权值最优的RLOC地址对封装后的IP报文进行发送。优选地,边界隧道路由器发送封装后的IP报文包括在IP报文的发送过程中,当 一条路径发送故障时,边界隧道路由器将路径的流量全部切换到其他的路径。优选地,边界隧道路由器在IP报文外层封装IP报文头包括EID地址和RLOC地 址的映射关系存储于映射系统中,其中,映射系统由分布式映射表服务器组成。优选地,边界隧道路由器包括入口边界隧道路由器和出口边界隧道路由器,其 中,入口边界隧道路由器存储EID地址和RLOC地址的映射关系;出口边界隧道路由器对IP 报文进行解封装。为了实现上述目的,根据本发明的另一方面,提供了一种边界隧道路由器。根据本发明的界隧道路由器包括接收模块,用于接收IP报文,其中,IP报文的IP 地址用终端标识EID地址表示;封装模块,用于在IP报文外层封装IP报文头,其中,IP报 文头的IP地址用路由位置RLOC地址表示;发送模块,用于发送封装后的IP报文。优选地,上述边界隧道路由器还包括选择模块,用于选择RLOC地址中优先级和/ 或权值最优的RLOC地址。通过本发明,采用边界隧道路由器接收IP报文,其中,IP报文的IP地址用终端标 识EID地址表示;边界隧道路由器在IP报文外层封装IP报文头,其中,IP报文头的IP地 址用路由位置RLOC地址表示;边界隧道路由器发送封装后的IP报文,解决了在多穴性系统 中往往由于路由表的问题不能够对IP报文进行正常发送的问题,进而达到了提高多穴性 网络可靠性和健壮性的效果。
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据相关技术的用户多穴性的网络组网部署的示意图;图2是根据本发明实施例的用户多穴性的网络组网部署的示意图;图3是根据本发明实施例的基于身份标识及位置分离的方法的流程图;图4是根据本发明实施例的用户多穴性网络系统实现过程的示意4
图5是根据本发明实施例的映射系统的示意图;图6是根据本发明实施例的基于身份标识与位置分离的用户多穴性网络的数据 转发和流量切换流程图;图7是根据本发明实施例的边界隧道路由器的示意图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例中的特征可以相互组合。图2是根据本发明实施例的用户多穴性的网络组网部署示意图。如图2所示,站点网络同时通过ISPl和ISP2接入到互联网Qnternet),其中通 过ISPl接入网络时,ISP分配的RLOC地址为RL0C1,ISP2分配的RLOC地址为RL0C2,在边 界隧道路由器ITR上存储有EID前缀对应的RLOC和EID前缀的对应关系,且优先级分别为 priorityl和priority2,优先级数值越小,优先级越高,当priority为255时,RLOC对应 的路径不能进行单播转发。当两个RLOC地址的priority值相同时,数据流量根据EID和 RLOC地址对应关系的权值(weight)进行流量的分配,假定RLOCl对应的权值为weightl, RL0C2对应的权值为wight2。在正常情况下,一般两个RLOC地址的优先级相同,而流量根 据用户的需要进行相应的权值的分配,以实现用户流量在两条路径上的流量分担。当某条 网络出现故障时,ITR将该路径对应的RLOC地址的优先级设为最大值255,将流量切换到其 他的路径上,实现多穴性网络的流量切换。根据本发明的实施例,提供了一种IP报文的发送方法。图3是根据本发明实施例的基于身份标识及位置分离的方法流程图。如图3所示,该方法包括如下的步骤S302至步骤S306 步骤S302,边界隧道路由器接收IP报文,其中,IP报文的IP地址用终端标识EID 地址表示;步骤S304,边界隧道路由器在IP报文外层封装IP报文头,其中,IP报文头的IP 地址用路由位置RLOC地址表示;步骤S306,边界隧道路由器发送封装后的所述IP报文。在本发明中,将IP分为用户网络的终端标识(Endpointldentifiers,简称为EID) 和核心网络的路由位置(Routing Locator,简称为RL0C),在用户网络和核心网络边界设置 边界路由器,负责数据报文的封装和解封装,以及映射关系的注册、查找、更新等操作,同时 构建一个映射系统,负责存储和更新终端标识与路由位置之间的映射关系。图4是根据本发明实施例的用户多穴性网络系统实现过程示意图。如图4所示,该方法包括以下3部分用户和网络地址的分配和规划S41、EID和 RLOC地址映射关系的注册和更新S43、基于身份标识与位置分离网络的用户多穴性的数据 转发流程S45。1、用户和网络地址的分配和规划S41 基于身份标识与位置分离的技术将网络分 为用户网络和核心网络,用户网络中的主机分配为EID地址,该地址采用IP地址的形式,可 以为IPv4地址,也可以为IPv6地址,该地址在用户网络中有效。核心网络的设备(路由器 设备)分配RLOC地址,该地址用于用户报文在网络中的转发。RLOC地址可以是IPv4地址,也可以是IPv6地址。2,EID和RLOC地址映射关系的注册和更新S43 =EID和RLOC地址的映射关系存储 于映射系统。图5是根据本发明实施例的映射系统示意图。如图5所示,映射系统由分布式哈希表(Distributed Hash Table,简称为DHT)服 务器组成(该服务器可以为路由器,也可以为专用的服务器),DHT服务器组成环状,EID和 RLOC的映射关系通过DHT算法存储于DHT服务器上。当出口隧道路由器(ETR)上有新的EID前缀信息时,向映射系统发送 Map-Register消息,该消息中携带有EID前缀信息和对应的RLOC地址信息,映射系统收到 该注册消息后,根据DHT算法将该映射关系存储于特定的DHT服务器上。本发明中的网络 为用户多穴性网络,因此对于站点EID前缀对应有两个或者两个以上的RLOC地址,因此,本 发明的映射请求(Map-Register)中会携带有EID前缀信息和对应的多个RLOC地址信息。当ITR上收到用户数据时,向映射系统发送Map-Reuqest消息,请求EID对应的 RLOC消息,DHT服务器收到该映射请求消息后,根据DHT算法查找到存储该EID前缀信息的 DHT服务器,由该映射服务器向ITR响应Map-R印Iy消息,Map-R印Iy消息中携带有EID前 缀对应的RLOC地址信息。ITR收到该Map-R印Iy消息后,将对应关系存储在本地的缓存中。 这样,在ITR本地缓存中,也保存有部分映射关系,ITR本地缓存映射关系表见表1。在多穴 性网络中,Map-Reply消息中会携带有EID前缀和对应的多条RLOC信息,并包含每条RLOC 地址信息的优先级(priority)和权值(weight)。表1是根据本发明实施例的ITR本地缓存映射关系表。表 1
终端标识 地址路由位置1优先级1 80权值1 55TTLl路由位置2优先级2 80权值2 45TTL23、基于身份标识与位置分离网络的用户多穴性的数据转发流程S41,详细流程如 图6所示。图6是根据本发明实施例的基于身份标识与位置分离的用户多穴性网络的数据 转发和流量切换流程示意图。如图6所示,该方法的步骤如下步骤S601,用户主机 A(hostA)的 EID 为 EIDa,用户主机 B (hostB)的 EID 为 EIDb, 主机A通过多穴接入网络,主机A的EID对应两个RLOC地址,分别为RLOCl和RL0C2,两个 RLOC地址的优先级分别为priorityl和priority2,权值为weightl和weight2。主机A发 起与主机B的通信,主机A向主机B发送IP报文,报文的目的地址为主机B的EID地址为 EIDb,源地址为主机A的EID地址为EIDa。步骤S602,主机A所在的网络中边界隧道路由器ITR收到该数据报文后,进行数据 报文的封装,在源报文外层再加上一层IP报文头。步骤S603,内层报文的源和目的IP地址用EID地址表示,外层报文的源和目的IP
6地址用RLOC地址表示。在本地缓存查找主机B的EIDb对应的RLOC地址,得到RLOCb,如果 在本地缓存中没有查找到EIDb对应的RLOC地址,则需要由上文介绍的发送Map-Request 消息进行映射请求得到EIDb的RLOC地址。步骤S604,查找主机A的EID对应的RLOC地址,由于主机A所在的网络采用多穴 网络组网,因此主机A有两个RLOC地址,分别为RLOCl和RL0C2。比较RLOC地址对应的优 先级,选择优先级数值小的RLOC地址(即优先级高)作为外层报文的源IP地址。步骤S605,可选地,在多穴网络中,两个RLOC地址的优先级相同,此时,需要对用 户数据流量进行流量分配。根据RLOC地址的权值进行流量分配。步骤S606,将封装好的数据报文根据流量分配的结果发送到网络。报文在网络中 发送的时候只需要交换外层报文的RLOC地址。内层EID地址在传递过程中保持不变。步骤S607,数据报文到达对端网络的出口隧道路由器(ETR)设备后,在ETR上进行 解封装。步骤S608,报文解封装后剥离外层数据报文头,转发内层报文到主机B。在本发明中,当ITR检测到某条路径出现故障时,数据流量的切换过程如下Si、当ITR检测到某条路径出现故障时,如检测到RLOCl所在的链路出现故障,ITR 将本地保存的EID和RLOCl映射关系的优先级的值更改为255,表示该路径不可达。并向映 射系统发送该更新消息S2、映射系统收到了该更新消息后,在对应的DHT映射服务器上存储该映射关系 的优先级的值更改为255。S3、当用户发送数据到ITR时,由于EID和RLOCl映射关系的优先级为不可达,此 时,将RLOC路径上的流量全部切换到RL0C2所在的路径。通过该本发明,实现了用户数据流量的多穴性网络中的流量切换,提高了站点用 户网络的可靠性和健壮性。在本发明中提出了一种新的网络地址规划方式,该网络地址规划方式将IP地址 分为用户网络的终端标识和核心网络的路由位置,终端标识用于标识主机的身份,主机发 送的数据报文的地址为EID地址。数据报文在网络中的传递依赖于路由位置(RLOC)信息, 根据查找RLOC路由表进行报文的转发。优选地,EID前缀和RLOC地址采用一对多的映射,每个RLOC地址对应一条发送路 径,同时,构建一个映射系统,负责存储和更新EID前缀和RLOC之间的映射关系。在网络站 点本地,该映射关系存储于入口隧道路由器(ITR)上。从而,在本发明中,当一条路径发生 故障时,可以将该路径的流量全部切换到其他路径上。优选地,EID前缀对应多个RLOC地址,RLOC地址根据优先级和/或权值选择最优 的RLOC地址,实现用户流量在多条路径的流量分担和负载保护。从而,在本发明中,能够始 终按照最优的路径发送报文。优选地,EID前缀和RLOC的映射关系存储于映射系统,该映射系统由DHT服务器 组成,通过DHT算法进行映射关系的查找和更新。优选地,上述的边界隧道路由器包括入口隧道路由器,EID前缀和RLOC的映射关 系在本地存储于入口隧道路由器(ITR),由ITR负责EID前缀向映射系统发起注册、查找和 更新操作。同时ITR还负责用户数据的封装和解封装操作。
优选地,在基于身份标识与位置分离技术的网络中,由于EID和RLOC地址采用不 同的编址空间,可以将用户空间的EID地址和网络空间的RLOC地址隔离。从以上的描述中,可以看出,本发明实现了如下技术效果本发明在实现用户多穴 的时候,不会增加RLOC控制的路由条目,从根本上解决了由于部署用户多穴性网络带来的 路由表规模过大的问题。进而实现了用户数据流量的多穴性网络中的流量切换,提高了站 点用户网络的可靠性和健壮性。根据本发明的实施例,提供了 一种边界隧道路由器。图7是根据本发明实施例的边界隧道路由器示意图。如图7所示,该边界隧道路由器包括接收模块701、封装模块703和发送模块 705。其中,接收模块701,用于接收IP报文,其中,IP报文的IP地址用终端标识EID地 址表示;封装模块703用于在IP报文外层封装IP报文头,其中,IP报文头的IP地址用路 由位置RLOC地址表示;发送模块705用于发送封装后的IP报文。优选地,该边界隧道路由器还包括选择模块706。选择模块706用于选择RLOC地址中优先级和/或权值最优的RLOC地址。需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的 计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不 同于此处的顺序执行所示出或描述的步骤。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储 在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们 中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的 硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种IP报文的发送方法,用于多穴性网络,其特征在于,包括边界隧道路由器接收IP报文,其中,所述IP报文的IP地址用终端标识EID地址表示; 所述边界隧道路由器在所述IP报文外层封装IP报文头,其中,所述IP报文头的IP地 址用路由位置RLOC地址表示;所述边界隧道路由器发送封装后的所述IP报文。
2.根据权利要求1所述的方法,其特征在于,所述EID地址或者EID前缀与所述RLOC 地址为一对多的关系。
3.根据权利要求2所述的方法,其特征在于,所述边界隧道路由器通过所述RLOC地址 对封装后的IP报文进行发送包括所述边界隧道路由器选择所述RLOC地址中最优的RLOC地址发送封装后的所述IP报文。
4.根据权利要求3所述的方法,其特征在于,所述边界隧道路由器选择所述RLOC地址 中最优的RLOC地址发送封装后的所述IP报文包括所述边界隧道路由器比较所述RLOC地址的优先级,并选择优先级最高的RLOC地址作 为所述IP报文头的源IP地址。
5.根据权利要求3所述的方法,其特征在于,所述边界隧道路由器选择所述RLOC地址 中最优的RLOC地址发送封装后的所述IP报文包括所述边界隧道路由器选择所述RLOC地址中权值最优的RLOC地址对封装后的所述IP 报文进行发送。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述边界隧道路由器发送封 装后的所述IP报文包括 在所述IP报文的发送过程中,当一条路径发送故障时,所述边界隧道路由器将所述路 径的流量全部切换到其他的路径。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述边界隧道路由器在所述 IP报文外层封装IP报文头包括所述EID地址和所述RLOC地址的映射关系存储于映射系统中,其中,所述映射系统由 分布式映射表服务器组成。
8.根据权利要求1至5中任一项所述的方法,其特征在于,所述边界隧道路由器包括 入口边界隧道路由器和出口边界隧道路由器,其中,所述入口边界隧道路由器存储所述EID地址和所述RLOC地址的映射关系; 所述出口边界隧道路由器对所述IP报文进行解封装。
9.一种边界隧道路由器,其特征在于,包括接收模块,用于接收IP报文,其中,所述IP报文的IP地址用终端标识EID地址表示; 封装模块,用于在所述IP报文外层封装IP报文头,其中,所述IP报文头的IP地址用 路由位置RLOC地址表示;发送模块,用于发送封装后的所述IP报文。
10.根据权利要求9所述的边界隧道路由器,其特征在于,所述边界隧道路由器还包括选择模块,用于选择所述RLOC地址中优先级和/或权值最优的RLOC地址。
全文摘要
本发明公开了一种IP报文的发送方法及边界隧道路由器,其中,该方法包括边界隧道路由器接收IP报文,其中,IP报文的IP地址用终端标识EID地址表示;边界隧道路由器在IP报文外层封装IP报文头,其中,IP报文头的IP地址用路由位置RLOC地址表示;边界隧道路由器发送封装后的IP报文。通过本发明,能够提高多穴性网络可靠性和健壮性。
文档编号H04L12/56GK102088448SQ200910246250
公开日2011年6月8日 申请日期2009年12月2日 优先权日2009年12月2日
发明者胡方伟 申请人:中兴通讯股份有限公司