• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 新华三人才研学中心
  • 关于我们

07-MPLS配置指导

目录

01-MPLS基础配置

本章节下载 01-MPLS基础配置  (419.57 KB)

01-MPLS基础配置


1 MPLS基础

说明

除特殊说明外,MPLS功能中所指的“接口”为三层口,包括VLAN接口、三层以太网接口等。三层以太网接口是指被配置为三层模式的以太网口,有关以太网口模式切换的操作,请参见“二层技术-以太网交换配置指导”中的“以太网接口”。

 

1.1  MPLS简介

MPLS(Multiprotocol Label Switching,多协议标签交换)是目前应用比较广泛的一种骨干网技术。MPLS在无连接的IP网络上引入面向连接的标签交换概念,将第三层路由技术和第二层交换技术相结合,充分发挥了IP路由的灵活性和二层交换的简洁性。

MPLS广泛应用于大规模网络中,它具有以下优点:

·     在MPLS网络中,设备根据短而定长的标签转发报文,省去了查找IP路由表的繁琐过程,为数据在骨干网络中的传送提供了一种高速高效的方式。

·     MPLS位于链路层和网络层之间,它可以建立在各种链路层协议(如PPP、ATM、帧中继、以太网等)之上,为各种网络层(IPv4、IPv6、IPX等)提供面向连接的服务。

·     支持多层标签和面向连接的特点,使得MPLS具有良好的扩展性,在MPLS网络基础上可以为客户提供各种服务。目前,MPLS在VPN、流量工程、QoS等方面得到广泛应用。

1.1.1  MPLS基本概念

1. 转发等价类

FEC(Forwarding Equivalence Class,转发等价类)是MPLS中的一个重要概念。MPLS将具有相同特征(目的地相同或具有相同服务等级等)的报文归为一类,称为FEC。属于相同FEC的报文在MPLS网络中将获得完全相同的处理。

2. 标签

标签是一个长度固定、只具有本地意义的标识符,用于唯一标识一个报文所属的FEC。一个标签只能代表一个FEC。

图1-1 标签的封装结构

 

图1-1所示,标签封装在链路层帧头和网络层报文头之间,长度为4个字节,由以下四个字段组成:

·     Label:标签值,长度为20bits,用来标识一个FEC。

·     TC(Traffic Class,流量等级):3bits,用于QoS。该字段又称为Exp字段。

·     S:标签栈底标识位,长度为1bit。MPLS支持多重标签,即在链路层帧头和网络层报文头之间可以封装多个标签,形成标签栈。靠近链路层帧头的最外层标签为栈顶标签;靠近网络层报文头的最内层标签为栈底标签。S位为1时表示为栈底标签;S位为0时表示为非栈底标签。

·     TTL:8bits,和IP报文中的TTL意义相同,可以用来防止环路。

3. 标签交换路由器

LSR(Label Switching Router,标签交换路由器)是具有标签分发能力和标签交换能力的设备,是MPLS网络中的基本元素。

4. 标签交换路径

属于同一个FEC的报文在MPLS网络中经过的路径称为LSP(Label Switched Path,标签交换路径)。

LSP是一条单向报文转发路径。在一条LSP上,沿数据传送的方向,相邻的LSR分别称为上游LSR和下游LSR。如图1-2所示,LSR B为LSR A的下游LSR,相应的,LSR A为LSR B的上游LSR。

图1-2 标签交换路径

 

5. 标签转发表

与IP网络中的FIB(Forwarding Information Base,转发信息库)类似,在MPLS网络中,LSR接收到带标签的报文后,通过查找LFIB(Label Forwarding Information Base,标签转发信息库)获取对应的标签操作类型、出标签值、下一跳等,以确定如何转发该报文。

6. 控制平面和转发平面

MPLS节点由两部分组成:

·     控制平面(Control Plane):负责标签的分配、FEC—标签映射的交换、标签转发表的建立、标签交换路径的建立、拆除等工作;

·     转发平面(Forwarding Plane):依据标签转发表对收到的报文进行转发。

1.1.2  MPLS网络结构

图1-3 MPLS网络结构

 

图1-3所示,MPLS网络的基本构成单元是LSR。MPLS网络包括以下几个组成部分:

·     入节点Ingress:报文的入口LSR,负责为进入MPLS网络的报文添加标签。

·     中间节点Transit:MPLS网络内部的LSR,根据标签沿着由一系列LSR构成的LSP将报文传送给出口LSR。

·     出节点Egress:报文的出口LSR,负责剥离报文中的标签,并转发给目的网络。

1.1.3  LSP建立

LSP的建立过程实际就是将FEC和标签进行绑定,在LSR上建立标签转发表的过程。LSP既可以通过手工配置的方式静态建立,也可以利用标签分发协议动态建立。

(1)     手工配置的方式建立静态LSP

建立静态LSP需要用户在报文转发路径中的各个LSR上手工配置为FEC分配的标签。建立静态LSP消耗的资源比较少,但静态建立的LSP不能根据网络拓扑变化动态调整。因此,静态LSP适用于拓扑结构简单并且稳定的小型网络。

(2)     利用标签分发协议动态建立LSP

标签分发协议是MPLS的信令协议,负责划分FEC、通告FEC—标签绑定、建立维护LSP等。标签分发协议的种类较多,有专为标签分发而制定的协议,如LDP(Label Distribution Protocol,标签分发协议),也有扩展后支持标签分发的协议,如MP-BGP、RSVP-TE。

说明

为了区分,本文中“标签分发协议”表示广义上所有用于标签分发的协议的总称;“LDP”表示RFC 5036规定的标签分发协议。

 

利用标签分发协议动态建立LSP的过程如图1-4所示。下游LSR根据目的地址划分FEC,为特定FEC分配标签,并将FEC—标签绑定关系通告给上游LSR;上游LSR根据该绑定关系建立标签转发表项。报文转发路径上的所有LSR都为该FEC建立对应的标签转发表项后,就成功地建立了用于转发属于该FEC报文的LSP。

图1-4 动态LSP建立过程

 

1.1.4  MPLS转发过程

图1-5 MPLS转发过程示意图

 

图1-5所示,MPLS网络中报文的基本转发过程为:

(1)     Ingress(Router B)接收到不带标签的报文,根据报文的目的IP地址查找FIB表获取报文的出标签(40)、下一跳LSR(Router C)和出接口(Vlan-interface20),为报文添加标签,并从相应的出接口将带有标签的报文转发给下一跳LSR。

(2)     Router C根据报文上的标签(40)查找LFIB表获取报文的标签操作(交换标签)、出标签(50)、下一跳LSR(Router D)和出接口(Vlan-interface30),用新的标签(50)替换原有标签后,从相应的出接口将带有标签的报文转发给下一跳LSR。

(3)     Egress(Router D)接收到标签报文,根据报文上的标签(50)查找LFIB表获取报文的标签操作(删除标签)、下一跳LSR(Router E)和出接口(Vlan-interface40),删除报文中的标签,从相应的出接口将不带标签的报文转发给下一跳LSR。如果LFIB表项中没有记录下一跳和出接口,则根据IP报文头查FIB表转发该报文。

1.1.5  倒数第二跳弹出

MPLS网络中,Egress节点接收到带有标签的报文后,查找标签转发表,弹出报文中的标签后,再进行下一层的标签转发或IP转发。Egress节点转发报文之前要查找两次转发表:两次标签转发表,或一次标签转发表一次路由转发表。

为了减轻Egress节点的负担,提高MPLS网络对报文的处理能力,可以利用PHP(Penultimate Hop Popping,倒数第二跳弹出)功能,在倒数第二跳节点处将标签弹出,Egress节点只需查找一次转发表。

可以通过分配隐式空标签实现倒数第二跳弹出。隐式空标签的标签值为3,这个值不会出现在标签栈中。当一个LSR发现下游LSR通告的标签为隐式空标签时,它并不用这个值替代栈顶原来的标签,而是直接弹出标签,并将报文转发给下游LSR(即Egress)。Egress接收到报文后,直接进行下一层的转发处理。

使用隐式空标签时,倒数第二跳LSR弹出了标签栈,而在某些情况下,Egress需要根据标签栈中的TC等信息决定QoS策略,此时利用显式空标签就可以在保留标签栈信息的同时,简化Egress节点的转发处理。IPv4显式空标签的值为0。Egress为FEC分配IPv4显式空标签,并通告给上游LSR后,上游LSR用这个值替代栈顶原来的标签,并将报文转发给Egress。Egress收到标签值为0的报文时,不会查找标签转发表,从标签中获取TC等信息后,直接弹出标签栈,进行下一层的转发处理。

1.1.6  协议规范

与MPLS相关的协议规范有:

·     RFC 3031:Multiprotocol Label Switching Architecture

·     RFC 3032:MPLS Label Stack Encoding

·     RFC 5462:Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field

1.2  MPLS配置任务简介

表1-1 MPLS配置任务简介

配置任务

说明

详细配置

使能MPLS功能

必选

1.3 

配置MPLS MTU

可选

1.4 

配置Egress分配的标签类型

可选

1.5 

配置TTL复制

可选

1.6 

使能MPLS的TTL超时消息发送功能

可选

1.7 

开启告警功能

可选

1.8 

 

1.3  使能MPLS功能

MPLS网络中参与MPLS转发的设备接口上,必须先使能MPLS功能,才能进行MPLS转发。

1.3.1  配置准备

在使能MPLS功能之前,需要完成以下任务:

·     配置链路层协议,保证链路层通信正常。

·     配置接口的网络层地址,使各相邻节点网络层可达。

·     配置单播静态路由或IGP协议,保证各LSR在网络层互通。

1.3.2  使能MPLS功能

表1-2 使能MPLS功能

操作

命令

说明

进入系统视图

system-view

-

配置本节点的LSR ID

mpls lsr-id lsr-id

缺省情况下,未配置LSR ID

LSR ID在MPLS网络内必须唯一

LSR ID采用点分十进制格式,与IP地址格式相同。推荐使用Loopback接口的IP地址作为LSR ID

进入需要转发MPLS报文的接口视图

interface interface-type interface-number

-

使能接口的MPLS能力

mpls enable

缺省情况下,未使能接口的MPLS能力

 

1.4  配置MPLS MTU

提示

·     配置的MPLS MTU值大于接口MTU时,有可能导致数据转发失败。

·     如果MPLS报文内封装的是L2VPN报文或IPv6报文,则即使报文长度大于MPLS MTU,也会发送该报文,报文能否发送成功由接口的实际情况决定。

 

MPLS标签栈位于链路层帧头和网络层报文头之间。在MPLS转发过程中,虽然网络层报文长度小于接口的MTU,但是增加MPLS标签后,报文长度可能超过链路层允许发送的范围,从而导致报文无法正常转发。

为此,设备上定义了MPLS MTU,MPLS转发时将增加标签后的报文长度与MPLS MTU比较。报文长度大于MPLS MTU时:

·     如果允许分片,则LSR移除报文的标签栈,对IP报文进行分片(分片大小为MPLS MTU值减去标签栈的长度),分片后将被移除的标签栈添加到每个分片上,再进行转发;

·     如果不允许分片,则直接丢弃报文。

表1-3 配置MPLS MTU

操作

命令

说明

进入系统视图

system-view

-

进入接口视图

interface interface-type interface-number

-

配置接口的MPLS MTU

mpls mtu value

缺省情况下,未配置接口的MPLS MTU值

如果未配置接口的MPLS MTU值,则根据接口的MTU值进行分片,分片的长度不包含MPLS标签栈长度,为分片添加MPLS标签栈后MPLS报文的长度可能会大于接口MTU的值,导致MPLS报文发送失败

 

1.5  配置Egress分配的标签类型

提示

·     对于LDP LSP,执行mpls label advertise命令修改Egress分配的标签类型后,已经建立的LDP LSP会被拆除,并根据新的标签类型重新建立。

·     对于BGP LSP,mpls label advertise命令只对新建立的BGP LSP生效,执行本命令前已经建立的BGP LSP不受影响。若要使本命令对已经建立的BGP LSP生效,则需要从BGP路由表中删除BGP LSP对应的路由,并重新引入该路由。

 

MPLS网络中,Egress分配的标签类型分为以下几种:

·     隐式空标签:标签值为3。

·     显式空标签:标签值为0。

·     非空标签:标签值的取值范围为16~1048575。

对于采用标签分发协议动态建立的LSP,Egress分配的标签类型决定了倒数第二跳转发带标签报文的方式:

·     如果分配的是隐式空标签,则倒数第二跳根据标签找到下一跳转发信息后,直接弹出标签。

·     如果分配的是显式空标签,则倒数第二跳将标签值替换为显式空标签。

·     如果分配的是非空标签,则倒数第二跳将标签值替换为Egress分配的标签值。

请根据实际情况选择Egress节点分配的标签类型:如果倒数第二跳节点支持PHP(Penultimate Hop Popping,倒数第二跳弹出)功能,则建议采用隐式空标签;如果在简化Egress节点转发处理的同时,希望Egress节点能够根据标签中的TC等信息决定QoS策略,则建议采用显式空标签;非空标签只使用在一些比较特殊的场景,比如Egress节点上部署了OAM,只有根据标签才能对应到OAM功能实体的情况,通常情况下不建议使用非空标签。

设备作为倒数第二跳节点时,允许Egress节点向其通告显式空标签、隐式空标签和非空标签。

表1-4 配置Egress分配的标签类型

操作

命令

说明

进入系统视图

system-view

-

配置设备作为Egress节点时分配的标签类型,即向倒数第二跳通告的标签类型

mpls label advertise { explicit-null | implicit-null | non-null }

缺省情况下,Egress节点向倒数第二跳通告隐式空标签(implicit-null

 

1.6  配置TTL复制

提示

·     在配置MPLS业务之前,需要先确定是否需要使能TTL复制功能并完成相关配置。进行MPLS业务配置后,如果需要更改TTL的处理方式,需要重启设备或相关单板。

·     建议在LSP经过的LSR上配置相同的TTL域处理方式。

·     如果配置mpls ttl propagate vpn命令使能对VPN报文的TTL复制功能,则建议在同一个VPN的所有PE上都使能此功能,以保证不同的PE上执行Tracert得到的结果一致。

 

IP报文进入MPLS网络和IP报文离开MPLS网络时,TTL的处理方式分为以下几种:

·     使能TTL复制功能:Ingress节点为IP报文压入标签时,将原IP报文中的TTL值复制到新增加的标签的TTL域。LSR转发标签报文时,对标签的TTL值做减一操作。LSR弹出报文的标签时,将标签的TTL值复制回IP报文。使用这种方式时,MPLS骨干网中的节点对用户网络的报文可见。报文沿着LSP传输的过程中,TTL逐跳递减,Tracert的结果将反映报文实际经过的路径。

图1-6 使能TTL复制功能时的处理过程

 

·     未使能TTL复制功能:Ingress节点为IP报文压入标签时,不会将原IP报文中的TTL值复制到新增加的标签的TTL域,标签的TTL取值为255。LSR转发标签报文时,对标签的TTL值做减一操作。LSR弹出标签时,不修改IP TTL的值。使用这种方式时,MPLS骨干网中的节点对用户网络的报文不可见。Tracert的结果不包括MPLS骨干网络中的每一跳,从而隐藏MPLS骨干网络的结构。

图1-7 未使能TTL复制功能时的处理过程

 

表1-5 配置TTL复制功能

操作

命令

说明

进入系统视图

system-view

-

使能TTL复制功能

mpls ttl propagate { public | vpn }

缺省情况下,只对公网报文使能TTL复制功能

在MPLS网络内部,MPLS报文多层标签之间的TTL值总是互相复制。本命令只决定是否将IP TTL复制到标签的TTL域、是否将标签的TTL复制到IP的TTL域

 

1.7  使能MPLS的TTL超时消息发送功能

使能MPLS的TTL超时消息发送功能后,当LSR收到TTL为1的MPLS报文时,LSR会生成ICMP的TTL超时消息。对于一层标签的MPLS报文,LSR沿着本地IP路由返回ICMP TTL超时消息;对于多层标签的MPLS报文,LSR沿着发送MPLS报文的LSP转发ICMP TTL超时消息,由Egress节点将该消息返回给发送者。

表1-6 配置MPLS的TTL超时消息发送功能

操作

命令

说明

进入系统视图

system-view

-

使能MPLS的TTL超时消息发送功能

mpls ttl expiration enable

缺省情况下,MPLS的TTL超时消息发送功能处于开启状态

 

1.8  开启告警功能

开启MPLS模块的告警功能后,该模块会生成告警信息,用于报告该模块的重要事件。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。

有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。

表1-7 开启告警功能

操作

命令

说明

进入系统视图

system-view

-

开启MPLS模块的告警功能

snmp-agent trap enable mpls

缺省情况下,MPLS模块的告警功能处于开启状态

 

1.9  MPLS显示和维护

在完成上述配置后,在任意视图下执行display命令可以显示配置后MPLS的运行情况,用户可以通过查看显示信息验证配置的效果。

表1-8 MPLS显示和维护

操作

命令

显示使能了MPLS能力接口的MPLS相关信息

display mpls interface [ interface-type interface-number ]

显示MPLS标签的使用状态

display mpls label { label-value1 [ to label-value2 ] | all }

显示LSP信息

display mpls lsp [ egress | in-label label-value | ingress | outgoing-interface interface-type interface-number | protocol { bgp | ldp | local | rsvp-te | static | static-cr } | transit  ] [ vpn-instance vpn-instance-name ] [ ipv4-dest mask-length | ipv6 [ ipv6-dest prefix-length ] ] [ verbose ]

显示MPLS的NIB(Nexthop Information Base,下一跳信息库)信息

display mpls nib [ nib-id ]

显示MPLS NHLFE表项索引的使用状态

display mpls nid [ nid-value1 [ to nid-value2 ] ]

显示LSP的统计信息

display mpls lsp statistics

显示MPLS汇总信息

display mpls summary

显示ILM表项信息(独立运行模式)

display mpls forwarding ilm [ label ] [ slot slot-number ]

显示ILM表项信息(IRF模式)

display mpls forwarding ilm [ label ] [ chassis chassis-number slot slot-number ]

显示NHLFE表项信息(独立运行模式)

display mpls forwarding nhlfe [ nid ] [ slot slot-number ]

显示NHLFE表项信息(IRF模式)

display mpls forwarding nhlfe [ nid ] [ chassis chassis-number slot slot-number ]

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们