转发报文的方法、装置以及网络系统的制作方法

文档序号:7803119阅读:135来源:国知局
转发报文的方法、装置以及网络系统的制作方法
【专利摘要】本发明属于网络通信领域,公开了一种转发报文的方法,可根据接收的数据报文的目的IP地址;向注册代理查询所述目的IP地址对应的边界路由器信息;然后将所述数据报文发送给所述目的IP地址对应的边界路由器。本发明还公开了一种网络系统,包括通过边界路由器连接的转发网络和边缘网络,转发网络内设置有注册代理,所述边界路由器用于向所述注册代理发起注册边缘网络的路由前缀与边界路由器映射关系的注册请求;所述注册代理响应所述注册请求,生成并存储边缘网络的路由前缀与边界路由器的映射表。通过实施本发明,可实现在因特网路由数量急剧增加时,节省整个网络中具有路由表存储功能设备的成本,提高整个网络路由收敛的速度,提升整个系统的工作效率,且简单易行。
【专利说明】转发报文的方法、装置以及网络系统
【技术领域】
[0001]本发明涉及网络通信领域,尤其涉及一种转发报文的方法、装置以及网络系统。
【背景技术】
[0002]路由是将信息从源端通过网络传到目的端的行为,它通常包括两个基本动作:确定最佳路径和进行数据交换。路由权(Routing Metric)是路由算法用以确定到达目的地的最佳路径的计量标准,如路径长度。为了帮助选择路径,路由算法初始化并维护包含路径信息的路由表,其中,路径信息根据使用的路由算法不同而不同。对路由器告知目的/下一跳地址的最佳方式是把数据报文发送给代表“下一跳”的路由器,当路由器收到一个数据报文,它就检查其目标地址,尝试将此地址与其“下一跳”相联系。路由表包括多种信息,如距离信息、跳数信息、“下一跳”地址信息等。Routing Metric根据所用的路由算法不同而不同,在路由表中通过比较Routing Metric来确定最佳路径。这样,路由器彼此通信,通过交换路由信息维护其路由表,路由更新信息通常包含全部或部分路由表,通过分析来自其他路由器的路由更新信息以建立网络拓扑图。路由器间发送信息的另一个例子是发送链接状态广播信息,路由器通知其他发送了该广播信息的路由器的链接状态,该链接状态信息用于建立完整的拓扑图,使路由器可以确定最佳路径。
[0003]多归属(Mult1-homing)是指为了连接生存性或负载平衡,在用户与网络之间建立多于一条链路(属于同一运营商或不同运营商)的链路群;流量工程(TrafficEngineering)实际上是一套工具和方法,无论是在网络设备和传输线路正常还是失效的情况下,都能从给定的基础设施中提取最佳服务,它需要对已安装的资源进行优化。而随着多归属网络和流量工程的广泛部署,因特网(Internet)路由数量增长迅速,由此带来的是一方面由于需要更大容量的路由表存储芯片导致路由器设备成本上升,另一方面导致路由收敛变得更加缓慢,不利于系统快速反应,影响整个系统工作效率。
[0004]发明人在研究过程中发现:由于现有技术中路由表包含预定到目标子网的路由,使得在Internet路由数量迅速增加时,转发网络(Transit Network, TN)和边缘网络(EdgeNetwork, EN)中的路由设备需要同时增加相应的路由信息,从而使路由表容量急剧增加,因此,导致具有路由表存储功能的设备成本上升,路由收敛更加缓慢,造成整个系统工作效率低下。

【发明内容】

[0005]为了解决上述技术问题,本发明实施例提出了如下技术方案:
[0006]第一方面,提供了一种在转发网络中存储路由的方法,包括:
[0007]接收边缘网络的边界路由器发送的注册请求,所述注册请求中携带有边缘网络的路由前缀信息;
[0008]根据所述注册请求,生成所述边缘网络的路由前缀与所述边界路由器的映射表项。[0009]在第一方面的第一种可能的实现方式中,
[0010]当所述转发网络内存在多个注册代理时,所述方法进一步包括所述多个注册代理同步注册生成的映射表的步骤;
[0011]所述多个注册代理通过同一个IP地址对外提供服务。
[0012]在第一方面的第二种可能的实现方式中,
[0013]当所述转发网络内存在多个注册代理群组,所述每个注册代理群组管理不同的地址区域时,所述方法进一步包括每个注册代理群组内的注册代理同步注册生成的映射表的步骤;
[0014]所述每个注册代理群组内的注册代理通过同一个IP地址对外提供服务。
[0015]第二方面,提供了一种转发报文的方法,包括:
[0016]解析数据报文,获得该数据报文的目的IP地址;
[0017]向注册代理发送映射信息查询报文,获取所述目的IP地址对应的边界路由器信息;
[0018]向所述目的IP地址对应的边界路由器发送所述数据报文。
[0019]在第二方面提供的方法的第一种可能的实现方式中,所述获取所述目的IP地址对应的边界路由器信息包括:
[0020]查询边缘网络路由的路由前缀与边界路由器信息的映射表,得到与所述目的IP地址最长匹配的边缘网络的路由前缀对应的边界路由器信息。
[0021]根据第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述向注册代理发送映射信息查询报文具体包括:
[0022]通过任播方式向就近的注册代理发送映射信息查询报文;或
[0023]通过任播方式向管理所述目的IP地址所属地址区域的注册代理群组内就近的注册代理发送映射信息查询报文。
[0024]根据第二方面、第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述方法还包括:
[0025]注册生成边缘网络的路由前缀与边界路由器的映射表;
[0026]当存在多个注册代理时,在所述多个注册代理的映射表之间进行同步处理;
[0027]当存在多个注册代理群组,在每个注册代理群组内的多个注册代理的映射表之间进行同步处理。
[0028]第三方面,提供了一种转发报文的方法,包括:
[0029]注册代理接收数据报文,解封装所述数据报文,获得该数据报文的目的IP地址;
[0030]注册代理查询自身的映射表,得到与所述目的IP地址边缘网络前缀路由对应的边界路由器信息;
[0031]注册代理向与所述目的IP地址对应的边界路由器发送数据报文。
[0032]在第三方面的第一种可能的实现方式中,
[0033]所述注册代理接收数据报文具体为注册代理通过任播方式接收该数据报文。
[0034]根据第三方面或者第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述方法还包括:
[0035]注册生成边缘网络的路由前缀与边界路由器的映射表;[0036]当存在多个注册代理时,在所述多个注册代理的映射表之间进行同步处理;
[0037]当存在多个注册代理群组,在每个注册代理群组内的多个注册代理的映射表之间进行同步处理。
[0038]第四方面,提供了一种网络系统,包括边缘网络和转发网络,所述边缘网络通过边界路由器连接到所述转发网络,所述转发网络内设置有注册代理,
[0039]所述边界路由器用于向所述注册代理发起注册边缘网络的路由前缀与边界路由器映射关系的注册请求;
[0040]所述注册代理响应所述注册请求,生成并存储边缘网络的路由前缀与边界路由器的映射表。
[0041]在第四方面的第一种可能的实现方式中,当所述转发网络内设置有多个注册代理时,所述多个代理通过同一个IP地址对外提供服务并同步注册形成的映射表。
[0042]在第四方面的第二种可能的实现方式中,当所述转发网络内设置有多个注册代理,并且所述多个注册代理根据管理的地址区域划分为多个注册代理群组时,所述每个注册代理群组内的注册代理服务器通过同一个IP地址对外提供服务并在群组内同步注册生成的映射表。
[0043]第五方面,提供了一种报文转发装置,包括:
[0044]注册单元,用于根据接收到的映射注册消息生成边缘网络的路由前缀和边界路由器的映射表。
[0045]存储单元,用于存储所述映射表;
[0046]转发单元,用于根据所述映射表转发数据报文。
[0047]在第五方面的第一种可能的实现方式中,还包括:
[0048]同步单元,用于和同一转发网络内或者同一群组内的其他报文转发装同步注册生成的映射表。
[0049]在第五方面的第二种可能的实现方式中,还包括:
[0050]查询单元,用于根据接收的映射信息查询报文,查询所述映射表中与所述映射信息查询报文中指定的IP地址匹配的映射信息或于根据所述数据报文的目的IP地址查询所述映射表,获得与所述数据报文的目的IP地址对应的映射信息。
[0051]在第五方面的第三种可能的实现方式中,还包括:
[0052]解析单元,用于解析接收到的数据报文,获得该数据报文的目的IP地址,并将所述数据报文的目的IP地址发送给查询单元;此外,解析接收到的映射信息查询报文,获得该报文指定的被查询的IP地址;
[0053]响应单元,将查询单元返回的映射信息查询结果返回给映射信息查询报文的发送者。
[0054]根据第五方面、第五方面的第一种可能的实现方式、第五方面的第二种可能的实现方式或者第五方面的第三种可能的实现方式,在第五方面的第四种可能的实现方式中,所述转发装置具体为注册代理。
[0055]第六方面,提供了一种边界路由器,包括:
[0056]注册单元,用于发起注册请求,所述注册请求中携带有边缘网络的路由前缀信息;[0057]接收单元,用于接收数据报文;
[0058]解析单元,用于解析数据报文并获得该数据报文的目的IP地址信息。
[0059]在第六方面的第一种可能的实现方式中,所述边界路由器进一步包括:
[0060]查询单元,用于发起查询数据报文的目的IP地址对应的映射信息的查询请求,携带解析单元解析出的目的ip地址信息;
[0061]所述接收单元还用于接收所述数据报文的目的IP地址对应的映射信息。
[0062]缓存单元,用于缓存接收单元接收到的映射信息;
[0063]转发单元,用于根据缓存单元中与数据报文的目的IP地址匹配的映射信息转发数据报文。
[0064]通过实施本发明上述实施例,可实现当Internet路由数量迅速增加时,转发网络TN中除了 RA需要维护包括EN中的路由信息在内的Internet内的全部路由信息(在分布式存储的情况下,RA只要维护本群组所管理的地址区域的路由信息)之外,TN中其他的路由器只需要维护TN中的路由信息。在转发数据报文的过程中,只要查询相应RA上的映射表,就能得到目的EN的边界路由器,然后由发送数据报文的EN的边界路由器或者由RA直接将数据报文发送到目的EN的边界路由器,避免了数据报文在转发网络上的逐跳传输,因此可节省整个网络中具有路由表存储功能设备的成本,提闻整个网络路由收敛的速度,提升整个系统的工作效率。
【专利附图】

【附图说明】
[0065]图1是本发明所述网络系统的实施例结构示意图;
[0066]图2是本发明所述转发报文的方法的第一实施例示意图;
[0067]图3是本发明所述转发报文的方法的第二实施例示意图。
【具体实施方式】
[0068]本发明实施例提供了一种转发报文的方法、报文转发装置以及网络系统,在Internet路由数量急剧增加时,转发网络TN中的路由设备只需要根据上述数据报文中的路由指示信息在TN的注册代理(Registration Agent, RA)上查找相应的目的边缘网络的边界路由设备,来实现数据报文在TN中的转发。本发明实施例通过在TN中设置多个RA群组,使得每个RA群组只需要维护部分EN路由表条目的前缀对应的映射信息,而不需要在TN的所有路由设备中增加与全网EN路由表条目对应的TN中的路由表条目,从而节省了整个网络中具有路由表存储功能的设备的成本,提闻了整个网络的路由收敛的速度,提升了整个网络系统的工作效率。
[0069]下面结合附图,对本发明实施例进行详细说明。
[0070]本发明所述网络系统包括转发网络和边缘网络,所述边缘网络通过边界路由器连接到所述转发网络上,所述转发网络中设置有注册代理,所述边界路由器用于将边缘网络中的路由前缀信息与边界路由器的映射关系注册到所述注册代理上;还用于接收边缘网络中的数据报文,并将数据报文发送给注册代理或者根据注册代理的响应将数据报文发送给其他的边界路由器;
[0071]所述注册代理用于响应边界路由器的注册请求,在映射表中生成并存储边界路由器与路由前缀的映射信息;根据数据报文的目的IP地址查询对应的边界路由器,并向该边界路由器转发数据报文或者将该边界路由器信息发送给发起查询的边界路由器。
[0072]图1为本发明所述网络系统的实施例的结构示意图。所述网络系统包括转发网络TN和边缘网络(ENl和EN2),所述ENl和EN2分别通过边界路由器BRl和BR2连接到转发网络TN。所述TN中,设置有至少一个注册代理RA,若TN中存在多个注册代理时,多个注册代理通过同一个IP地址对外提供服务连接EN的BR通过任播(anycast)机制将该EN中的路由前缀Prefix注册到TN中就近的RA上,在该RA上生成一条该Prefix与注册该Prefix的BR之间的映射信息。,多个注册代理之间同步生成的映射表。
[0073]为了提高RA的可扩展性(减少每个RA的映射表容量要求),还可以将所有的EN路由前缀划分为不同的区域块,并在TN中设置不同的RA群组,由不同的RA群组管理不同的区域块,同一个RA群组中的不同RA通过同一个IP地址对外提供服务,并在该RA群组内的不同RA之间实现映射信息的同步。图1的TN中设置了多个注册代理RA,这些RA分属于不同的RA群组,例如,RA-1l和RA-12属于同一个群组RA-1X, RA-21和RA-22属于同一个群组RA-2X。RA-1X群组以1.1.1.1作为对外提供服务的IP地址,RA-2X群组以2.2.2.2作为对外提供服务的IP地址,且10.0.0.0/8覆盖的EN路由前缀都注册到RA-1X群组中距离发送注册请求的BR最近的RA上,20.0.0.0/8覆盖的所有EN路由前缀都注册到RA-2X群组中距离发送注册请求的BR最近的RA上。这样,全网的EN路由前缀分别注册到不同的RA群组上,节约了每个RA的存储空间。
[0074]图2是本发明的转发报文的方法的第一实施例示意图,本实施例基于如图1所示的网络系统,下面对本实施例进行详细描述。
[0075]参照图2,所述转发报文的方法主要包括如下步骤:
[0076]步骤s201,BR将连接的EN内部的路由前缀Prefix信息注册到TN内就近的RA上。当TN内仅存在一个RA时,BR将全网的EN内部的路由前缀信息都注册到该唯一的RA上;当TN内存在多个RA时,BR将连接的EN内部的路由前缀信息注册到TN内就近的RA上;当TN内存在多个RA,且该多个RA根据管理的地址区域划分为不同的RA群组时,BR根据不同的地址区域划分将连接的EN内部的路由前缀Prefix信息注册到TN内管理该地址区域的RA群组内最近的RA上。
[0077]值得说明的是,关于BR就近RA的实现方式是采用Anycast机制,在IPv6以及稀疏模式独立组播协议(Protocol Independent Multicast-Sparse Mode, PIM-SM)中的Anycast汇聚点(Rendezvous Point, RP)都有这种机制,具体实现方式是:所有RA对外提供映射表查询和数据信息中转服务时使用同一个IP地址,这样BR发送到RA的映射表的注册信息和查询数据信息的目的地址的查询信息就是此IP地址,当RA需要提供数据信息中转服务时,BR与RA之间隧道就是使用该IP地址的隧道,而且,根据最短路径转发的实现原理,上述注册信息和查询信息以及需要RA中转的数据信息都会到达该最近的RA上,另外,RA之间进行映射表同步处理时,各RA使用不同的IP地址。
[0078]例如:BR1将ENl内部的Prefix:10.2.1.0/24注册到管理该地址区域的RA群组RA-1X内就近的注册代理RA-1l上,BRl将ENl内部的prefix20.2.1.0/24注册到管理该地址区域的群组RA-2X内就近的注册代理RA-21上;BR_2将EN2内部的prefixl0.1.1.0/24注册到管理该地址区域的群组RA-1X内就近的注册代理RA-12上;BR-2将EN2内部的prefix20.1.1.0/24注册到管理该地址区域的群组RA-2X内就近的注册代理RA-22上。即BRl和10.2.1.0/24在RA-1l上形成映射关系;BR1和20.2.1.0/24在RA-21上形成映射关系;BR2和10.1.1.0/24在狀-12上形成映射关系;BR2和20.1.1.0/24在RA-22上形成映射关系。由于每个RA群组通过同一个IP地址对外提供服务,边界路由器通过任播(Anycast)机制将映射信息注册到该群组内就近的RA上。
[0079]步骤s202,对TN中的各RA中的映射表进行同步处理,即通过协议使得各RA之间相互通告各自注册接收的映射表。具体的,若TN内存在多个RA时,多个RA之间同步各自注册接收的映射表,则同步完成后,每个RA上都存储了全网的EN内的路由前缀信息与边缘路由器的映射信息;若TN中存在多个RA,且该多个RA根据管理的地址区域划分为不同的RA群组时,只需要在各个RA群组内实时同步属于该群组的各RA注册接收的映射表。例如,在群组RA-1X中同步RA-1I和RA-12的映射表,在群组RA-2X中同步RA-21和RA-22的映射表。具体实现时,可使用边界网关协议(Border Gateway Protocol,BGP)来同步各自的映射表,各RA之间可建立全网状(Full-meshed)BGP连接,或采用路由反射器(Router Reflector,RR)来实现连接,当然也可以单独定义一个协议来实现上述同步目的;
[0080]上述同步过程完成后,转发网络内的多个RA内都存储了相同的映射表。当转发网络内存在多个注册代理群组时,每个注册代理群组内的多个RA都存储了相同的映射表,但是不同的注册代理群组内的RA存储的是不同的映射表。
[0081]经过步骤s201的注册过程与步骤s202的同步过程后,即可进行如下报文转发处理:
[0082]步骤s203,边界路由器接收边缘网络内的用户设备发送的数据报文。具体在图1所示的网络中,为BRl接收由ENl中的用户设备UEl上传的待转发的IP数据包,该IP数据包在ENl中依据现有的路由方式逐跳转发到该ENl的边界路由器BRl上;
[0083]步骤s204,边界路由器解析所接收的数据报文,获得该数据报文的目的IP地址。具体在图1所示的网络中,为BRl解析所接收的IP数据包,得到该IP数据包的目的IP地址,如:该IP数据包的目的IP地址为10.1.1.2;
[0084]步骤s205,边界路由器首先在自己的映射缓存中查找目的IP地址匹配的映射条目,如果查找到匹配项,那么执行步骤S207,否则向负责存储该目的IP地址的映射信息的就近的RA发送映射信息查询报文。具体来说,当TN内存在多个RA,且该多个RA均存储全网的EN的路由前缀信息与边界路由器的映射关系时,边界路由器向TN内就近的RA发送映射信息查询报文。当TN中存在多个RA,且该多个RA根据管理的地址区域划分为不同的RA群组时,边界路由器向管理该目IP地址所属的地址区域的RA群组内就近的RA发送映射信息查询报文。
[0085]在图1所示的网络系统中,BRl向负责存储该目的IP地址的映射信息的就近RA发送映射信息查询报文;例如在目的IP地址为10.1.1.2时,BRl根据预先的地址区域划分,判断管理该目的IP地址的是RA-1X群组(因为10.1.1.2被RA-1X群组管理的地址区域10.0.0.0/8覆盖),BRl向RA-1X群组内就近的注册代理RA-1l发送携带有上述目的IP地址的映射信息查询报文。
[0086]步骤s206,负责存储该目的IP地址的映射信息的就近的RA查找到与所述目的IP地址对应的目的EN的边界路由器信息,并向发起映射信息查询报文的边界路由器返回映射信息响应报文,携带该目的IP地址对应的目的EN的边界路由器信息。在发送映射信息查询报文的边界路由器接收到上述映射信息响应报文之后,将映射信息缓存在自己的映射信息缓存中,每个映射信息都有对应的老化时间,超时之后,该映射条目将被自动删除。
[0087]在图1所示的系统中,以目的IP地址为10.1.1.2为例,RA-11接收到上述映射信息查询报文后,通过查询同步处理后的映射表发现,与10.1.1.2最长匹配的已注册Prefix为10.1.1.0/24,该prefix对应的BR为BR2时,则RA-1l向BRl发送映射信息响应报文,携带BR2的信息;
[0088]步骤s207,在发送映射信息查询报文的边界路由器与该目的IP地址对应的目的EN的边界路由器之间建立通信隧道。
[0089]在图1所示的网络系统中,即在BRl与BR2之间建立通信隧道,该通信隧道可以是多协议标签交换(Mult1-Protocol Label Switching, MPLS)隧道,或因特网协议包封装到因特网协议包(IPinIP)隧道,或通用路由封装(General Router Encapsulation, GRE)隧道等各种隧道;这些隧道可能是事先已经建立好的,比如MPLS隧道,GRE隧道,或者是不需要建立直接进行封装就可以的,比如单tail隧道,直接采用边界路由器的地址作为目的地址进行封装之后就直接发送出去,不需要建立过程。
[0090]步骤s208,发送映射信息查询报文的边界路由器通过步骤s207中建立的隧道,将数据报文发送到该目的IP地址对应的目的EN的边界路由器上。
[0091]在图1所示的系统中,具体为BRl通过步骤s207中建立的隧道,将IP数据包发送至所述BR2上,然后由BR2发送至IP地址为10.1.1.2的用户设备UE2。
[0092]图3是本发明的转发报文的方法的第二实施例示意图,本方法仍基于如图1所示的网络系统,参照图3,所述转发信息的方法主要包括如下步骤:
[0093]步骤s301,BR将连接的EN内部的路由前缀Pref ix信息注册到TN内就近的RA上,当TN内仅存在一个RA时,BR将全网的EN内部的路由前缀信息都注册到该唯一的RA上;当TN内存在多个RA时,BR将连接的EN内部的路由前缀信息注册到TN内就近的RA上;当TN内存在多个RA,且该多个RA根据管理的地址区域划分为不同的RA群组时,BR根据不同的地址区域划分将连接的EN内部的路由前缀Prefix信息注册到TN内管理该地址区域的RA群组内就近的RA上。
[0094]值得说明的是,关于BR就近RA的实现方式是采用Anycast机制,在IPv6以及稀疏模式独立组播协议(Protocol Independent Multicast-Sparse Mode, PIM-SM)中的Anycast汇聚点(Rendezvous Point, RP)都有这种机制,具体实现方式是:所有RA对外提供映射表查询和数据信息中转服务时使用同一个IP地址,这样BR发送到RA的映射表的注册信息和查询数据信息的目的地址的查询信息就是此IP地址,当RA需要提供数据信息中转服务时,BR与RA之间隧道就是使用该IP地址的隧道,而且,根据最短路径转发的实现原理,上述注册信息和查询信息以及需要RA中转的数据信息都会到达该最近的RA上,另外,RA之间进行映射表同步处理时,各RA使用不同的IP地址。
[0095]步骤s302,对TN中的各RA中的映射表进行同步处理,即通过协议使得各RA之间相互通告各自注册接收的映射表。具体的,若TN内存在多个RA时,多个RA之间同步各自注册接收的映射表,则同步完成后,每个RA上都存储了全网的EN内的路由前缀信息与边缘路由器的映射信息;若TN中存在多个RA,且该多个RA根据管理的地址区域划分为不同的RA群组时,只需要在各个RA群组内实时同步属于该群组的各RA注册接收的映射表。
[0096]例如,在图1所示的系统中,在群组RA-1X中同步RA-1l和RA-12的映射表,在群组RA-2X中同步RA-21和RA-22的映射表。具体实现时,可使用边界网关协议(Border GatewayProtocol,BGP)来同步各自的映射表,各RA之间可建立全网状(Full-meshed)BGP连接,或采用路由反射器(Router Reflector, RR)来实现连接,当然也可以单独定义一个协议来实现上述同步目的;
[0097]上述同步过程完成后,转发网络内的多个RA内都存储了相同的映射表。当转发网络内存在多个注册代理群组时,每个注册代理群组内的多个RA都存储了相同的映射表,但是不同的注册代理群组内的RA存储的是不同的映射表。
[0098]经过步骤s301的注册过程与步骤s302的同步过程后,即可进行如下报文转发处理:
[0099]步骤S303,注册代理接收边缘网络内边界路由器发送的数据报文。该数据报文在边缘网络内部是由用户设备根据现有的路由方式逐跳转发到边界路由器上的,边界路由器根据该数据报文的目的IP地址,将该数据报文发送到就近转发网络内就近的RA上。具体来说,如果该TN内存在多个RA,BR将该数据报文根据anycast机制发送到就近的RA上;如果该TN内存在多个RA,并且该RA根据管理的地址区域的不同划分为不同的RA群组时,边界路由器将该数据报文发送到管理该数据报文的目的IP地址所属的地址区域的RA群组内就近的RA上。所以,注册代理接收的数据报文的目的IP地址应该在该注册代理所管理的地址区域内。
[0100]在图1所示的系统中,群组RA内的注册代理RA-1l接收由ENl中的用户设备UEl上传的待转发的目的地址为10.1.1.2的IP数据包。该IP数据包在UEl所在的ENl中依据现有的路由方式逐跳转发到该ENl的边界路由器BRl上,BRl收到上述IP数据包后,解析目的IP地址,之后确定与之对应的注册代理群组,即该目的IP地址属于注册代理群组管理的地址区域的范围内,因为10.1.1.2被RA-1X群组管理的地址区域10.0.0.0/8覆盖,所以通过目的地为RA-1X任播地址的隧道发送到RA-1X群组中距离BRl最近的注册代理RA-1I。
[0101]步骤S304,注册代理接收边界路由器发送的数据报文后,解析获得该数据报文的目的IP地址。
[0102]在图1所示的网络系统中,群组RA内就近的注册代理RA-1l解析所获得的IP数据包,得到该IP数据包的目的IP地址,如:目的IP地址为10.1.1.2。
[0103]步骤s305,注册代理查询同步后的映射表,获得与所述数据报文的目的IP地址对应的边界路由器信息。无论接收数据报文的RA是存储了全网如全网的EN内的路由前缀信息与边界路由器的映射关系,还是仅存储了一定地址区域的EN内的路由前缀信息与边界路由器的映射关系,接收数据报文的RA仅需要查询自身存储的映射表,就能获得所述数据报文的目的IP地址对应的边界路由器信息。
[0104]在图1所示的系统中,RA-1l通过查找自身存储的同步处理后的映射表,查找到与上述目的IP地址最长匹配的Prefix对应的边界路由器信息,例如,与10.1.1.2最长匹配的已注册Prefix为10.1.1.0/24,该prefix对应的边界路由器为BR2 ;
[0105]步骤s306,在接收报文的注册代理与该数据报文的目的IP地址对应的边界路由器之间建立隧道。该通信隧道可以是多协议标签交换(Mult1-Protocol Label Switching,MPLS)隧道,或因特网协议包封装到因特网协议包(IPinIP)隧道,或通用路由封装(General Router Encapsulation,GRE)隧道等各种隧道;这些隧道可能是事先已经建立好的,比如MPLS隧道,GRE隧道,或者是不需要建立直接进行封装就可以的,比如单tai I隧道,直接采用边界路由器的地址作为目的地址进行封装之后就直接发送出去,不需要建立过程
[0106]在图1所示的网络中,即在RA-1l与BR2之间建立通信隧道。
[0107]步骤s307,接收数据报文的注册代理通过上述步骤s306建立的隧道,将数据报文发送到该数据报文的目的IP地址对应的边界路由器上。然后,目的IP地址对应的边界路由器将该数据报文发送到目的终端。
[0108]在图1所示的系统中,RA-1l通过上述步骤s306建立的隧道,将IP数据包发送至所述BR2上,然后由BR2发送至目的终端UE2。
[0109]上述实施例一和二所公开的方法还可以结合使用。例如,接收到数据报文的边界路由器在自己的映射缓存中没有找到目的IP地址匹配的映射条目,将该数据报文以及对应的映射信息查询报文发送给就近的RA(或者发送给数据报文目的IP地址对应的RA群组中就近RA),就近的RA接收该数据报文之后,根据上述的实施方法二的步骤S304-307进行转发处理,同时,就近的RA接收该映射信息查询报文后,根据上述的实施方法一的步骤S206-208进行转发处理。
[0110]本发明实施例还公开了一种在转发网络中存储路由的方法,包括:
[0111]接收边缘网络的边界路由器发送的注册请求,所述注册请求中携带有边缘网络的路由前缀信息;
[0112]根据所述注册请求,在映射表中生成所述请求注册的边界路由器与所述边缘网络的路由前缀的映射表项。
[0113]当所述转发网络内存在多个注册代理时,所述方法进一步包括所述多个注册代理同步注册形成的映射表的步骤;所述多个注册代理通过同一个IP地址对外提供服务。
[0114]当所述转发网络内存在多个注册代理群组,所述每个注册代理群组管理不同的地址区域时,所述方法进一步包括每个注册代理群组内的注册代理同步注册形成的映射表的步骤;所述每个注册代理群组内的注册代理通过同一个IP地址对外提供服务。
[0115]本发明实施例还公开了一种报文转发装置。所述报文转发装置具体为注册代理RA。所述报文转发装置包括:
[0116]接收单元,用于接收注册请求,所述注册请求携带有边缘网络的路由前缀信息;具体来说,用于接收边界路由器发送的注册请求;
[0117]注册单元,用于根据所述注册请求生成边缘网络的路由前缀和边界路由器的映射表。
[0118]存储单元,用于存储所述映射表。
[0119]该报文转发装置还包括同步单元,用于在网络中存在多个报文转发装置时,和同一转发网络内或者同一报文转发装置群组内的其他网络设备同步注册形成的映射表。
[0120]该报文转发装置还包括查询单元,用于根据接收单元转发的查询请求查询所述映射表,获得与数据报文的目的IP地址对应的边界路由器信息。
[0121]该报文转发装置还包括解析单元,用于解析接收单元转发的数据报文,获得该数据报文的目的IP地址,并将所述数据报文的目的IP地址发送给查询单元,该查询单元用于根据所述数据报文的目的IP地址查询所述映射表,获得与所述数据报文的目的IP地址对应的边界路由器信息。
[0122]该报文转发装置还包括转发单元,用于将接收单元接收的数据报文转发给查询到的该数据报文的目的IP地址对应的边界路由器,或者将查询报文中指定的需要查询的目的IP地址对应的边界路由器信息发送给发起映射信息查询请求的边界路由器。
[0123]本发明实施例还公开了一种边界路由器,包括:
[0124]注册单元,用于发起注册请求,所述注册请求中携带有边缘网络的路由前缀信息;
[0125]接收单元,用于接收数据报文以及接收所述数据报文的目的IP地址对应的边界
路由器信息。
[0126]解析单元,用于解析数据报文并获得该数据报文的目的IP地址信息。
[0127]查询单元,用于发起查询数据报文的目的IP地址对应的边界路由器的映射信息查询请求,携带解析单元解析出的目的IP地址信息。
[0128]转发单元,用于根据缓存单元中与数据报文的目的IP地址匹配的映射信息转发数据报文。具体地,将接收到的数据包通过目的地址对应的RA地址或者目的地址匹配的边界路由器地址的隧道进行转发。其中目的地址对应的RA地址为:当所述转发网络内存在多个注册代理时,多个注册代理对外提供服务的同一个IP地址;当所述转发网络内存在多个注册代理群组,所述每个注册代理群组管理不同的地址区域时,管理目的IP地址所属的地址区域的注册代理群组内的注册代理对外提供服务的同一个IP地址。
[0129]本发明上述实施例可实现当Internet路由数量迅速增加时,转发网络TN中除了RA需要维护包括EN中的路由信息在内的Internet内的全部路由信息(在分布式存储的情况下,RA只要维护本群组所管理的地址区域的路由信息)之外,TN中其他的路由器只需要维护TN中的路由信息。在转发数据报文的过程中,只要查询相应RA上的映射表,就能得到目的EN的边界路由器,然后由发送数据报文的EN的边界路由器或者由RA直接将数据报文发送到目的EN的边界路由器,避免了数据报文在转发网络上的逐跳传输,因此可节省整个网络中具有路由表存储功能设备的成本,提闻整个网络路由收敛的速度,提升整个系统的工作效率。
[0130]以上所述仅为本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,所做出的任何修改、等同替换和改进,均应该涵盖在本发明的保护范围之内。
【权利要求】
1.一种转发报文的方法,其特征在于,包括: 边缘网络的边界路由器解析数据报文,获得所述数据报文的目的IP地址; 所述边界路由器向转发网络的注册代理发送携带所述目的IP地址的映射信息查询报文,所述映射信息查询报文被所述注册代理用于查询边缘网络的路由前缀与边界路由器信息的映射表,得到与所述目的IP地址最长匹配的边缘网络的路由前缀对应的边界路由器信息,并将所述边界路由器信息通过映射信息响应报文发送给所述边界路由器。
2.根据权利要求1所述的方法,其特征在于,还包括: 所述边界路由器向所述目的IP地址对应的边界路由器发送数据报文。
3.根据权利要求1或2中所述的方法,其特征在于,所述向注册代理发送映射信息查询报文具体包括: 通过任播方式向就近的注册代理发送映射信息查询报文;或 通过任播方式向管理所述目的IP地址所属地址区域的注册代理群组内就近的注册代理发送映射信息查询报文。
4.根据权利要求1至3中任一所述的方法,其特征在于,所述方法还包括: 所述边界路由器接收到所述映射信息响应报文之后,将映射信息缓存在自己的映射信息缓存中。
5.根据权利要求1至4中任一所述的方法,其特征在于,在所述边缘网络的边界路由器解析数据报文,获得该数据报文的目的IP地址之后,以及在所述边界路由器向转发网络的注册代理发送携带所述目的IP地址的映射信息查询报文之前,所述方法还包括: 所述边界路由器在自己的映射缓存中查找所述目的IP地址匹配的映射条目。
6.根据权利要求5所述的方法,其特征在于, 如果所述边界路由器在自己的映射缓存中没有查找到所述目的IP地址匹配的映射条目,则所述边界路由器将所述数据报文发送给就近的注册代理。
7.一种报文转发装置,其特征在于,所述报文转发装置位于转发网络中,包括: 接收单元,用于接收边界路由器发送的注册请求,所述注册请求携带有边缘网络的路由前缀信息; 注册单元,用于根据所述注册请求生成所述边缘网络的路由前缀和所述边界路由器的映射表; 存储单元,用于存储所述映射表。
8.根据权利要求7所述的装置,其特征在于,还包括: 解析单元,用于解析接收单元转发的数据报文,获得所述数据报文的目的IP地址,并将所述数据报文的目的IP地址发送给查询单元; 查询单元,用于根据接收单元转发的查询请求查询所述映射表,获得与所述数据报文的目的IP地址对应的边界路由器信息。
9.根据权利要求7或8所述的装置,其特征在于,还包括: 转发单元,用于将查询报文中指定的需要查询的目的IP地址对应的边界路由器信息发送给发起映射信息查询请求的边界路由器。
10.根据权利要求7所述的装置,其特征在于,还包括: 查询单元,用于根据接收单元转发的查询请求查询所述映射表,获得与数据报文的目的IP地址对应的边界路由器信息。
11.一种边界路由器,其特征在于,所述边界路由器位于边缘网络中,包括: 注册单元,用于发起注册请求,所述注册请求中携带有边缘网络的路由前缀信息; 接收单元,用于接收数据报文; 解析单元,用于解析所述数据报文并获得该数据报文的目的IP地址信息; 查询单元,用于发起查询数据报文的目的IP地址对应的边界路由器的映射信息查询请求,携带解析单元解析出的目的IP地址信息; 所述接收单元还用于接收所述数据报文的目的IP地址最长匹配的路由前缀对应的边界路由器信息; 所述边界路由器还包括转发单元,用于根据缓存单元中与数据报文的目的IP地址最长匹配的路由前缀对应的边界路由器信息转发数据报文。
12.一种报文转发装置,其特征在于,包括: 注册单元,用于根据接收到的映射注册消息生成边缘网络的路由前缀和边界路由器的映射表。 存储单元,用于存储所述映射表; 转发单元,用于根据所述映射表转发数据报文; 其中,所述报文转发装置具体是注册代理,所述注册代理位于转发网络,所述边缘网络通过所述边界路由器连接到所述转发网络上。
13.根据权利要求12所述的报文转发装置,其特征在于,还包括: 同步单元,用于和同一转发网络内或者同一群组内的其他报文转发装置同步注册生成的映射表。
14.根据权利要求12或者13所述的报文转发装置,其特征在于,还包括: 查询单兀,用于根据接收的映射信息查询报文,查询所述映射表中与所述映射信息查询报文中指定的IP地址匹配的映射信息或者根据所述数据报文的目的IP地址查询所述映射表,获得与所述数据报文的目的IP地址对应的映射信息。
15.根据权利要求12至14中任一所述的报文转发装置,其特征在于,还包括: 解析单元,用于解析接收到的数据报文,获得该数据报文的目的IP地址,并将所述数据报文的目的IP地址发送给查询单元;此外,解析接收到的映射信息查询报文,获得该报文指定的被查询的IP地址; 响应单元,将查询单元返回的映射信息查询结果返回给映射信息查询报文的发送者。
16.一种报文转发装置,其特征在于,所述报文转发装置具体为注册代理RA,所述报文转发装置包括: 接收单元,用于接收边界路由器发送的注册请求,所述注册请求携带有边缘网络的路由前缀信息; 注册单元,用于根据所述注册请求生成边缘网络的路由前缀和边界路由器的映射表。 存储单元,用于存储所述映射表。
17.根据权利要求16所述的装置,其特征在于, 还包括同步单元,用于在网络中存在多个报文转发装置时,和同一转发网络内或者同一报文转发装置群组内的其他网络设备同步注册形成的映射表。
18.根据权利要求16或17所述的装置,其特征在于, 还包括查询单元,用于根据接收单元转发的查询请求查询所述映射表,获得与数据报文的目的IP地址对应的边界路由器信息。
19.根据权利要求16至18中任一所述的装置,其特征在于, 还包括解析单元,用于解析接收单元转发的数据报文,获得该数据报文的目的IP地址,并将所述数据报文的目的IP地址发送给查询单元,该查询单元用于根据所述数据报文的目的IP地址查询所述映射表,获得与所述数据报文的目的IP地址对应的边界路由器信息
20.根据权利要求16至19中任一所述的装置,其特征在于, 还包括转发单元,用于将接收单元接收的数据报文转发给查询到的该数据报文的目的IP地址对应的边界路由器,或者将查询报文中指定的需要查询的目的IP地址对应的边界路由器信息发送给发起映射信息查询请求的边界路由器。
21.一种在转发网络中存储路由的方法,其特征在于,包括: 注册代理接收边缘网络的边界路由器发送的注册请求,所述注册请求中携带有所述边缘网络的路由前缀信息,所述注册代理位于所述转发网络,所述边缘网络通过所述边界路由器连接到所述转发网络上; 所述注册代理根据所述注册请求,生成所述边缘网络的路由前缀与所述边界路由器的映射表项。
22.根据权利要求21所述的方法,其特征在于,当所述转发网络内存在多个注册代理时,所述方法进一步包括所述多个注册代理同步注册生成的映射表的步骤; 所述多个注册代理通过同一个IP地址对外提供服务。
23.根据权利要求21所述的方法,其特征在于,当所述转发网络内存在多个注册代理群组,所述每个注册代理群组管理不同的地址区域时,所述方法进一步包括每个注册代理群组内的注册代理同步注册生成的映射表的步骤; 所述每个注册代理群组内的注册代理通过同一个IP地址对外提供服务。
24.—种转发报文的方法,其特征在于,包括: 注册代理接收数据报文,解封装所述数据报文,获得该数据报文的目的IP地址,所述注册代理位于转发网络,所述数据报文是边界路由器发送的,所述所述注册代理是就近的注册代理; 所述注册代理查询自身的映射表,得到与所述目的IP地址边缘网络前缀路由对应的边界路由器信息; 所述注册代理向与所述目的IP地址对应的边界路由器发送数据报文。
25.根据权利要求24所述的方法,其特征在于,所述注册代理接收数据报文具体为注册代理通过任播方式接收该数据报文。
26.根据权利要求24或25所述的方法,其特征在于,所述方法还包括: 注册生成边缘网络的路由前缀与边界路由器的映射表; 当存在多个注册代理时,在所述多个注册代理的映射表之间进行同步处理; 当存在多个注册代理群组,在每个注册代理群组内的多个注册代理的映射表之间进行同步处理。
27.—种网络系统,包括边缘网络和转发网络,所述边缘网络通过边界路由器连接到所述转发网络,其特征在于,所述转发网络内设置有注册代理, 所述边界路由器用于向所述注册代理发起注册边缘网络的路由前缀与边界路由器映射关系的注册请求; 所述注册代理响应所述注册请求,生成并存储边缘网络的路由前缀与边界路由器的映射表。
28.根据权利要求27所述的网络系统,其特征在于,当所述转发网络内设置有多个注册代理时,所述多个代理通过同一个IP地址对外提供服务并同步注册形成的映射表。
29.根据权利要求27所述的网络系统,其特征在于,当所述转发网络内设置有多个注册代理,并且所述多个注册代理根据管理的地址区域划分为多个注册代理群组时,所述每个注册代理群组内的注册代理服务器通过同一个IP地址对外提供服务并在群组内同步注册生成的映射表。
【文档编号】H04L12/741GK103973572SQ201410189444
【公开日】2014年8月6日 申请日期:2007年9月17日 优先权日:2007年9月17日
【发明者】徐小虎 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1