专利名称:Mpls虚拟专用网络拓扑的配置工具的制作方法
技术领域:
本公开一般涉及虚拟专用网络。
背景技术:
虚拟专用网络(VPN)是通过与其它VPN共享的网络基础设施彼此 通信的客户站点的集合。在VPN中,站点共享共同的路由信息。如果给 定站点保存了来自不同VPN的路由,则它可以属于多于一个VPN。这提 供了建立内联网和外联网以及任何其它拓扑的能力。多协议标签交换 (MPLS) VPN使用由基于因特网协议(IP) MPLS/边界网关协议 (BGP)的网络提供的网络基础设施。MPLS (多协议标签交换)用于通 过提供商或骨干网络转发分组,而BGP (边界网关协议)用于通过网络分 发路由。MPLS/VPN体系结构中的VPN可以被概念化为由站点将具有的 路由可见度所指定的利益共同体或闭合用户组。MPLS VPN技术支持各种 VPN拓扑,例如轴辐式拓扑(hub and spoke topologies)、中央服务拓扑、 全网状拓扑以及混合拓扑。这些拓扑中实现最复杂并且还被广泛开发的拓 扑是轴辐式拓扑。轴辐式拓扑在客户需要其所有的分支(spoke )流量 (例如,分支到轴心以及分支到分支)经过轴心(hub)网络时使用。
路由目标(RT)用作将路由导入给定虚拟路由和转发(VRF)表并将 路由从给定虚拟路由和转发(VRF)表导出的过滤器,以便建立VPN路 由。RT的分配和管理通常是手动执行的,因此,可能是耗时的并且容易 出错,尤其是当VPN的复杂度增加时(例如,当加入VPN的站点数增加 时)。此外,VRF中的路由的导入/导出时的错误可能因引入不希望的额 外路由而致使VPN功能异常并且不安全。
图1图示出了 MPLS VPN系统中的示例拓扑。
图2图示出了根据一个实施方式示出图1的MPLS VPN系统的一部分 的简化示例。
图3图示出了可以用来实现VPN管理服务器的示例硬件系统。
图4图示出了轴辐式路由目标组(RTG)的示例图形表示。
图5图示出了中央服务RTG的示例图形表示。
图6图示出了全网状RTG的示例图形表示。
图7图示出了可以用来配置轴辐式拓扑的示例RTG。
图8图示出了可以用来配置全网状拓扑的示例RTG。
图9图示出了可以被组合来配置混合拓扑的多个RTG的示例。
图IO图示出了用于处理RT配置信息的示例方法。
图11图示出了用于生成RT配置集的示例方法。
具体实施方式
A.概述
特定实施方式辅助配置部署在提供商或核心网络上的虚拟专用网络 (VPN)。根据一个实施方式,VPN配置模块从一个或多个路由目标组 (RTG)生成VPN配置信息,包括路由目标导出和/或导入语句 (statement)。在一些特定实施方式中,RTG是模型的要素,该模型辅助 对核心网络的一个或多个路由要素的路由目标信息进行配置。在一些实施 方式中,这种RTG参数可以包括VPN拓扑类型(例如,网状、轴辐式 等)、RTG节点标识符、各个RTG节点的一个或多个角色,以及每个角 色所需的一个或多个路由目标(RT)标识符。例如,RTG节点可以是连 接到给定客户站点(例如,圣何塞)中的客户边缘节点的提供商边缘节 点。角色可以是所选网络拓扑中的角色或功能,例如,轴辐式拓扑中的轴 心节点。如下面更加详细描述的,每个角色与一个或多个路由目标(RT) 导入或导出语句相关联。在一个实施方式中,VPN配置模块接收包括用于 从一个或多个RTG创建VPN的RTG参数的RTG信息。
在一个实施方式中,RT通过控制向一个或多个RTG节点分发BGP信息(例如,网络可达性信息)以实行所希望VPN拓扑而用作过滤器。换
言之,BGP是路由器用来交换路由信息的协议的语言。在一个实施方式 中,VPN配置模块基于RTG参数生成并自动分配RT配置集。这减少了 VPN配置期间的错误并且除去了对用户直接配置RT的需要。为了生成 RT配置集,VPN配置模型标识每个RTG的模型拓扑以及该模型拓扑的 RT。如下面更详细描述的,在一些实施方式中,模型拓扑可能是轴辐式拓 扑、中央服务拓扑、全网状拓扑或混合拓扑。混合拓扑是两个或更多个模 型拓扑的组合(例如,轴辐式拓扑和全网状拓扑的组合)。VPN配置模型 随后基于RTG节点的角色应用配置规则以生成每个RTG节点处的VRF表 的导入和导出语句。在一个示例中,如果给定RTG节点的角色是轴心节 点,则该RTG节点可以具有两个VRF表,其中, 一个VRF表从一个或多 个分支节点导入路由而另一 VRF表将路由导出到一个或多个分支节点。如 果角色是分支节点,则RTG节点可以具有将路由导出到分支节点并从分 支节点导入路由的一个VRF表。VPN配置模块随后将RT配置集推到一个 或多个RTG节点,以配置或实现所希望的VPN拓扑。 一旦建立了VPN, 成员RTG节点就可以经由它们各自已建立的路由来路由IP流量,并且根 据它们的己配置路由目标来共享信息。
B.示例网络系统体系结构 B丄网络拓扑
图1图示出了 MPLS VPN系统中的示例拓扑。在特定实施例中, MPLS VPN系统包括使客户网络72a、 72b、 72c、 72d和72e互连的提供商 网络70。为了容易说明,图1图示出了这样的简单实施方式提供商网络 70通过联合(join)客户站点中的五个(例如,旧金山站点、圣何塞站 点、洛杉矶站点、拉斯维加斯站点以及西雅图站点)来为一个客户提供 VPN。如在下面更详细描述的,在其它实施方式中,提供商网络70可以 为多个客户提供VPN。 VPN还可以被配置来创建内联网或外联网。在一 个实施方式中,提供商网络70经由提供商边缘(PE)路由节点76a、 76b、 76c、 76d和76e联合客户边缘(CE)节点74a、 74b、 74c、 74d和
774e。如图1所示,PE路由节点76a-e驻留在提供商网络70的边缘,并且 用作提供商网络70与客户网络72a-e之间的接口。而且,CE节点74a-e驻 留在它们各自的客户网络72a-e的边缘,并且用作客户网络(子网)(未 示出)和提供商网络70之间的接口。在一个实施方式中,CE节点74a-e 是路由器。
在一个实施方式中,MPLS VPN系统还包括VPN管理服务器77,其 通常安装在MPLS VPN服务提供商的网络操作中心(NOC)或数据中 心。在一个实施方式中,VPN管理服务器77包括辅助配置提供商网络70 以提供一个或多个VPN的VPN配置模块78。 VPN配置模块78可以驻留 在管理服务器或任何其它适当的网络基础设施节点中。在一个实施方式 中,VPN配置模块78可以是驻留在服务器或网络操作中心上的独立模 块,或者是集成网络管理解决方案的一部分。
在一个实施方式中,网络70以及72a-e —般指可以包括一个或多个允 许传输消息的中间网络设备(例如,路由器、交换机等)、基于分组的计 算机网络。图2图示出了根据一个实施方式示出图1的MPLS VPN系统的 一部分的简化示例。在一个实施方式中,提供商网络70包括可操作地 连接到San Francisco站点处的CE节点74a的PE路由节点76a,以及可操 作地连接到圣何塞站点处的CE节点74b的PE路由节点76b。为了教导的 目的,图l还示出了提供商核心路由节点80a、 80b和80c。当然,网络70 和72可以包括多种网络段、传输技术和组件,例如地面有线链路、卫星 链路、光纤链路以及蜂窝链路。图1图示出了本发明可以进行操作的一种 可能网络环境;然而,其它实施方式也是可能的。
如在下面更详细描述的,本发明可以被配置来向边缘路由节点提供路 由目标信息以实现所希望的VPN拓扑。提供商边缘路由节点74a-e可以包 括包含虚拟路由和转发(VRF)功能的边缘路由器平台,可操作来容宿一 个到多个分离路由器实例和/或路由表实例。在一个实施方式中, 一个或多 个VRF表可以用作给定物理路由器内的许多虚拟路由器之一。换言之, PE路由节点维护一个或多个"按站点转发表"或"VRF表"。附接了 PE 路由器的每个站点与这些VRF表之一相关联。仅当特定分组是直接从与特定的按站点转发表相关联的站点到达时,在该表中查找该分组的IP目的地 地址。
这些虚拟路由器共同存在于同一物理路由器内并且同时操作,并且跨
越多个路由平台的一个或多个虚拟路由器可以被分配给给定客户的VPN。 这通过允许不用多个设备而将不同VPN的网络路径分段来增加每个物理 路由器的功能。在一个实施方式中,VRF表确保IP流量存留在正确的 VPN中。在一些特定实施方式中,由于流量自动被隔离,因此,VRF还增 加了网络安全性并且可以消除对加密和认证的需要。另外,容宿在给定边 缘路由器上的一个VRF实例可以对应于第一客户,而容宿在该边缘路由器 上的第二 VRF实例可以对应于第二客户。此外,多个VRF实例可以与给 定站点相关联。因此,本发明可以总地结合提供商边缘路由器进行操作, 或者可以结合特定于给定客户或其它实体的VRF实例进行操作。
在一个实施方式中,PE路由节点76a和76b是基于IP MPLS/BGP网 络的一部分,其中,BGP信息提供网络层可达性信息(NLRI)(例如, 通过给定路由节点可达的网络)。这样,各个站点处的VRF表存储了来自 该站点是其成员的VPN的、对该站点可用的所有路由。
VRF包括IP路由表、得出的转发表、使用转发表的一组接口,以及 确定什么进入转发表的一组规则和路由协议。 一般地,VRF包括定义了附 接到提供商边缘(PE)路由器的客户VPN站点的路由信息。VRF是应当 可供连接到PE路由器的特定站点(或站点集)使用的路由集合。
在BGP/MPLS IP VPN中,PE路由器使用路由目标(RT )扩展型共同 体来控制向VRF分发路由。在给定iBGP网络内,PE路由器仅需要保存 标记有属于具有本地CE附接关系的VRF的路由目标的路由。接收到的路 由目标成员资格信息随后可以用来限制将VPN NLRI通告给己通告了它们 各自的路由目标的对等体,从而高效地建立路由分发图表。换言之,VPN NLRI路由装置在路由目标成员资格信息的相反方向上流动。在一些实施 方式中,当VRF路由从VRF被导出(以提供给其它VRF)时,其被标记 有一个或多个路由目标。另外,路由目标集可以与VRF相关联,并且被标 记有这些路由目标中的至少一个的所有路由被插入该VRF。换言之,存在由PE路由器附加到从给定站点接收的路由的目标VPN集。并且,存在这 样的目标VPN集,被PE路由器用来判断从另一 PE路由器接收的路由是 否应当被放在与站点相关联的转发表中。两个集是不同的,并且不需要是 相同的。通过适当地配置路由目标,可以构建不同种类的VPN。例如,假 设希望创建包含特定集的站点的网状网络拓扑。这可以通过创建表示网状 网络的特定路由目标值来实现。然后将该值与网状网络中的每个站点的按 站点转发表和/或从网状网络中的站点得知的路由相关联。具有这种路由目 标属性的任何路由被重新分发,以使得其到达附接于该网状网络中的站点 之一的每个PE路由器。或者,假设有人希望创建"轴辐式"网络拓扑。 这可以通过利用两个路由目标属性值(一个对应于"轴心",并且一个对 应于"分支")来实现。然后,来自分支的路由可以被分发给轴心,而不 用使来自轴心的路由被分发给分支。
B.2. VPN管理服务器
图3图示出了可以用来实现VPN管理服务器的示例硬件系统200。在 一个实施方式中,这里描述的VPN配置功能容宿在网络可寻址服务器或 其它计算平台上。用户利用通用或专用客户端应用来访问VPN配置功 能。在其它实施方式中,VPN配置功能可以容宿在客户端系统上。在一个 实施方式中,硬件系统200包括处理器202、缓存存储器204以及针对这 里描述的功能的一个或多个软件应用(包括图1所示的VPN配置模块 78)和驱动器。另外,硬件系统200包括高性能输入/输出(I/O)总线206 和标准I/O总线208。主桥接器210将处理器202耦合到高性能总线206, 而I/O总线桥接器212使两条总线206和208互相耦合。系统存储器214 和网络/通信接口 216耦合到总线206。硬件系统200还可以包括视频存储 器(未示出)以及耦合到视频存储器的显示设备。海量存储装置218和 1/0端口 220耦合到总线208。硬件系统200可以选择性地包括耦合到总线 208的键盘和点选设备(未示出)。总而言之,这些元件意图代表广泛种 类的计算机硬件系统,包括但不限于基于加利福尼亚州圣克拉拉市的英特 尔公司制造的Pentium⑧处理器以及任何其它合适的处理器的通用计算机系统。
下面将更详细描述硬件系统200元件。具体地,网络接口216提供硬 件系统200与诸如以太网(例如,IEEE 802.3)网络等之类的广泛范围网 络之间的通信。海量存储装置218提供对用来执行在系统控制器中实现的 上述功能的数据和编程指令的永久性存储,而系统存储器214 (例如, DRAM)提供对被处理器202执行时的数据和编程指令的临时存储。I/O 端口 220是提供可以耦合到硬件系统200的其它外围设备之间的通信的一 个或多个串行和/或并行通信端口 。
硬件系统200可以包括多种系统体系结构;并且硬件系统200的各个 组件可以被重新排列。例如,缓存204可以与处理器202 —起在片上。或 者,缓存204和处理器202可以被封装在一起作为"处理器模块",其 中,处理器202称为"处理器核心"。此外,本发明的某些实施方式可能 不需要也不包括所有上述组件。例如,被示为耦合到标准I/O总线208的 外围设备可以耦合到高性能I/O总线206。另外,在一些实施方式中,可 能仅存在单条总线,其中,硬件系统200的组件都耦合到该单条总线。此 外,硬件系统200可以包括另外的组件,例如另外的处理器、存储设备或 存储器。
如上所述,在一个实施例中,这里描述的VPN管理模块77的操作被 实现为由硬件系统200运行的一系列软件例程。这些软件例程包括将由硬 件系统中的诸如处理器202之类的处理器执行的多条指令或者一系列指 令。最初, 一系列指令存储在诸如海量存储装置208之类的存储设备上。 然而, 一系列指令还可以包括在载波中或者存储在诸如磁盘、CD-ROM、 ROM、 EEPROM等之类的任何合适存储介质上。此外,指令序列不需要 本地存储,并且可以经由网络/通信接口 216从诸如网络上的服务器之类的 远程存储设备接收。指令从诸如海量存储装置208之类的存储设备被拷贝 到存储器214中,并且随后由处理器202访问并执行。
操作系统管理并控制硬件系统200的操作,包括将数据输入软件应用 (未示出)以及从软件应用(未示出)输出数据。操作系统提供了在系统 上执行的软件应用与系统的硬件组件之间的接口。根据本发明的一个实施例,操作系统是可从Redmond, Wash的微软公司获得的Windows 95/98/NT/XP/Vista操作系统。然而,本发明还可以与其它合适的操作系统 一起使用,例如可从Cupertino, Calif的苹果电脑公司获得的Apple Macintosh操作系统、UNIX操作系统、LINUX操作系统等。
C. VPN路由目标组
如下面更详细描述的,VPN配置模块78利用一个或多个RTG作为构 建块来构建所希望的VPN拓扑。在一个实施方式中,可以通过某些用户 要求来定义RTG,某些用户要求例如是拓扑类型、 一个或多个RTG节点 (与PE路由节点或关联于各个站点的VRF实例相对应)、每个RTG节 点的一个或多个RTG角色(例如,轴心节点、分支节点、网状节点 等),以及一个或多个路由目标标识符。如下面结合图4、 5和6更详细 描述的,每个RTG可以被配置有多个VPN拓扑之一;另外,多个经配置 的RTG可以被组合来构建更复杂的拓扑。
图4图示出了轴辐式RTG的示例图形表示。图4 (以及下面的图5和 图6)中的箭头表示根据各种拓扑类型的站点间的消息流动。 一般地,轴 辐式拓扑是可用拓扑中部署最广泛的拓扑。轴辐式拓扑也是实现最复杂的 拓扑(需要更复杂的路由目标配置),这是因为所有的分支流量(例如, 分支到分支)都经过中央的轴心节点。在一个实施方式中,轴心节点通常 实行诸如安全性和访问控制之类的策略,并且还监视所有的分支流量。在 一个实施方式中,具有轴辐式拓扑的VPN通常使用中央轴心站点处的安 全性服务(过滤器)、流量登记和/或计费系统、入侵检测系统,以及分支 站点因特网访问。
图5图示出了中央服务RTG的示例图形表示。中央服务拓扑与轴辐 式拓扑的类似之处在于客户端站点不能彼此通信,而仅可以与一个中央站 点通信。图6图示出了全网状RTG的示例图形表示。如图6所示,任何一 个网状节点都可以向任何其他网状节点发送流量并从任何其它网状节点接 收流量。如下面结合图7和图8更详细描述的,RTG辅助构建并部署 VPN,而用户不必直接配置RT。
图7图示出了根据一个实施方式可以用来配置轴辐式拓扑的示例RTG400,轴辐式拓扑可由VPN配置模块78用来构建VPN。如图7所示, RTG 400 (例如,RTG1)包括被指派了 RTG 400的轴心节点(例如, RT1-H) RTG角色的节点402。 RTG 400还包括每个都被指派了 RTG 400 的分支节点(例如,RTG-S) RTG角色的分支节点404a、 404b、 404c、 404d和404e。在一个实施方式中,如果VPN管理模块78要向RTG 400 添加任何新的节点,则VPN管理模块78可以指派由RTG定义的RTG角 色之一 (例如,轴心节点或分支节点)。因此,在一个实施方式,类似于 图4所示的拓扑的目标VPN拓扑将仅需要一个RTG。
图8图示出了根据另一实施方式可以用来配置全网状拓扑的示例RTG 500,全网状拓扑可由VPN配置模块78用来构建VPN。如图8所示, RTG (例如,RTG 2)包括节点502a、 502b、 502c和502d,其每个都被指 派了 RTG 500的网状节点(例如,RT2-M) RTG角色。因此,在一个实 施方式中,类似于图5所示的拓扑的目标VPN拓扑将仅需要一个RTG。 在一个实施方式中,如果VPN管理模块78要向RTG 500添加任何新的节 点,则VPN管理模块78可以指派由RTG定义的RTG角色之一 (例如, 网状节点)。
图9图示出了根据另一实施方式可以被组合来配置具有混合拓扑的 VPN的多个RTG的示例。如图9所示,混合拓扑包括RTG的组合。在一 个实施方式中,VPN配置模块78可以使用如下面的示例中的已创建的现 有RTG,或者可以根据需要创建新的RTG。在此特定示例中,这种混合 拓扑是图7的RTG1与图8的RTG2的组合。RTG 600包括每个都被指派 了 RTG 600的网状节点(例如,RT2-M) RTG角色的一组节点602a、 602b、 602c和602d。 RTG 601包括被指派了轴心节点(例如,RTl陽H) RTG角色的节点602c,并且包括每个都被指派了分支节点(例如,RT1-S) RTG角色的节点604a和604b。在一些实施方式中,给定节点可以在 不同RTG上被指派多个RTG角色。例如,如图9所示,节点602c相对于 一个RTG被指派了网状节点(RT2-M)的RTG角色,并且相对于另一 RTG还被指派了轴心节点(RT1-H)的RTG角色。
D.RT配置的生成
13图7、 8和9图形化地图示出了可以如何将RTG用来配置给定VPN, 结合图10和11所示的处理示出了一个或多个VRF实例的路由目标规则 (导入/导出语句)如何被配置来实现已配置的VPN拓扑。图IO图示出了 用于生成RT配置集信息的示例方法,RT配置集信息包括由提供商网络的 PE路由节点容宿的一个或多个VRF实例的路由目标规则。如图IO所示, VPN配置工具允许用户创建新的RTG实例,将站点添加(或重新配置) 到现有的或新创建的RTG实例中,和/或生成RT配置集信息。
一般地,VPN配置工具在可以访问表征核心或提供商网络的一个或多 个属性的网络管理信息的一个或多个源的联网计算环境中操作,网络管理 信息例如是PE路由节点信息、VRF信息以及客户站点信息。VPN配置工 具可以査阅的其它信息源包括核心或提供商网络的BGP信息,以及可用路 由目标标识符和路由区分标识符的一个或多个池。
如图IO所示,用户可以创建新的RTG (1002)。在一些实例中,新 的RTG可以被创建来将新的客户VPN添加到网络,和/或将新的客户站点 添加到现有VPN (其中,向客户VPN添加站点需要混合RTG扩展-例如 参见图9)。例如,为了实现图9的VPN拓扑,用户可以访问配置工具并 且配置两个RTG实例(或者一个RTG实例,如果一个现有RTG实例已经 存在的话)。对于每个RTG, VPN配置工具接收RTG拓扑类型,以及可 用路由目标标识符的名称空间的标识符(1004) 。 VPN配置工具从所标识 的名称空间取回所选拓扑类型所需的多个路由目标标识符(1006)。例 如,对于轴辐式拓扑类型,需要两个路由目标标识符。其它拓扑类型可能 需要更少或更多的路由目标标识符。如图IO所示,VPN配置工具随后在 数据库或文件中创建RTG实例(1008)。可以针对任何所希望数目的新 RTG重复该处理。在RTG被创建之后,用户可以将一个或多个站点关联 到该RTG。
在图IO所示的实施方式中,VPN配置工具允许用户向RTG添加或重 新配置站点。例如,为了添加图9中的站点604a, VPN配置工具可以接收 站点604a的标识、RTG的标识,以及站点在RTG中的角色(在图9中为 轴心),并且将该站点添加到所标识的RTG中(1012)。站点的选择或标识定义了 PE路由节点,以及由PE路由节点容宿的将被配置的VRF实 例。因此,在一个实施方式中,VPN配置工具从可用网络管理信息获取所 需的必要信息,以标识适当的PE路由节点和VRF实例。
在一些实施方式中,VPN配置工具可以基于客户标识符提供用于站点 和RTG的具有有限选择的一组下拉菜单。如图IO所示,当用户希望生成 用于站点和RTG的路由目标配置集时(1014) , VPN配置工具生成新配 置的站点的路由目标配置集,按需生成任何VRF实例的配置信息
(1016)。当生成了路由目标配置集之后,VPN配置工具将路由目标配置 推送到VPN拓扑中的所需VRF (1018)。
图11图示出了用于生成路由目标配置的示例处理流程。VPN配置模 块78基于RTG节点的RTG角色应用配置规则以在每个RTG节点处生成 VRF表的导入和导出语句。如图11所示,当用户希望创建新创建的实体 的路由目标配置时,VPN配置工具针对每个新站点和RTG的关联
(1101),标识RTG的拓扑类型、站点的角色和为RTG保留的路由目标 标识符(1102) 。 VPN配置工具随后基于角色和路由目标标识符生成针对 站点的一个或多个路由目标规则(1104)。如上面所讨论的,路由目标配 置包括VRF实例的路由目标规则或语句,其定义了该VRF实例如何导 入并导出路由目标以及路由目标所属的路由。如上面所讨论的,每个拓扑 类型都定义了如何在VRF间导入和导出路由目标。在一个实施方式中, VPN配置工具包括定义了如何针对每个拓扑类型中的各个角色来导入和导 出路由目标的逻辑。因此,为了生成特定站点的路由目标配置,VPN配置 工具选择为RTG保留的一个或多个路由目标标识符,并且利用与针对站 点所标识的角色相关联的逻辑,来创建定义如何导入和导出一个或多个路 由目标的一个或多个规则。在一个示例中,轴辐式拓扑可以具有下面的规 则。在一个实施方式中, 一个规则可以是对于轴辐式拓扑,轴心站点可 以利用两个VRF表来实现,其中, 一个VRF表用于导入路由(例如, HUB—INVRF)而一个用于导出路由(例如,SPOKE—OUT VRF)。在一 个实施方式中,VRF表可以是半双工表。此外,用于生成轴辐式拓扑的路 由目标语句的规则逻辑可以包括-规则1:标识RTG中的RT: RT1作为用于在轴心站点处导出的RT-h,并且RT2作为用于在分支站点处导出的RT-s。 规则2:如果角色=轴心站点
贝U HUBIN (入轴心)VRF-导入RT-s
SPOKEOUT (出分支)VRF-导出RT-h 如果角色=分支站点
贝廿 SPOKE (分支)VRF -导出RT-s,导入RT-h 应用这些规则产生了三个VRF;两个VRF用于轴心站点并且一个 VRF用于分支站点,如下 VRF HUBIN (导入RT-s); VRF SPOKEOUT (导出RT-h);以及 VRF SPOKE (导出RT-s,导入RT-h)。
可以针对其它基本拓扑类型定义类似规则。用于在VRF中生成导入/ 导出语句的这些规则可以程序化地来应用。对于高级拓扑(通过组合多个 RTG形成的),通过利用站点依据其联合RTG的规则来生成导入/导出 RT语句。
在一个实施方式中,每个RTG节点将RT配置存储在适当的VRF表 或其它适当的数据存储装置中。结果,每个站点的VRF表存储了来自站点 是其成员的VPN的、对该站点可用的所有路由。 一旦建立了 VPN,成员 RTG节点就可以经由它们各自的已建立路由利用BGP和路由因特网协议 (IP)流量来交换路由信息。
如前面所示的,利用RTG为客户简化了 VPN的创建,尤其是对于大 且复杂的VPN中的导入/导出RT的生成。利用RTG还通过消除手动分配 和配置大型服务提供商网络中的RT来使VPN部署安全(例如,无差 错)。因此,这种解决方案降低了服务提供商的运营成本。
已参考特定实施例说明了本发明。例如,虽然本发明的实施例被描述 为结合IEEE 802.il网络进行操作,然而,还可以结合任何合适的无线网 络环境来使用本发明。本领域技术人员容易想到其它实施例。因此,不希 望本发明受到除所附权利要求所指示的以外的限制。
权利要求
1.一种方法,包括访问包括一个或多个路由对象组RTG的网络拓扑配置集,其中,每个RTG包括拓扑类型标识符、一个或多个站点标识符、与站点标识符的各个相关联的一个或多个角色标识符,以及一个或多个路由目标标识符;基于一个或多个RTG的所述拓扑类型标识符和角色标识符生成一个或多个路由目标语句,从而定义虚拟专用网络VPN拓扑中的一个或多个路由节点之间的网络层可达性信息的导出或导入;以及将所述一个或多个路由目标语句发送到一个或多个路由节点。
2. 如权利要求1所述的方法,其中,角色标识符可以标识轴心节点、 分支节点或网状节点。
3. 如权利要求1所述的方法,还包括生成一个或多个新RTG,以将 一个或多个新站点添加到现有虚拟专用网络。
4. 如权利要求1所述的方法,还包括将一个或多个新站点关联到现 有RTG,以将所述一个或多个新站点添加到现有虚拟专用网络。
5. 如权利要求1所述的方法,还包括修改一个或多个RTG,以重新 配置现有虚拟专用网络中的一个或多个站点。
6. 如权利要求1所述的方法,还包括将所述路由目标语句应用到一 个或多个路由节点中的一个或多个虚拟转发和路由实例。
7. 如权利要求1所述的方法,其中,所述拓扑类型标识符是网状拓 扑、轴辐式拓扑或中央服务拓扑中的一个。
8. 如权利要求1所述的方法,其中,所述一个或多个路由节点是容宿 在各个的提供商边缘路由器上的虚拟路由和转发VRF实例。
9. 如权利要求1所述的方法,还包括接收与RTG相对应的RTG标识符以及拓扑标识符; 基于所接收的拓扑标识符访问路由目标标识符池以保留预定数目的路 由目标标识符。
10. 被编码在一个或多个计算机可读介质中并且当被执行时可操作来执行以下操作的软件访问包括一个或多个路由对象组RTG的网络拓扑配置集,其中,每 个RTG包括拓扑类型标识符、 一个或多个站点标识符、与站点标识符的 各个相关联的一个或多个角色标识符,以及一个或多个路由目标标识符;基于一个或多个RTG的所述拓扑类型标识符和角色标识符生成一个 或多个路由目标语句,从而定义虚拟专用网络VPN拓扑中的一个或多个 路由节点之间的网络层可达性信息的导出或导入;以及将所述一个或多个路由目标语句发送到一个或多个路由节点。
11. 如权利要求IO所述的软件,其中,所述软件还可操作来生成一个 或多个新RTG,以将一个或多个新站点添加到现有虚拟专用网络。
12. 如权利要求IO所述的软件,其中,所述软件还可操作来将一个或 多个新站点关联到现有RTG,以将所述一个或多个新站点添加到现有虚拟 专用网络。
13. 如权利要求IO所述的软件,其中,所述软件还可操作来修改一个 或多个RTG,以重新配置现有虚拟专用网络中的一个或多个站点。
14. 如权利要求IO所述的软件,其中,所述软件还可操作来将所述路 由目标语句应用到一个或多个路由节点中的一个或多个虚拟转发和路由实 例。
15. 如权利要求IO所述的软件,其中,所述拓扑类型标识符是网状拓 扑、轴辐式拓扑或中央服务拓扑中的一个。
16. —种装置,包括 一个或多个处理器; 存储器;网络接口;以及管理应用,物理地存储在所述存储器中,所述管理应用包括指令,所 述指令可操作来使得所述一个或多个处理器和所述装置访问包括一个或多个路由对象组RTG的网络拓扑配置集,其中,每 个RTG包括拓扑类型标识符、 一个或多个站点标识符、与站点标识符的 各个相关联的一个或多个角色标识符,以及一个或多个路由目标标识符;基于一个或多个RTG的所述拓扑类型标识符和角色标识符生成一个 或多个路由目标语句,从而定义虚拟专用网络VPN拓扑中的一个或多个 路由节点之间的网络层可达性信息的导出或导入;以及将所述一个或多个路由目标语句发送到一个或多个路由节点。
17. 如权利要求16所述的装置,其中,所述管理应用还包括可操作来 使得所述一个或多个处理器以及所述装置生成一个或多个新RTG,以将一 个或多个新站点添加到现有虚拟专用网络的指令。
18. 如权利要求16所述的装置,其中,所述管理应用还包括可操作来 使得所述一个或多个处理器以及所述装置将一个或多个新站点关联到现有 RTG,以将所述一个或多个新站点添加到现有虚拟专用网络的指令。
19. 如权利要求16所述的装置,其中,所述管理应用还包括可操作来 使得所述一个或多个处理器以及所述装置修改一个或多个RTG,以重新配 置现有虚拟专用网络中的一个或多个站点的指令。
20. 如权利要求16所述的装置,其中,所述管理应用还包括可操作来 使得所述一个或多个处理器以及所述装置将所述路由目标语句应用到一个 或多个路由节点中的一个或多个虚拟转发和路由实例的指令。
21. 如权利要求16所述的装置,其中,所述拓扑类型标识符是网状拓 扑、轴辐式拓扑或中央服务拓扑中的一个。
全文摘要
用于虚拟专用网络(VPN)拓扑的配置工具。在特定实施方式中,方法包括访问包括一个或多个路由对象组(RTG)的网络拓扑配置集,其中,每个RTG包括拓扑类型标识符、一个或多个站点标识符、与站点标识符的各个相关联的一个或多个角色标识符,以及一个或多个路由目标标识符;基于一个或多个RTG的拓扑类型标识符和角色标识符生成一个或多个路由目标语句,从而定义虚拟专用网络VPN拓扑中的一个或多个路由节点之间的网络层可达性信息的导出或导入;以及将一个或多个路由目标语句发送到一个或多个路由节点。
文档编号H04L12/56GK101641913SQ200880008591
公开日2010年2月3日 申请日期2008年3月20日 优先权日2007年3月21日
发明者库特斯瓦尔·饶·莫拉切尔弗, 苏玛拉简·C·拉马克里斯南, 贾玛路丁·努鲁丁·穆罕木德 申请人:思科技术公司