MPLS操作.docx
《MPLS操作.docx》由会员分享,可在线阅读,更多相关《MPLS操作.docx(56页珍藏版)》请在冰豆网上搜索。
MPLS操作
目录
第1章MPLS体系结构1-1
1.1MPLS简介1-1
1.2MPLS基本概念1-1
1.3MPLS体系结构1-3
1.3.1MPLS网络结构1-3
1.3.2标签报文的转发1-4
1.3.3LSP的建立1-4
1.3.4LSP隧道与分层1-6
1.4MPLS与其它协议的关系1-7
1.4.1MPLS与路由协议的关系1-7
1.4.2RSVP对MPLS的扩展1-7
1.5MPLS应用1-8
1.5.1基于MPLS的VPN1-8
1.5.2基于MPLS的流量工程1-8
第2章MPLS基本能力配置2-1
2.1MPLS基本能力配置2-1
2.1.1配置LSR的ID2-1
2.1.2激活LDP协议2-1
2.1.3使能接口LDP功能2-2
2.1.4触发网段路由建立LSP2-2
2.1.5LDP环路检测控制2-3
2.1.6设置接口LDP会话保持参数2-4
2.2MPLS显示和调试2-5
2.3MPLS典型配置举例2-5
第3章BGP/MPLSVPN配置3-1
3.1BGP/MPLSVPN简介3-1
3.1.1VPN概述3-1
3.1.2BGP/MPLSVPN模型3-2
3.1.3BGP/MPLSVPN实现3-5
3.1.4多角色主机3-7
3.2BGP/MPLSVPN配置3-7
3.2.1定义BGP/MPLSVPN3-7
3.2.2进入协议地址族视图3-10
3.2.3配置PE-CE间路由交换3-11
3.2.4配置PE-PE间路由交换3-13
3.3BGP/MPLSVPN显示和调试3-14
3.4BGP/MPLSVPN典型配置举例3-14
3.4.1BGP/MPLSVPN综合组网举例3-15
3.4.2Extranet组网举例3-22
3.4.3Hub&Spoke组网举例3-27
3.4.4CE双归属组网举例3-33
3.4.5多角色主机组网举例3-40
3.5BGP/MPLSVPN故障诊断与排除3-42
第1章MPLS体系结构
1.1MPLS简介
MPLS(MultiprotocolLabelSwitching)是多协议标签交换的简称,它用短而定长的标签来封装分组。
MPLS从各种链路层(如PPP、ATM、帧中继、以太网等)得到链路层服务,又为网络层提供面向连接的服务。
MPLS能从IP路由协议和控制协议中得到支持,同时还支持基于策略的约束路由,路由功能强大、灵活,可以满足各种新应用对网络的要求。
这种技术早期起源于IPv4(InternetProtocolversion4),但其核心技术可扩展到多种网络协议,包括IPv6(InternetProtocolversion6)、IPX(InternetPacketExchange)、Appletalk、DECnet、CLNP(ConnectionlessNetworkProtocol)等。
MPLS最初是为提高路由器转发速度而提出的,但是由于其固有的优点,它的用途已不仅仅局限于此,还在流量工程(TrafficEngineering)、VPN、QoS等方面得到广泛的应用,从而日益成为大规模IP网络的重要标准。
1.2MPLS基本概念
1.转发等价类(FEC)
FEC(ForwardingEquivalentClass)是MPLS中的一个重要概念。
MPLS实际上是一种分类转发技术,它将具有相同转发处理方式(目的地相同、使用转发路径相同、具有相同的服务等级等)的分组归为一类,称为转发等价类。
属于相同转发等价类的分组在MPLS网络中将获得完全相同的处理。
2.标签
标签是一个长度固定、只具有本地意义的短标识符,用于唯一标识一个分组所属的转发等价类(FEC)。
在某些情况下,例如要进行负载分担时,对应一个FEC可能会有多个标签,但是一个标签只能代表一个FEC。
3.标签分配和分发
在MPLS体系中,下游LSR(LabelSwitchRouter)决定标签与FEC的绑定关系,并通知上游LSR。
即,标签由下游指定,分配的标签按照从下游到上游的方向分发。
4.标签分发方式
MPLS使用的标签分发方式有两种:
●下游自主标签分发(DownstreamUnsolicited,DU):
对于一个特定的FEC,LSR无须从上游获得标签请求消息即进行标签的分配与分发。
●下游按需标签分发(Downstream-on-Demand,DoD):
对于一个特定的FEC,LSR获得标签请求消息之后才进行标签分配与分发。
具有标签分发邻接关系的上游LSR和下游LSR必须对使用哪种标签分发方式达成一致。
5.标签保持方式
标签保持方式分为两种:
自由标签保持方式和保守标签保持方式。
举例说明:
假设存在两台LSR,分别是路由器Ru和Rd。
对于一个特定FEC,如果Ru收到了来自Rd的标签绑定,当Rd不是Ru的下一跳时,如果Ru保存该绑定,则认为Ru使用的是自由标签保持方式;如果Ru丢弃该绑定,则认为Ru使用的是保守标签保持方式。
当要求LSR能够迅速适应路由变化时,可使用自由标签保持方式;当要求LSR中保存较少的标签数量时,可使用保守标签保持方式。
6.标签的结构
标签的封装结构如图1-1所示。
图1-1标签的封装结构
标签位于链路层包头和网络层分组之间,长度为4个字节,包括4个域:
●Label:
标签值,长度为20bits,用于转发的指针。
●Exp:
保留,用于试验,长度为3bits。
●S:
MPLS支持标签的分层结构,即多重标签,长度为1bit。
取1时表示是最底层标签。
●TTL:
生存时间(TimeToLive),与IP分组中的TTL意义相同,长度为8bits。
7.标签在分组中的位置
标签在分组中的封装位置如图1-2所示:
图1-1标签在分组中的封装位置
1.3MPLS体系结构
1.3.1MPLS网络结构
如图1-3所示,MPLS网络的基本构成单元是标签交换路由器LSR(LabelSwitchingRouter)。
由LSR构成的网络叫做MPLS域;位于区域边缘和其它用户网络相连的LSR称为边缘LSR(LER,LabeledEdgeRouter);位于区域内部的LSR则称为核心LSR。
核心LSR可以是支持MPLS的路由器,也可以是由ATM交换机等升级而成的ATM-LSR。
分组被打上标签后,沿着由一系列LSR构成的标签交换路径LSP(LabelSwitchedPath)传送,其中,入口LER被称为Ingress,出口LER被称为Egress。
图1-1MPLS基本原理
1.3.2标签报文的转发
在入口LER(Ingress),进入网络的分组根据其特征被划分成转发等价类FEC。
一般情况下,可根据IP地址前缀或主机地址来划分FEC。
属于相同FEC的分组在MPLS域中将经过相同的路径(即LSP)。
LSR对到来的FEC分组分配一个短而定长的标签,然后从相应的接口转发出去。
在LSP沿途的LSR上都已建立了输入/输出标签的映射表(该表中的元素称为下一跳标签转发条目,NextHopLabelForwardingEntry,简称为NHLFE)。
对于接收到的标签分组,LSR只需根据标签从表中找到相应的NHLFE,并用新的标签替换原来的标签,然后对标签分组进行转发,这个过程称为输入标签映射ILM(IncomingLabelMap)。
从上面的描述可以看出,MPLS在网络入口处指定特定分组的FEC,后续路由器只需查找标签映射表转发即可,这个过程比常规的网络层转发要简单得多,从而提高了转发速度。
说明:
对于TTL的处理:
对分组打标签时,必须将原IP分组中的TTL值拷贝到标签中的TTL域。
LSR在转发标签分组时,对栈顶标签的TTL值减一。
标签出栈时,再将栈顶的TTL值拷贝回IP分组或下层标签。
但是,当LSP穿越由ATM-LSR或FR-LSR构成的非TTLLSP段时,域内的LSR无法处理TTL域。
这时,需要在进入非TTLLSP段时,对TTL进行统一处理,即一次性减去反映该非TTLLSP段长度的值。
1.3.3LSP的建立
LSP的建立是将FEC与标签进行绑定,并将这种绑定通告LSP上相邻LSR的过程。
这个过程是通过标签分发协议LDP(LabelDistributionProtocol)来实现的。
LDP是MPLS的控制和信令协议,它规定了LSR间的消息交互过程和消息结构,以及路由选择方式。
1.LDP的工作过程
LSR通过周期性地发送Hello消息来发现LSR邻居,然后与新发现的相邻LSR建立LDP会话。
通过LDP会话,相邻LSR间通告标签交换方式、标签空间、会话保持定时器值等信息。
LDP会话是TCP连接,需通过LDP消息来维护,如果在会话保持定时器值规定的时间内没有其它LDP消息,那么必须发送会话保持消息来维持LDP会话的存在。
图1-4为LDP标签分发示意图。
图1-1标签分发过程
在一条LSP上,沿数据传送的方向,相邻的LSR分别称为上游LSR和下游LSR。
例如,在图1-4中的LSP1上,LSRB为LSRC的上游LSR。
本章前面提到,标签的分发过程有下游自主标签分发DoD和下游按需标签分发DU两种模式,它们的主要区别在于标签映射的发布是上游请求还是下游主动发布。
下面分别描述这两种模式的标签分发过程:
(1)DoD(downstream-on-demand)模式
上游LSR向下游LSR发送标签请求消息(包含FEC的描述信息),下游LSR为此FEC分配标签,并将绑定的标签通过标签映射消息反馈给上游LSR。
下游LSR何时反馈标签映射消息,取决于该LSR采用独立标签控制方式还是有序标签控制方式。
采用有序标签控制方式时,只有收到它的下游返回的标签映射消息后,才向其上游发送标签映射消息;采用独立标签控制方式时,不管有没有收到它的下游返回的标签映射消息,都立即向其上游发送标签映射消息。
上游LSR一般是根据其路由表中的信息来选择下游LSR。
在图1-4中,LSP1沿途的LSR都采用有序标签控制方式,LSP2上的LSRF则采用独立标签控制方式。
(2)DU(downstreamunsolicited)模式
下游LSR在LDP会话建立成功,主动向其上游LSR发布标签映射消息。
上游LSR保存标签映射信息,并根据路由表信息来处理收到的标签映射信息。
2.基于约束路由的LDP
MPLS还支持基于约束路由的LDP机制(CR-LDP,Constrain-basedRoutingLDP)。
所谓CR-LDP,是指入口节点在发起建立LSP时,在标签请求消息中对LSP路由附加一定的约束信息。
这些约束信息可以是对沿途LSR的精确指定,此时称为严格的显式路由;也可以是对选择下游LSR时的模糊限制,此时称为松散的显式路由。
3.LSP的环路控制
在MPLS域中建立LSP也需要防止产生路径循环。
避免LSP路径循环有两种方式:
●最大跳数方式:
在传递标签绑定的消息中包含跳数信息,每经过一跳,该值就加一,当超过规定的最大值时就认为出现了环路,将终止LSP的建立过程。
●路径向量方式:
在传递标签绑定的消息中记录路径信息,每经过一跳,相应的路由器就检查自己的ID是否在此记录中,如果没有,就将自己的ID添加到该记录中,否则就认为出现了环路,将终止LSP的建立过程。
1.3.4LSP隧道与分层
1.LSP隧道
MPLS支持LSP隧道技术。
在一条LSP上,LSRRu和LSRRd互为上下游,但它们之间的路径可能并不是路由协议所提供路径的一部分,MPLS允许在LSRRu和LSRRd之间建立一条新的LSP,LSRRu和LSRRd分别是这条LSP的起点和终点。
这时,LSRRu和LSRRd间的LSP就是LSP隧道,它避免了采用传统的网络层封装隧道。
如果隧道经由的路由与逐跳从路由协议取得的路由一致,这种隧道就称为逐跳路由隧道;否则称为显式路由隧道。
图1-1LSP隧道
在图1-5中,LSP就是R2、R3间的一条隧道。
2.多层标签栈
当分组在LSP隧道中传送时,会有多层标签,称为标签栈。
在每一隧道的入口和出口处,进行标签栈的入栈和出栈操作,每发生一次入栈操作,标签就会增加一层。
MPLS对标签栈的深度没有限制。
标签栈按照“后进先出”(Last-In-First-Out)方式组织标签,MPLS从栈顶开始处理标签。
若一个分组的标签栈深度为m,则位于栈底的标签为1级标签,位于栈顶的标签为m级标签。
未打标签的分组可看作标签栈为空(即标签栈深度为零)的分组。
1.4MPLS与其它协议的关系
1.4.1MPLS与路由协议的关系
LDP通过逐跳方式建立LSP时,利用沿途各LSR路由转发表中的信息来确定下一跳,而路由转发表中的信息一般是通过IGP、BGP等路由协议收集的。
LDP并不直接和各种路由协议关联,只是间接使用路由信息。
另一方面,虽然LDP是专门用来实现标签分发的协议,但LDP并不是唯一的标签分发协议。
通过对BGP、RSVP等已有协议进行扩展,也可以支持MPLS标签的分发。
MPLS的一些应用也需要对某些路由协议进行扩展。
例如,基于MPLS的VPN应用需要对BGP进行扩展,以使BGP能传播VPN的路由信息;基于MPLS的流量工程(TE,TrafficEngineering)需要对OSPF或IS-IS协议进行扩展,以携带链路状态信息。
1.4.2RSVP对MPLS的扩展
资源预留协议RSVP(ResourceReservationProtocol)经扩展后可以支持MPLS标签的分发,同时,在传送标签绑定消息时还能携带资源预留的信息。
通过这种方法建立的LSP具有资源预留功能,沿途的LSR可以为该LSP分配一定的资源,使在此LSP上传送的业务得到保证。
RSVP的扩展主要是在其Path消息和Resv消息中增加新的对象,新增对象除了可以携带标签绑定信息外,还可以携带对沿途LSR寻径时的限制信息,从而支持LSP约束路由的功能。
扩展的RSVP还支持快速重路由,即在一定条件下LSP需要改变时,可以在不中断用户业务的同时,将原来的业务流重新路由到新建立的LSP上。
1.5MPLS应用
1.5.1基于MPLS的VPN
传统的VPN一般是通过GRE、L2TP、PPTP等隧道协议来实现私有网络间数据流在公网上的传送,而LSP本身就是公网上的隧道,因此,用MPLS来实现VPN有天然的优势。
基于MPLS的VPN就是通过LSP将私有网络在地域上的不同分支联结起来,形成一个统一的网络。
基于MPLS的VPN还支持不同VPN间的互通。
图1-1基于MPLS的VPN
图1-6给出了基于MPLS的VPN的基本结构。
CE(CustomEdge)是用户边缘设备,可以是路由器,也可以是交换机,甚至是一台主机;PE(ProviderEdge)是服务商边缘路由器,位于骨干网络;PE负责对VPN用户进行管理、建立各PE间LSP连接、同一VPN用户各分支间路由分派。
PE间的路由分派通常是用扩展的BGP协议实现的。
基于MPLS的VPN支持不同分支间的IP地址复用和不同VPN间互通,与传统的路由相比,VPN路由中需要增加分支和VPN的标识信息,这就需要对BGP进行扩展,以携带VPN路由信息。
1.5.2基于MPLS的流量工程
1.流量工程的作用
网络拥塞是影响骨干网络性能的主要问题。
拥塞的原因一般是网络资源不足,或者网络资源的负载不均衡,导致局部拥塞。
流量工程用来解决由负载不均衡导致的拥塞。
流量工程通过动态监控网络的流量和网络单元的负载,实时调整流量管理参数、路由参数和资源约束参数等,使网络运行状态迁移到理想状态,优化网络资源的使用,从而避免由于负载不均衡引起的拥塞。
2.用MPLS来实现流量工程的优点
现有的IGP协议都是拓扑驱动的,只考虑网络静态的连接情况,不能反映带宽和流量特性等动态状况,这正是导致网络负载不均衡的主要原因。
而MPLS具有的一系列不同于IGP的特性,正是实现流量工程所需要的:
●MPLS支持异于路由协议路径的显式LSP路由;
●LSP较传统单个IP分组转发更便于管理和维护;
●基于约束路由的LDP可以实现流量工程的各种策略;
●基于MPLS的流量工程的系统开销较其它实现方式更低;等等。
3.基于MPLS的流量工程的实现
用MPLS来实现流量工程时,先要根据物理网络的拓扑生成MPLS导出图,即由LSR、连接LSR的LSP、LSP属性这三种元素构成的派生拓扑图。
同时,将通过MPLS域的数据划分成若干主干流(TrafficTrunk)。
主干流一般定义为在MPLS域中,经过相同Ingress和Egress的所有单向流量。
主干流有许多属性,包括流量参数、路径选择和维护方式、优先级、可抢占性、资源亲和度等。
对资源也定义了一些属性,如资源级别、最大分配复用度等。
然后,以主干流的属性、资源的属性、网络的状态信息为生成约束路由的策略,来找出主干流的路径。
主干流的路径可以根据网络状态的变化动态调整。
第2章MPLS基本能力配置
NE16E/08E/05提供MPLS基本能力,各接口均支持基本MPLS转发功能,并支持LDP会话建立和LSP维护。
2.1MPLS基本能力配置
MPLS基本能力配置中,必须的配置项包括:
●配置LSR的ID
●激活LDP协议
●使能接口LDP功能
在基本能力配置中,可选的配置项包括:
●触发网段路由建立LSP
●LDP环路检测控制
●设置接口LDP会话保持参数
2.1.1配置LSR的ID
在配置其它MPLS命令之前,必须首先为LSR指定ID。
ID采用IP地址格式,并且要保证在MPLS域内唯一。
请在系统视图下进行下列配置。
表2-1指定LSRID
操作
命令
指定LSR的ID
mplslsr-idX.X.X.X
取消指定ID的配置
undomplslsr-idX.X.X.X
缺省情况下,未指定LSRID。
2.1.2激活LDP协议
要进行LDP的配置,首先要激活LDP协议并进入LDP视图。
请在系统视图下进行下列配置。
表2-1激活LDP协议并进入LDP视图
操作
命令
激活LDP协议并进入LDP视图
mplsldp
去活LDP协议
undomplsldp
缺省情况下,LDP协议未激活。
2.1.3使能接口LDP功能
要使接口具有MPLS功能,必须在接口视图下对该接口使能LDP。
使能后的接口可建立LDP会话、实现标签分组的转发。
请在接口视图下进行下列配置。
表2-1接口LDP使能
操作
命令
使能接口LDP功能
mplsldpenable
禁止接口LDP功能
mplsldpdisable
缺省情况下,禁止接口的LDP功能。
禁止接口LDP功能会删除LDP对等体,删除LSP隧道,关闭TCP连接,中断对等体LDP会话,停止发送Hello报文,停止标签分组的转发。
用户应慎用此命令
在不支持广播报文的链路层协议,如帧中继、ATM上,必须要使用命令frmapip或mapipinarp的broadcast关键字来配置广播属性,以支持广播和组播报文的传递。
经过以上基本配置后,路由器已经可以提供MPLS转发和LDP信令功能。
下面介绍MPLS的一些高级配置。
2.1.4触发网段路由建立LSP
配置触发网段路由建立LSP后,本地主机路由和网段路由都建立LSP。
请在LDP视图下进行下列配置。
表2-1触发网段路由建立LSP
操作
命令
触发网段路由建立LSP
lsptriggerall
恢复缺省设置
undolsptriggerall
缺省情况下,只触发本地主机路由建立LSP。
2.1.5LDP环路检测控制
在MPLS域中建立LSP也要防止路径循环。
防止LSP的路径循环有最大跳数和路径向量两种方式。
1.使能环路检测
用于控制在LDP信令过程中是否使用环路检测功能。
请在LDP视图下进行下列配置。
表2-1使能环路检测
操作
命令
允许进行环路检测
loop-detect
禁止进行环路检测
undoloop-detect
缺省情况下,允许环路检测。
2.设置环路检测最大跳数
当环路检测采用最大跳数方式时,可以规定跳数的最大值,超过该最大值即认为出现了环路,LSP建立失败。
请在LDP视图下进行下列配置。
表2-1设置环路检测最大跳数
操作
命令
设置环路检测的最大跳数
hops-counthop-number
恢复最大跳数的缺省值
undohops-count
缺省情况下,最大跳数为32。
3.设置路径向量的最大值
当环路检测采用路径向量方式时,也需要规定LSP的最大值。
这样,在以下条件之一时即认为出现了环路,LSP建立失败:
(1)路径向量记录表中已有本LSR的记录。
(2)路径的跳数超过这里设定的最大值。
请在LDP视图下进行下列配置。
表2-1环路检测使能
操作
命令
设置路径向量的最大跳数
path-vectorspv-number
取消路径向量最大值的设置
undopath-vectors
缺省情况下,路径向量最大跳数为32。
2.1.6设置接口LDP会话保持参数
接口上的LDP实体周期性的发出Hello报文来发现LDP对等体,已经建立的LDP会话也必须靠定期的消息来维持其存在(如果没有LDP消息报文,则须发送Keepalive报文)。
请在接口视图下进行下列配置。
表2-1设置接口LDP会话参数
操作
命令
设置接口LDP会话保持参数
mplsldptimer{keepalivekeepalive-holdtime|hellohello-holdtime}
恢复接口LDP会话缺省参数
undomplsldptimer{keepalive|hello}
Keepalive报文的缺省定时时间为60秒,Hello报文的缺省定时时间为15秒。
&说明:
对于ATM,接口相关配置命令只支持在point-to-point模式的ATM子接口下进行配置。
在不支持广播报文的链路层协议,如帧中继、ATM上,必须要配置broadcast属性,以支持广播和组播报文的传递。
2.2MPLS显示和调试
在完成上述配置后,在所有视图下执行display命令可以显示配置后LDP会话状态、隧道配置情况、所有LSP及状态等的运行情况,通过查看显示信息验证配置的效果;执行debugging命令可以对LDP的各种消息进行调试。
表2-1MPLS显示和调试
操作
命令
查看LDP及LSR信息
displaymplsldp
查看LDP使能的接口信息
displaymplsldpinterface
查看LDP会话状态和参数
displaymplsldpsession
查看LDP会话对等体信息
displaymplsldppeer
查看公网所有已经建立的LSP信息
displaymplslsp
查看私网所有已经建立的LSP信息
di