路由信息发布方法、实现数据包路由的方法、系统和装置转让专利

申请号 : CN200710123476.4

文献号 : CN101335697B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐小虎

申请人 : 华为技术有限公司

摘要 :

本发明实施例公开了路由信息发布方法、实现数据包路由的方法、系统和装置,所述路由信息发布方法包括:发布路由信息的设备获取自身地址信息;所述发布路由信息的设备将所述自身地址信息添加到需要发布的路由信息中;所述发布路由信息的设备将携带有所述自身地址信息的聚合路由前缀信息发布出去。采用本发明实施例所提供的方案,能够极大减少了路由表数量,避免了路由器成本的上升问题,并能够有效克服路由收敛速度降低的问题。此外,通过本发明实施例所提供的路由信息发布方法,能够使得骨干网络中的路由器可以动态获得发布聚合前缀的核心路由器的地址信息,从而可以方便地实现更详细路由前缀到边界路由器的映射信息的注册、更新和查询。

权利要求 :

1.一种路由信息发布方法,其特征在于,该方法包括:

发布路由信息的设备获取自身地址信息;

所述发布路由信息的设备将所述自身地址信息添加到需要发布的路由信息中;

所述发布路由信息的设备将携带有所述自身地址信息的路由信息发布出去;

收到所述路由信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据该路由信息中所携带的发布路由信息设备的自身地址信息,向所述发布路由信息设备发送映射关系注册报文,所述发布路由信息的设备保存该报文中所携带的映射关系;其中,所述映射关系为所述的更详细地址前缀与所述边界路由器自身地址的映射关系。

2.根据权利要求1所述的方法,其特征在于,所述发布路由信息的设备将所述自身地址信息添加到需要发布的路由信息中的具体实现为:将所述自身地址信息添加到所需发布的路由信息中设置的路由始发者属性字段中。

3.根据权利要求2所述的方法,其特征在于,在采用IPv4路由协议时,所述属性字段为一个32bit长度的字段;在采用IPv6路由协议时,所述属性字段为一个128bit长度的字段。

4.根据权利要求1~3任意一项所述的方法,其特征在于,该方法进一步包括:边界路由器根据收到的发布路由信息的设备的所述地址信息,向该发布路由信息的设备发送映射关系更新报文,所述发布路由信息的设备收到更新报文后完成映射关系的更新;和/或,边界路由器根据收到的发布路由信息的设备的所述地址信息,向该发布路由信息的设备发送映射关系查询报文,所述发布路由信息的设备根据该报文查询相应的映射关系并返回给所述边界路由器。

5.一种实现数据包路由的方法,其特征在于,骨干网中核心路由器发布携带有自身地址信息的路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上,该方法包括:路由器根据自身的路由表对数据包进行寻址转发;

当路由器根据所述核心路由器发布的聚合前缀路由信息,将数据包转发至所述核心路由器时,所述核心路由器根据其上注册的地址前缀与边界路由器地址信息的映射关系,查找与数据包目的地址匹配的最佳路由,其中,所述最佳路由为与目的地址最长匹配的路由;

根据查找到的最佳路由,将数据包通过目的地为相应的边界路由器的隧道转发至相应的边界路由器。

6.根据权利要求5所述的方法,其特征在于,所述边界路由器收到所述的数据包之后,进一步包括:所述边界路由器将收到的数据包继续寻址转发,直至到达目的主机。

7.一种实现数据包路由的系统,其特征在于,该系统包括核心路由器和边界路由器,其中:所述核心路由器用于:

在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;

保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;以及,当数据包被转发至该核心路由器时,根据所述映射关系,查找与数据包目的地址相对应的详细地址前缀的信息,并根据该详细地址前缀的映射关系中的对应边界路由器地址信息,将数据包通过目的地为相应边界路由器的隧道转发出去;

所述边界路由器用于:

如果其连接的边缘网络中包含有核心路由器发布的聚合前缀路由所覆盖的更详细地址前缀,则将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上;

以及根据接收到的数据包的目的地址,进行寻址转发。

8.一种实现数据包路由的方法,其特征在于,骨干网中核心路由器发布携带有自身地址信息的聚合前缀路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器,该方法包括:边界路由器对于需要转发的数据包,查找与该数据包目的地址最佳匹配路由如果最佳匹配的路由是所述聚合前缀路由,则根据所收到的所述核心路由器自身的地址信息,向发布该聚合前缀路由的所述核心路由器请求与该数据包目的地址最长匹配的地址前缀的对应边界路由器信息;

所述核心路由器查找与所述数据包转发目的地址最长匹配的地址前缀,并根据所述映射关系,将该地址前缀对应的边界路由器地址信息返回给发起请求的所述边界路由器;

发起请求的所述边界路由器收到所述地址信息之后,将数据包通过目的地为该地址信息中所指的边界路由器的隧道转发出去。

9.根据权利要求8所述的方法,其特征在于,所述地址信息中所指的边界路由器收到转发的数据包之后,进一步包括:所述地址信息中所指的边界路由器将收到的数据包继续寻址转发,直至到达目的主机。

10.一种实现数据包路由的系统,其特征在于,该系统包括核心路由器、入口隧道边界路由器和出口隧道边界路由器,所述入口隧道边界路由器为发起请求的边界路由器,所述出口隧道边界路由器为响应信息中所指的边界路由器;其中:所述核心路由器用于:

在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;

保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是该核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;

收到入口隧道边界路由器所发送的映射关系请求报文,该报文请求与指定的目的地址最长匹配的地址前缀的对应边界路由器地址信息,所述核心路由器查找与所述目的地址最长匹配的地址前缀,并根据保存的所述映射关系,确定该地址前缀对应的边界路由器地址信息并返回给发起请求的所述入口隧道边界路由器;

所述入口隧道边界路由器用于:

收到目的地址对应的最佳匹配路由是聚合前缀路由的数据包后,向发布该聚合前缀路由的核心路由器请求与该数据包目的地址最长匹配的地址前缀的对应边界路由器地址信息;

以及,

根据核心路由器返回的边界路由器地址信息,将数据包通过目的地为该边界路由器地址信息中所指的出口隧道边界路由器的隧道转发出去;

所述出口隧道边界路由器用于:

对于收到的数据包,进行路由表寻址转发。

说明书 :

路由信息发布方法、实现数据包路由的方法、系统和装置

技术领域

[0001] 本发明涉及网络通信技术领域,尤其涉及路由信息的发布方法、实现数据包路由的方法、系统和装置。

背景技术

[0002] 当前,随着通信技术的迅猛发展,互联网(INTERNET)骨干网络中的路由表数量正在迅速增加,由此带来的问题是,需要对处理路由表的路由器设备进行升级或改造,以使之具备相应的处理能力,由此导致了路由器成本的上升以及路由收敛速度降低的问题。

发明内容

[0003] 有鉴于此,本发明实施例的目的在于,提供路由信息发布方法、实现数据包路由的方法、系统和装置,以减少路由器所需维护的路由表数量。
[0004] 本发明实施例提供了一种路由信息发布方法,该方法包括:
[0005] 发布路由信息的设备获取自身地址信息;
[0006] 所述发布路由信息的设备将所述自身地址信息添加到需要发布的路由信息中;
[0007] 所述发布路由信息的设备将携带有所述自身地址信息的路由信息发布出去。
[0008] 本发明实施例还提供了一种路由信息发布装置,该装置包括:
[0009] 地址信息获取单元,用于获取所述路由信息发布装置自身的地址信息;
[0010] 地址信息添加单元,用于将所获取的所述地址信息添加到需要发布的路由信息中;
[0011] 路由信息发布单元,用于将携带有所述自身地址信息的路由信息发布出去。
[0012] 本发明实施例还提供了一种实现数据包路由的方法,骨干网中核心路由器发布携带有自身地址信息的路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上,该方法包括:
[0013] 路由器根据自身的路由表对数据包进行寻址转发;
[0014] 当路由器根据所述核心路由器自身的地址信息,将数据包转发至所述核心路由器时,所述核心路由器根据其上注册的地址前缀与边界路由器地址信息的映射关系,查找与数据包目的地址匹配的最佳路由,其中,所述最佳路由为与目的地址最长匹配的路由;
[0015] 根据查找到的最佳路由,将数据包通过目的地为相应的边界路由器的隧道转发至相应的边界路由器。
[0016] 本发明实施例还提供了一种实现数据包路由的系统,该系统包括核心路由器和边界路由器,其中:
[0017] 所述核心路由器用于:
[0018] 在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;
[0019] 保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;以及,
[0020] 当数据包被转发至该核心路由器时,根据所述映射关系,查找与数据包目的地址相对应的详细地址前缀的信息,并根据该详细地址前缀的映射关系中的对应边界路由器地址信息,将数据包通过目的地为相应边界路由器的隧道转发出去;
[0021] 所述边界路由器用于:
[0022] 如果其连接的边缘网络中包含有核心路由器发布的聚合前缀路由所覆盖的更详细地址前缀,则将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上;
[0023] 以及根据接收到的数据包的转发目的地址,进行寻址转发。
[0024] 本发明实施例还提供了一种实现数据包路由的方法,骨干网中核心路由器发布携带有自身地址信息的聚合前缀路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器,该方法包括:
[0025] 边界路由器对于需要转发的数据包,查找与该数据包转发目的地址最佳匹配路由如果最佳匹配的路由是所述聚合前缀路由,则根据所收到的所述核心路由器自身的地址信息,向发布该聚合前缀路由的所述核心路由器请求与该数据包转发目的地址最长匹配的地址;
[0026] 所述核心路由器查找与所述数据包转发目的地址最长匹配的地址前缀,并根据所述映射关系,将该地址前缀对应的边界路由器地址信息返回给发起请求的所述路由器;
[0027] 发起请求的所述边界路由器收到所述地址信息之后,将数据包通过目的地为该地址信息中所指的边界路由器的隧道转发出去。
[0028] 本发明实施例还提供了一种实现数据包路由的系统,该系统包括核心路由器、入口隧道边界路由器和出口隧道边界路由器,其中:
[0029] 所述核心路由器用于:
[0030] 在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;
[0031] 保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是该核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;
[0032] 收到入口隧道边界路由器所发送的映射关系请求报文,该报文请求与指定的目的地址最长匹配的地址前缀的对应边界路由器地址信息,所述核心路由器查找与所述目的地址最长匹配的地址前缀,并根据保存的所述映射关系,确定该地址前缀对应的边界路由器地址信息并返回给发起请求的所述入口隧道边界路由器;
[0033] 所述入口隧道边界路由器用于:
[0034] 收到目的地址对应的最佳匹配路由是聚合前缀路由的数据包后,向发布该聚合前缀路由的核心路由器请求与该数据包转发目的地址最长匹配的地址前缀的对应边界路由器地址信息;
[0035] 以及,
[0036] 根据核心路由器返回的边界路由器地址信息,将数据包通过目的地为该边界路由器地址信息中所指的出口隧道边界路由器的隧道转发出去;
[0037] 所述出口隧道边界路由器用于:
[0038] 对于收到的数据包,进行路由表寻址转发。
[0039] 可见,在本发明实施例中,由于在Internet骨干网络中只需要维持聚合路由以及每个路由器的一个接口地址就可以了,不再需要维护大量的详细前缀路由信息了,由此极大减少了路由表数量,避免了路由器成本的上升问题,并能够有效克服路由收敛速度降低的问题。此外,通过本发明实施例所提供的路由信息发布方法,能够使得骨干网络中的路由器可以动态获得发布聚合前缀的核心路由器的地址信息,从而可以方便地实现更详细路由前缀到边界路由器的映射信息的注册、更新和查询,使得数据包路由过程的实现更加方便、灵活。

附图说明

[0040] 图1为本发明一实施例中实现路由信息的发布的方法的流程图;
[0041] 图2为本发明一实施例中实现路由信息的发布的示意图;
[0042] 图3为本发明一实施例中路由信息发布装置的示意图;
[0043] 图4为本发明一实施例中实现数据包路由的方法的流程图;
[0044] 图5为本发明另一实施例中实现数据包路由的方法的流程图;
[0045] 图6为本发明一实施例中实现数据包路由的示意图。

具体实施方式

[0046] 在本发明实施例中,基于以下思路来减小INTERNET骨干网路由表数量,其具体为:将现在INTERNET网络路由结构由网状路由结构改变为树型路由结构,由此,在INTERNET骨干网络中,只通过核心路由器来发布一些聚合的路由前缀,而这些聚合路由前缀中所包含的更详细的路由前缀信息则不再需要在INTERNET骨干网络中再做扩散;与之相适应的,INTERNET骨干网络中的边界路由器将表示所述更详细的路由前缀信息与边界路由器地址之间映射关系的映射信息注册到发布所述聚合路由前缀的核心路由器上,以便在进行数据包路由时,能够根据该映射关系查找得到对应的边界路由器,实现对数据包的转发。
[0047] 与上述思路相对应,在本发明实施例中,提供了一种路由信息的发布方法,现结合附图具体描述如下:
[0048] 参见图1,在本发明实施例中,实现路由信息的发布需要以下步骤:
[0049] 步骤101:发布路由信息的设备获取自身地址信息;
[0050] 其中,在本发明实施例中,所述发布路由信息的设备为核心路由器,更具体的,可以采用超级路由器或主机作为该发布路由信息的设备,并不影响本发明的实现;
[0051] 在本发明实施例中,以超级路由器作为所述发布路由信息的设备为例,该超级路由器所获取的地址信息为该路由器的接口IP地址,该接口IP地址可以为环回接口IP地址或其他类型的接口IP地址;在本发明其他实施例中,发布路由信息的设备也可获取其他类型的自身地址信息,只需该地址信息能够保证其他设备能够根据该地址信息正确寻址找到该发布路由信息的设备即可;
[0052] 步骤102:所述发布路由信息的设备将所述自身地址信息添加到需要发布的路由信息中;
[0053] 在本发明实施例中,扩展内部网关协议(IGP)/边界网关协议(BGP),从而使得在所需发布的路由信息的前缀信息中设置有一个路由始发者(Routeoriginator)属性字段,该属性字段用于标识该路由的发源地.不论是在跨AS还是跨Area情况下,该属性字段中的信息都不会被丢失;在不同路由协议之间进行再分布的时候,则需要将该信息保留;在本步骤中,将所获得的自身地址信息添加到该属性字段中,以实现将所述自身地址信息添加到需要发布的路由信息中;
[0054] 在本发明其他实施例中,也可以对所需发布的路由信息的其他部分进行扩展,并将所述自身地址信息添加到该扩展部分,并不影响本发明的实现。
[0055] 此外,在本发明实施例的具体实现中,如果采用IPv4路由协议,则上述属性字段就是一个32bit长度的字段;而如果采用IPv6路由协议,则上述属性字段为一个128bit长度的字段;所述属性字段的长度、位置等可以根据路由协议的不同而改变,并不影响本发明的实现。
[0056] 步骤103:所述发布路由信息的设备将携带有所述自身地址信息的路由信息发布出去。
[0057] 在本发明的优选实施例中,所述方法还可以进一步包括以下步骤:
[0058] 收到所述路由信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据该路由信息中所携带的发布路由信息设备的自身地址信息,向所述发布路由信息设备发送映射关系注册报文,所述发布路由信息设备保存该报文中所携带的映射关系;其中,所述映射关系为所述的更详细地址前缀与所述边界路由器自身地址的映射关系。即,所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是有上述路由信息中发布的地址前缀所覆盖的更详细地址前缀。实质上,映射关系表(包含映射关系的一个数据库)也是一种路由表形式,比如映射关系中的地址前缀就是目的地址前缀,对应的边界路由器的地址就是下一跳地址,所述发布路由信息设备达到所述边界路由器的距离可以作为该路由的开销。更进一步说,映射信息的注册和更新完全可以采用现有的BGP协议来实现。当然也可以设计一种新的协议来完成上述功能。因此映射关系表完全可以作为一种与IGP/BGP路由表相似的路由表来对待。现有的路由表计算和查找也适用于该映射关系表。
[0059] 进一步的,所述方法还可以包括以下步骤:
[0060] 边界路由器根据收到的发布路由信息的设备的所述地址信息,向该发布路由信息的设备发送映射关系更新报文,所述发布路由信息的设备收到更新报文后完成映射关系的更新;和/或,
[0061] 边界路由器根据收到的发布路由信息的设备的所述地址信息,向该发布路由信息的设备发送映射关系查询报文,所述发布路由信息的设备根据该报文查询相应的映射关系并返回给所述边界路由器。
[0062] 下面结合一更加具体的实例,对上述方法的具体实现加以更详细地介绍。
[0063] 参见图2,在本发明一具体实施例中,某个核心路由器RT-A通过IGP或者BGP发布了一个22.0.0.0/8的聚合路由前缀信息,该路由前缀信息中携带了route originator信息,该信息可以为路由器的一个接口的IP地址1.1.1.1。直连22.1.1.0/24前缀的路由器或者是连接了边缘网络(22.1.1.0/24前缀在该边缘网络内)和骨干网络的边界路由器RT-B,根据收到的聚合路由前缀信息中所携带的地址信息1.1.1.1,向RT-A发送映射信息注册报文,该报文中携带有更具体的前缀22.1.1.0/24与边界路由器RT-B的IP地址的映射关系;RT-A收到该报文后,保存该报文中所携带的所述映射关系,完成对边界路由器RT-B的映射关系注册;一旦作为核心路由器的RT-A收到这个映射关系注册报文之后,就知道如果要转发到达22.1.1.0/24子网内的IP包,就通过到达路由器RT-B的隧道先转发给路由器RT-B,然后由路由器RT-B继续寻址转发,一直到达目的地。这样Internet骨干网络中只需要维持类似22.0.0.0/8的聚合路由以及到达每个路由器的路由就可以了,不再需要维护大量的类似22.1.1.0/24的详细的前缀路由信息了,从而使得路由表的数量得以大幅减少。
[0064] 与上述注册过程相类似,RT-B还可以根据收到的RT-A的地址信息,向RT-A发送更新报文或查询报文,RT-A收到所述报文后,根据报文中的相应内容完成相应的更新或查询功能。
[0065] 参见图3,与上述方法相对应的,本发明实施例还提供了一种路由信息发布装置,该装置包括:
[0066] 地址信息获取单元301,用于获取所述路由信息发布装置自身的地址信息;
[0067] 地址信息添加单元302,用于将所获取的所述地址信息添加到需要发布的路由信息中;
[0068] 路由信息发布单元303,用于将携带有所述自身地址信息的路由信息发布出去。
[0069] 进一步的,所述装置还可以进一步包括:
[0070] 映射关系注册单元,用于在接收到边界路由器发送来的映射关系注册报文后,根据该报文中所携带的映射关系,完成对地址前缀与边界路由器地址信息的映射关系的注册;
[0071] 和/或,映射关系查询单元,用于根据边界路由器发送来的映射关系查询报文,完成对地址前缀与边界路由器地址信息映射关系的查询;
[0072] 和/或,映射关系更新单元,用于根据边界路由器发送来的映射关系更新报文,完成对地址前缀与边界路由器地址信息映射关系的更新。
[0073] 在本发明实施例中,还分别提供了两种实现数据包路由的方法,下面分别进行详细描述。
[0074] 实施例一:
[0075] 参见图4,在实施例一所提供的该方法中,发布携带有自身地址信息的路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上,从而在核心路由器上完成对相应边界路由器映射关系的注册;在进行如上对核心路由器的配置之后,该方法具体包括:
[0076] 步骤401:路由器根据自身的路由表对数据包进行寻址转发;
[0077] 步骤402:当路由器根据所述核心路由器自身的地址信息,将数据包转发至该所述核心路由器时,所述核心路由器根据其上注册的地址前缀与边界路由器地址信息的映射关系,查找与数据包目的地址匹配的最佳路由,其中,所述最佳路由为与目的地址最长匹配的路由;这与目前路由器的路由表查找过程一致。
[0078] 步骤403:根据查找到的最佳路由,将数据包通过目的地为相应的边界路由器的隧道转发至相应的边界路由器。
[0079] 在本发明优选实施例中,在执行步骤403之后,还可以进一步包括:
[0080] 所述边界路由器将收到的数据包继续寻址转发,直至到达目的主机。
[0081] 下面结合更具体实例,对图4所提供的方法的进行更具体说明。
[0082] 参见图2,当网络中的其他路由器如RT-C需要向位于22.1.1.0/24网段内地址为22.1.1.2的主机转发数据包时,路由器根据转发数据包的目的地址22.1.1.2,并依据最长匹配规则,确定到达22.1.1.2的最优路由为22.0.0.0/8,然后,根据在RT-A发布路由信息时所发送来的该RT-A自身的地址信息,将数据包进行逐跳转发,直到该数据包到达RT-A;
[0083] RT-A再根据目的IP地址22.1.1.0/24确定与该地址对应的边界路由器的详细前缀信息,并将该数据包转发到与该详细前缀信息对应的路由器RT-B,路由器RT-B对接收到的数据包继续进行寻址转发,直到该数据包到达目的主机。
[0084] 与实施例一所提供的方法相对应的,本发明实施例还提供了一种实现数据包路由的系统,该系统包括核心路由器和边界路由器,其中:
[0085] 所述核心路由器用于:
[0086] 在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;
[0087] 保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;以及,
[0088] 当数据包被转发至该核心路由器时,根据所述映射关系,查找与数据包目的地址相对应的详细地址前缀的信息,并根据该详细地址前缀的映射关系中的对应边界路由器地址信息,将数据包通过目的地为相应边界路由器的隧道转发出去;
[0089] 所述边界路由器用于:
[0090] 如果其连接的边缘网络中包含有核心路由器发布的聚合前缀路由所覆盖的更详细地址前缀,则将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器上;
[0091] 以及根据接收到的数据包的转发目的地址,进行寻址转发。
[0092] 实施例二:
[0093] 参见图5,在该实施例所提供的方法中,INTERNET骨干网中核心路由器发布携带有自身地址信息的聚合前缀路由信息,收到该信息的边界路由器,如果其连接的边缘网络中包含有所述路由信息中发布的地址前缀所覆盖的更详细地址前缀,则根据所述地址信息,将所述详细地址前缀信息与该边界路由器地址之间的映射关系注册在所述核心路由器,从而在核心路由器上完成对相应边界路由器映射关系的注册;在进行如上对核心路由器的配置之后,该方法具体包括:
[0094] 步骤501:边界路由器对于需要转发的数据包,查找与该数据包转发目的地址最佳匹配路由,如果最佳匹配的路由是该边界路由器连接的边缘网络内部的路由,那么依据现有方式进行转发;如果最佳匹配的路由是上述聚合前缀路由核心路由器,则向发布该聚合前缀路由的核心路由器请求与该数据包转发目的地址最长匹配的地址,即,前缀的对应边界路由器信息;
[0095] 步骤502:所述核心路由器查找与所述数据包转发目的地址最长匹配的地址前缀,并根据所述映射关系,将该地址前缀对应的边界路由器地址信息返回给发起请求的所述路由器;
[0096] 为了便于以下描述中区分这两个边界路由器,我们将发起请求的所述边界路由器称为入口隧道边界路由器,响应信息中所指的边界路由器称为出口隧道边界路由器。入口还是出口隧道边界路由器的角色是根据数据包的流向来定义的,比如针对从边界路由器A连接的边缘网络发送到边界路由器B连接的边缘网络的流量而言,A是入口隧道边界路由器,B是出口隧道边界路由器;反之,针对从边界路由器B连接的边缘网络发送到边界路由器A连接的边缘网络的流量而言,B是入口隧道边界路由器,A是出口隧道边界路由器。
[0097] 步骤503:发起请求的所述边界路由器,即入口隧道边界路由器,收到上述响应信息之后,将数据包通过目的地为该响应信息中所指的边界路由器,即出口隧道边界路由器,的隧道转发出去。
[0098] 在本发明优选实施例中,在执行步骤503之后,还可以进一步包括以下步骤:
[0099] 所述出口隧道边界路由器根据数据包转发目的地址,进一步对所述数据包进行寻址转发,直至将该数据包发送至目的主机。
[0100] 下面结合更具体实例,对图5所提供的方法进行详细描述:
[0101] 参见图6,在该实例中,路由器RT-C收到需要转发的数据包后,根据作为核心路由器的RT-A在进行聚合路由前缀信息发布时所发送的其自身地址信息1.1.1.1,向该RT-A发送查询请求,以请求得到与转发数据包目的地址22.1.1.2相对应的最长匹配路由的映射信息;RT-A确定对应22.1.1.2的最长匹配路由为22.1.1.0/24,然后根据边界路由器注册在其上的映射关系,确定22.1.1.0/24所对应的映射信息,并发送给RT-C;然后,RT-C直接通过到达边界路由器RT-B的隧道发送上述数据包到达边界路由器RT-B,然后由路由器RT-B继续寻址转发,直到数据包到达目的主机。
[0102] 与实施例二所提供的方法相对应,本发明实施例还提供了一种实现数据包路由的系统,该系统包括核心路由器、入口隧道边界路由器和出口隧道边界路由器,其中:
[0103] 所述核心路由器用于:
[0104] 在发布聚合前缀路由信息时,将自身的地址信息携带在所述前缀路由信息中发布出去;
[0105] 保存地址前缀与边界路由器地址的映射关系;所述地址前缀为所述边界路由器连接的边缘网络中包含的地址前缀,而且该前缀是该核心路由器发布的路由信息中的地址前缀所覆盖的更详细地址前缀;
[0106] 收到入口隧道边界路由器所发送的映射关系请求报文,该报文请求与指定的目的地址最长匹配的地址前缀的对应边界路由器地址信息,所述核心路由器查找与所述目的地址最长匹配的地址前缀,并根据保存的所述映射关系,确定该地址前缀对应的边界路由器地址信息并返回给发起请求的所述入口隧道边界路由器;
[0107] 所述入口隧道边界路由器用于:
[0108] 收到目的地址对应的最佳匹配路由是聚合前缀路由的数据包后,向发布该聚合前缀路由的核心路由器请求与该数据包转发目的地址最长匹配的地址前缀的对应边界路由器地址信息;
[0109] 以及,
[0110] 根据核心路由器返回的边界路由器地址信息,将数据包通过目的地为该边界路由器地址信息中所指的出口隧道边界路由器的隧道转发出去;
[0111] 所述出口隧道边界路由器用于:
[0112] 对于收到的数据包,进行路由表寻址转发。
[0113] 在本发明各个实施例中,所述的数据包可以为IP包或其他类型的数据包。本发明所基于的协议可以为IGP协议或BGP协议,也可以为其他类型的协议,并不影响本发明的实现。
[0114] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。