MPLS L3VPN 跨域 详解

 一.简介

  • MPLS,称之为多协议标签交换,在九十年代中期被提出来,用于解决传统IP报文依赖查表转发而产生的瓶颈,现多用于VPN技术,MPLS报头封装在数据链路层之上,网络层之下。
  • 本文为结合了华为技术和新华三技术的大成,即结合了HCIA,HCIP,HCIE Datacom和H3CNE-RS+,H3CSE-RS+,H3CIE-RS+。本文将主要介绍MPLS L3VPN 跨域 的部署与应用,博主将会在MPLS专栏中持续更新关于MPLS的进阶内容。

二.前言

  • 随着MPLS VPN解决方案的广泛应用,用户数量和网络范围在快速增长,企业内部的站点数量越来越大,位于不同地理位置或者不同AS的站点存在着跨域互联的情况。
  • 为了支持AS之间的VPN路由信息交换,就需要扩展现有的协议并修改MPLS VPN体系框架,提供一个不同于基本的MPLS VPN体系结构所提供的互连模型,即跨域MPLS VPN。
  • RFC4364中提出了三种跨域VPN解决方案:跨域VPN-OptionA、跨域VPN-OptionB.跨域VPN-OptionC。
  • 本文主要介绍MPLS VPN跨域的三种解决方案原理及配置。

三.跨域VPN方案背景

1.域内MPLS VPN工作原理回顾:路由传递及标签分配

  • CE1与PE1之间运行IGP/BGP交互路由信息(IPv4路由)。
  • PE1收到CE1的路由后,将其转化为VPNV4路由,并通过MP-IBGP发送给PE2,同时分配VPN标签V1。
  • PE2收到VPNV4路由后,将其转化为IPv4路由,并通过IGP/BGP发送给CE2。
  • MPLS骨干网内部PE及P设备之间运行LDP协议,用于分配隧道标签。假设PE1、P为PE1分配的标签分别为T1、T2。

2.域内MPLS VPN工作原理回顾:数据转发

  • CE2发送一个目的地址为Net1的IPv4报文。
  • PE2收到报文后进行MPLS标签的封装,先封装VPN标签V1,再封装外层标签T2,然后将此报文发送给P。
  • P进行标签交换,把外层标签T2换成T1,然后将此报文发送给PE1。
  • PE1收到后去掉所有标签,将IPv4报文转发给CE1。

3.跨域MPLS VPN方案的背景

  • 当企业规模不断扩大时,不同地点的企业站点有可能属于不同的AS。如图所示,当两个不同AS的CE之间相互通信时,需要使用跨域VPN技术。

  • 为方便理解,在后续讲解中,将原有AS中负责AS之间互联的设备称为ASBR-PE,同时给P不同的编号,另外不再讨论CE3和CE4。

4.MPLS VPN跨域产生的问题

  • 相比于域内MPLS VPN,跨域场景下VPN的工作原理不变,但是因为跨越了不同的AS,产生了以下问题:
    • AS之间不会运行LDP协议,因此AS之间无法建立外层隧道。
    • PE之间没有运行IGP协议,缺省情况下无法建立BGP邻居关系,进而无法直接传递VPNv4路由。
  • 针对以上问题可以有以下几种解决思路:
    • ASBR之间交换IPv4路由,采用IPv4数据包转发数据。该方式易于理解。OptionA
    • ASBR之间交换VPNV4路由,采用携带一层MPLS标签的方式转发数据包。OptionB
    • PE之间交换VPNV4路由,采用携带多层MPLS标签的方式转发数据包。OptionC

5.MPLS VPN跨域的分类

  • 本文介绍三种跨域VPN解决方案,分别是:
    • 跨域VPN-OptionA(Inter-Provider Backbones Option A)方式:
      • 需要跨域的VPN在ASBR间通过专用的接口管理自己的VPN路由,也称为VRF-tO-VRF;
      • 配置简单,ASBR之间不需要运行MPLS。
    • 跨域VPN-OptionB(Inter-Provider Backbones Option B)方式:
      • ASBR间通过MP-EBGP发布标签VPNV4路由,也称为EBGPredistribution oflabeled VPNv4 routes;
      • 不需要针对每个VPN创建不同接口。
    • 跨域VPN-OptionC(Inter-Provider Backbones OptionC)方式:
      • PE或RR间通过Multi-hOp MP-EBGP发布标签VPNV4路由,也称为Multihop EBGPredistribution oflabeledVPNv4 routes;
      • ASBR不维护或发布VPNV4路由,配置较为复杂。

四.OptionA方案原理

1.OptionA工作原理

(1)OptionA概述

  • 跨域VPN-OntionA是基本BGP/MPLS IP VPN在跨域环境下的应用,ASBR之间不需要运行MPLS,也不需要为跨域进行特殊配置。这种方式下,两个AS的边界路由器ASBR直接相连,ASBR同时也是各自所在自治系统的PE。两个ASBR都把对端ASBR看作自己的CE设备,通过EBGP对等体关系向对端发布IPv4路由。

(2)OptionA拓扑说明

  • 两台ASBR-PE之间用多个物理接口(或子接口)互连,每个接口关联一个VPN,每个ASBR-PE都把对端当成CE。因此,ASBR-PE相连的接口需要绑定VRF,并通过EBGP邻居关系把VPNV4路由转变成普通IPv4路由从一个AS传递到另一个AS。因此,两个ASBR相连,但不需要启用MPLS。

(3)OptionA控制平面

  • CE1通告IPV4路由给PE1,路由的下一跳为CE1。
  • PE1将IPv4路由转化为VPNv4路由发送给ASBR-PE1,并且设置下一跳为PE1,分配VPN标签V1。
  • PE1、P1分别为去往PE1的路由分配隧道标签T1、T2。
  • ASBR-PE1将VPNV4路由转化为IPv4路由发送给ASBR-PE2,并且设置下一跳为ASBR-PE1。
  • ASBR-PE2将IPv4路由转化为VPNv4路由发送给PE2,并且设置下一跳为ASBR-PE2,分配VPN标签V2。
  • ASBR-PE2、P2分别为去往ASBRPE2的路由分配隧道标签T3、T4。
  • PE2将VPNV4路由转变为IPv4路由,通告给CE2,并且设置下一跳为PE2。

(4)OptionA转发平面

  • CE2发送一个目的地为Net1的IP报文给PE2。
  • PE2收到IP报文后,先封装VPN标签V2,再封装外层标签T4,然后将此报文发送给P2。
  • P2把外层标签T4换成T3,然后将此报文发送给ASBR-PE2。
  • ASBR-PE2去掉所有标签,将IP报文转发给ASBR-PE1。
  • ASBR-PE1收到IP报文后先封装VPN标签V1,再封装外层标签T2,然后将此报文发送给P1。
  • P1进行标签交换,把外层标签T2换成T1,然后将此报文发送给PE1。
  • PE1收到后去掉所有标签,将IP报文转发给CE1。

(5)OptionA的特点

  • 跨域VPN-OptionA配置简单,而且理解起来也比较简单。
  • 当网络中存在少量VPN的情况下,跨域VPN-OptionA有一定的适用性。
  • ASBR将对端AS的ASBR视为一台CE设备,并使用VRF接口与其对接。两个AS的ASBR之间交互IPv4形态的VPN路由。
  • 从数据层面看,VPN用户的数据在两个AS的ASBR之间交互时,是IP报文的形态,也就是不携带任何标签头部。
  • 跨域VPN-OptionA的可扩展性较差,由于ASBR需要管理所有VPN路由,为每个VPN创建VPN实例,这将导致ASBR上的VPNV4路由数量过大。并且,由于ASBR间是普通的IP转发,要求为每个跨域的VPN使用不同的接口(可以是子接口、物理接口、捆绑的逻辑接口),因此对ASBR设备有较高的要求。如果跨越多个自治域,中间域必须支持VPN业务,不仅配置量大,而且对中间域有较大影响。在需要跨域的VPN数量比较少的情况,可以优先考虑使用。

五.OptionB方案原理

1.OptionB工作原理

(1)OptionB概述

  • 相比于OptionA,OptionB无需在ASBR-PE创建VPN实例,无需绑定任何接口。
  • 在OptionB方式中,两个ASBR通过MP-EBGP交换它们从各自AS的PE设备接收的VPNv4路由。
  • 缺省情况下,PE上只保存与本地VPN实例的VPN Target相匹配的VPN路由。因此,可以在ASBR上配置不做RT过滤来传递路由。
  • 网络规模较大时,可部署RR设备,专门负责客户侧VPN路由的传递。

(2)OptionB拓扑说明

  • PE通过MP-IBGP将VPNV4路由通告给域内的ASBR-PE或是VPN RR(其中ASBR-PE是其客户机)。ASBR-PE再通过MP=EBGP将VPNV4通告给另一个AS的ASBR-PE,再由该ASBR-PE将VPNV4路由通告给该AS内的PE。

(3)Option控制平面:无RR场景

  • CE1通告IPv4路由给PE1。
  • PE1将IPv4路由转化为VPNV4路由发送给ASBR-PE1,并且设置下一跳为PE1,分配VPN标签V1。
  • ASBR-PE1通过MP-EBGP将Net1的VPNV4路由通告给ASBR-PE2,将下一跳改为ASBR-PE1,并重新分配一个VPN标签V2。
  • ASBR-PE2将Net1的VPNV4路由通过MP-IBGP通告给PE2,将下一跳指向自己,并重新分配一个VPN标签V3。
  • PE1、P1分别为去往PE1的路由分配隧道标签T1、T2。
  • ASBR-PE2、P2分别为去往ASBRPE2的路由分配隧道标签T3、T4。
  • PE2将VPNV4路由转变为IPv4路由通告给CE2,并且设置下一跳为PE2。

(4)OptionB控制平面:带RR场景

  • 当VPN实例数量较多时,可以部署专门的RR设备。如图,AS内的PE和ASBR设备只与RR设备建立MP-BGP邻居关系,由RR负责路由的反射传递,PE和ASBR之间无需建立BGP邻居。
  • RR只负责控制平面的VPNV4路由传递,数据转发时,流量不经过RR。

(5)OptionB转发平面

  • CE2发送一个目的地为Net1的IP报文给PE2。
  • PE2收到IP报文后,先封装VPN标签V3,再封装外层标签T4,然后将此报文发送给P2。
  • P2把外层标签T4换成T3,然后将此报文发送给ASBR-PE2。
  • ASBR-PE2去掉外层标签,将VPN标签V3交换为V2,再将其转发给ASBR-PE1(此时报文仅带有一层私网标签)。
  • ASBR-PE1交换VPN标签V2成V1再加一个外层标签T2,并将报文转发给P1。
  • P1进行标签交换,把外层标签T2换成T1,然后将此报文发送给PE1。
  • PE1收到后去掉所有标签,将报文(普通IP报文)转发给CE1。

(6)OptionB的特点

  • OptionB的优点是所有的流量都经过ASBR转发,使流量具有良好的可控性,但由于ASBR需要保存大量VPNV4路由,因此负担较重。可以同时使用BGP路由策略(如对RT的过滤),使ASBR上只保存部分VPNV4路由。
  • 局限性:VPN的路由信息是通过AS之间的ASBR来保存和扩散的,当VPN路由较多时,ASBR负担重,容易成为瓶颈点。因此在MP-EBGP方案中,需要维护VPN路由信息的ASBR一般不再负责公网IP转发。
  • 当需要支持大量VRF互通的时候,此解决方案优于OptionA。

六.OptionC方案原理

1.OptionC工作原理

(1)OptionC概述

  • 相比于OptionA和OptionB,OptionC方案中,ASBR上不保存VPNv4路由,相互之间也不通告VPNv4路由。
  • OptionC方案中不同AS的PE之间建立Multihop方式的EBGP连接,交换VPNV4路由。针对不同方式实现PE之间路由互通,OptionC又可以分为两种方式:
    • 方式一:由ASBR将去往其它AS中的PE路由通过BGP发送给本地PE设备。
    • 方式二:由ASBR将去往其它AS中的PE路由引入IGP。
  • 由于ASBR无VPNV4的路由,因此为了避免转发数据包时出现路由黑洞,PE设备必须将数据包引入隧道,使非PE设备不感知VPN的封装信息因此OptionC的两种方式都需要ASBR之间发布带标签的路由,以构建AS之间的外层转发隧道。

(2)OptionC方式一拓扑说明

  • ASBR不再维护或是通告VPNV4路由。ASBR只需要维护所有去往PE的带标签路由,并通过EBGP通告给对端AS。在transit AS内的ASBR也后样需要使用EBGP通告这些带标签的IPv4路由。这样在不同AS的PE之间给会建立一条LSP,从而可以建立起入口PE和出口PE之间的多跳MPEBGP连接并进行VPNV4路由的通告。
  • 为了进一步扩展性能,多跳MP-EBGP会话可以建立在不同的AS的VPN RR之间。并且当这些VPN RR通告VPNV4路由时不改变下一跳信息。PE只与VPN RR建立MP-IBGP会话。

(3)OptionC方式一控制平面:无RR场景

  • CE1通告IPv4路由给PE1。
  • PE1将IPv4路由转化为VPNV4路由发送给PE2,并且设置下一跳为PE1,分配VPN标签V1。
  • ASBR1通过EBGP会话通告一条去往PE1的带标签的IPv4路由给ASBR2,其中下一跳为ASBR1,标签为BGP标签,值为B1。
  • ASBR2通过BGP会话通告一条去往PE1的带标签的IPv4路由给PE2,其中下一跳为ASBR2,标签为BGP标签,值为B2。
  • PE1、P1分别为去往PE1的路由分配隧道标签T1、T2。
  • ASBR2、P2分别为去往ASBR2的路由分配隧道标签T3、T4。
  • PE2将VPNV4路由转变为IPV4路由:通告给CE2,并且设置下一跳为PE2。

(4)OptionC方式一控制平面:带RR场景

  • 本端PE只与本端RR建立VPNV4邻居,本端RR与对端RR建立VPNV4邻居,实现了跨域VPN路由的传递。
  • ASBR,PE同RR建立BGP单播IPv4邻居:
    • ASBR将从对端ASBR学到的RR的loopback接口的路由,传递给本端RR,用于本端RR与对端RR建立VPNV4邻居。
    • ASBR将从对端ASBR学到的RR和PE的loopback接口的路由,传递给本端RR,本端RR再将其反射给本端PE,用于跨域之间的PE建立BGP LSP。

(5)OptionC方式一转发平面

  • CE2发送一个目的地为Net1的IP报文给PE2。
  • PE2收到IP报文后先封装VPN标签V1,然后添加ASBR2分配的BGP标签B2做为中间标签,最后封装上外层标签T4。
  • P2把外层标签T4换成T3,然后将此报文发送给ASBR2。
  • ASBR2去掉外层标签,将BGP标签B2交换为B1,再将其转发给ASBR1,
  • 当ASBR1收到报文后,去掉B1进一步查表转发,发现此时去往PE1的路由有一个关联的标签T2,因此,ASBR1将其加在栈顶,并转发给P1。
  • P1进行标签交换,把外层标签T2换成T1,然后将此报文发送给PE1。
  • PE1收到后去掉所有标签,将报文转发给CE1。

(6)跨域OptionC方式二

  • 跨域VPN-OptionC方案二与方案一大体相似。
  • 不同之处在于,方案一中,需要使用三层标签,即VPN label,BGP LSP,LDP LSP来承载流量,而方案二只需要两层。
  • 方案一,ASBR在收到对端ASBR发来的BGP标签路由后,需要配置策略产生一个新的标签并发布给AS内的PE或者RR设备,以建立一条完整的BGP LSP。方案二中,ASBR需要配置MPLS触发为BGP标签路由分发标签因此在AS内的PE上可以看到去往对端PE的LDPLSP,而非BGPLSP。
  • 同理,方案二支持RR设备的部署。

(7)OptionC方式二拓扑说明

  • 方式二:ASBR不再维护或是通告VPNV4路电。ASBR只需要维护所有天往PE的带标签路电,并通过EBGP通告给对ASBR。对端ASBRW车带BGP标签路由后,LDP会触发为该BGP标签路由产生标签,并在AS内的LDP邻居间传递。因此,在PE上可以看到去往对端PE的LDPLSP。
  • 为了进一步扩展性能,多跳MP-EBGP会话可以建立在不同的AS的VPN RR之间,本AS内的PE只需要与RR建立MP-IBGP即可。这些VPN RR通告VPNV4路由时不改变下一跳信息,进而当对端PE转发流量时,可以迭代至正确的隧道。

(8)OptionC方式二控制平面:无RR场景

  • CE1通告IPv4路由给PE1。
  • PE1将IPv4路由转化为VPNV4路由发送给PE2,并且设置下一跳为PE1,分配VPN标签V1。
  • PE1、P1分别为去往PE1的路由分配隧道标签T1、T2。
  • ASBR1通过EBGP会话通告一条去往PE1的带标签的IPv4路由给ASBR2,其中下一跳为ASBR1,标签为BGP标签,值为B1。
  • ASBR2、P2分别为去往PE1的路由分配隧道标签T3、T4。
  • PE2将VPNV4路由转变为IPv4路由通告给CE2,并且设置下一跳为PE2。

(9)OptionC方式二控制平面:带RR场景

  • 本端PE只与本端RR建立VPNV4邻居,本端RR与对端RR建立VPNV4邻居,实现了跨域VPN路由的传递。
  • RR只负责控制平面VPNV4路由的传递,转发平面的流量不经过RR。

(10)OptionC方式二转发平面

  • CE2发送一个目的地为Net1的IP报文给PE2。
  • PE2收到IP报文后先封装VPN标签V1,由于去往Net1的下一跳PE1不是直连邻居,通过查表发现去往PE1的标签为T4,打上T4。
  • P2把外层标签T4换成T3,然后将此报文发送给ASBR2。
  • ASBR2去掉外层标签,将T3交换为B1,再将其转发给ASBR1。
  • 当ASBR1收到报文后,去掉B1进一步查表转发,发现此时去往PE1的路由有一个关联的标签T2,因此,ASBR1将其加在栈顶,并转发给P1。
  • P1进行标签交换,把外层标签T2换成T1,然后将此报文发送给PE1。
  • PE1收到后去掉所有标签,将报文转发给CE1。

(11)OptionC方式的特点

  • VPN路由在入口PE和出口PE之间直接交换,不需要中间设备的保存和转发。
  • VPN的路由信息只出现在PE设备上,而P和ASBR只负责报文的转发,使得中间域的设备可以不支持MPLSVPN业务,只需支持MPLS转发,ASBR设备不再成为性能瓶颈。因此跨域VPN-OptionC更适合在跨越多个AS时使用。
  • 更适合支持MPLS VPN的负载分担。
  • 缺点是维护一条端到端的PE连接管理代价较大。

(12)总结:三种跨域方式对比

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值