一种在虚拟路由器之间实现路由通告的方法及物理路由器的制作方法

文档序号:7713707阅读:201来源:国知局
专利名称:一种在虚拟路由器之间实现路由通告的方法及物理路由器的制作方法
技术领域
本发明涉及虚拟路由器技术领域,尤其涉及一种在虚拟路由器之间实现路由通告
的方法及物理路由器。
背景技术
最近,一些有关网络协议(Internet Protocol,简称IP)骨干网络设备的新技术突破,为将来因特网新服务的实现铺平了道路。虚拟路由器就是一种新技术,它使一些新型因特网服务成为可能。通过这些新型服务,用户将可以对网络的性能、因特网地址和路由以及网络安全等进行控制。以色列RND网络公司是一家提供从局域网到广域网解决方案的厂商,该公司最早提出了虚拟路由的概念。 在一个物理路由器上,可以形成多个逻辑上的虚拟路由器,每个虚拟路由器都单独地运行各自的路由协议实例,并且都有自己专用的I/O端口 、缓存、地址空间、路由表和网络管理软件。虚拟骨干路由器,可以为客户提供成本低廉的专用骨干网控制和安全管理功能。控制和管理虚拟路由设备的软件是采用模块化设计的,如果这些软件运行在真正的、多进程的操作系统上(如UNIX),那么它还支持多实例,也就是说它可以同时支持多个虚拟路由器。每个虚拟路由器的进程与其它路由器的进程都是相互分开的,其使用的内存也受到操作系统的保护,从而保证了数据的高度安全性;同时,还消除了由于软件模块的不完善所造成的与其它虚拟路由器之间的数据碰撞的可能性。 许多载波级路由器与高速的同步光纤网络(SONET)或同步数字层级(SDH)网络连接进行分组转发时,都是靠硬件来实现线速性能的。而对于使用虚拟路由功能的系统而言,这些硬件功能都可以被逻辑细分;还可以灵活地将其配置给某一个专用的虚拟路由器。具有虚拟路由功能的软件模块,可以完全控制数据分组发送和接收的物理端口及交换路径。虚拟路由器的分组缓存和交换表的大小,受到其所占用资源大小的限制,之所以这样做,是为了保证虚拟路由器之间不会相互影响。虚拟路由技术使得每个虚拟路由器各自单独地执行路由协议软件实例(如0SPF, BGP)和网络管理软件的实例(例如SNMP或命令行),因此,用户对每个虚拟路由器都可以独立地进行监视和管理。独立运行网络协议实例,使得每个虚拟路由器都拥有一个完全独立的IP地址域,相互之间不会产生任何冲突。每个虚拟路由器都可以作为一个单独运行的实体来进行管理,其提供的基于用户的安全模块,可以保证属于某个虚拟路由器的所有网络管理功能和信息都只对具有权限的用户开放。另外,每个虚拟路由器的分组转发路径也都是相互独立的,这使得管理员可以分别为每个虚拟路由器单独配置性能。 通过虚拟路由器,大的通信突发数据流只会对本路由器产生影B向,而不会影响到
其它的路由器,从而为终端用户能够得到稳定的网络性能提供了保障。此外,虚拟路由器同时还提供独立的策略禾口 IETFDS(Internet EngineeringTask Force DifferentiatedService)能力,使虚拟路由器可以为终端用户提供完全的客户化服务。通过给虚拟路由器的1/0端口进行配置,可以对接收的分组进行计数,这样就能够保证数据量不会超越预先确定的协议;同时虚拟路由器还可以根据数据分组的服务等级不同,将其数据分组分配到 不同的队列中,以实现不同的服务质量。 随着虚拟路由器的发展,迫切需要同一台物理路由器的某些虚拟路由器间能够互 相通告路由。传统的方式中在路由器间有物理的连线才可以建立邻居。而同一台物理路由 器的虚拟路由器拥有相同的冗余协议(RP),所以应该可以通过建立内容的虚拟链接来建立 邻居。 在中国总参谋部的未来组网中会应用虚拟路由器,而且也需要同 一 台物理路由器 的某些虚拟路由器间能够互相通告路由。同时总参明确要求必须实现虚拟路由器本地通过 非直连的接口建立路由协议邻居。

发明内容
为了解决上述问题,本发明提供了一种在虚拟路由器之间实现路由通告的方法及 物理路由器,在同一台物理路由器的虚拟路由器间建立路由协议邻居,节省物理接口的占 用。 为了解决上述技术问题,本发明提供了一种在虚拟路由器之间实现路由通告的方 法,包括在同一台物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通 路,虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另一端的虚拟路由器 进行路由通告。
进一步地,上述方法还具有以下特点 为每个虚拟路由器设置虚拟路由器标识,设置所述通用路由封装通路的源网络协 议地址为所述通用路由封装通路一端的虚拟路由器的标识,设置所述通用路由封装通路的 目的网络协议地址为所述通用路由封装通路另一端的虚拟路由器的标识。
进一步地,上述方法还具有以下特点 为每个虚拟路由器设置虚接口,虚拟路由器通过所述通用路由封装通路发送路由 通告时,将所述路由通告的内容封装在通用路由封装通路消息中发送,将本虚拟路由器的 标识作为通用路由封装通路消息的外层源网络协议地址,将目的虚拟路由器的标识作为通 用路由封装通路消息的外层目的网络协议地址,将本虚拟路由器的虚接口的地址作为通用 路由封装通路消息的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报 文的目的地址作为通用路由封装通路消息的内层目的网络协议地址。
进一步地,上述方法还具有以下特点 封装于通用路由封装通路内层的路由协议报文是以下消息中的一种开放最短路 径优先协议消息、边界网关协议消息、或者路由信息协议消息。
进一步地,上述方法还具有以下特点 虚拟路由器间具有物理实接口时,虚拟路由器通过所述物理实接口和/或所述通 用路由封装通路进行路由通告。 为了解决上述技术问题,本发明提供了一种在虚拟路由器之间实现路由通告的物 理路由器,包括虚拟路由器配置模块,虚拟路由器管理模块;所述虚拟路由器配置模块,用 于在所述物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通路;所述 虚拟路由器管理模块,用于控制虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另 一端的虚拟路由器进行路由通告。
进一步地,上述物理路由器还具有以下特点 所述虚拟路由器配置模块,还用于为每个虚拟路由器设置虚拟路由器标识,设置 所述通用路由封装通路的源网络协议地址为所述通用路由封装通路一端的虚拟路由器的 标识,设置所述通用路由封装通路的目的网络协议地址为所述通用路由封装通路另一端的 虚拟路由器的标识。
进一步地,上述物理路由器还具有以下特点 所述虚拟路由器配置模块,还用于为各虚拟路由器配置板卡资源和接口资源。
进一步地,上述物理路由器还具有以下特点 所述虚拟路由器配置模块,还用于为每个虚拟路由器设置虚接口 ;所述虚拟路由 器管理模块,用于控制虚拟路由器通过所述通用路由封装通路发送路由通告时,将所述路 由通告的内容封装在通用路由封装通路消息中发送,将本虚拟路由器的标识作为通用路由 封装通路消息的外层源网络协议地址,将目的虚拟路由器的标识作为通用路由封装通路消 息的外层目的网络协议地址,将本虚拟路由器的虚接口的地址作为通用路由封装通路消息 的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报文的目的地址作为 通用路由封装通路消息的内层目的网络协议地址。
进一步地,上述物理路由器还具有以下特点 封装于通用路由封装通路内层的路由协议报文是以下消息中的一种开放最短路 径优先协议消息、边界网关协议消息、或者路由信息协议消息。 本发明,不需要在同一台物理路由器的虚拟路由器间占用物理端口,即可以在同 一台物理路由器的虚拟路由器间建立路由协议邻居,进行路由通告,节省物理接口的占用。


图1是实施例中物理路由器的结构示意图; 图2是实施例中在虚拟路由器之间实现路由通告的方法流程图。
具体实施例方式
如图1所示,在虚拟路由器之间实现路由通告的物理路由器,包括虚拟路由器配 置模块,虚拟路由器管理模块; 所述虚拟路由器配置模块,用于在所述物理路由器上建立虚拟路由器,在虚拟路
由器之间建立通用路由封装通路;还用于为每个虚拟路由器设置虚拟路由器标识和虚接
口,设置所述通用路由封装通路的源网络协议地址为所述通用路由封装通路一端的虚拟路
由器的标识,设置所述通用路由封装通路的目的网络协议地址为所述通用路由封装通路另
一端的虚拟路由器的标识;还用于为各虚拟路由器配置板卡资源和接口资源。 所述虚拟路由器管理模块,用于控制虚拟路由器通过所述通用路由封装通路向所
述通用路由封装通路另一端的虚拟路由器进行路由通告;还用于控制虚拟路由器通过所述
通用路由封装通路发送路由通告时,将所述路由通告的内容封装在通用路由封装通路消息
中发送,将本虚拟路由器的标识作为通用路由封装通路消息的外层源网络协议地址,将目
的虚拟路由器的标识作为通用路由封装通路消息的外层目的网络协议地址,将本虚拟路由
6器的虚接口的地址作为通用路由封装通路消息的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报文的目的地址作为通用路由封装通路消息的内层目的网络协议地址。 在同 一 台物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通路,虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另一端的虚拟路由器进行路由通告。 如图2所示,在虚拟路由器之间实现路由通告的方法具体包括以下步骤
步骤201,在同一台物理路由器上建立虚拟路由器; 为虚拟路由器分配板卡资源及接口资源,是保证虚拟路由器运行的必要条件。 步骤202,为每个虚拟路由器设置虚拟路由器标识(VRID)以及虚接口 ; 虚拟路由器标识用于唯一确定一虚拟路由器。例如配置第一虚拟路由器(VR1)的
VRID为A.B,配置第二虚拟路由器(VR2)的VRID为C.D。 VRID可以配置的最大值为65535。
对于一台物理路由器在实际应用中远远满足需要。 步骤203,在虚拟路由器之间建立通用路由封装(GenericRoutingEnc即sulation,简称GRE)通路,设置此通用路由封装通路的源网络协议地址为此通用路由封装通路一端的虚拟路由器的标识,设置所述通用路由封装通路的目的网络协议地址为所述通用路由封装通路另一端的虚拟路由器的标识。 步骤204,虚拟路由器通过所述通用路由封装通路发送路由通告时,将所述路由通告的内容封装在通用路由封装通路消息中发送,将本虚拟路由器的标识作为通用路由封装通路消息的外层源网络协议地址,将目的虚拟路由器的标识作为通用路由封装通路消息的外层目的网络协议地址,将本虚拟路由器的虚接口的地址作为通用路由封装通路消息的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报文的目的地址作为通用路由封装通路消息的内层目的网络协议地址。 封装于通用路由封装通路内层的路由协议报文是以下消息中的一种开放最短路径优先协议消息(Open Shortest Path First,简称OSPF)、边界网关协议消息(BorderGateway Protocol, BGP)、路由信息协议消息(Routinglnformation Protocol, RIP)。
上述方法,通过虚拟路由器间的GRE通路实现路由通告的交互,不需要在同一台物理路由器的虚拟路由器间占用物理端口,即可以在同一台物理路由器的虚拟路由器间建立路由协议邻居,进行路由通告,节省物理接口的占用。 另外,虚拟路由器间具有物理实接口时,虚拟路由器可以通过所述物理实接口和/或所述通用路由封装通路进行路由通告。 下面,以两个虚拟路由器以及OSPF协议消息交互为例具体说明上述方法,具体包括以下步骤 步骤l,在同一台物理路由器上建立虚拟路由器1 (VR1)和虚拟路由器2(VR2);
步骤2,为VR1和VR2分别配置标识和虚接口 ;检查VRID是否在本路由器上重复,若重复会提示VRID重复的告警,不重复则进入步骤3。 例如,配置VR1的标识是VRID1 (格式为0. 0. A. B) , VR2的标识是VRID2 (格式为0. 0. C. D)。 在VR1 、 VR2上分别创建2个虚接口 loopbackl 、 loopback2。
步骤3, VR1 、 VR2创建成功。 步骤4,为VR1、VR2绑定板卡资源,将接口板1绑入VR1,将接口板2绑入VR2。检 查是否有可用的板卡、接口资源。没有可用的板卡则提示错误,退出。有可用的板卡则进入 步骤5。 步骤5,创建GRE通路。 例如在VR1上指定GRE通路的源ip为本VR的VRID (格式为0. 0. A. B),目的ip为 另一个VR的VRID(格式为0.0.C.D)。 VR2对称配置。若创建成功,则进入步骤6,否则,创 建失败,结束流程; 步骤6 ,路由协议报文被封装进GRE通路信息中发送。 以hello包为例GRE的外层源IP为本VR的VRID,外层目的IP为另一个VR 的VRID ;内层源IP为本VR的虚接口的地址,内层目的IP为0SPFhello的组播地址 224. 0. 0. 5。 步骤7 ,经过GRE通路将报文发送给另一 VR处理。 步骤9,收到报文的VR对GRE通路信息解封装,去掉GRE的外层IP,解析内层IP 报文。按照OSPF hello包的方式获取协商信息。将本端的OSPFhello包封装进GRE通路, 送回邻居。 步骤IO,hello包经过GRE tunnel正常的交互,随后正常的交互OSPF其他的建链 包,直至邻居full。其他动态协议的协商也是同样的过程。从而实现了虚拟路由器本地通 过非直连的接口建立路由协议邻居,流程结束。 在上述具体实施例中,还可以在虚接口的接口模式下配置增加协议包出接口为 GRE tunnel的命令。是为了让实接口 、子接口与其他路由器、本路由器的其他VR有物理连 线时,也会从该实接口 、子接口正常发出协议报文。即若实接口、子接口既要建立基于物理 链路的协议邻居,又要建立经GREt皿nel的协议邻居,协议报文会从实接口 、子接口经物理 链路发出,也会从GRE tunnel发出。例如,在虚接口下配置增加OSPF报文出接口的命令 ipospfout-interface tunnel 1 。这样建立VR间的接口如果为实接口 ,则OSPF报文会从实 接口、GRE tunnel都发出 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
8
权利要求
一种在虚拟路由器之间实现路由通告的方法,其特征在于,包括在同一台物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通路,虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另一端的虚拟路由器进行路由通告。
2. 如权利要求l所述的方法,其特征在于,为每个虚拟路由器设置虚拟路由器标识,设置所述通用路由封装通路的源网络协议地址为所述通用路由封装通路一端的虚拟路由器的标识,设置所述通用路由封装通路的目的网络协议地址为所述通用路由封装通路另一端的虚拟路由器的标识。
3. 如权利要求2所述的方法,其特征在于,为每个虚拟路由器设置虚接口,虚拟路由器通过所述通用路由封装通路发送路由通告时,将所述路由通告的内容封装在通用路由封装通路消息中发送,将本虚拟路由器的标识作为通用路由封装通路消息的外层源网络协议地址,将目的虚拟路由器的标识作为通用路由封装通路消息的外层目的网络协议地址,将本虚拟路由器的虚接口的地址作为通用路由封装通路消息的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报文的目的地址作为通用路由封装通路消息的内层目的网络协议地址。
4. 如权利要求3所述的方法,其特征在于,封装于通用路由封装通路内层的路由协议报文是以下消息中的一种开放最短路径优先协议消息、边界网关协议消息、或者路由信息协议消息。
5. 如权利要求3所述的方法,其特征在于,虚拟路由器间具有物理实接口时,虚拟路由器通过所述物理实接口和/或所述通用路由封装通路进行路由通告。
6. —种在虚拟路由器之间实现路由通告的物理路由器,其特征在于,包括虚拟路由器配置模块,虚拟路由器管理模块;所述虚拟路由器配置模块,用于在所述物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通路;所述虚拟路由器管理模块,用于控制虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另一端的虚拟路由器进行路由通告。
7. 如权利要求6所述的物理路由器,其特征在于,所述虚拟路由器配置模块,还用于为每个虚拟路由器设置虚拟路由器标识,设置所述通用路由封装通路的源网络协议地址为所述通用路由封装通路一端的虚拟路由器的标识,设置所述通用路由封装通路的目的网络协议地址为所述通用路由封装通路另一端的虚拟路由器的标识。
8. 如权利要求7所述的物理路由器,其特征在于,所述虚拟路由器配置模块,还用于为各虚拟路由器配置板卡资源和接口资源。
9. 如权利要求8所述的物理路由器,其特征在于,所述虚拟路由器配置模块,还用于为每个虚拟路由器设置虚接口 ;所述虚拟路由器管理模块,用于控制虚拟路由器通过所述通用路由封装通路发送路由通告时,将所述路由通告的内容封装在通用路由封装通路消息中发送,将本虚拟路由器的标识作为通用路由封装通路消息的外层源网络协议地址,将目的虚拟路由器的标识作为通用路由封装通路消息的外层目的网络协议地址,将本虚拟路由器的虚接口的地址作为通用路由封装通路消息的内层源网络协议地址,将封装于通用路由封装通路内层的路由协议报文的目的地址作为通用路由封装通路消息的内层目的网络协议地址。
10.如权利要求8所述的物理路由器,其特征在于,封装于通用路由封装通路内层的路由协议报文是以下消息中的一种开放最短路径优先协议消息、边界网关协议消息、或者路由信息协议消息。
全文摘要
本发明公开了一种在虚拟路由器之间实现路由通告的方法及物理路由器,包括在同一台物理路由器上建立虚拟路由器,在虚拟路由器之间建立通用路由封装通路,虚拟路由器通过所述通用路由封装通路向所述通用路由封装通路另一端的虚拟路由器进行路由通告。本发明不需要在同一台物理路由器的虚拟路由器间占用物理端口,即可以在同一台物理路由器的虚拟路由器间建立路由协议邻居,进行路由通告,节省物理接口的占用。
文档编号H04L12/56GK101695041SQ20091017567
公开日2010年4月14日 申请日期2009年9月21日 优先权日2009年9月21日
发明者刘明慧, 刘鹏, 陈宁涛 申请人:中兴通讯股份有限公司;
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1