• MPLS 基础


    一、MPLS 简介

      MPLS(Multi-Protocol Label Switching,多协议标签交换)是一种IP 骨干网技术。MPLS起源于IPv4,其核心技术可扩展到多种网络协议,包括IPv6、IPX和CLNP等。MPLS可以支持多种高层协议和业务,而在一定程度上可以保证信息传输的安全性。

    二、基本术语 LSR、MPLS Domain、LER、LSP、Ingress LSR、Egress LSR、Transit LSR、FEC

      

      LSR(Lable Switch Router,标签交换路由器):支持MPLS的路由器、支持MPLS的交换机或其他网络设备,该设备能根据报文的MPLS标签头对其进行转发(如图:R1、R2、R3)。

      MPLS Domain(MPLS 域):由连续的LSR构成的一个MPLS域。

      LER(Label Edge Router):位于MPLS域边缘的LSR,(如图:R1、R3)。

      

      LSP(Label Switch path,标签交换路径):是标签报文穿越MPLS域到达目的地所走的路径。

      (1)LSP实际上是一种类拟Tunnel的概念,LSP的建立过程实际上也是报文转发路径中,沿途设备关于特定FEC的标签的确定过程。

      (2)LSP可以通过手工的方式建立(静态LSP),或者通过标签分发协议自动建立(动态LDP)

      

      Ingress LSR(入站LSR):LSP的入口LSR(如图:R1)。

      Transit LSR(中转LSR):位于LSP中间的LSR(如图:R2)。

      Egress LSR(出站LSR):LSP的出口LSR(如图:R3)。

      注:在图中,对于去往 3.3.3.0/24的数据流量而言,R1是Ingress LSR、R2是Transit LSR、R3是Egress LSR,一条LSP可以有0个、一个或多个Transit LSR,但有且只有一个Ingress LSR和一个Egress LSR。

      FEC(Forwarding Equivalence Class,转发等价类):是在转发过程中具有相同处理方式和处理待遇的数据流,可通过IP地址、隧道、COS等方式来标识一个FEC。例如:在传统的采用最长匹配算法的IP转发中,在同一条路由的所有报文就是一个转发等价类。

      (1)通常在一台设备上,对于一个FEC分配相同的标签。

      (2)属于一个FEC的流量具有相同的转发方式、转发路径和转发待遇。但是并不是所有拥有相同标签的报文都属于一个FEC,因为这些报文的EXP值可能不相同,执行方式可能不同。

      (3)决定报文属于哪一个FEC的设备是Ingress LSR,因为是它对报文进行分类和压入标签。

    三、MPLS架构

      3.1 MPLS 控制和数据平面

      控制平面(Control plane)

      (1)控制平面是无连接的,主要功能是负责产生和维护路由信息以及标签信息。

      (2)控制平台中IP路由协议(IP Routing Protocol)模块用来传递路由信息,生成路由信息表,标签分发协议(Label Distributilon Protocol)模块用来完成标签信息的交换,建立标签转发路径。

      数据平面(Data plane)

      (1)数据平台也称为转发平面,是面向连接的,主要功能是负责普通IP报文的转发以及带MPLS标签报文的转发。

      (2)数据平面包括IP转发信息表(Forwarding Information Base)标签转发信息表(Label Forwarding Information Base),当收到普通IP报文时,则查找IP路由表转发,如果需要标签转发,则查找标签转发信息表。

      3.2 MPLS 控制和数据表项

      控制平面(Control plane)

      (1)路由信息表RIB(Routing Information Base):由IP路由协议(IP Routing Protocol)生成,用于选择路由。

      (2)标签分析协议LDP(Label Distribution Protocol):负责标签的分配、标签转发信息表的建立、标签交换路径的建立、析除。

      (3)标签信息表LIB(Label Information Base):由标签分发协议生成,用于管理标签信息。

      数据平面(Data plane)

      (1)转发信息表FIB(Forwarding Information Base):从RIB提取必要的路由信息生成,负责普通IP报文的转发。

      (2)标签转发信息表LFIB(Label Forwarding Information Base):简称标签转发表,由标签转发协议在LSR上建立LFIB,负责带 MPLS标签报文的转发。

    四、MPLS标签结构

      

      Label(20bit):标签字段,用于存储标签值。

      EXP(3bit):实验位,通常用做Cos(Class of Service),当设备阻塞时,优先发送优先级高的报文。

      Bos(1bit):栈底位,用于标识标签头部是否为最后一层标签。如为1,则表示当前标签为栈底;如为0,则表示当前标签头部后还有标签。

      TTL(8bit):防止无限转发。

      注:LSR收到数据帧后,如何判断封装的是IP报文还是标签?以以太环境为例,以太帧头中的Type字段用于标识封装的报文类型,如果值为0x800,则表示为IP报文,如值为8847(单播)或8848(组播),则表示MPLS标签报文。

    五、MPLS标签的处理

      标签的操作类型包括 标签压入(Push,或Insert)、标签交换(Swap)、标签弹出(Pop),它们是标签转发的基本动作,是标签转发信息表的组成部分。

      Push:指当IP报文进入MPLS域时,LER设备在报文二层头部和IP头部之间插入一个新标签;或者中转LSR设备,在标签栈顶增加一个新的标签(即标签嵌套)。

      Swap:当报文在MPLS域内转发时,根据标签转发表,用下一跳分配的标签,替换MPLS报文的栈顶标签。

      Pop:当报文离开MPLS域时,将MPLS报文的标签去掉。

    六、LSP的建立

      MPLS需要为报文事先分配好标签,建立一条LSP,才能进行报文转发。LSP分为静态LSP和动态LSP两种。

      静态LSP的建立:

      (1)静态LSP不能使用标签发布协议,不需要交互控制报文,因此消耗资源小,适用于拓扑结构简单并且稳定的小型网络。

      动态LSP的建立(MPLS可以使用多种标签发布协议):

      (1)LDP:是专为标签发布而制定的协议。LDP根据IGP、BGP路由信息通过逐跳方式建立LSP。

      (2)RSVP-TE:是RSVP的扩展,用于建立基于约束的LSP,它拥有普通LSP没有的功能,如带宽预留、带宽约束、显式路径等。

      (3)MP-BGP:是在BGP协议基本上扩展的协议,MP-BGP支持为MPLS VPN业务中私网路由和跨域VPN的标签路由分配标签。

    七、静态LSP

      (1)静态LSP是用户通过手工为各个转发等价类分配标签而建立的。

      (2)手式分配标签遵循的原则是:上游LSR出标签的值就是下游LSR入标签的值。

     

    八、静态LSP实例

      

      1、在网络中部署OSPF,使得MPLS Domain内的路由实现互通。

      2、在设备上激活MPLS

        R1的配置如下(R2、R3、R4配置类拟):

        [R1] mpls lsr-id 1.1.1.1                   //配置lSR-ID

        [R1] int gi0/0/0

        [R1-Gi0/0/0] mpls en                       //在接口激活mpls

        [R1-Gi0/0/1] mpls  en                      //两个方向的接口 激活mpls

      3、配置静态LSP

        R1的配置

        [R1] static-lsp ingress to4 destination 4.4.4.0 24 nexthop 12.1.1.2 out-label 200

        R2的配置

        [R2] static-lsp transit to4 in-label 200 nexthop 23.1.1.3 out-label 300

        R3的配置

        [R3]static-lsp transit to4 in-label 300 nexthop 34.1.1.4 out-label 400

        R4的配置

         [R4] static-lsp egress to4 in-label 400

        注:LSP需要配置两个方向的LSP,即两条LSP。

    八、相关命令

      dis ip routing-table                     //查看全局路由表
      dis fib                                  //查看转发表
      dis mpls static-lsp                      //查看lsp路径
      ping mpls
      tracert mpls 
    
  • 相关阅读:
    BZOJ 5418: [Noi2018]屠龙勇士 EXCRT+multiset
    CF1033D Divisors Pollard-rho
    BZOJ 3782: 上学路 Lucas+ExCRT+容斥+dp
    BZOJ 1951: [Sdoi2010]古代猪文 ExCRT+欧拉定理+Lucas
    Activiti介绍(一)
    Centos7卸载FastDFS6.1卸载(六)
    FastDFS整合SpringBoot(五)
    FastDFS整合nginx模块报错
    SpringBoot怎么访问html文件
    FastDFS整合普通Maven项目(四)
  • 原文地址:https://www.cnblogs.com/PBDragon/p/13454320.html
Copyright © 2020-2023  润新知