用于在ip网络上实现l2vpn的方法和设备的制作方法

文档序号:7912126阅读:279来源:国知局
专利名称:用于在ip网络上实现l2vpn的方法和设备的制作方法
技术领域
本发明涉及通信网络,并且更具体地涉及用于在网际协议(IP)网络上实现第2层虚拟专用网的方法和设备。
背景技术
数据通信网络可包括连接在一起并且配置为相互传送数据的各种计算机、服务器、节点、路由器、交换机、网桥、集线器、代理和其它网络设备。这些设备在这里将被称作为“网络元件”。通过利用一条或多条通信链路在网络元件之间传送协议数据单元,例如数据帧、分组、单元或段,通过数据通信网络来传送数据。当特定的协议数据单元经由网络在它的源和它的目的地之间移动时,它可由多个网络元件处理并且跨越多条通信链路。通信网络上的各种网络元件使用预定义的规则组(这里称作为协议)相互通信。不同的协议被用于控制通信的不同方面,例如应当如何形成信号用于在网络元件之间传输,协议数据单元应当看起来像什么的各个方面,网络元件应当如何处理分组或通过网络路由分组,以及与路由信息相关的信息应当如何在网络元件之间交换。企业合并和安全性考虑是虚拟化网络的需求的驱动。网络的虚拟化使得经由物理网络创建虚拟网络,以使得流量可对于形成虚拟网络的部分的用户和节点的子集保持为专用。基于第2层(即以太网)虚拟局域网(VLAN)和第3层(网际协议)的VPN是支持网络虚拟化的功能。存在许多类型的VPN,例如基于MPLS的VPN(使用IETF RFC 4364/2547建立)、虚拟专用LAN服务(VPLS)、伪线、和基于IP安全(IP-SEC)的VPN。也存在其它类型的VPN,并且该列表不旨在是穷尽的。虽然所有这些VPN具有特定的优点和适用性,但是每一个都需要专门的下层基础结构来支持VPN。一个常见的VPN技术基于RFC 2547 (其现在已由IETF RFC 4364取代)。该标准被提出以使得VPN能够被部署在MPLS网络上。基于该标准的VPN已被详尽地提出并且因此它们操作的方式是众所周知的。不幸地,具有其自己的信令和控制面协议的MPLS基础结构已被证明其实现和维护是昂贵的。为了减轻该VPN方案的某些复杂性,2007年11月6日提交的标题为“Supporting BGP Based IP-VPN in a Routed Network”的相关美国专利申请号11/935,563提出使用RFC 2547的VPN基础结构结合IP封装而不是结合MPLS网络。如该申请中所述,PE节点创建虚拟路由和转发表(即输入路由目标/输出路由目标属性)的基本方式保持相同。然而,不是通告MPLS服务标签,而是节点输出要被用于在IP网络上转发流量的IP服务地址。因此,VPN方案能够在任何IP网络上使用并且不限于在MPLS网络上使用。因为用于该基于IP的VPN方案的基本的基础结构是基于使用MP-iBGP扩展的FC 4364/2547控制面原理的,所以仅仅需要VPN的端点支持该功能。IP网络中间的节点作为普通的IP路由器操作,并且因此对于正在实施VPN的事实是不可知的。RFC 2547/4364的该前述扩展使得第3层(即IP层)VPN被构建在IP网络上。还存在用户想要有第2层VPN而不是第3层VPN的情况。因此,提供容易部署到现有网络并且不需要MPLS基础结构的L2VPN方案将是有利的。

发明内容
基于IETF RFC 4364/2547的MP-BGP VPN基础结构被用于配置IP网络上的第2层VPN。用于VPN的VRF被配置在以太网交换机上并且服务IP地址关联于每一个被配置的VRF。服务IP地址交互以使得被寻址的VPN流量能够由IP网络传送。为了能够在网络上建立第2层VPN,为第2层VPN配置VPN-VLAN ID,并且在 作为VPN —部分的每一个VRF中设置用于VPN-VLAN的输入/输出路由目标。使用VPN-VLAN ID在网络上实现VPN-VLAN以便建立第2层广播域。使用MP-iBGP和为该VPN-VLAN设置的输出路由目标向所有的PE宣告VPN-VLAN ID。如果输入的RT与MP-iBGP控制面接收的输出RT匹配,那么PE的控制面在逻辑端口上得知VPN-VLAN。一旦在逻辑端口上得知VPN-VLAN ID,那么PE将在该逻辑端口上的VLAN内执行MAC学习。作为VPN VLAN的一部分的PE可具有连接到客户端网络(例如客户端局域网)的逻辑端口。术语用户到网络接口通常被用于指代服务提供商网络与用户网络之间的分界点。如这里所使用的,术语UNI-VLAN将被用于指代在PE上的端口处连接到PE的用户VLAN。在本申请的上下文中,UNI-VLAN将被假设为是第2层VLAN。VPN-VLAN是UNI-VLAN经由中间路由网络到其它PE网络元件的逻辑扩展。VRF可连接到多个UNI-VLAN,并且类似地可连接到多个VPN-VLAN。VRF维持UNI-VLAN和VPN-VLAN之间的映射以使得UNI-VLAN广播域能够经由VPN-VLAN跨越路由网络扩展。然后使用IP封装来跨越路由网络传送流量,以使得L2VPN内的流量可通过网络传送。为了处理网络上的数据,如果在PE处接收了具有未知MAC地址的以太网帧,帧将被洪泛到作为VPN —部分的所有本地UNI VLAN端口并且也通过VPN-VLAN洪泛到所有远端的VPN实例(逻辑接口)。如果目的地MAC已知并且驻留在连接的UNI-VLAN内,那么帧将从连接到UNI-VLAN的端口发送出去。如果目的地MAC地址已知并且驻留在VPN-VLAN上(即驻留在远端PE上),那么PE将读取MAC地址以便确定用于在VPN-VLAN上转发的逻辑端口(VPN-VLAN ID和远端VRF的服务IP地址)。然后,以太网帧将用包含VPN-VLAN ID的Q标记来标识并且被封装到IP分组内以便在IP网络上被传输。当在远端PE上在IP网络上接收了封装有VPN-VLAN Mac-in_IP(IP内MAC)的分组时,外部IP头部的目的地IP地址将被用于确定应当处理分组的目标VRF (分组的目的地IP地址是VRF的服务地址)。VRF将读取内部以太网分组的Q标记以便标识VPN-VLAN,并且所封装的以太网分组的用户部分的目的地MAC地址将被用于根据逻辑转发表确定用于分组的输出端口。如果目的地MAC地址未知,那么帧将从关联于VPN-VLAN和UNI VLAN的所有UNI端口洪泛出去。如果端点想要加入L2VPN,它输入/输出用于L2VPN的VPN-VLANID路由目标。通过向用户帧添加包括VPN-VLAN ID的802. IQ标记头部并且然后用IP头部封装用户以太网帧来在VPN中转发分组。如果用户帧先前未被标识,标识处理根据IEEE 802. IQ添加Q标记。如果用户巾贞已经有Q标记,该处理替换原始的Q标记或者添加如IEEE 802. Iad所提供的第二 Q标记。在帧为单播帧的情况下,将使用目的地VRF的服务IP地址对帧进行IP封装,以使得帧可经由IP网络被发送到目的地VRF的服务IP地址。如果帧为多播或广播帧,那么它可被多次单播,或者可使用IP多播目的地地址头部经由IP多播被转发(其中IP多播由IP网络支持)。


在所附权利要求中,具体地指出本发明的各方面。在以下附图中通过示例示出本发明,在附图中相同的引用表示类似的元件。仅为了说明的目的,以下附图公开了本发明的各个实施例并且不旨在限制本发明的范围。为了清楚,不是每一个组件都在每一个图形中被标记。在附图中 图I是参考网络的功能框图;图2是根据本发明实施例示出网络上L2 VPN的实现的图I的网络的功能框图;图3是根据本发明实施例示出可用于实现IP网络上的L2 VPN的处理的流程图;图4是根据本发明实施例更详细地示出一个PE节点的一部分参考网络的功能框图;并且图5是根据本发明实施例更详细地示出一个PE节点的一部分参考网络的功能框图。
具体实施例方式描述了第2层虚拟专用网(VPN)方案,其依赖于RFC 2547/4364进行信令但是其中IP封装被用于在IP骨干上传送VPN流量。这使得惯用的VPN信令能够被用于建立第2层VPN而不需要使用MPLS基础结构实现IP骨干。这是有利的,因为MPLS网络具有它自己的信令和控制面协议,并且因此其建立和维护是更加昂贵的。尽管MPLS具有被服务提供商认为所期望的特定流量工程优点,但是在企业网络中流量工程方面往往不是特别相关的。因此在企业场景下更简单地实现VPN方案可能是特别期望的,其中企业可建立如通常部署在MPLS网络上的相同种类的VPN,而不需要企业网络运行MPLS信令和控制协议。图I示出了包括多个路由器12和多个VPN路由器14的示例参考网络10。VPN路由器支持网络上关联于VPN的VRF。在一个实施例中,VPN路由器被实现为IETF RFC4364/2547上下文中的普通PE设备。然而,PE设备交换将被用于在通信网络上建立第2层VPN的VPN-VLAN ID,以使得网络可被虚拟化以创建跨越网络的VPN VLAN。例如,如图2中所示,支持VRF I的节点可关联于第一 VPN-VLAN X,并且支持VRF 2的节点可关联于第二VPN-VLAN Y。VPN-VLAN ID被VRF用作为输入/输出路由目标以便控制7层OSI网络参考模型的第2层处的路由信息的分发。这使得经由IP核心扩展的网络链路能够被视为普通的VLAN链路,以使得针对未知MAC地址的帧可经由VLAN被洪泛并且使得MAC学习能够在那些端口上出现。因此,普通的第2层行为可在网络上的VPN-VLAN内出现。在图2中,每一个VRF被示出为关联于特定的VPN-VLAN。本发明不限于该方式,因为特定的VRF可连接到多个VPN-VLAN。同样,在图2中,每个VRF被示出为连接到关联于特定CE的一个特定UNI-VLAN。CE可支持多个UNI-VLAN,并且多个UNI-VLAN可连接到给定VRF。因此,UNI-VLAN是VRF的子集,使得VRF可具有多个UNI-VLAN。每一个UNI-VLAN可连接到特定的VPN-VLAN。VRF形成UNI-VLAN和VPN-VLAN之间的关联,这使得UNI-VLAN能够跨越路由网络扩展。图2被绘制为示出了简化的示例,并且在操作中,可期望形成UNI-VLAN和VPN-VLAN之间的更复杂的互连。图2示出了其中在网络上建立了两个VPN-VLAN的图I的参考网络。如图2中所示,VPN路由器14A上的VRF :1、VPN路由器14B上的VRF2和VPN路由器14C上的VRF :3都成为VPN-VLAN X的一部分。类似地,VPN-VLAN路由器14A上的VRF 4和VPN-VLAN路由器14C上的VRF 5成为VPN-VLAN Y的一部分。将在下面结合图3更详细地描述VRF连接到VPN-VLAN的方式和VRF处理流量以使得VPN-VLAN能够作为第2层VPN操作的方式。
图3示出了可用于实现本发明实施例的示例处理。如图3中所示,如果要在网络上建立第2层VPN,那么用于VPN的VRF将需要被配置在以太网交换机(提供商边缘或PE)网络元件(100)上。配置用于VPN的VRF可使用IETF RFC 4364/2547来实现。另外,为了使得流量能够在IP网络上被传输,将为被配置为在VPN上操作的每一个VRF定义服务IP地址。如在 2007 年 11 月 6 日提交的标题为“Supporting BGP Based IP-VPN in a RoutedNetwork"的美国专利申请号11/935,563中所描述的,服务IP地址使得IP头部能够被创建,以使得VPN上的流量可被封装以用于在IP网络上传输。该相关专利具有与VPN的IP方面应当如何被实现相关的许多另外的细节。因此,该申请的内容通过引用合并在此。一旦已为VPN配置了 VRF,MP-BGP将被用于交换服务IP地址和以太网交换机自治系统ID(AS-ID) (102)。服务IP地址和AS-ID将成为路由标识符,其将使得在从IP网络接收分组时目的地节点能够确定目标VRF。当在PE设备中支持第2层VPN时,MP-BGP对等体将交换跨越核心网络提供第2层VPN的能力。当UNI-VLAN关联于VPN-VLAN并且VPN-VLAN关联于路由目标时,MP-BGP将用VPN-VLAN id和输出路由目标更新它的对等体。该处理完成了第2层VPN的自动发现。尽管在特定位置中论述了 MP-iBGP,但是也可使用MP-eBGP (多协议外部边界网关协议)。当用户到网络接口(UNI)VLAN成为VRF的成员时,UNI-VLAN将连接到VPN-VLAN(104) o作为在网络上配置VPN-VLAN的一部分,VPN-VLAN ID将被分配到L2VPN,并且将在作为VPN —部分的每一个VRF中为VPN-VLAN ID设置输入/输出路由目标(RT)
(106)。具有为VPN VLANID设置的输出路由目标的每一个VRF将使用MP-iBGP宣告VPN-VLANID(108)。因此,如果PE上的VRF的输入RT与所宣告的VPN-VLAN ID的输出RT匹配,那么每一个PE的控制面将在逻辑端口上得知VPN-VLAN(110)。一旦控制面宣告了 VPN-VLAN以使得每一个PE可针对它的逻辑端口得知VPN-VLANID的MAC地址,每一个PE将针对物理和逻辑端口执行用于VPN的普通MAC学习以使得流量可在第2层VPN-VLAN上被传输(112)。如果在VLAN UNI端口上接收了用户的以太网帧,PE将试图使用普通的第2层转发技术在VLAN上朝向它的目的地转发以太网巾贞。因此,如果目的地未知,那么PE将向所有的本地UNI VLAN端口洪泛分组并且还向关联于UNI-VLAN的所有逻辑VPN端口洪泛分组。具体地,分组还将通过VPN-VLAN被洪泛到参加VPN-VLAN的所有远端VPN实例(逻辑接口)
(120)。同样,如果目的地MAC地址在UNI-VLAN内已知,那么将读取MAC地址来确定应当经由其转发帧的本地UNI端口或逻辑端口。如果需要将分组在逻辑端口上洪泛或转发,那么PE将读取VPN-VLAN ID、目标VRF的服务IP地址和下一跳(122)。因此,FDB将存储用于逻辑端口的全部该信息,以使得分组可在VPN-VLAN上经由逻辑端口被洪泛/转发。在朝向下一跳转发帧之前,PE将添加包含VPN-VLAN ID的Q标记(124)。如果用户帧当前未被标识,将使用IEEE 802. IQ将该Q标记添加到用户以太网帧。如果用户以太网帧已被标识,那么用Q标记替换用户的标记或者可使用IEEE 802. Iad将Q标记添加到用户以太网帧。在要在IP网络上传输分组的情况下,用户帧将被进一步封装到IP分组(126)。封装处理将通过使用目标VRF服务IP地址作为目的地IP地址来创建IP头部并且将使用源VRF的服务IP地址作为源IP地址。因此,VPN-VLANID将被用于将Q标记添加到帧,服务IP地址将被用于对帧进行IP封装,并且下一跳将被 用于确定应当经由其转发进行了 IP封装/Q标记的帧的实际物理端口。对于多点VPN,如果要在网络上多播或广播分组,那么可通过使用远端VRF的服务IP地址来将分组单播多次以便逐个地将分组发送到作为VPN成员的每一个远端PE,或者如果IP网络支持多播IP,那么可使用多播IP地址在网络上转发IP分组。多播IP地址可以是表示VRF的IPVPN的多播服务IP组地址。然后,被封装和标识的分组将从IP网络上的下一跳(输出端口 )转发出去。外部IP头部将被用于以普通方式在IP网络上朝向它的目的地路由分组(140)。注意,不需要修改IP网络一在这点上分组看起来就像普通IP分组一样,其可像任何其它IP分组一样以普通方式由IP路由器传递。与此有关,因为分组被封装以便包括另外的IP头部,所以应当检查分组的整个大小以便确保所封装的分组不超过IP网络上的最大传输单元大小。一旦分组到达目的地PE,目的地PE将使用目的地IP地址来确定目标VRF (160)。如上所述,通过发送PE作为在封装帧用于在IP网络上传输时的目的地IP地址,来使用目标VRF的服务IP地址。因此,当分组被接收时,目的地PE可读取目的地IP地址并且使用目的地IP地址来确定应当被用于处理分组的目标VRF。当目标VRF接收分组时,它将读取Q标记以便标识VPN-VLAN(162)。如上所述,目标VRF将在关联于VPN-VLAN的逻辑端口上执行本地MAC学习。另外,目标VRF将执行普通的第2层转发以便将帧转发到客户端的VLAN。具体地,将使用本地转发表来找到用于目的地MAC地址的匹配输出端口(164)。如果目的地MAC地址未知,分组将被洪泛到关联于VPN-VLAN 的所有 UNI-VLAN 端口。图4示出了被配置为实现本发明实施例的示例VPN路由器。如图4中所示,VPN路由器14具有用于VLAN :100的VRF 20。在端口 1/1、1/2、1/3和1/4上的UNI VLAN接口已连接到VLANL :100并且用于网络元件A、B、C和D的MAC地址已经在这些接口上被得知并且存储在转发数据库(FDB)50中。注意,在该上下文中,FDB 50具有用于MAC地址A-D中每一个的条目和用于相关联的物理端口的相应条目。具体地,FDB表示网络元件A在端口 1/1上可到达,网络元件B在端口 1/2上可到达,网络元件C在端口 1/3上可到达,并且网络元件D在端口 1/4上可到达。在该示例中,将会假设节点2和3都加入了 VLAN :100并且具有到网络元件E和F的UNI VLAN接口。为了使得第2层VLAN能够跨越IP网络10扩展,在配置期间将配置VPNVLAN,其将被分配VPN-VLAN ID。在该示例中,分配给VLAN的VPN-VLAN ID是VPN-VLAN ID:1000 (但是它可以是任何有效的VLAN ID)。VPN路由器14将使用MAC学习来得知在物理端口 5/1上被配置的逻辑端口 X上的网络元件E。同样,网络元件F将在也在物理端口 5/1上被配置的逻辑端口 Y上被得知。逻辑端口 X和Y是分离的,即使它们被配置在相同的物理端口 5/1上,因为它们通向不同的网络元件上的不同VRF,并且因此,将需要不同的服务IP地址来用于对流量进行IP封装以便在IP网络上到达这些节点。在该示例中,逻辑端口 X连接到节点2上的VRF,而逻辑端口 Y连接到节点3上的VRF。在VRF FDB 50内,用于网络元件E的MAC地 址的条目指向逻辑端口 X。该条目包括标识网络上的VPN-VLAN的VPN-VLAN ID :1000和关联于VLAN :100的节点2上的VRF的服务IP地址(10. 1.2. I)。同样,用于网络元件F的FDB条目指向逻辑端口 Y。该条目也包括标识网络上的VPN-VLAN的相同VPN-VLAN ID 1000和关联于VLAN 100的节点3上的VRF的服务IP地址(10. I. 3. I)。VRF将在逻辑端口上以及其物理端口上执行普通的MAC学习。因为UNI-VLAN在VPN路由器上的物理端口上被注册,所以VRF将针对于端口注册UNI-VLAN并且在该端口上的VLAN 100内执行MAC学习以便得知经由该物理端口可到达的主机的MAC地址。类似地,因为其它VRF经由VPN-VLAN 1000向VRF 20注册,所以VRF 20将针对逻辑端口(包括服务IP地址和VPN-VLAN ID)来注册VRF,并且然后针对逻辑端口执行MAC学习以便得知经由逻辑端口可到达的主机的MAC地址。当要将客户端的帧发送到未知MAC地址时,客户端的帧将在关联于VLAN的除了在其上接收到客户端帧的端口之外的所有端口上广播。因此,VRF将在物理端口上以及用逻辑端口广播帧,以使得帧将经由VPN-VLAN发送到第2层VLAN上的其它VPN站点。如果MAC地址为已知地址,那么输出端口将根据转发数据库来确定并且由VRF用来朝向客户端帧的期望目的来转发它。如果输出端口是逻辑端口,VRF将根据转发数据库获得用于帧的逻辑端口信息。如上所述,一个实施例中的逻辑端口信息包括VPN-VLAN ID和目标VRF的服务IP地址。VPN-VLAN ID将由第2层封装处理用于向客户端的帧添加Q标记。VPN路由器还将使用目标VRF服务IP地址作为目的IP地址并且使用VRF的服务IP地址(10. I. I. I)作为源IP地址来创建用于分组的IP头部。在用IP头部封装分组之后,分组将被发送到全局路由处理51,全局路由处理51使用服务IP地址来确定要被用于在IP网络上发送分组的物理端口。在IP网络内,IP头部将被用于朝向客户端帧的期望目的地转发它。在目标节点处接收时,IP头部的目的地IP地址将被用于标识目标VRF。目标VRF将根据Q标记读取VPN-VLAN ID以标识关联于VLAN的转发数据库。然后,将在转发数据库内使用MAC地址来确定目标VRF应当将帧发送到哪里。在图5中示出的另一个实施例中,配置代表要由PE支持的每一个第2层VPN的服务IP地址。在该实施例中,不是向每一个第2层VPN分配VLAN VPN ID,而是由PE将单独的服务IP地址分配到每一个第2层VPN。全局路由引擎51使用分配给第2层VPN的服务IP地址来表示核心内的第2层VPN。一个UNI VLAN将连接到PE内的第2层VPN处理,并且要在第2层VPN上发送的分组将使用分配给第2层VPN的服务IP地址来封装。如果多个UNI VLAN在特定PE处连接到第2层VPN,那么可使用Q标记(VPN-VLAN ID)来对UNI-VLAN消除歧义,如上所述。在该实施例中,当全局路由引擎接收了分组时,全局路由引擎将读取服务IP地址并且使用服务IP地址来确定应当被用于处理分组的第2层VPN处理。分组将被传送到第2层VPN处理并且在第2层VPN处理的上下文中被交换到正确的UNI-VLAN端口。在另一个方向上,当从UNI-V LAN接收了分组时,第2层VPN处理将使用MAC地址来确定要被用于转发分组的正确的输出端口。如图5中所示,第2层VPN将维护转发表并且当接收了分组时将执行MAC查找以便确定如何交换分组。如果MAC地址未知,那么第2层VPN处理将在关联于第2层VPN的逻辑端口和关联于所连接的UNI-VLAN的物理端口(除了在其上接收了分组的端口之外)上洪泛分组。如果MAC已知,那么第2层VPN将从在其上MAC为已知的端口将分组转发出去。L2 VPN处理将在逻辑端口和UNI-VLAN上执行MAC学习。在该实施例中,不是在逻辑端口上学习MAC与它的远程服务IP和VPN-VLANID,L2 VPN处理将仅在逻辑端口上学习远程MAC和它的服务IP地址。当分组需要在逻辑端口上被发送时,MAC查找将向第2层VPN处理返回服务IP地址。L2 VPN处理将使用服务IP地址以便使用逻辑端口的服务IP地址作为目的地IP地址来封装分组。L2 VPN处理的服务IP地址将被用作为源IP地址。进行了 Mac-in-IP(IP内MAC)封装的分组将被转发到全局路由引擎,全局路由引擎将使用目的地IP地址来确定用于分组的输出端口并且将分组在IP网络上发送。每一个L2 VPN使用一个服务IP地址使得用于第2层VPN的分组能够由全局路由弓丨擎消除歧义,以使得如果接收了分组,那么分组的目的地IP地址可由全局路由引擎用于确定要用来处理分组的正确L2 VPN处理。如果L2 VPN处理表示单个UNI-VLAN,那么L2VPN处理可将经由L2VPN接收的任何分组交换到UNI-VLAN上。在L2 VPN处理表示多个UNI-VLAN的情况下,用于单独UNI-VLAN的分组应当被标识以便使得L2 VPN处理能够确定应当使用哪个UNI-VLAN来转发分组。上述功能可实现为计算机可读存储器中存储的并且在计算机平台上的一个或多个处理器上执行的一组程序指令。然而,对于熟练的技术人员来说明显的是,这里所述的所有逻辑可使用分离的组件、集成电路(例如专用集成电路(ASIC))、结合可编程逻辑器件(例如场可编程门阵列(FPGA)或微处理器))使用的可编程逻辑、状态机、或包括其任意组合的任何其它设备来体现。可编程逻辑可临时或永久地固定在有形介质中,例如只读存储芯片、计算机存储器、磁盘或其它存储介质。所有这些实施例旨在落入本发明的范围内。应当理解,可在本发明的精神和范围内对附图中示出的和说明书中描述的实施例做出各种变化和修改。因此,旨在以说明性而非限制性的含意来解释上面描述中包含的和附图中示出的全部内容。所要求的是
权利要求
1.一种在路由网络上实现第2层(L2)虚拟专用网(VPN)虚拟局域网(VLAN)的方法,所述方法包括以下步骤 在所述路由网络上的网络元件中配置虚拟路由和转发(VRF)处理,所述VRF处理关联于所述路由网络上的所述VPN-VLAN并且具有定义好的服务IP地址,所述VPN-VLAN在所述路由网络上具有VPN-VLANID ; 在所述网络元件上的物理端口上得知一个或多个用户到网络接口虚拟局域网(UNI-VLAN)并且通过所述VRF将所述UNI-VLAN与所述VPN-VLAN关联; 通过所述VRF得知一个或多个逻辑端口上的VPN-VLAN ID,每一个所述逻辑端口关联于所述路由网络上另一个网络元件上的另一个VRF处理的服务IP地址。
2.根据权利要求I所述的方法,还包括以下步骤在关联于所述VPN-VLAN的所述逻辑端口上执行MAC学习。
3.根据权利要求2所述的方法,其中在所述逻辑端口上执行MAC学习的所述步骤包括以下步骤在用于所述MAC地址的转发数据库中存储逻辑端口,所述逻辑端口包括所述VPN-VLAN ID和关联于所述逻辑端口的VRF的所述服务IP地址。
4.根据权利要求3所述的方法,还包括以下步骤接收要在逻辑端口上发送的帧并且根据所述转发数据库接收要被用于在所述路由网络上发送所述帧的所述VPN-VLAN ID和服务IP地址。
5.根据权利要求4所述的方法,还包括以下步骤将所述VPN-VLANID添加到所述帧作为Q标记并且使用所述服务IP地址作为目的地IP地址来添加IP头部。
6.根据权利要求5所述的方法,其中所述帧是未标识的并且其中向所述帧添加所述Q标记作为第一标记。
7.根据权利要求5所述的方法,其中所述帧用用户Q标记来标识并且其中向所述帧添加所述VPN-VLAN ID作为所述Q标记的所述步骤包括用包含所述VPN-VLAN ID的Q标记替换所述用户Q标记。
8.根据权利要求5所述的方法,其中所述帧用用户Q标记来标识并且其中向所述帧添加所述VPN-VLAN ID作为所述Q标记的所述步骤包括向所述帧添加第二 Q标记,所述第二Q标记包含所述VPN-VLAN ID。
9.根据权利要求I所述的方法,还包括以下步骤在关联于所述VPN-VLAN的所述逻辑端口上执行MAC学习。
10.根据权利要求I所述的方法,还包括以下步骤从去往未知MAC地址的所述UNI-VLAN接收帧,并且将所述帧从关联于所述VPN-VLAN的所有其它UNI-VLAN端口和关联于所述VPN-VLAN的所有逻辑端口洪泛出去。
11.根据权利要求I所述的方法,还包括以下步骤从关联于所述VPN-VLAN并且去往未知MAC地址的逻辑端口接收帧,并且将所述帧从关联于所述VPN-VLAN的所有UNI-VLAN端口洪泛出去。
12.根据权利要求I所述的方法,还包括以下步骤由所述网络元件接收IP分组,使用关联于所述IP分组的IP头部中的目的地地址来确定要被用于处理所述IP分组的VRF,并且通过所述确定的VRF来读取关联于所述IP分组的Q标记以确定关联于所述分组的VPN-VLANo
13.根据权利要求I所述的方法,其中配置所述VRF处理的所述步骤包括在所述VRF中为所述VPN-VLAN ID设置输入/输出路由目标。
14.根据权利要求13所述的方法,还包括以下步骤使用多协议边界网关协议(MP-BGP)向具有为所述VPN-VLAN配置的输出路由目标(RT)的所有PE宣告所述VPN-VLAN。
15.根据权利要求13所述的方法,还包括以下步骤如果逻辑端口上的输入RT与MP-BGP控制面所接收的输出RT匹配,那么在所述逻辑端口上学习所述VPN-VLAN。
16.一种处理帧以用于通过提供商边缘(PE)网络元件在网际协议(IP)网络上传输的方法,所述方法包括以下步骤 由所述PE网络元件从用户到网络接口虚拟局域网(UNI-VLAN)接收帧,所述UNI-VLAN关联于跨越所述IP网络的第2层虚拟专用网虚拟局域网(VPN-VLAN); 用包含所述IP网络上的所述VPN-VLAN的VPN-VLAN标识符(VPN-VLAN ID)的Q标记来标识所述帧; 用IP头部封装所述帧,所述IP头部包含所述IP网络上的远程提供商边缘(PE)网络元件上的VRF处理的服务IP地址作为目的地地址;以及 将所标识和所封装的帧发送到所述IP网络上。
17.根据权利要求16所述的方法,其中所述PE网络元件具有其中例示的虚拟路由和转发处理。
18.一种处理帧以用于通过提供商边缘(PE)网络元件在网际协议(IP)网络上传输的方法,所述方法包括以下步骤 由所述PE网络元件从用户到网络接口虚拟局域网(UNI-VLAN)接收帧,所述UNI-VLAN关联于跨越所述IP网络的第2层虚拟专用网(L2VPN),所述PE网络元件包括被用于处理关联于所述L2VPN的帧的L2VPN处理,所述L2VPN处理经由第一服务IP地址被表示在所述IP网络内; 确定关联于所述帧的逻辑端口,所述逻辑端口包括在远程PE上的L2VPN处理的第二服务IP地址; 用IP头部对所述帧进行IP封装,所述IP头部包含所述第一服务IP地址作为所述源IP地址以及所述第二 IP地址作为所述目的地IP地址;以及 将进行了 IP封装的帧发送到所述IP网络上。
19.根据权利要求19所述的方法,还包括以下步骤 由所述PE网络元件接收具有第二 IP头部的第二进行了 IP封装的帧,所述第二 IP头部包括第二目的地IP地址; 读取所述第二目的地IP地址以确定所述PE上的本地L2VPN处理;以及 将所述帧传送到所述确定的本地L2VPN处理以使得所述帧能够在所述L2VPN处理的上下文中被交换。
20.根据权利要求19所述的方法,其中所述第二IP头部具有第二 IP源地址,并且其中所述第二 IP源地址被用于得知内部第2层分组的MAC地址。
全文摘要
基于IETF RFC 4364/2547的MP-BGP VPN基础结构被用于在IP网络上配置第2层VPN。用于VPN的VRF在以太网交换机上被配置并且服务IP地址关联于每一个所配置的VRF。服务IP地址被交换以使得VPN流量能够被封装以用于在IP网络上传输。为了使得能够建立第2层VPN,将为第2层VPN配置VPN-VLAN ID,并且将在VPN中包括的每一个VRF和UNI-VLAN中设置用于VPN-VLAN的输入/输出路由目标。将使用MP-iBGP与为该VPN-VLAN设置的输出路由目标来向所有的PE宣告VPN-VLAN。一旦在逻辑端口上得知了VPN-VLAN,PE将在该逻辑端口上执行MAC学习并且将逻辑端口视为第2层VLAN的一部分。
文档编号H04L29/06GK102804693SQ201080028782
公开日2012年11月28日 申请日期2010年6月23日 优先权日2009年6月26日
发明者罗格·勒普, 莫尼诗·俄纽姆拉 申请人:阿瓦雅公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1