04-MPLS TE配置
本章节下载: 04-MPLS TE配置 (1000.80 KB)
目 录
1.7 配置MPLS TE隧道采用RSVP-TE动态建立的CRLSP
1.7.3 配置通过IGP的TE扩展发布链路的MPLS TE属性
1.8 配置MPLS TE隧道采用PCE计算的路径建立CRLSP
1.15.3 使用RSVP-TE配置跨域的MPLS TE隧道示例
1.15.4 使用PCE计算的路径建立跨区域的MPLS TE隧道示例
1.15.7 配置快速重路由示例(手工配置Bypass隧道)
网络拥塞是影响骨干网络性能的主要问题。拥塞的原因可能是网络资源不足,也可能是网络资源负载不均衡导致的局部拥塞。TE(Traffic Engineering,流量工程)可以用来解决负载不均衡导致的拥塞问题。
流量工程通过实时监控网络的流量和网络单元的负载,动态调整流量管理参数、路由参数和资源约束参数等,使网络运行状态迁移到理想状态,优化网络资源的使用,避免负载不均衡导致的拥塞。
MPLS TE结合了MPLS技术与流量工程,通过建立沿着指定路径的LSP隧道进行资源预留,使网络流量绕开拥塞节点,达到平衡网络流量的目的。
MPLS TE是一种可扩展性好、简单的流量工程解决方案,受到了服务提供商的青睐。通过MPLS TE技术,服务提供商能够在已有的MPLS骨干网上简单地部署流量工程,充分利用现有的网络资源提供多样化的服务,同时可以优化网络资源,并进行科学的网络管理。
CRLSP(Constraint-based Routed Label Switched Paths,基于约束路由的LSP)是基于一定约束条件建立的LSP。与普通LSP不同,CRLSP的建立不仅依赖路由信息,还需要满足其他一些条件,比如带宽需求、显式路径等。
MPLS TE可以通过静态方式、动态方式或PCE方式建立CRLSP。
MPLS TE隧道是从头节点到目的节点的一条虚拟点到点连接。通常情况下,MPLS TE隧道由一条CRLSP构成。在部署CRLSP备份或需要将流量通过多条路径传输等情况下,需要为同一种流量建立多条CRLSP,在这种情况下,MPLS TE隧道由一组CRLSP构成。
头节点上MPLS TE隧道由MPLS TE模式的Tunnel接口标识。当流量的出接口为Tunnel接口时,该流量将通过构成MPLS TE隧道的CRLSP来转发。
静态建立CRLSP是指在流量经过的每一跳设备上(包括Ingress、Transit和Egress)分别手工指定入标签、出标签、流量所需的带宽等信息,从而建立满足约束条件的CRLSP。该方式的优点是配置简单,缺点是不能根据网络的变化动态调整建立的CRLSP。
静态CRLSP的详细介绍,请参见“MPLS配置指导”中的“静态CRLSP”。
动态建立CRLSP是指根据链路状态信息计算出路径后,通过标签分发协议(如RSVP-TE)通告标签,并在经过的节点上为流量预留所需的带宽资源,从而建立满足约束条件的CRLSP。该方式的优点是能根据网络的变化动态调整建立的CRLSP,且支持CRLSP备份、快速重路由等功能,缺点是配置复杂。
采用动态方式建立CRLSP时,MPLS TE需要实现如下功能:
· 发布包含链路TE属性的信息,以便根据这些信息选择满足约束条件的路径。
· 计算出到达某个节点的满足TE属性要求的最短路径。
· 通过标签分发协议沿着计算出的路径建立CRLSP,并预留资源。
MPLS TE通过对现有的使用链路状态算法的IGP协议(如OSPF和IS-IS)进行扩展来发布每条链路的TE相关属性,如链路的最大带宽、每个优先级的未被预留带宽、链路属性等。这些信息通过IGP协议在网络上泛洪。每台设备收集本区域或本级别所有设备上每条链路的TE相关信息,生成TEDB(TE DataBase,流量工程数据库)。
MPLS TE使用CSPF(Constraint-based Shortest Path First,基于约束的最短路径优先)算法,根据通过IS-IS或OSPF扩展产生的TEDB,计算出到达某个节点的符合带宽、亲和属性、建立/保持优先级、显式路径等约束条件的最短路径。
CSPF是一种改进的SPF(Shortest Path First,最短路径优先)算法。CSPF的计算过程就是针对MPLS TE隧道的要求,先对TEDB中的链路进行剪切,把不满足TE属性要求的链路剪掉;再采用SPF算法,寻找一条到Egress节点的满足TE属性要求的最短路径(即一组LSR地址)。
CSPF计算的结果是一条满足约束条件的完全明确的路径,通常只在MPLS TE隧道的Ingress节点进行CSPF计算。
MPLS TE隧道的约束条件需要在Ingress节点上配置,约束条件包括:
(1) 带宽
带宽要求是指经过MPLS TE隧道的流量所属的服务类型及其所需的带宽。只有链路上针对流量所属服务类型的可预留带宽大于等于流量所需带宽时,该链路才满足带宽约束条件。
(2) 亲和属性
MPLS TE隧道的亲和属性和链路的属性配合,决定了该隧道可以使用哪些链路。
链路属性、亲和属性、亲和属性的掩码都是32位的二进制数。如果希望某条链路能够被隧道所用,则需要满足如下要求:
· 对于掩码为1的位,亲和属性为1的位中链路属性至少有1位也为1,亲和属性为0的位对应的链路属性位不能为1。
· 对于掩码为0的位,不对链路属性的相应位进行检查。
例如,亲和属性为0xFFFFFFF0,掩码为0x0000FFFF,则可用链路的链路属性高16位可以任意取0或1,17~28位中至少有1位为1,且低4位不能为1。
(3) 建立和保持优先级
如果在建立MPLS TE隧道时,无法找到满足所需带宽要求的路径,可以拆除另外一条已经建立的MPLS TE隧道,占用为它分配的带宽资源,这种处理方式称为抢占。
MPLS TE隧道使用两个优先级属性来决定是否可以进行抢占:建立优先级(Setup Priority)和保持优先级(Holding Priority)。建立优先级和保持优先级的取值范围都是0~7,数值越小则优先级越高。只有当一条MPLS TE隧道的建立优先级数值小于另一条MPLS TE隧道的保持优先级时,该隧道才可以抢占另一条隧道的资源。
MPLS TE隧道的建立优先级不能高于该隧道的保持优先级,即其在数值上应大于或等于保持优先级,否则可能会导致MPLS TE隧道间无穷尽地互相抢占,造成震荡。
(4) 显式路径
通过显式路径可以指定到达某个目的地所必须经过的节点、不允许经过的节点等。将显式路径作为约束条件,可以动态计算出符合规划要求的路径。
显式路径分为:
· 严格显式路径:指定必须经过哪些节点,并且指定的下一跳与前一跳必须直接相连。通过严格显式路径,可以最精确地控制MPLS TE隧道所经过的路径。
· 松散显式路径:指定必须经过哪些节点,并且指定的下一跳和前一跳之间可以存在其他节点。通过松散显式路径,可以模糊地限制MPLS TE隧道所经过的路径。
严格显式路径和松散显式路径还可以配合使用,即在显式路径中部分节点之间必须直接相连,部分节点之间可以存在其他节点。
使用CSPF算法计算出满足约束条件的路径后,MPLS TE通过标签分发协议沿着计算出的路径建立CRLSP,并在路径经过的节点上预留资源。
目前,设备上支持的MPLS TE标签分发协议为RSVP-TE。RSVP(Resource Reservation Protocol,资源预留协议)是一种用来在网络上请求预留资源的信令协议。RSVP经扩展后可以支持MPLS标签的分发,并在传送标签绑定消息的同时携带资源预留信息,这种扩展后的RSVP称为RSVP-TE。
RSVP的详细介绍,请参见“MPLS配置指导”中的“RSVP”。
在MPLS TE网络中,作为PCC(Path Computation Client,路径计算客户端)的LSR需要获取到达目的地的CRLSP路径时,向PCE(Path Computation Element,路径计算单元)发起路径计算请求,PCE执行路径计算后对该请求进行应答,并提供计算后的路径。PCC根据PCE计算后的路径使用RSVP-TE建立CRLSP。
PCE设备用于为网络上的设备提供路径计算服务,可进行区域内的路径计算,也可在复杂的网络环境中计算完整的CRLSP路径,比如,在区域间的ABR上部署PCE,用来计算跨区域的CRLSP。
· PCE(Path Computation Element,路径计算单元):网络中的一个实体,能够根据TEDB并基于带宽和其它约束条件来计算路径。
· PCC(Path Computation Client,路径计算客户端):请求PCE执行路径计算,并根据PCE返回的路径信息建立CRLSP。
· PCEP(Path Computation Element Communication Protocol,路径计算单元通信协议):运行于PCC与PCE之间、或者PCE与PCE之间的通信协议,用于建立PCEP会话,交互PCEP消息。该协议基于TCP。
PCE的发现有两种方式:
· 静态指定:在PCC上静态指定PCE。
· 动态发现:通过OSPF TE通告PCE信息,使得网络上的其它LSR可自动发现PCE。
PCE路径计算有两种方式:
· EPC(External Path Computation,外部路径计算):此方式由单台PCE独立完成CRLSP的计算,通常用于区域内的路径计算。
· BRPC(Backward-Recursive PCE-Based Computation,反向递归路径计算):此方式通过多台PCE配合完成CRLSP的计算,通常用于跨区域的路径计算。
以BRPC的计算方式为例,在多区域的网络环境中,如图1-1所示,两台ABR分别被配置为PCE 1和PCE 2。PCE 1可计算Area 0和Area 1内的路径,PCE 2可计算Area 0和Area 2内的路径。当PCC需要获取到达Area 2的CRLSP路径时,路径计算步骤为:
(1) PCC向PCE 1发起路径计算请求。
(2) PCE 1收到该请求后,发现无法计算Area 2内路径,则继续向PCE 2发起到达Area 2的路径计算请求。
(3) PCE 2应答该请求,并提供到达Area 2的路径。
(4) PCE 1收到PCE 2的应答后,汇总路径信息,并对PCC的路径请求进行应答,提供到达Area 2的路径。
(5) PCC根据PCE计算后的路径使用RSVP-TE建立CRLSP。
当MPLS TE隧道建立之后,流量不会自动通过MPLS TE隧道转发,需要通过如下方法配置流量沿MPLS TE隧道转发。
使用静态路由转发流量,是指定义一条通过Tunnel接口到达目的网络地址的静态路由,把流量引入到MPLS TE隧道上进行转发。
静态路由是将流量引入MPLS TE隧道的最简便、直观的方法。该方法的缺点是:如果多个目的网络的流量都需要引入到MPLS TE隧道上,则需要配置多条静态路由,配置和维护难度比较大。
有关静态路由的介绍请参见“三层技术-IP路由配置指导”中的“静态路由”。
自动路由发布是指将MPLS TE隧道发布到IGP(OSPF或IS-IS)路由中,让MPLS TE隧道参与IGP路由的计算,使得流量可以通过MPLS TE隧道转发。自动路由发布方式的配置和维护都比较简单。
自动路由发布包括以下两种方式:
· IGP Shortcut:也称为自动路由宣告(AutoRoute Announce),该功能将MPLS TE隧道当作一条直接连接隧道Ingress节点(头节点)和Egress节点(尾节点)的链路,在隧道的Ingress节点上进行IGP路由计算时考虑该MPLS TE隧道。
· 转发邻接:该功能将MPLS TE隧道当作一条直接连接隧道Ingress节点和Egress节点的链路,通过IGP路由协议将该链路发布到网络中,以便网络中的节点在路由计算时使用MPLS TE隧道。
IGP Shortcut和转发邻接功能的区别在于:
· 在隧道的Ingress节点上开启IGP Shortcut功能后,只有Ingress节点计算IGP路由时会考虑MPLS TE隧道。IGP Shortcut功能不会通过IGP路由协议将MPLS TE隧道作为一条链路发布出去。因此,其他设备在路由计算时不会考虑MPLS TE隧道。
· 在隧道的Ingress节点上开启转发邻接功能后,Ingress节点会通过IGP路由协议将MPLS TE隧道作为一条链路发布出去。因此,IGP网络中的所有设备在路由计算时都会考虑MPLS TE隧道。
图1-2 IGP Shortcut与转发邻接示意图
在图1-2中,Router D到Router C之间存在一条MPLS TE隧道,IGP Shortcut只能使Ingress节点Router D在计算IGP路由时利用这条隧道,Router A并不能利用这条隧道到达Router C。如果配置了转发邻接功能,则Router A也能够知道这条MPLS TE隧道的存在,从而可以利用该隧道将到Router C的流量转发到Router D上。
make-before-break是一种在尽可能不丢失数据,也不占用额外带宽的前提下改变MPLS TE隧道的机制。
在隧道重优化情况下,如果在新的CRLSP建立之前拆除旧的CRLSP,则会导致流量转发中断。通过make-before-break机制可以确保新CRLSP建立、并将流量切换到新的CRLSP后,再拆除旧CRLSP,从而有效地避免流量转发中断。此时,存在的问题是:如果新的CRLSP和旧CRLSP部分路径相同,则在这些路径上需要重复为新旧CRLSP预留带宽,造成带宽资源的浪费。make-before-break机制采用SE资源预留风格解决这个问题。
资源预留风格是RSVP-TE协议在建立CRLSP时预留带宽资源的方式。MPLS TE隧道使用的资源预留风格由隧道的Ingress节点决定,并通过RSVP协议通知给各个节点。
目前,设备支持以下两种资源预留风格:
· FF(Fixed-Filter,固定过滤器):为每个发送者单独预留资源,同一会话中的不同发送者不能共享资源。
· SE(Shared-Explicit,共享显式):为同一个会话中的不同发送者预留同一个资源,不同发送者之间可以共享资源。该方式主要用于make-before-break。
在图1-3中,假设需要建立一条Router A到Router D的CRLSP,保留30M带宽,起初建立的路径是Router A→Router B→Router C→Router D。
现在希望将带宽增大为40M,Router A→Router B→Router C→Router D路径不能满足要求。而如果选择Router A→Router E→Router C→Router D,则Router C→Router D需要同时预留30M和40M带宽,也存在带宽不够的问题。
采用make-before-break机制,新建立的CRLSP在Router C→Router D可以共享原CRLSP的带宽,不需要为新CRLSP和旧CRLSP重复预留带宽。新CRLSP建立成功后,流量切换到新CRLSP上,之后拆除原CRLSP,从而有效地避免了流量中断。
路由固定是指CRLSP创建成功后,即使路由发生变化,也不重新选择最优路径,而是沿用已创建的CRLSP。
在路由变化频繁的网络中,如果不希望CRLSP随着路由频繁变化,则可以通过本功能确保只要已建立的CRLSP可用就不重新创建CRLSP。
隧道重优化功能是指周期性地或通过命令行手工触发隧道的Ingress节点重新计算路径。如果计算出的路径优于当前路径,则创建一条新的CRLSP。将流量从旧的CRLSP切换至新的CRLSP后,删除旧的CRLSP。
MPLS TE利用隧道重优化功能实现CRLSP的动态优化,以便及时地将MPLS TE隧道切换到当前的最优路径。例如,如果在MPLS TE隧道建立时,最优路径上的链路没有足够的可预留带宽,则会导致MPLS TE隧道未使用最优路径建立。通过隧道重优化功能,可以实现链路上具有足够的带宽时将MPLS TE隧道自动切换到最优路径。
CRLSP备份是指通过备份CRLSP对主CRLSP进行保护。当Ingress感知到主CRLSP不可用时,将流量切换到备份CRLSP上,当主CRLSP路径恢复后再将流量切换回来,以实现对主CRLSP的备份保护。
CRLSP备份有两种备份方法:
· 热备份:创建主CRLSP后随即创建备份CRLSP。主CRLSP失效时,直接将流量切换至备份CRLSP。
· 普通备份:指主CRLSP失效后创建备份CRLSP。
FRR(Fast Reroute,快速重路由)是MPLS TE中实现网络局部保护的技术。FRR的切换速度可以达到50ms,能够最大程度减少网络故障时数据的丢失。
开启隧道的FRR功能后,当主CRLSP上的某条链路或某个节点失效时,流量会被切换到Bypass隧道上。同时,隧道的Ingress节点尝试建立新的CRLSP。新的CRLSP建立成功后,流量将切换到新的CRLSP。
CRLSP备份是一种端到端的路径保护,对整条CRLSP提供保护,而FRR则是一种局部保护措施,只能保护CRLSP中的某条链路或某个节点。并且,FRR是一种快速响应的临时性保护措施,对于切换时间有严格要求,CRLSP备份则没有时间要求。
下面介绍FRR中的几个概念:
· 主CRLSP:被保护的CRLSP。
· Bypass隧道:旁路隧道,保护主CRLSP中的某条链路或某个节点的MPLS TE隧道。
· PLR(Point of Local Repair,本地修复节点):Bypass隧道的Ingress节点,必须在主CRLSP的路径上,并且不能是主CRLSP的Egress节点。
· MP(Merge Point,汇聚点):Bypass隧道的Egress节点,必须在主CRLSP的路径上,并且不能是主CRLSP的Ingress节点。
根据保护的对象不同,FRR分为两类:
· 链路保护:又称为Next-hop(NHOP)保护。PLR和MP之间有直接链路连接,主CRLSP经过这条链路。当这条链路失效时,流量可以切换到Bypass隧道上。如图1-4所示,主CRLSP是Router A→Router B→Router C→Router D,Bypass隧道是Router B→Router F→Router C。
图1-4 FRR链路保护示意图
· 节点保护:又称为Next-next-hop(NNHOP)保护。PLR和MP之间通过一台设备连接,主CRLSP经过这台设备。当这台设备失效时,流量可以切换到Bypass隧道上。如图1-5所示,主CRLSP是Router A→Router B→Router C→Router D→Router E,Bypass隧道是Router B→Router F→Router D,Router C是被保护的设备。
图1-5 FRR节点保护示意图
MPLS TE隧道作为MPLS-TP(MPLS Transport Profile,MPLS传送技术架构)的分组传送隧道,需要实现双向隧道功能,以支持1:1和1+1保护倒换,承载MPLS传送所需要的OAM(Operations, Administration, and Maintenance,操作、管理和维护)和PSC(Protection State Coordination,保护状态协调)等带内检测工具和信令。
一条MPLS TE双向隧道由方向相反的一对单向CRLSP组成。MPLS TE双向隧道的建立有如下几种方式:
· Co-routed方式:对RSVP-TE协议进行扩展,通过RSVP-TE信令协议建立MPLS TE双向隧道,即通过Path消息将上游LSR分配的标签通告给下游LSR,在Path消息传递的过程中建立一个方向的CRLSP,再通过Resv消息将下游LSR分配的标签通告给上游LSR,在Resv消息传递的过程中建立另一个方向的CRLSP。Co-routed方式建立的MPLS TE双向隧道的正、反两个方向CRLSP使用的是相同的路径。
· Associated方式:通过配置手工将两条方向相反的单向CRLSP绑定,从而形成MPLS TE双向隧道。绑定在一起的两条单向CRLSP可以通过不同的方式建立,例如一个方向上的CRLSP使用静态方式建立,而另一个方向上的CRLSP使用RSVP-TE信令建立。绑定在一起的两条单向CRLSP使用的路径可以不同。
通过RSVP-TE信令协议建立MPLS TE隧道、Path消息、Resv消息的详细介绍,请参见“MPLS配置指导”中的“RSVP”。
与MPLS TE相关的协议规范有:
· RFC 2702:Requirements for Traffic Engineering Over MPLS
· RFC 3564:Requirements for Support of Differentiated Service-aware MPLS Traffic Engineering
· RFC 3812:Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB)
· RFC 4124:Protocol Extensions for Support of Diffserv-aware MPLS Traffic Engineering
· RFC 4125:Maximum Allocation Bandwidth Constraints Model for Diffserv-aware MPLS Traffic Engineering
· RFC 4127:Russian Dolls Bandwidth Constraints Model for Diffserv-aware MPLS Traffic Engineering
· ITU-T Recommendation Y.1720:Protection switching for MPLS networks
· RFC 4655:A Path Computation Element (PCE)-Based Architecture
· RFC 5088:OSPF Protocol Extensions for Path Computation Element Discovery
· RFC 5440:Path Computation Element (PCE) Communication Protocol (PCEP)
· RFC 5441:A Backward-Recursive PCE-Based Computation (BRPC) Procedure to Compute Shortest Constrained Inter-Domain Traffic Engineering LSP
· RFC 5455:Diffserv-Aware Class-Type Object for the Path Computation Element Communication Protocol
· RFC 5521:Extensions to the Path Computation Element Communication Protocol (PCEP) for Route Exclusions
· RFC 5886:A Set of Monitoring Tools for Path Computation Element (PCE)-Based Architecture
· draft-ietf-pce-stateful-pce-07
本设备暂不支持配置带宽预留功能。
配置MPLS TE,不能同时配置VXLAN。有关VXLAN的详细介绍,请参见“VXLAN配置指导”。
MPLS TE隧道采用静态CRLSP时,MPLS TE的配置主要包括以下几步:
(1) 在MPLS TE隧道经过的各个节点和接口上开启MPLS TE能力。
(2) 在MPLS TE隧道的Ingress节点上创建Tunnel接口,指定隧道的目的端地址(即Egress的地址)。
(3) 在MPLS TE隧道经过的各个节点上创建静态CRLSP,配置方法请参见“MPLS配置指导”中的“静态CRLSP”。
(4) 在MPLS TE隧道的Ingress节点上配置Tunnel接口引用已经创建的静态CRLSP。
(5) 在MPLS TE隧道的Ingress节点上配置静态路由或自动路由发布,将流量引入MPLS TE隧道。
MPLS TE隧道采用RSVP-TE动态建立的CRLSP时,MPLS TE的配置主要包括以下几步:
(1) 在MPLS TE隧道经过的各个节点和接口上开启MPLS TE能力和RSVP能力。开启RSVP能力的方法,请参见“MPLS配置指导”中的“RSVP”。
(2) 在MPLS TE隧道的Ingress节点上创建Tunnel接口,指定隧道的目的端地址(即Egress的地址),并在Tunnel接口下配置MPLS TE隧道的约束条件(如隧道的带宽要求、亲和属性等)。
(3) 在MPLS TE隧道经过的各个接口上配置链路的MPLS TE属性,如链路的最大带宽、链路的属性等。
(4) 在MPLS TE隧道经过的各个节点上配置IGP路由协议,并配置IGP支持MPLS TE,以便各个节点通过IGP路由协议发布链路的TE相关属性。
(5) 在MPLS TE隧道的Ingress节点上配置通过RSVP-TE,沿着根据隧道约束条件、链路MPLS TE属性等计算出的路径建立CRLSP。
(6) 在MPLS TE隧道的Ingress节点上配置静态路由或自动路由发布,将流量引入MPLS TE隧道。
MPLS TE隧道采用PCE计算的路径建立CRLSP时,MPLS TE的配置主要包括以下几步:
(1) 在MPLS TE隧道经过的各个节点和接口上开启MPLS TE能力和RSVP能力。开启RSVP能力的方法,请参见“MPLS配置指导”中的“RSVP”。
(2) 为指定为PCE的LSR配置PCE的IP地址,使该LSR作为PCE并具备提供路径计算服务的能力。
(3) 在MPLS TE隧道的Ingress节点上创建Tunnel接口,指定隧道的目的端地址(即Egress的地址),并在Tunnel接口下配置MPLS TE隧道的约束条件(如隧道的带宽要求、亲和属性等)。
(4) 在MPLS TE隧道经过的各个接口上配置链路的MPLS TE属性,如链路的最大带宽、链路的属性等。
(5) 在MPLS TE隧道经过的各个节点上配置IGP路由协议,并配置IGP支持MPLS TE,以便各个节点通过IGP路由协议发布链路的TE相关属性。
(6) 在MPLS TE隧道的Ingress节点配置使用PCE计算路径,使该LSR作为PCC设备,并在该PCC设备上静态指定PCE或配置OSPF TE动态发现PCE。
(7) 在MPLS TE隧道的Ingress节点上配置通过RSVP-TE,根据PCE提供的计算后的路径建立CRLSP
(8) 在MPLS TE隧道的Ingress节点上配置静态路由或自动路由发布,将流量引入MPLS TE隧道。
除了上述配置外,用户还可以根据实际需要配置DiffServ-Aware TE、快速重路由等功能。
表1-1 MPLS TE配置任务简介
配置任务 |
说明 |
详细配置 |
|
开启MPLS TE能力 |
必选 |
||
配置Tunnel接口 |
必选 |
||
配置MPLS TE隧道 |
配置MPLS TE隧道采用静态CRLSP |
三者必选其一 |
|
配置MPLS TE隧道采用RSVP-TE动态建立的CRLSP |
|||
配置MPLS TE隧道采用PCE计算的路径建立CRLSP |
|||
配置流量转发 |
配置静态路由使流量沿MPLS TE隧道转发 |
两者必选其一 |
|
配置自动路由发布使流量沿MPLS TE隧道转发 |
|||
配置MPLS TE双向隧道 |
可选 |
||
配置CRLSP备份 |
可选 只有使用RSVP-TE信令协议建立的MPLS TE隧道支持本配置 |
||
配置MPLS TE快速重路由 |
可选 只有使用RSVP-TE信令协议建立的MPLS TE隧道支持本配置 |
||
开启告警功能 |
可选 |
MPLS TE隧道经过的各个节点和接口上都需要开启MPLS TE能力。
在开启MPLS TE能力之前,需要完成以下任务:
· 配置静态路由或IGP协议保证各LSR之间路由可达。
· 使能MPLS功能,详细配置请参见“MPLS配置指导”中的“MPLS基础”。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启本节点的MPLS TE能力,并进入MPLS TE视图 |
mpls te |
缺省情况下,MPLS TE能力处于关闭状态 |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
开启接口的MPLS TE能力 |
mpls te enable |
缺省情况下,接口上的MPLS TE能力处于关闭状态 |
MPLS TE隧道的属性都是在Tunnel接口视图下配置的。因此,在配置MPLS TE隧道之前,需要先创建MPLS TE隧道模式的Tunnel接口。有关Tunnel接口的介绍和更多配置请参见“三层技术-IP业务配置指导”中的“隧道”。
请在MPLS TE隧道的Ingress节点上执行本配置。
在Tunnel接口处于UP状态的情况下,如下几种操作会导致Tunnel接口状态DOWN/UP震荡一次,建议用户根据当前业务情况谨慎操作:
· 修改MPLS TE隧道的亲和属性。
· 修改MPLS TE隧道的建立优先级和保持优先级。
· 当隧道资源预留方式为FF方式时,修改隧道配置。
· 修改双向隧道下的隧道配置。
· 修改带宽CT的类型。
· 配置处理接口流量的主用slot或备用slot。
· 指定的处理接口流量的主用slot/备用slot重启或进行插拔操作。
配置处理接口流量slot的详细介绍请参见“三层技术-IP业务配置指导”中的“隧道”。
表1-3 配置Tunnel接口
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建模式为MPLS TE隧道的Tunnel接口,并进入Tunnel接口视图 |
interface tunnel tunnel-number mode mpls-te |
缺省情况下,不存在Tunnel接口 |
配置Tunnel接口的IP地址 |
ip address ip-address { mask-length | mask } |
缺省情况下,未指定Tunnel接口的IP地址 |
配置隧道的目的端地址 |
destination ip-address |
缺省情况下,未指定隧道的目的端地址 |
MPLS TE隧道采用静态CRLSP的配置过程非常简单,不需要配置隧道的约束条件,也不涉及IGP扩展,只需要建立一条静态CRLSP、指定MPLS TE隧道采用静态方式建立、并配置MPLS TE隧道引用已建立的静态CRLSP即可。
表1-4 配置MPLS TE隧道采用静态CRLSP
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
建立静态CRLSP |
配置方法请参见“MPLS配置指导”中的“静态CRLSP” |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
在Ingress节点上执行本命令 |
配置使用静态CRLSP建立MPLS TE隧道 |
mpls te signaling static |
缺省情况下,MPLS TE使用RSVP-TE信令协议建立隧道 |
指定隧道引用的静态CRLSP |
mpls te static-cr-lsp lsp-name |
缺省情况下,隧道没有引用任何静态CRLSP |
MPLS TE隧道采用RSVP-TE动态建立的CRLSP的配置过程可以简要描述为以下几个部分:
· 配置链路的MPLS TE属性;
· 通过IGP的TE扩展发布链路的MPLS TE属性,以便在各个节点上生成TEDB;
· 配置隧道的约束条件;
· 利用动态信令协议RSVP-TE建立CRLSP。
如果不配置IGP的TE扩展,就不能形成TEDB。这种情况下计算出的路径是由IGP路由得到的,而不是CSPF计算出来的。
表1-5 配置任务简介
配置任务 |
说明 |
详细配置 |
配置链路的MPLS TE属性 |
必选 |
|
配置通过IGP的TE扩展发布链路的MPLS TE属性 |
必选 |
|
配置MPLS TE隧道的约束条件 |
必选 |
|
使用RSVP-TE建立MPLS TE隧道 |
必选 |
|
调整CRLSP的路径选择 |
可选 |
|
调整MPLS TE隧道的建立 |
可选 |
链路的MPLS TE属性包括链路的最大带宽、链路属性等。
请在MPLS TE隧道经过的各个接口上执行本配置。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置用于转发MPLS TE流量的链路最大带宽 |
mpls te max-link-bandwidth { bandwidth-value| percent percent-bandwidth } |
缺省情况下,用于转发MPLS TE流量的链路最大带宽为0 |
配置链路的属性 |
mpls te link-attribute attribute-value |
缺省情况下,链路的属性值为0x00000000 |
OSPF、IS-IS扩展后可以用来发布链路的MPLS TE相关属性。OSPF、IS-IS的这种扩展分别称为OSPF TE和IS-IS TE。如果同时配置了OSPF TE和IS-IS TE,则MPLS TE优先根据OSPF TE学习到的MPLS TE属性信息进行CSPF计算。
OSPF TE使用Opaque Type 10 LSA携带链路的TE属性信息,因此,配置OSPF TE时必须先使能OSPF的Opaque能力。有关OSPF Opaque能力的介绍请参见“三层技术-IP路由配置指导”中的“OSPF”。
由于MPLS TE无法在OSPF虚连接上预留资源和分配标签,即MPLS TE无法通过OSPF虚连接建立CRLSP隧道。因此,配置OSPF TE时,OSPF路由域内不能存在虚连接。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入OSPF协议视图 |
ospf [ process-id ] |
- |
使能OSPF的Opaque LSA发布接收能力 |
opaque-capability enable |
缺省情况下,OSPF的Opaque LSA发布接收能力处于开启状态 本命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“OSPF” |
进入OSPF的区域视图 |
area area-id |
- |
开启OSPF区域的MPLS TE能力 |
mpls te enable |
缺省情况下,OSPF区域的MPLS TE能力处于关闭状态 |
IS-IS TE使用扩展IS可达性TLV(类型为22)的子TLV携带TE属性信息,扩展IS可达性TLV携带wide类型的开销值。因此,配置IS-IS TE时,必须配置IS-IS的开销值类型为wide、compatible或wide-compatible。有关IS-IS的介绍请参见“三层技术-IP路由配置指导”中的“IS-IS”。
IS可达性TLV长度不定,为确保IS-IS LSP能顺利携带此类TLV并在网络上正确泛洪,建议所有使能IS-IS TE的接口的MTU不要小于512字节。
表1-8 配置ISIS TE
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
创建一个IS-IS进程,并进入IS-IS视图 |
isis [ process-id ] |
缺省情况下,系统没有运行任何IS-IS进程 |
配置IS-IS开销值的类型 |
cost-style { narrow | wide | wide-compatible | { compatible | narrow-compatible } [ relax-spf-limit ] } |
缺省情况下,IS-IS只接收和发送采用narrow方式表示路径开销值的报文 本命令的详细介绍,请参见“三层技术-IP路由命令参考”中的“IS-IS” |
开启IS-IS进程的MPLS TE能力 |
mpls te enable [ level-1 | level-2 ] |
缺省情况下,IS-IS进程的MPLS TE能力处于关闭状态 |
配置携带DS-TE参数的子TLV的类型值 |
te-subtlv { bw-constraint value | unreserved-subpool-bw value } * |
缺省情况下,带宽约束bw-constraint的子TLV类型值为252;子池未预订带宽unreserved-bw-sub-pool的子TLV类型值为251 |
请在MPLS TE隧道的Ingress节点上执行本节中的配置。
表1-9 配置MPLS TE隧道的带宽要求
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置隧道所需的带宽,并指定隧道流量所属的服务类型 |
mpls te bandwidth [ ct0 | ct1 | ct2 | ct3 ] bandwidth |
缺省情况下,未配置MPLS TE隧道所需的带宽,即带宽为0,隧道流量属于CT0 |
不同厂商实现的链路属性和亲和属性的关系可能有所不同,当在同一网络中使用不同厂商的设备时,需要事先了解各自的实现方式,正确配置链路的属性和隧道的亲和属性,以便准确建立隧道。
表1-10 配置MPLS TE隧道的亲和属性
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置隧道的亲和属性 |
mpls te affinity-attribute attribute-value [ mask mask-value ] |
缺省情况下,隧道的亲和属性为0x00000000,掩码为0x00000000,即隧道可以使用任意属性的链路 |
表1-11 配置MPLS TE隧道的建立优先级和保持优先级
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置MPLS TE隧道的建立优先级和保持优先级 |
mpls te priority setup-priority [ hold-priority ] |
缺省情况下,建立优先级和保持优先级都为7 |
在不同的区域或自治系统之间建立MPLS TE隧道时必须使用松散显式路径,指定显式路径的下一跳为ABR(Area Border Router,区域边界路由器)或ASBR(Autonomous System Boundary Router,自治系统边界路由器),并保证隧道Ingress节点与ABR或ASBR之间路由可达。
显式路径由一系列节点构成,一条显式路径上的两个相邻节点之间存在两种关系:
· 严格下一跳(strict):两个节点必须直接相连;
· 松散下一跳(loose):两个节点之间可以存在其他设备。
在向显式路径中增加或修改节点时,参数include表示建立的CRLSP必须经过指定节点;参数exclude表示建立的CRLSP不能经过指定节点。
表1-12 配置MPLS TE显式路径
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
创建隧道的显式路径,并进入显式路径视图 |
explicit-path path-name |
缺省情况下,不存在显式路径 |
|
启用显式路径 |
undo disable |
缺省情况下,显式路径可用 |
|
在显式路径中添加或修改节点及其属性 |
指定显式路径的下一跳地址 |
nexthop [ index index-number ] ip-address [ exclude | include [ loose | strict ] ] |
在向显式路径中增加或修改节点时,参数include表示建立的CRLSP必须经过指定节点;参数exclude表示建立的CRLSP不能经过指定节点 缺省情况下,显式路径中不存在任何节点 |
退回系统视图 |
quit |
- |
|
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
|
配置CRLSP应用显式路径,并指定显式路径的优先级 |
mpls te path preference value explicit-path path-name [ no-cspf ] |
缺省情况下,使用自动计算的路径建立CRLSP |
|
执行本配置前,需要通过rsvp、rsvp enable命令在MPLS TE隧道经过的所有节点和接口上都开启RSVP能力,详细介绍请参见“MPLS配置指导”中的“RSVP”。
请在MPLS TE隧道的Ingress节点上执行本配置。
表1-13 配置使用RSVP-TE建立MPLS TE隧道
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置使用RSVP-TE信令协议建立隧道 |
mpls te signaling rsvp-te |
缺省情况下,MPLS TE使用RSVP-TE信令协议建立隧道 |
配置CRLSP应用的路径及路径的优先级 |
mpls te path preference value { dynamic | explicit-path path-name } [ no-cspf ] |
缺省情况下,使用自动计算的路径建立CRLSP |
在实施本节的配置任务之前,需要明确理解这些配置对系统可能造成的影响,以免影响CRLSP的建立。
CSPF使用TEDB和约束条件计算出符合要求的路径,并通过信令协议建立CRLSP。MPLS TE提供多种方式影响CSPF的计算,从而调整CRLSP的路径选择。
在MPLS TE中每条链路都具有两种度量值:IGP度量值和TE度量值。通过合理地规划两种度量值,可以实现为不同种类的业务选择不同的隧道。例如,使用IGP度量值来表示链路延迟的大小(IGP度量值越小,链路的延迟越小),使用TE度量值来表示链路带宽的大小(TE度量值越小,链路的带宽越大)。建立两条MPLS TE隧道(Tunnel1和Tunnel2),分别用来承载语音业务和视频业务。Tunnel1选择路径时使用IGP度量值,可以实现为延迟要求较高的语音业务选择延迟小的路径;Tunnel2选择路径时使用TE度量值,可以实现为数据量较大的视频业务选择带宽大的路径。
表1-14 配置选路使用的度量
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入MPLS TE视图 |
mpls te |
- |
配置未配置度量类型的隧道选路时使用的链路度量值类型 |
path-metric-type { igp | te } |
缺省情况下,未配置度量类型的隧道选路时使用TE度量值 请在MPLS TE隧道的Ingress节点上执行本命令 |
退回系统视图 |
quit |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置隧道选路时使用的链路度量值类型 |
mpls te path-metric-type { igp | te } |
缺省情况下,没有指定隧道选路时使用的链路度量值类型,采用MPLS TE视图下配置的链路度量值类型 请在MPLS TE隧道的Ingress节点上执行本命令 |
退回系统视图 |
quit |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置链路的TE度量值 |
mpls te metric value |
缺省情况下,链路使用其IGP度量作为TE的度量值 本命令可以在MPLS TE隧道经过的所有接口上执行 |
如果使用路由固定功能,则不能同时使用MPLS TE隧道重优化功能。
请在MPLS TE隧道的Ingress节点上执行本配置。
表1-15 配置路由固定
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启路由固定功能 |
mpls te route-pinning |
缺省情况下,路由固定功能处于关闭状态 |
隧道重优化功能是指周期性地或通过命令行手工触发隧道的Ingress节点重新计算路径。如果重计算的路径优于当前路径,则沿着计算出的路径创建一条新的CRLSP,将流量从旧的CRLSP切换至新的CRLSP后,删除旧的CRLSP。
请在MPLS TE隧道的Ingress节点上执行本配置。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启隧道重优化功能 |
mpls te reoptimization [ frequency seconds ] |
缺省情况下,隧道重优化功能处于关闭状态 |
退到用户视图 |
return |
- |
(可选)立即对所有开启了重优化功能的MPLS TE隧道进行重优化 |
mpls te reoptimization |
- |
当MPLS TE相关链路的带宽发生变化时,需要通过IGP泛洪该信息,以便Ingress节点利用CSPF算法重新计算路径。
为防止链路带宽变化导致的CSPF计算占用过多资源,可以规定当带宽变化到达一定限度时才通过IGP泛洪链路的TE相关信息。用户可以进行两种配置:
· 当链路可预留带宽的增加值达到阈值时进行泛洪;
· 当链路可预留带宽的减少值达到阈值时进行泛洪。
如果配置了泛洪阈值,则没有及时泛洪的链路带宽变化,可以按照配置的时间间隔周期性地通告给网络中的设备。
本配置可以在MPLS TE隧道经过的所有节点上执行。
表1-17 配置TE信息泛洪阈值及泛洪时间间隔
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入接口视图 |
interface interface-type interface-number |
- |
配置通过IGP泛洪TE信息的带宽变化阈值 |
mpls te bandwidth change thresholds { down | up } percent |
缺省情况下,通过IGP泛洪TE信息的带宽变化阈值为10%,即可预留带宽增加或减少10%时进行IGP泛洪 |
退回系统视图 |
quit |
- |
进入MPLS TE视图 |
mpls te |
- |
设置通过IGP周期性泛洪TE信息的时间间隔 |
link-management periodic-flooding timer interval |
缺省情况下,通过IGP周期性泛洪TE信息的时间间隔为180秒 |
在实施本节的配置任务之前,需要明确理解这些配置对系统可能造成的影响,以免影响MPLS TE隧道的建立。
请在MPLS TE隧道的Ingress节点上执行本节中的配置。
配置隧道建立时进行环路检测后,将自动启动该隧道的路由记录功能,而不管用户是否配置了mpls te record-route命令。隧道经过的节点根据记录的路由信息,判断是否出现环路。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置隧道建立时进行环路检测 |
mpls te loop-detection |
缺省情况下,隧道建立时不进行环路检测 |
路由记录和标签记录功能用来记录MPLS TE隧道经过的各个节点及各个节点分配的标签值,以便用户根据记录的信息了解MPLS TE隧道经过的路径和标签分配情况。在MPLS TE隧道出现故障时,用户也可以根据记录的信息对故障进行定位。
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
|
开启隧道的路由记录或标签记录功能 |
仅开启路由记录功能 |
mpls te record-route |
缺省情况下,隧道的路由记录和标签记录功能处于关闭状态 |
同时开启路由记录和标签记录功能 |
mpls te record-route label |
MPLS TE隧道建立失败后,隧道的Ingress节点等待隧道重建时间间隔后,将尝试重新建立隧道,直到隧道建立成功或尝试建立隧道的次数达到配置的最大值。如果尝试建立隧道的次数达到配置的最大值时仍未成功建立隧道,则等待较长的一段时间后,重复上述过程。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置尝试建立隧道的最大次数 |
mpls te retry retries |
缺省情况下,尝试建立隧道的最大次数为3次 |
配置隧道重建的时间间隔 |
mpls te timer retry seconds |
缺省情况下,隧道重建的时间间隔为2秒 |
表1-21 配置RSVP资源预留风格
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置隧道的资源预留风格 |
mpls te resv-style { ff | se } |
缺省情况下,隧道的资源预留风格为SE 在目前的MPLS TE应用中,隧道的建立通常采用make-before-break方式。因此,推荐使用SE资源预留风格 |
通过在LSR设备上配置PCE的IP地址,可将LSR设备配置为PCE。如果未配置PCE的IP地址,则LSR设备只能作为PCC,并使用LSR ID与PCE通信。
表1-22 配置路径计算单元
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启本节点的MPLS TE能力,并进入MPLS TE视图 |
mpls te |
- |
配置PCE的IP地址 |
pce address ip-address |
缺省情况下,未配置PCE的IP地址 |
可通过pce static命令静态指定PCE设备,也可通过OSPF TE自动发现PCE对等体。PCC只能向PCE发起PCEP连接请求,不接受PCE的PCEP连接请求。
表1-23 配置静态指定PCE
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启本节点的MPLS TE能力,并进入MPLS TE视图 |
mpls te |
- |
静态指定PCE对等体的IP地址 |
pce static ip-address |
缺省情况下,不存在静态指定的PCE对等体 |
配置OSPF TE后,OSPF TE会将PCE的IP地址发布到网络中,以便PCC或其他PCE动态发现该PCE,并与其建立PCEP会话。OSPF TE的配置请参见“1.7.3 1. 配置OSPF TE”。
在LSR设备上通过mpls te path命令指定使用PCE计算的路径建立CRLSP后,该LSR设备即作为PCC。
如果使用mpls te path命令或mpls te backup-path命令指定了PCE的IP地址,则仅与指定的PCE建立PCEP会话;否则与所有发现的PCE建立会话。
表1-24 配置使用PCE计算路径
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置使用PCE计算的路径建立CRLSP |
mpls te path preference value dynamic pce [ ip-address ]&<0-8> |
缺省情况下,使用LSR自动计算的路径建立CRLSP |
在LSR设备上通过mpls te backup-path命令指定使用PCE计算的路径建立CRLSP后,该LSR设备即作为PCC。
如果使用mpls te path命令或mpls te backup-path命令指定了PCE的IP地址,则仅与指定的PCE建立PCEP会话;否则与所有发现的PCE建立会话。
执行本配置后,PCE为PCC计算备份的CRLSP。当主CRLSP不可用时,将流量切换到备份的CRLSP上,以保证流量的正常传输。
表1-25 配置使用PCE计算备份路径
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启隧道的备份功能,并配置使用的备份模式 |
mpls te backup { hot-standby | ordinary } |
缺省情况下,隧道的备份功能处于关闭状态 |
配置使用PCE计算的路径建立备份CRLSP |
mpls te backup-path preference value dynamic pce [ ip-address ]&<0-8> |
缺省情况下,使用LSR自动计算的路径建立备份CRLSP |
PCC或PCE通过静态或动态方式发现PCE后,会与该PCE建立PECP会话。通过本配置,可以根据网络情况调整PCEP会话参数。
表1-26 配置PCEP会话参数
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入MPLS TE视图 |
mpls te |
- |
配置发送路径计算请求后等待应答的超时时间 |
pce request-timeout value |
缺省情况下,发送路径计算请求后等待应答的超时时间为10秒 |
配置PCEP会话的保持时间 |
pce deadtimer value |
缺省情况下,PCEP会话的保持时间为120秒 |
配置PCEP会话的Keepalive消息的发送时间间隔 |
pce keepalive interval |
缺省情况下,Keepalive消息的发送时间间隔为30秒 |
配置本地设备对PCE对等体发送的消息的容忍度 |
pce tolerance { min-keepalive value | max-unknown-messages value } |
缺省情况下,能接受的对等体发送Keepalive消息的最小时间间隔为10秒;每分钟能接受的对等体发送的最大未知类型消息个数为5 |
请在MPLS TE隧道的Ingress节点上执行本节中的配置。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置静态路由使流量沿MPLS TE隧道转发 |
静态路由命令的详细介绍请参见“三层技术-IP路由命令参考”中的“静态路由” |
缺省情况下,不存在静态路由 本命令中指定的接口可以为MPLS TE隧道模式的Tunnel接口 |
自动路由发布包括IGP Shortcut和转发邻接两种方式。使用IGP Shortcut功能时,可以指定MPLS TE隧道的度量值。如果使用绝对度量(absolute),则MPLS TE隧道的度量值就是配置的值;如果使用相对度量(relative),则MPLS TE隧道的度量值是相应IGP路径度量值加上相对度量值。
配置自动路由发布前,需要完成以下操作:
· 在Tunnel接口上开启OSPF或IS-IS路由协议,以便将该接口的地址发布到IGP协议(OSPF或ISIS)中。
· 在OSPF区域视图或IS-IS视图下,执行mpls te enable命令开启OSPF区域或IS-IS进程的MPLS TE能力。
使用自动路由发布功能时,需要注意以下事项:
· MPLS TE隧道的目的地址可以配置为Egress节点的LSR ID或Egress节点上接口的主IP地址。配置为接口主IP地址时,要求该接口上必须使能MPLS TE能力,并配置OSPF或IS-IS路由协议,确保在该接口建立OSPF或IS-IS邻居关系,接口的主地址能够通过OSPF或IS-IS发布给邻居。推荐用户将MPLS TE隧道的目的地址配置为Egress节点的LSR ID。
· Tunnel接口地址和隧道目的地址对应的路由必须在同一个OSPF区域内或属于同一个IS-IS Level。
· 要想使转发邻接功能生效,需要创建方向相反的两条隧道,并在隧道的两端同时配置转发邻接功能。
仅使用RSVP-TE信令协议建立的MPLS TE隧道支持转发邻接功能。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启IGP Shortcut功能 |
mpls te igp shortcut [ isis | ospf ] |
缺省情况下,IGP Shortcut功能处于关闭状态 如果开启IGP Shortcut功能时不指定IGP类型,则OSPF和IS-IS协议的路由计算中都考虑MPLS TE隧道 |
配置MPLS TE隧道的度量值 |
mpls te igp metric { absolute value | relative value } |
缺省情况下,MPLS TE隧道的度量值等于其IGP度量值 |
要想使转发邻接功能生效,需要创建方向相反的两条隧道,并在隧道的两端同时配置转发邻接功能。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启转发邻接功能 |
mpls te igp advertise [ hold-time value ] |
缺省情况下,转发邻接功能处于关闭状态 |
在配置MPLS TE双向隧道之前,需完成以下任务:
· 在隧道两端都关闭PHP功能。
· 建立Co-routed方式MPLS TE双向隧道前,必须配置建立隧道使用的信令协议为RSVP-TE。
配置MPLS TE双向隧道时,需要在隧道的两端都建立MPLS TE隧道接口,并在隧道接口下开启双向隧道功能。
· 对于Co-routed方式双向隧道,隧道的两端需要分别配置为主动方(Active)和被动方(Passive),在被动方需要指定关联的反向CRLSP。
· 对于Associated方式双向隧道,隧道的两端都需要指定关联的反向CRLSP。
表1-30 配置Co-routed方式MPLS TE双向隧道的主动方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
在MPLS TE隧道接口上开启双向隧道功能,并指定本端为Co-routed方式MPLS TE双向隧道的主动方 |
mpls te bidirectional co-routed active |
缺省情况下,MPLS TE隧道接口的双向隧道功能处于关闭状态,MPLS TE隧道接口上建立的隧道为MPLS TE单向隧道 |
表1-31 配置Co-routed方式MPLS TE双向隧道的被动方
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
在MPLS TE隧道接口上开启双向隧道功能,并指定本端为Co-routed方式MPLS TE双向隧道的被动方 |
mpls te bidirectional co-routed passive reverse-lsp lsr-id ingress-lsr-id tunnel-id tunnel-id |
缺省情况下,MPLS TE隧道接口的双向隧道功能处于关闭状态,MPLS TE隧道接口上建立的隧道为MPLS TE单向隧道 |
表1-32 配置Associated方式MPLS TE双向隧道
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
在MPLS TE隧道接口上开启双向隧道功能,并指定双向隧道建立方式为Associated方式 |
mpls te bidirectional associated reverse-lsp { lsp-name lsp-name | lsr-id ingress-lsr-id tunnel-id tunnel-id } } |
缺省情况下,MPLS TE隧道接口的双向隧道功能处于关闭状态,MPLS TE隧道接口上建立的隧道为MPLS TE单向隧道 |
CRLSP备份用于端到端的路径保护,对整条CRLSP提供保护。只有使用RSVP-TE信令协议建立的MPLS TE隧道支持CRLSP备份。
请在MPLS TE隧道的Ingress节点上执行本配置。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入模式为MPLS TE隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启隧道的备份功能,并配置使用的备份模式 |
mpls te backup { hot-standby | ordinary } |
缺省情况下,隧道的备份功能处于关闭状态 |
配置主CRLSP应用的路径及路径的优先级 |
mpls te path preference value { dynamic | explicit-path path-name } [ no-cspf ] |
缺省情况下,使用自动计算的路径建立主CRLSP |
配置备份CRLSP应用的路径及路径的优先级 |
mpls te backup-path preference value { dynamic | explicit-path path-name } [ no-cspf ] |
缺省情况下,使用自动计算的路径建立备份CRLSP |
FRR是MPLS TE中的临时性局部保护技术。配置FRR时需要注意:
· 建议不要在同一个接口同时配置快速重路由功能和RSVP认证功能。
· 只有使用RSVP-TE信令协议建立的MPLS TE隧道支持FRR功能。
请在主CRLSP的Ingress节点上开启快速重路由功能。
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入主CRLSP对应的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
开启快速重路由功能 |
mpls te fast-reroute [ bandwidth ] |
缺省情况下,快速重路由功能处于关闭状态 执行本命令时,如果指定了bandwidth参数,则表示主CRLSP需要进行带宽保护;否则,表示主CRLSP不需要进行带宽保护 |
配置快速重路由时,需要在PLR上配置Bypass隧道。Bypass隧道的配置方式有如下两种:
· 手工配置Bypass隧道:在PLR上创建一条MPLS TE隧道,该MPLS TE隧道作为主CRLSP的Bypass隧道。指定该Bypass隧道可以保护的带宽和CT类型,并在主CRLSP的出接口上将该Bypass隧道与出接口绑定。当出接口连接的链路或节点出现故障时,可将流量切换到Bypass隧道转发,以避免流量中断。
· 自动创建Bypass隧道:在PLR上开启自动隧道备份功能后,PLR为经过它的所有主CRLSP都自动建立一条链路保护的Bypass隧道和一条节点保护的Bypass隧道。自动创建的Bypass隧道可以保护所有CT类型,且不限制保护带宽,即不能够提供带宽保护。自动创建Bypass隧道可以简化配置,该功能又称为自动快速重路由(auto FRR)功能。
手工为主CRLSP配置Bypass隧道或为主CRLSP自动建立Bypass隧道后,该Bypass隧道将与主CRLSP关联。一条主CRLSP同时最多可以与3条手工创建的Bypass隧道和2条自动创建的Bypass隧道关联,PLR从中选择一条Bypass隧道保护主CRLSP,即为主CRLSP绑定该Bypass隧道。
PLR为主CRLSP选择Bypass隧道时,优先选择手工创建的Bypass隧道。如果不存在手工创建的Bypass隧道,则选择自动创建的Bypass隧道,且自动创建的节点保护类型的Bypass隧道优于链路保护类型的Bypass隧道。
如果PLR上同时存在多条手工配置的Bypass隧道,则选择原则为:
(1) 根据主CRLSP所需带宽、主CRLSP是否需要进行带宽保护和Bypass隧道能否提供带宽保护,按照表1-35所示的原则选择Bypass隧道。
表1-35 FRR保护规则
主CRLSP所需带宽 |
主CRLSP是否需要进行带宽保护 |
Bypass隧道能够提供带宽保护,即配置保护带宽为具体的带宽值 |
Bypass隧道不能提供带宽保护,即配置保护带宽为un-limited |
0 |
是 |
不能绑定 |
没有指定Bypass隧道保护流量的CT类型或指定该CT类型为CT0时,可以绑定;否则,无法绑定 绑定后RRO无带宽保护标记,即Bypass隧道不会为主CRLSP提供带宽保护,Bypass隧道尽力转发主CRLSP的流量 |
否 |
|||
非0 |
是 |
Bypass隧道的保护带宽大于等于主CRLSP所需带宽,且没有指定Bypass隧道保护流量的CT类型或Bypass隧道保护流量与主CRLSP流量的CT类型相同时,可以绑定;否则,无法绑定 主CRLSP优选此Bypass隧道 绑定后RRO设置带宽保护标记,即Bypass隧道为主CRLSP提供带宽保证 |
没有指定Bypass隧道保护流量的CT类型或Bypass隧道保护流量与主CRLSP流量的CT类型相同时,可以绑定;否则,无法绑定 不存在能够提供带宽保护、且满足条件的Bypass隧道时,才会绑定此Bypass隧道 绑定后RRO无带宽保护标记 |
非0 |
否 |
Bypass隧道的保护带宽大于等于主CRLSP所需带宽,且没有指定Bypass隧道保护流量的CT类型或Bypass隧道保护流量与主CRLSP流量的CT类型相同时,可以绑定;否则,无法绑定 不存在不能够提供带宽保护的Bypass隧道时,才会绑定此Bypass隧道 绑定后RRO设置带宽保护标记 |
没有指定Bypass隧道保护流量的CT类型或Bypass隧道保护流量与主CRLSP流量的CT类型相同时,可以绑定;否则,无法绑定 主CRLSP优选此Bypass隧道 绑定后RRO无带宽保护标记 |
(2) 节点保护的Bypass隧道优于链路保护的Bypass隧道
(3) 编号小的Bypass隧道优于编号大的Bypass隧道。
在PLR上配置Bypass隧道时,需要注意:
· 由于FRR使用的Bypass隧道需要预先建立,占用额外的带宽,因此,在网络带宽余量不多的情况下,应该只对关键的接口或链路进行快速重路由保护。
· 用户在配置时应保证Bypass隧道的带宽不小于被保护的所有主CRLSP所需带宽之和,否则可能导致部分主CRLSP不能被Bypass隧道保护。
· Bypass隧道一般不转发数据。如果Bypass隧道在保护主CRLSP的同时转发流量,需要为Bypass隧道提供足够的带宽。
· Bypass隧道不能作为VPN等业务的承载隧道。
· 不能为Bypass隧道配置快速重路由功能。也就是说,Bypass隧道不能同时作为主CRLSP被其他Bypass隧道保护,隧道不能被嵌套保护。
· Bypass隧道不能经过被保护的接口或节点。
· 不要求带宽保护的主CRLSP和提供保护带宽的Bypass隧道绑定成功后,主CRLSP占用Bypass隧道的保护带宽。提供带宽保护的Bypass隧道的保护带宽先到先得,需要带宽保护的主CRLSP并不能抢占不需要带宽保护的主CRLSP。
· 发生FRR切换后,如果修改Bypass隧道的保护带宽,使得保护带宽类型不同、保护带宽不够或者引起FRR保护类型(是否为主CRLSP提供带宽保护)变化,都将导致主CRLSP Down。
Bypass隧道的建立方法与普通MPLS TE隧道相同,此处不再赘述,只介绍快速重路由功能相关的配置。
表1-36 在PLR上配置Bypass隧道
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入Bypass隧道的Tunnel接口视图 |
interface tunnel tunnel-number [ mode mpls-te ] |
- |
配置Bypass隧道的目的地址 |
destination ip-address |
隧道的目的地址应配置为MP设备的LSR ID |
配置Bypass隧道可以保护的带宽和CT类型 |
mpls te backup bandwidth [ ct0 | ct1 | ct2 | ct3 ] { bandwidth | un-limited } |
缺省情况下,未指定Bypass隧道可以保护的带宽和CT类型 对于Bypass隧道,必须使用本命令配置可保护的带宽。否则,将导致主CRLSP不能绑定到Bypass隧道 |
退回系统视图 |
quit |
- |
进入主CRLSP出接口的接口视图 |
interface interface-type interface-number |
- |
为被保护的接口指定一条Bypass隧道 |
mpls te fast-reroute bypass-tunnel tunnel tunnel-number |
缺省情况下,接口上不存在任何Bypass隧道 |
自动创建Bypass隧道时需要注意:倒数第二跳节点作为PLR时,不会自动创建节点保护类型的Bypass隧道。
一条自动创建的Bypass隧道可以与多条主隧道绑定。当Bypass隧道没有与任何主隧道绑定时,该Bypass隧道称为空闲Bypass隧道。空闲Bypass隧道在自动清除时间超时后仍未被绑定,则会被自动清除。
表1-37 在PLR上自动创建Bypass隧道
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入MPLS TE视图 |
mpls te |
- |
全局开启自动隧道备份功能,并进入MPLS TE自动隧道备份视图 |
auto-tunnel backup |
缺省情况下,自动隧道备份功能处于全局关闭状态 |
配置自动创建的Bypass隧道的接口编号范围 |
tunnel-number min min-number max max-number |
缺省情况下,未指定自动创建Bypass隧道的接口编号范围,不能自动创建Bypass隧道 全局开启自动隧道备份功能后,必须配置本命令,才能自动建立Bypass隧道 |
(可选)配置仅自动创建链路保护类型的Bypass隧道 |
nhop-only |
缺省情况下,链路保护和节点保护的Bypass隧道都会自动创建 配置本命令后,已自动创建的节点保护类型的Bypass隧道会被删除 |
(可选)配置空闲Bypass隧道的自动清除时间 |
timers removal unused seconds |
缺省情况下,空闲Bypass隧道的自动清除时间为3600秒 |
(可选)退回系统视图 |
quit |
- |
(可选)进入接口视图 |
interface interface-type interface-number |
- |
(可选)关闭接口的自动隧道备份功能 |
mpls te auto-tunnel backup disable |
缺省情况下,全局开启了自动隧道备份功能后,所有使能RSVP能力的接口都会开启自动隧道备份功能,允许自动创建Bypass隧道 配置本命令后,已自动创建的保护该接口的Bypass隧道会被删除 |
如果使用FRR进行节点保护,则在PLR和被保护节点上可以进行本配置,以便通过Hello机制或BFD检测到节点故障;如果只是进行链路保护,则不必进行本配置。
对于PLR和被保护节点之间链路故障引发的节点失效,不需要使用RSVP的Hello机制或BFD来进行节点故障检测。本配置主要用于在链路正常但信令协议故障的特殊情况下检测节点故障。
表1-38 配置节点故障检测
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入PLR与被保护节点直连接口的接口视图 |
interface interface-type interface-number |
- |
开启RSVP的Hello扩展功能 |
rsvp hello enable |
二者选其一 缺省情况下,RSVP的Hello扩展功能处于关闭状态;不会通过BFD检测本地设备和RSVP邻居之间链路的状态 rsvp hello enable和rsvp bfd enable命令的详细介绍,请参见“MPLS配置指导”中的“RSVP” |
配置通过BFD检测本地设备和RSVP邻居之间链路的状态 |
rsvp bfd enable |
如果为一条主CRLSP指定了多条Bypass隧道,MPLS TE会从中选择一条最优的Bypass隧道,当主CRLSP出现故障时,将流量切换到该Bypass隧道转发。在某些情况下,当前的最优隧道可能不是之前选中的Bypass隧道。因此,MPLS TE需要周期性地选择最优的Bypass隧道。通过本配置可以调整Bypass隧道优选的周期。
请在PLR节点上进行本配置。
表1-39 配置快速重路由的Bypass隧道优选时间间隔
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入MPLS TE视图 |
mpls te |
- |
配置在多条Bypass隧道中进行优选的时间间隔 |
fast-reroute timer interval |
缺省情况下,在多条Bypass隧道中进行优选的时间间隔为300秒 |
开启MPLS TE模块的告警功能后,当MPLS TE状态发生变化时会产生RFC 3812中规定的告警信息。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。
有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
表1-40 开启告警功能
操作 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
开启MPLS TE模块的告警功能 |
snmp-agent trap enable te |
缺省情况下,MPLS TE模块的告警功能处于开启状态 |
在完成上述配置后,在任意视图下执行display命令可以显示配置后MPLS TE的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除MPLS TE统计信息。
表1-41 MPLS TE的显示和维护
操作 |
命令 |
显示显式路径的信息 |
display explicit-path [ path-name ] |
显示开启了MPLS TE的接口上的带宽相关信息 |
display mpls te link-management bandwidth-allocation [ interface interface-type interface-number ] |
显示MPLS TE隧道接口的信息 |
display mpls te tunnel-interface [ tunnel number ] |
显示OSPF发现的PCE信息 |
display ospf [ process-id ] [ area area-id ] mpls te pce [ originate-router advertising-router-id | self-originate ] |
显示OSPF TEDB中的链路和节点信息 |
display ospf [ process-id ] [ area area-id ] mpls te advertisement [ originate-router advertising-router-id | self-originate ] |
显示OSPF TEDB中的Network信息 |
display ospf [ process-id ] [ area area-id ] mpls te network [ originate-router advertising-router-id | self-originate ] |
显示OSPF的Tunnel接口信息 |
display ospf [ process-id ] [ area area-id ] mpls te tunnel |
显示IS-IS TEDB中的链路和节点信息 |
display isis mpls te advertisement [ [ level-1 | level-2 ] | [ originate-system system-id | local ] | verbose ] * [ process-id ] |
显示IS-IS TE配置的子TLV类型值信息 |
display isis mpls te configured-sub-tlvs [ process-id ] |
显示IS-IS TEDB中的网络信息 |
display isis mpls te network [ [ level-1 | level-2 ] | local | lsp-id lsp-id ]* [ process-id ] |
显示IS-IS 的Tunnel接口信息 |
display isis mpls te tunnel [ level-1 | level-2 ] [ process-id ] |
显示MPLS TEDB信息 |
display mpls te tedb { { isis { level-1 | level-2 } | ospf area area-id } | link ip-address | network | node [ local | mpls-lsr-id ] | summary } |
显示设备已发现的PCE的信息 |
display mpls te pce discovery [ ip-address ] [ verbose ] |
显示PCC或PCE对等体的信息 |
display mpls te pce peer [ ip-address ] [ verbose ] |
显示PCC或PCE的统计信息 |
display mpls te pce statistics [ ip-address ] |
清除PCC或PCE统计信息 |
reset mpls te pce statistics [ ip-address ] |
· 设备Switch A、Switch B和Switch C运行IS-IS;
· 使用静态CRLSP建立一条Switch A到Switch C的MPLS TE隧道,实现两个IP网络通过MPLS TE隧道传输数据流量,该隧道需要的带宽为2000kbps;
· 隧道沿途的链路最大带宽为10000kbps。
图1-6 静态CRLSP配置组网图
(1) 配置各接口的IP地址
按照图1-6配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 00.0005.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] isis enable 1
[SwitchA-Vlan-interface1] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis enable 1
[SwitchA-LoopBack0] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 00.0005.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] isis enable 1
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] isis enable 1
[SwitchB-Vlan-interface2] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis enable 1
[SwitchB-LoopBack0] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 00.0005.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] isis enable 1
[SwitchC-Vlan-interface2] quit
[SwitchC] interface loopback 0
[SwitchC-LoopBack0] isis enable 1
[SwitchC-LoopBack0] quit
配置完成后,在各设备上执行display ip routing-table命令,可以看到相互之间都学到了到对方的路由,包括Loopback接口对应的主机路由。
(3) 配置LSR ID、开启MPLS能力和MPLS TE能力
# 配置Switch A。
[SwitchA] mpls lsr-id 1.1.1.1
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
[SwitchB] mpls lsr-id 2.2.2.2
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] quit
# 配置Switch C。
[SwitchC] mpls lsr-id 3.3.3.3
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] quit
(4) 配置链路的MPLS TE属性
# 在Switch A上配置链路的最大带宽。
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchA-Vlan-interface1] quit
# 在Switch B上配置链路的最大带宽。
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface2] quit
# 在Switch C上配置链路的最大带宽。
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface2] quit
(5) 配置MPLS TE隧道
# 在Switch A上配置MPLS TE隧道Tunnel1:目的地址为Switch C的LSR ID(3.3.3.3);采用静态CRLSP建立MPLS TE隧道。
[SwitchA] interface tunnel 1 mode mpls-te
[SwitchA-Tunnel1] ip address 6.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 3.3.3.3
[SwitchA-Tunnel1] mpls te signaling static
[SwitchA-Tunnel1] quit
(6) 创建静态CRLSP
# 配置Switch A为静态CRLSP的Ingress节点,下一跳地址为2.1.1.2,出标签为20,隧道所需的带宽为2000kbps。
[SwitchA] static-cr-lsp ingress static-cr-lsp-1 nexthop 2.1.1.2 out-label 20 bandwidth 2000
# 在Switch A上配置隧道Tunnel1引用名称为static-cr-lsp-1的静态CRLSP。
[SwitchA] interface Tunnel1
[SwitchA-Tunnel1] mpls te static-cr-lsp static-cr-lsp-1
[SwitchA-Tunnel1] quit
# 配置Switch B为静态CRLSP的Transit节点,入标签为20,下一跳地址为3.2.1.2,出标签为30,隧道所需的带宽为2000kbps。
[SwitchB] static-cr-lsp transit static-cr-lsp-1 in-label 20 nexthop 3.2.1.2 out-label 30 bandwidth 2000
# 配置Switch C为静态CRLSP的Egress节点,入标签为30。
[SwitchC] static-cr-lsp egress static-cr-lsp-1 in-label 30
(7) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel1转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令,可以看到Tunnel接口的状态为up。
[SwitchA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 6.1.1.1/24 (primary)
Tunnel source unknown, destination 3.3.3.3
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令,可以看到MPLS TE隧道的建立情况。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up)
Tunnel Attributes :
LSP ID : 1 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.1 Egress LSR ID : 3.3.3.3
Signaling : Static Static CRLSP Name : static-cr-lsp-1
Static SRLSP Name : -/-
Resv Style : -
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : - Tunnel Bandwidth : -
Reserved Bandwidth : -
Setup Priority : 0 Holding Priority : 0
Affinity Attr/Mask : -/-
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : - Record Label : -
FRR Flag : - Bandwidth Protection : -
Backup Bandwidth Flag: - Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : - Auto Created : -
Route Pinning : -
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : - Reoptimization Freq : -
Backup Type : - Backup LSP ID : -
Auto Bandwidth : - Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在各设备上执行display mpls lsp或display mpls static-cr-lsp命令,可以看到静态CRLSP的建立情况。
[SwitchA] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.1/0/1 StaticCR -/20 Vlan1
2.1.1.2 Local -/- Vlan1
Tunnel1 Local -/- NHLFE1025
[SwitchB] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
- StaticCR 20/30 Vlan2
3.2.1.2 Local -/- Vlan2
[SwitchC] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
- StaticCR 30/- -
[SwitchA] display mpls static-cr-lsp
Name LSR Type In/Out Label Out Interface State
static-cr-lsp-1 Ingress Null/20 Vlan1 Up
[SwitchB] display mpls static-cr-lsp
Name LSR Type In/Out Label Out Interface State
static-cr-lsp-1 Transit 20/30 Vlan2 Up
[SwitchC] display mpls static-cr-lsp
Name LSR Type In/Out Label Out Interface State
static-cr-lsp1 Egress 30/Null - Up
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel1为出接口的静态路由信息。
· 设备Switch A、Switch B、Switch C和Switch D运行IS-IS,都是Level-2设备;
· 使用RSVP-TE建立一条从Switch A到Switch D的MPLS TE隧道,实现两个IP网络通过MPLS TE隧道传输数据流量,该隧道需要的带宽为2000kbps;
· 隧道沿途的链路最大带宽为10000kbps。
图1-7 RSVP-TE配置MPLS TE隧道组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
Switch A |
Loop0 |
1.1.1.9/32 |
Switch D |
Loop0 |
4.4.4.9/32 |
|
Vlan-int1 |
10.1.1.1/24 |
|
Vlan-int3 |
30.1.1.2/24 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int10 |
100.1.2.1/24 |
Switch B |
Loop0 |
2.2.2.9/32 |
Switch C |
Loop0 |
3.3.3.9/32 |
|
Vlan-int1 |
10.1.1.2/24 |
|
Vlan-int3 |
30.1.1.1/24 |
|
Vlan-int2 |
20.1.1.1/24 |
|
Vlan-int2 |
20.1.1.2/24 |
(1) 配置各接口的IP地址
按照图1-7配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口
# 配置Switch A。
<SwitchA> system-view
[SwitchA] isis 1
[SwitchA-isis-1] network-entity 00.0005.0000.0000.0001.00
[SwitchA-isis-1] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] isis enable 1
[SwitchA-Vlan-interface1] isis circuit-level level-2
[SwitchA-Vlan-interface1] quit
[SwitchA] interface loopback 0
[SwitchA-LoopBack0] isis enable 1
[SwitchA-LoopBack0] isis circuit-level level-2
[SwitchA-LoopBack0] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] isis 1
[SwitchB-isis-1] network-entity 00.0005.0000.0000.0002.00
[SwitchB-isis-1] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] isis enable 1
[SwitchB-Vlan-interface1] isis circuit-level level-2
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] isis enable 1
[SwitchB-Vlan-interface2] isis circuit-level level-2
[SwitchB-Vlan-interface2] quit
[SwitchB] interface loopback 0
[SwitchB-LoopBack0] isis enable 1
[SwitchB-LoopBack0] isis circuit-level level-2
[SwitchB-LoopBack0] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] isis 1
[SwitchC-isis-1] network-entity 00.0005.0000.0000.0003.00
[SwitchC-isis-1] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] isis enable 1
[SwitchC-Vlan-interface3] isis circuit-level level-2
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] isis enable 1
[SwitchC-Vlan-interface2] isis circuit-level level-2
[SwitchC-Vlan-interface2] quit
[SwitchC] interface loopback 0
[SwitchC-LoopBack0] isis enable 1
[SwitchC-LoopBack0] isis circuit-level level-2
[SwitchC-LoopBack0] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] isis 1
[SwitchD-isis-1] network-entity 00.0005.0000.0000.0004.00
[SwitchD-isis-1] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] isis enable 1
[SwitchD-Vlan-interface3] isis circuit-level level-2
[SwitchD-Vlan-interface3] quit
[SwitchD] interface loopback 0
[SwitchD-LoopBack0] isis enable 1
[SwitchD-LoopBack0] isis circuit-level level-2
[SwitchD-LoopBack0] quit
# 配置完成后,在各设备上执行display ip routing-table命令,可以看到相互之间都学到了到对方的路由,包括Loopback接口对应的主机路由。
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力
# 配置Switch A。
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
[SwitchB] mpls lsr-id 2.2.2.9
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] quit
# 配置Switch C。
[SwitchC] mpls lsr-id 3.3.3.9
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls enable
[SwitchC-Vlan-interface3] mpls te enable
[SwitchC-Vlan-interface3] rsvp enable
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] rsvp enable
[SwitchC-Vlan-interface2] quit
# 配置Switch D。
[SwitchD] mpls lsr-id 4.4.4.9
[SwitchD] mpls te
[SwitchD-te] quit
[SwitchD] rsvp
[SwitchD-rsvp] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls enable
[SwitchD-Vlan-interface3] mpls te enable
[SwitchD-Vlan-interface3] rsvp enable
[SwitchD-Vlan-interface3] quit
(4) 配置IS-IS TE
# 配置Switch A。
[SwitchA] isis 1
[SwitchA-isis-1] cost-style wide
[SwitchA-isis-1] mpls te enable level-2
[SwitchA-isis-1] quit
# 配置Switch B。
[SwitchB] isis 1
[SwitchB-isis-1] cost-style wide
[SwitchB-isis-1] mpls te enable level-2
[SwitchB-isis-1] quit
# 配置Switch C。
[SwitchC] isis 1
[SwitchC-isis-1] cost-style wide
[SwitchC-isis-1] mpls te enable level-2
[SwitchC-isis-1] quit
# 配置SwitchD。
[SwitchD] isis 1
[SwitchD-isis-1] cost-style wide
[SwitchD-isis-1] mpls te enable level-2
[SwitchD-isis-1] quit
(5) 配置链路的MPLS TE属性
# 在Switch A上配置链路的最大带宽。
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchA-Vlan-interface1] quit
# 在Switch B上配置链路的最大带宽。
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface2] quit
# 在Switch C上配置链路的最大带宽。
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface2] quit
# 在Switch D上配置链路的最大带宽。
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchD-Vlan-interface3] quit
(6) 配置MPLS TE隧道
# 在Switch A上配置MPLS TE隧道Tunnel1:目的地址为Switch D的LSR ID(4.4.4.9);采用RSVP-TE信令协议建立MPLS TE隧道;隧道所需的带宽为2000kbps。
[SwitchA] interface tunnel 1 mode mpls-te
[SwitchA-Tunnel1] ip address 7.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 4.4.4.9
[SwitchA-Tunnel1] mpls te signaling rsvp-te
[SwitchA-Tunnel1] mpls te bandwidth 2000
[SwitchA-Tunnel1] quit
(7) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel1转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令可以看到隧道接口状态为up。
[SwitchA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 7.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 6 bytes/sec, 48 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 177 packets, 11428 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令可以看到隧道的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 23331 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 2000 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Disabled Record Label : Disabled
FRR Flag : Disabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel1为出接口的静态路由信息。
· Switch A和Switch B位于AS 100内,AS 100内使用OSPF作为IGP协议。
· Switch C和Switch D位于AS 200内,AS 200内使用OSPF作为IGP协议。
· 在作为ASBR的Switch B和Switch C之间建立EBGP连接,配置BGP引入OSPF路由, OSPF进程引入BGP路由,使得AS 100和AS 200之间路由可达。
· 使用RSVP-TE从Switch A到Switch D建立一条跨域的MPLS TE隧道,实现两个IP网络通过MPLS TE隧道传输数据流量,该隧道所需的带宽为2000kbps。
· 隧道沿途的链路最大带宽为10000kbps。
图1-8 使用RSVP-TE配置跨域的MPLS TE隧道组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Switch A |
Loop0 |
1.1.1.9/32 |
Switch D |
Loop0 |
4.4.4.9/32 |
|
Vlan-int1 |
10.1.1.1/24 |
|
Vlan-int3 |
30.1.1.2/24 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int10 |
100.1.2.1/24 |
Switch B |
Loop0 |
2.2.2.9/32 |
Switch C |
Loop0 |
3.3.3.9/32 |
|
Vlan-int1 |
10.1.1.2/24 |
|
Vlan-int3 |
30.1.1.1/24 |
|
Vlan-int2 |
20.1.1.1/24 |
|
Vlan-int2 |
20.1.1.2/24 |
(1) 配置各接口的IP地址
按照图1-8配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置使用OSPF在AS内发布路由信息,并在Switch B和Switch C上配置OSPF引入直连路由和BGP路由
# 配置Switch A。
<SwitchA> system-view
[SwitchA] ospf
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] ospf
[SwitchB-ospf-1] import-route direct
[SwitchB-ospf-1] import-route bgp
[SwitchB-ospf-1] area 0
[SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
[SwitchB-ospf-1-area-0.0.0.0] quit
[SwitchB-ospf-1] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] ospf
[SwitchC-ospf-1] import-route direct
[SwitchC-ospf-1] import-route bgp
[SwitchC-ospf-1] area 0
[SwitchC-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255
[SwitchC-ospf-1-area-0.0.0.0] network 3.3.3.9 0.0.0.0
[SwitchC-ospf-1-area-0.0.0.0] quit
[SwitchC-ospf-1] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] ospf
[SwitchD-ospf-1] area 0
[SwitchD-ospf-1-area-0.0.0.0] network 30.1.1.0 0.0.0.255
[SwitchD-ospf-1-area-0.0.0.0] network 4.4.4.9 0.0.0.0
[SwitchD-ospf-1-area-0.0.0.0] quit
[SwitchD-ospf-1] quit
# 配置完成后,在各设备上执行display ip routing-table命令,可以看到AS内的设备之间都学到了到对方的路由,包括Loopback接口对应的主机路由。以Switch A为例:
[SwitchA] display ip routing-table
Destinations : 6 Routes : 6
Destination/Mask Proto Pre Cost NextHop Interface
1.1.1.9/32 Direct 0 0 127.0.0.1 InLoop0
2.2.2.9/32 O_INTRA 10 1 10.1.1.2 Vlan1
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan1
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
(3) 在Switch B和Switch C之间配置BGP,使得AS之间路由可达
# 配置Switch B。
[SwitchB] bgp 100
[SwitchB-bgp] peer 20.1.1.2 as-number 200
[SwitchB-bgp] address-family ipv4 unicast
[SwitchB-bgp-ipv4] peer 20.1.1.2 enable
[SwitchB-bgp-ipv4] import-route ospf
[SwitchB-bgp-ipv4] import-route direct
[SwitchB-bgp-ipv4] quit
[SwitchB-bgp] quit
# 配置Switch C。
[SwitchC] bgp 200
[SwitchC-bgp] peer 20.1.1.1 as-number 100
[SwitchC-bgp] address-family ipv4 unicast
[SwitchC-bgp-ipv4] peer 20.1.1.1 enable
[SwitchC-bgp-ipv4] import-route ospf
[SwitchC-bgp-ipv4] import-route direct
[SwitchC-bgp-ipv4] quit
[SwitchC-bgp] quit
# 配置完成后,在各设备上执行display ip routing-table命令,可以看到设备学习到了AS外部的路由。以Switch A为例:
[SwitchA] display ip routing-table
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost NextHop Interface
1.1.1.9/32 Direct 0 0 127.0.0.1 InLoop0
2.2.2.9/32 O_INTRA 10 1 10.1.1.2 Vlan1
3.3.3.9/32 O_ASE 150 1 10.1.1.2 Vlan1
4.4.4.9/32 O_ASE 150 1 10.1.1.2 Vlan1
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan1
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 O_ASE 150 1 10.1.1.2 Vlan1
30.1.1.0/24 O_ASE 150 1 10.1.1.2 Vlan1
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
(4) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力
# 配置Switch A。
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
[SwitchB] mpls lsr-id 2.2.2.9
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] quit
# 配置Switch C。
[SwitchC] mpls lsr-id 3.3.3.9
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] rsvp enable
[SwitchC-Vlan-interface2] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls enable
[SwitchC-Vlan-interface3] mpls te enable
[SwitchC-Vlan-interface3] rsvp enable
[SwitchC-Vlan-interface3] quit
# 配置Switch D。
[SwitchD] mpls lsr-id 4.4.4.9
[SwitchD] mpls te
[SwitchD-te] quit
[SwitchD] rsvp
[SwitchD-rsvp] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls enable
[SwitchD-Vlan-interface3] mpls te enable
[SwitchD-Vlan-interface3] rsvp enable
[SwitchD-Vlan-interface3] quit
(5) 配置OSPF TE
# 配置Switch A。
[SwitchA] ospf
[SwitchA-ospf-1] opaque-capability enable
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] mpls te enable
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] quit
# 配置Switch B。
[SwitchB] ospf
[SwitchB-ospf-1] opaque-capability enable
[SwitchB-ospf-1] area 0
[SwitchB-ospf-1-area-0.0.0.0] mpls te enable
[SwitchB-ospf-1-area-0.0.0.0] quit
[SwitchB-ospf-1] quit
# 配置Switch C。
[SwitchC] ospf
[SwitchC-ospf-1] opaque-capability enable
[SwitchC-ospf-1] area 0
[SwitchC-ospf-1-area-0.0.0.0] mpls te enable
[SwitchC-ospf-1-area-0.0.0.0] quit
[SwitchC-ospf-1] quit
# 配置Switch D。
[SwitchD] ospf
[SwitchD-ospf-1] opaque-capability enable
[SwitchD-ospf-1] area 0
[SwitchD-ospf-1-area-0.0.0.0] mpls te enable
[SwitchD-ospf-1-area-0.0.0.0] quit
[SwitchD-ospf-1] quit
(6) 配置显式路径
# 在Switch A上配置显式路径,指定Switch B节点和Switch D节点为松散下一跳,Switch C节点为严格下一跳。
[SwitchA] explicit-path atod
[SwitchA-explicit-path-atod] nexthop 10.1.1.2 include loose
[SwitchA-explicit-path-atod] nexthop 20.1.1.2 include strict
[SwitchA-explicit-path-atod] nexthop 30.1.1.2 include loose
[SwitchA-explicit-path-atod] quit
(7) 配置链路的MPLS TE属性
# 在Switch A上配置链路的最大带宽。
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchA-Vlan-interface1] quit
# 在Switch B上配置链路的最大带宽。
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchB-Vlan-interface2] quit
# 在Switch C上配置链路的最大带宽。
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface2] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchC-Vlan-interface3] quit
# 在Switch D上配置链路的最大带宽。
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls te max-link-bandwidth 10000
[SwitchD-Vlan-interface3] quit
(8) 配置MPLS TE隧道
# 在Switch A上配置MPLS TE隧道Tunnel1:目的地址为Switch D的LSR ID(4.4.4.9);采用RSVP-TE信令协议建立MPLS TE隧道;隧道所需的带宽为2000kbps;为隧道指定显式路径atod。
[SwitchA] interface tunnel 1 mode mpls
[SwitchA-Tunnel1] ip address 7.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 4.4.4.9
[SwitchA-Tunnel1] mpls te signaling rsvp-te
[SwitchA-Tunnel1] mpls te bandwidth 2000
[SwitchA-Tunnel1] mpls te path preference 5 explicit-path atod
[SwitchA-Tunnel1] quit
(9) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel1转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令可以看到隧道接口状态为up。
[SwitchA] display interface tunnel 1
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 7.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets input, 0 bytes, 0 drops
Output: 3077 packets output, 197028 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令可以看到隧道的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 23549 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 2000 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : atod
Backup Explicit Path : -
Metric Type : TE
Record Route : Disabled Record Label : Disabled
FRR Flag : Disabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel1为出接口的静态路由信息。
[SwitchA] display ip routing-table
Destinations : 14 Routes : 14
Destination/Mask Proto Pre Cost NextHop Interface
1.1.1.9/32 Direct 0 0 127.0.0.1 InLoop0
2.2.2.9/32 O_INTRA 10 1 10.1.1.2 Vlan1
3.3.3.9/32 O_ASE 150 1 10.1.1.2 Vlan1
4.4.4.9/32 O_ASE 150 1 10.1.1.2 Vlan1
7.1.1.0/24 Direct 0 0 7.1.1.1 Tun1
7.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan1
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 O_ASE 150 1 10.1.1.2 Vlan1
30.1.1.0/24 O_ASE 150 1 10.1.1.2 Vlan1
100.1.2.0/24 Static 1 0 0.0.0.0 Tun1
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
· 设备Switch A、Switch B、Switch C和Switch D均支持MPLS TE且运行OSPF。
· 设备Switch A和Switch B为PCE, Switch C作为PCC,自动发现PCE,并向PCE请求计算从Switch C到Switch D的跨OSPF区域路径。
图1-9 使用PCE计算的路径建立跨区域的MPLS TE隧道组网图
(1) 配置各接口的IP地址
按照图1-9配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置OSPF协议发布接口所在网段的路由,并配置OSPF TE
# 配置Switch A
<SwitchA> system-view
[SwitchA] ospf
[SwitchA-ospf-1] area 0
[SwitchA-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 1.1.1.1 0.0.0.0
[SwitchA-ospf-1-area-0.0.0.0] mpls te enable
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] area 1
[SwitchA-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.1] mpls te enable
[SwitchA-ospf-1-area-0.0.0.1] quit
[SwitchA-ospf-1] quit
# 配置Switch B
<SwitchB> system-view
[SwitchB] ospf
[SwitchB-ospf-1] area 0
[SwitchB-ospf-1-area-0.0.0.0] network 10.1.1.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.0] network 2.2.2.2 0.0.0.0
[SwitchB-ospf-1-area-0.0.0.0] mpls te enable
[SwitchB-ospf-1-area-0.0.0.0] quit
[SwitchB-ospf-1] area 2
[SwitchB-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.2] mpls te enable
[SwitchB-ospf-1-area-0.0.0.2] quit
[SwitchB-ospf-1] quit
# 配置Switch C
<SwitchC> system-view
[SwitchC] ospf
[SwitchC-ospf-1] area 1
[SwitchC-ospf-1-area-0.0.0.1] network 10.2.1.0 0.0.0.255
[SwitchC-ospf-1-area-0.0.0.1] network 3.3.3.3 0.0.0.0
[SwitchC-ospf-1-area-0.0.0.1] mpls te enable
[SwitchC-ospf-1-area-0.0.0.1] quit
[SwitchC-ospf-1] quit
# 配置Switch D
<SwitchD> system-view
[SwitchD] ospf
[SwitchD-ospf-1] area 2
[SwitchD-ospf-1-area-0.0.0.2] network 10.3.1.0 0.0.0.255
[SwitchD-ospf-1-area-0.0.0.2] network 4.4.4.4 0.0.0.0
[SwitchD-ospf-1-area-0.0.0.2] mpls te enable
[SwitchD-ospf-1-area-0.0.0.2] quit
[SwitchD-ospf-1] quit
(3) 配置LSR ID,使能MPLS、MPLS TE和RSVP-TE能力
# 配置Switch A
[SwitchA] mpls lsr-id 1.1.1.1
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] mpls enable
[SwitchA-Vlan-interface10] mpls te enable
[SwitchA-Vlan-interface10] rsvp enable
[SwitchA-Vlan-interface10] quit
[SwitchA] interface vlan-interface 11
[SwitchA-Vlan-interface11] mpls enable
[SwitchA-Vlan-interface11] mpls te enable
[SwitchA-Vlan-interface11] rsvp enable
[SwitchA-Vlan-interface11] quit
# 配置Switch B
[SwitchB] mpls lsr-id 2.2.2.2
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 10
[SwitchB-Vlan-interface10] mpls enable
[SwitchB-Vlan-interface10] mpls te enable
[SwitchB-Vlan-interface10] rsvp enable
[SwitchB-Vlan-interface10] quit
[SwitchB] interface vlan-interface 11
[SwitchB-Vlan-interface11] mpls enable
[SwitchB-Vlan-interface11] mpls te enable
[SwitchB-Vlan-interface11] rsvp enable
[SwitchB-Vlan-interface11] quit
# 配置Switch C
[SwitchC] mpls lsr-id 3.3.3.3
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 11
[SwitchC-Vlan-interface11] mpls enable
[SwitchC-Vlan-interface11] mpls te enable
[SwitchC-Vlan-interface11] rsvp enable
[SwitchC-Vlan-interface11] quit
# 配置Switch D
[SwitchD] mpls lsr-id 4.4.4.4
[SwitchD] mpls te
[SwitchD-te] quit
[SwitchD] rsvp
[SwitchD-rsvp] quit
[SwitchD] interface vlan-interface 11
[SwitchD-Vlan-interface11] mpls enable
[SwitchD-Vlan-interface11] mpls te enable
[SwitchD-Vlan-interface11] rsvp enable
[SwitchD-Vlan-interface11] quit
(4) 配置Switch A和Switch B为PCE
# 配置Switch A
[SwitchA] mpls te
[SwitchA-te] pce address 1.1.1.1
# 配置Switch B
[SwitchB] mpls te
[SwitchB-te] pce address 2.2.2.2
(5) 配置Switch C作为PCC并使用PCE计算路径
# 在Switch C上配置MPLS TE隧道Tunnel1:目的地址为Switch D的LSR ID(4.4.4.4);采用RSVP-TE信令协议建立MPLS TE隧道;隧道所需的带宽为2000kbps。
[SwitchC] interface tunnel 1 mode mpls-te
[SwitchC-Tunnel1] ip address 7.1.1.1 255.255.255.0
[SwitchC-Tunnel1] destination 4.4.4.4
[SwitchC-Tunnel1] mpls te signaling rsvp-te
# 配置使用PCE计算路径,并指定计算路径的PCE为Switch A和Switch B,发起BRPC计算。
[SwitchC-Tunnel1] mpls te path preference 2 dynamic pce 1.1.1.1 2.2.2.2
[SwitchC-Tunnel1] quit
# 配置完成后,在各交换机上执行display mpls te pce discovery verbose,可以查看到自动发现的PCE。以Switch A为例:
[SwitchA] display mpls te pce discovery verbose
PCE address: 2.2.2.2
Discovery methods: OSPF
Path scopes:
Path scope Preference
Compute intra-area paths 7
Act as PCE for inter-area TE LSP computation 6
Act as a default PCE for inter-area TE LSP computation 6
Capabilities:
Bidirectional path computation
Support for request prioritization
Support for multiple requests per message
Domains:
OSPF 1 area 0.0.0.0
OSPF 1 area 0.0.0.2
# 在各交换机上执行display mpls te pce peer verbose,可以查看到建立的PCEP会话,显示会话状态up。以Switch A为例:
[SwitchA] display mpls te pce peer verbose
Peer address: 2.2.2.2
TCP connection : 1.1.1.1:29507 -> 2.2.2.2:4189
Peer type : PCE
Session type : Stateless
Session state : UP
Mastership : Normal
Role : Active
Session up time : 0000 days 00 hours 00 minutes
Session ID : Local 0, Peer 0
Keepalive interval : Local 30 sec, Peer 30 sec
Recommended DeadTimer : Local 120 sec, Peer 120 sec
Tolerance:
Min keepalive interval: 10 sec
Max unknown messages : 5
Request timeout : 10 sec
Delegation timeout : 30 sec
Peer address: 3.3.3.3
TCP connection : 3.3.3.3:29507 -> 1.1.1.1:4189
Peer type : PCC
Session type : Stateless
Session state : UP
Mastership : Normal
Role : Active
Session up time : 0000 days 00 hours 00 minutes
Session ID : Local 2, Peer 0
Keepalive interval : Local 30 sec, Peer 30 sec
Recommended DeadTimer : Local 120 sec, Peer 120 sec
Tolerance:
Min keepalive interval: 10 sec
Max unknown messages : 5
Request timeout : 10 sec
Delegation timeout : 30 sec
· 设备Switch A、Switch B、Switch C和Switch D运行IS-IS,都是Level-2设备;
· 使用RSVP-TE从Switch A到Switch D建立双向TE隧道。
图1-10 配置MPLS TE双向隧道组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Switch A |
Loop0 |
1.1.1.9/32 |
Switch D |
Loop0 |
4.4.4.9/32 |
|
Vlan-int1 |
10.1.1.1/24 |
|
Vlan-int3 |
30.1.1.2/24 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int10 |
100.1.2.1/24 |
Switch B |
Loop0 |
2.2.2.9/32 |
Switch C |
Loop0 |
3.3.3.9/32 |
|
Vlan-int1 |
10.1.1.2/24 |
|
Vlan-int3 |
30.1.1.1/24 |
|
Vlan-int2 |
20.1.1.1/24 |
|
Vlan-int2 |
20.1.1.2/24 |
(1) 配置各接口的IP地址
按照图1-10配置各接口的IP地址和掩码,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口
具体过程请参见“1.15.2 使用RSVP-TE配置MPLS TE隧道示例”。
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力,并在Switch A和Switch D上配置为倒数第二跳分配非空标签
# 配置Switch A。
<SwitchA> system-view
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls label advertise non-null
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] mpls lsr-id 2.2.2.9
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface1] quit
# 配置Switch C。
<SwitchC> system-view
[SwitchC] mpls lsr-id 3.3.3.9
[SwitchC] mpls te
[SwitchC-te] quit
[SwitchC] rsvp
[SwitchC-rsvp] quit
[SwitchC] interface vlan-interface 3
[SwitchC-Vlan-interface3] mpls enable
[SwitchC-Vlan-interface3] mpls te enable
[SwitchC-Vlan-interface3] rsvp enable
[SwitchC-Vlan-interface3] quit
[SwitchC] interface vlan-interface 2
[SwitchC-Vlan-interface2] mpls enable
[SwitchC-Vlan-interface2] mpls te enable
[SwitchC-Vlan-interface2] rsvp enable
[SwitchC-Vlan-interface2] quit
# 配置Switch D。
<SwitchD> system-view
[SwitchD] mpls lsr-id 4.4.4.9
[SwitchD] mpls label advertise non-null
[SwitchD] mpls te
[SwitchD-te] quit
[SwitchD] rsvp
[SwitchD-rsvp] quit
[SwitchD] interface vlan-interface 3
[SwitchD-Vlan-interface3] mpls enable
[SwitchD-Vlan-interface3] mpls te enable
[SwitchD-Vlan-interface3] rsvp enable
[SwitchD-Vlan-interface3] quit
(4) 配置IS-IS TE
# 配置Switch A。
[SwitchA] isis 1
[SwitchA-isis-1] cost-style wide
[SwitchA-isis-1] mpls te enable level-2
[SwitchA-isis-1] quit
# 配置Switch B。
[SwitchB] isis 1
[SwitchB-isis-1] cost-style wide
[SwitchB-isis-1] mpls te enable level-2
[SwitchB-isis-1] quit
# 配置Switch C。
[SwitchC] isis 1
[SwitchC-isis-1] cost-style wide
[SwitchC-isis-1] mpls te enable level-2
[SwitchC-isis-1] quit
# 配置Switch D。
[SwitchD] isis 1
[SwitchD-isis-1] cost-style wide
[SwitchD-isis-1] mpls te enable level-2
[SwitchD-isis-1] quit
(5) 配置MPLS TE双向隧道
# 配置Switch A作为Co-routed方式双向隧道的active端。
[SwitchA] interface tunnel 1 mode mpls-te
[SwitchA-Tunnel1] ip address 7.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 4.4.4.9
[SwitchA-Tunnel1] mpls te signaling rsvp-te
[SwitchA-Tunnel1] mpls te resv-style ff
[SwitchA-Tunnel1] mpls te bidirectional co-routed active
[SwitchA-Tunnel1] quit
# 配置Switch D作为Co-routed方式双向隧道的passive端。
[SwitchD] interface tunnel 4 mode mpls-te
[SwitchD-Tunnel4] ip address 8.1.1.1 255.255.255.0
[SwitchD-Tunnel4] destination 1.1.1.9
[SwitchD-Tunnel4] mpls te signaling rsvp-te
[SwitchD-Tunnel4] mpls te resv-style ff
[SwitchD-Tunnel4] mpls te bidirectional co-routed passive reverse-lsp lsr-id 1.1.1.9 tunnel-id 1
[SwitchD-Tunnel4] quit
(6) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel1转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 1 preference 1
# 在Switch D上配置静态路由,使得到达网络100.1.1.0/24的流量通过MPLS TE隧道接口Tunnel4转发。
[SwitchD] ip route-static 100.1.1.0 24 tunnel 4 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令可以看到隧道接口状态为up。
[SwitchA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 7.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.9
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令可以看到隧道的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up. Reverse CRLSP up)
Tunnel Attributes :
LSP ID : 30478 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : FF
Tunnel mode : Co-routed, active
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Disabled Record Label : Disabled
FRR Flag : Disabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在Swtich A上执行display mpls lsp verbose命令可以看到双向隧道的详细信息。
[SwitchA] display mpls lsp verbose
Destination : 4.4.4.9
FEC : 1.1.1.9/1/30478
Protocol : RSVP
LSR Type : Ingress
Service : -
NHLFE ID : 1027
State : Active
Out-Label : 1149
Nexthop : 10.1.1.2
Out-Interface: Vlan1
Destination : 4.4.4.9
FEC : 1.1.1.9/1/30478
Protocol : RSVP
LSR Type : Egress
Service : -
In-Label : 1151
State : Active
Nexthop : 127.0.0.1
Out-Interface: -
Destination : 10.1.1.2
FEC : 10.1.1.2
Protocol : Local
LSR Type : Ingress
Service : -
NHLFE ID : 1026
State : Active
Nexthop : 10.1.1.2
Out-Interface: Vlan1
Destination : 4.4.4.9
FEC : Tunnel1
Protocol : Local
LSR Type : Ingress
Service : -
NHLFE ID : 268435457
State : Active
Out-Interface: NHLFE74
# 在Swtich D上执行display interface tunnel命令可以看到隧道接口状态为up。
[SwitchD] display interface tunnel
Tunnel4
Current state: UP
Line protocol current state: UP
Description: Tunnel4 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 8.1.1.1/24 (primary)
Tunnel source unknown, destination 1.1.1.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets input, 0 bytes, 0 drops
Output: 0 packets output, 0 bytes, 0 drops
# 在Switch D上执行display mpls te tunnel-interface命令可以看到隧道的详细信息。
[SwitchD] display mpls te tunnel-interface
Tunnel Name : Tunnel 4
Tunnel State : Up (Main CRLSP up. Reverse CRLSP up)
Tunnel Attributes :
LSP ID : - Tunnel ID : 4
Admin State : Normal
Ingress LSR ID : - Egress LSR ID : -
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : FF
Tunnel mode : Co-routed, passive
Reverse-LSP name : -
Reverse-LSP LSR ID : 1.1.1.9 Reverse-LSP Tunnel ID: 1
Class Type : - Tunnel Bandwidth : -
Reserved Bandwidth : -
Setup Priority : - Holding Priority : -
Affinity Attr/Mask : -/-
Explicit Path : -
Backup Explicit Path : -
Metric Type : -
Record Route : - Record Label : -
FRR Flag : - Bandwidth Protection : -
Backup Bandwidth Flag: - Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : - Auto Created : No
Route Pinning : -
Retry Limit : - Retry Interval : -
Reoptimization : - Reoptimization Freq : -
Backup Type : - Backup LSP ID : -
Auto Bandwidth : - Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在Switch D上执行display mpls lsp verbose命令可以看到双向隧道的详细信息。
[SwitchD] display mpls lsp verbose
Destination : 4.4.4.9
FEC : 1.1.1.9/1/30478
Protocol : RSVP
LSR Type : Egress
Service : -
In-Label : 3
State : Active
Nexthop : 127.0.0.1
Out-Interface: -
Destination : 4.4.4.9
FEC : 1.1.1.9/1/30478
Protocol : RSVP
LSR Type : Ingress
Service : -
NHLFE ID : 1025
State : Active
Out-Label : 1150
Nexthop : 30.1.1.1
Out-Interface: Vlan1
Destination : 30.1.1.1
FEC : 30.1.1.1
Protocol : Local
LSR Type : Ingress
Service : -
NHLFE ID : 1024
State : Active
Nexthop : 30.1.1.1
Out-Interface: Vlan1
Destination : 1.1.1.9
FEC : Tunnel1
Protocol : Local
LSR Type : Ingress
Service : -
NHLFE ID : 268435457
State : Active
Out-Interface: NHLFE74
· 设备Switch A、Switch B、Switch C和Switch D运行IS-IS和IS-IS TE;
· 使用RSVP-TE从Switch A到Switch C建立一条MPLS TE隧道,实现两个IP网络通过MPLS TE隧道传输数据流量;
· MPLS TE隧道支持CRLSP热备份,即同时建立主备两条CRLSP,实现主CRLSP故障时将流量切换到备份CRLSP。
图1-11 CRLSP备份组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
Switch A |
Loop0 |
1.1.1.9/32 |
Switch D |
Loop0 |
4.4.4.9/32 |
|
Vlan-int1 |
10.1.1.1/24 |
|
Vlan-int4 |
30.1.1.2/24 |
|
Vlan-int4 |
30.1.1.1/24 |
|
Vlan-int3 |
40.1.1.1/24 |
|
Vlan-int10 |
100.1.1.1/24 |
Switch C |
Loop0 |
3.3.3.9/32 |
Switch B |
Loop0 |
2.2.2.9/32 |
|
Vlan-int2 |
20.1.1.2/24 |
|
Vlan-int1 |
10.1.1.2/24 |
|
Vlan-int3 |
40.1.1.2/24 |
|
Vlan-int2 |
20.1.1.1/24 |
|
Vlan-int10 |
100.1.2.1/24 |
进行下面配置之前,需要先全局关闭STP功能,或为每个VLAN映射一个MSTP实例。具体配置方法请参见“二层技术-以太网交换配置指导”中的“生成树”。
(1) 配置各接口的IP地址
按照图1-11配置各接口的IP地址和掩码,包括各Loopback接口,并配置IS-IS TE,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口(具体配置过程略)
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力
# 配置Switch A。
<SwitchA> system-view
[SwitchA] mpls lsr-id 1.1.1.9
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
[SwitchA] interface vlan-interface 4
[SwitchA-Vlan-interface4] mpls enable
[SwitchA-Vlan-interface4] mpls te enable
[SwitchA-Vlan-interface4] rsvp enable
[SwitchA-Vlan-interface4] quit
# Switch B、Switch C和Switch D的配置与Switch A相似,此处不再赘述。
(4) 配置MPLS TE隧道
# 在Switch A上配置MPLS TE隧道Tunnel3:目的地址为Switch C的LSR ID(3.3.3.9);采用RSVP-TE信令协议建立MPLS TE隧道;隧道支持CRLSP热备份功能。
[SwitchA] interface tunnel 3 mode mpls-te
[SwitchA-Tunnel3] ip address 9.1.1.1 24
[SwitchA-Tunnel3] destination 3.3.3.9
[SwitchA-Tunnel3] mpls te signaling rsvp-te
[SwitchA-Tunnel3] mpls te backup hot-standby
[SwitchA-Tunnel3] quit
(5) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel3转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 3 preference 1
# 配置完成后,在Switch A上执行display interface tunnel命令,可以看到Tunnel3的状态为up。
[SwitchA] display interface tunnel
Tunnel3
Current state: UP
Line protocol state: UP
Description: Tunnel3 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 9.1.1.1/24 (primary)
Tunnel source unknown, destination 3.3.3.9
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Output queue - Urgent queuing: Size/Length/Discards 0/100/0
Output queue - Protocol queuing: Size/Length/Discards 0/500/0
Output queue - FIFO queuing: Size/Length/Discards 0/75/0
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Input: 0 packets, 0 bytes, 0 drops
Output: 0 packets, 0 bytes, 0 drops
# 在Switch A上执行display mpls lsp命令,可以看到存在两条CRLSP,出接口分别是Vlan-interface1和Vlan-interface4,即主CRLSP创建后,备份CRLSP也建立了。
[SwitchA] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.9/3/34311 RSVP -/1150 Vlan1
1.1.1.9/3/34312 RSVP -/1151 Vlan4
10.1.1.2 Local -/- Vlan1
30.1.1.2 Local -/- Vlan4
Tunnel3 Local -/- NHLFE1026
Backup -/- NHLFE1028
# 在Switch A上执行display rsvp lsp verbose命令,可以看到这两条CRLSP使用的路径。
[SwitchA] display rsvp lsp verbose
Tunnel name: SwitchA_t3
Destination: 3.3.3.9 Source: 1.1.1.9
Tunnel ID: 3 LSP ID: 30106
LSR type: Ingress Direction: Unidirectional
Setup priority: 7 Holding priority: 7
In-Label: - Out-Label: 1137
In-Interface: - Out-Interface: Vlan1
Nexthop: 10.1.1.2 Exclude-any: 0
Include-Any: 0 Include-all: 0
Mean rate (CIR): 0 kbps Mean burst size (CBS): 1000.00 bytes
Path MTU: 1500 Class type: CT0
RRO number: 6
10.1.1.1/32 Flag: 0x00 (No FRR)
10.1.1.2/32 Flag: 0x00 (No FRR/In-Int)
2.2.2.9/32 Flag: 0x20 (No FRR/Node-ID)
20.1.1.1/32 Flag: 0x00 (No FRR)
20.1.1.2/32 Flag: 0x00 (No FRR/In-Int)
3.3.3.9/32 Flag: 0x20 (No FRR/Node-ID)
Fast Reroute protection: None
Tunnel name: Tunnel3
Destination: 3.3.3.9 Source: 1.1.1.9
Tunnel ID: 3 LSP ID: 30107
LSR type: Ingress Direction: Unidirectional
Setup priority: 7 Holding priority: 7
In-Label: - Out-Label: 1150
In-Interface: - Out-Interface: Vlan4
Nexthop: 30.1.1.2 Exclude-any: 0
Include-Any: 0 Include-all: 0
Mean rate (CIR): 0 kbps Mean burst size (CBS): 1000.00 bytes
Path MTU: 1500 Class type: CT0
RRO number: 6
30.1.1.1/32 Flag: 0x00 (No FRR)
30.1.1.2/32 Flag: 0x00 (No FRR/In-Int)
4.4.4.9/32 Flag: 0x20 (No FRR/Node-ID)
40.1.1.1/32 Flag: 0x00 (No FRR)
40.1.1.2/32 Flag: 0x00 (No FRR/In-Int)
3.3.3.9/32 Flag: 0x20 (No FRR/Node-ID)
Fast Reroute protection: None
# 对Tunnel3进行Tracert操作,可以看出目前使用的是经过Switch B的CRLSP,不是经过Switch D的CRLSP。
[SwitchA] tracert mpls te tunnel 3
MPLS trace route TE tunnel Tunnel3
TTL Replier Time Type Downstream
0 Ingress 10.1.1.2/[1147]
1 10.1.1.2 1 ms Transit 20.1.1.2/[3]
2 20.1.1.2 2 ms Egress
# 在SwitchB的接口Vlan-interface2上执行shutdown命令,然后再对Tunnel3进行Tracert操作,可以看到报文使用经过Switch D的CRLSP转发。
[SwitchA] tracert mpls te tunnel 3
MPLS trace route TE tunnel Tunnel3
TTL Replier Time Type Downstream
0 Ingress 30.1.1.2/[1148]
1 30.1.1.2 2 ms Transit 40.1.1.2/[3]
2 40.1.1.2 3 ms Egress
# 在Switch A上执行display mpls lsp命令,可以看到只剩下一条经过Switch D的CRLSP:
[SwitchA] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.9/3/34313 RSVP -/1150 Vlan4
30.1.1.2 Local -/- Vlan4
Tunnel3 Local -/- NHLFE1029
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel3为出接口的静态路由信息。
· 主CRLSP使用路径Switch A→Switch B→Switch C→Switch D,要求对Switch B→Switch C这段链路通过FRR进行链路保护。
· 使用RSVP-TE信令协议、基于显式路径约束条件建立MPLS TE隧道的主CRLSP和Bypass隧道,实现两个IP网络通过MPLS TE隧道传输数据流量。Bypass隧道使用路径Switch B→Switch E→Switch C(Switch B是本地修复节点PLR,Switch C是汇聚点MP)。
· 在Switch B和Switch C之间配置RSVP-TE与BFD联动,当Switch B和Switch C之间的链路出现故障后,BFD能够快速检测并通告RSVP-TE协议,以便快速将流量切换到Bypass隧道。
图1-12 MPLS TE快速重路由配置组网图
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
|
Switch A |
Loop0 |
1.1.1.1/32 |
Switch B |
Loop0 |
2.2.2.2/32 |
|
Vlan-int1 |
2.1.1.1/24 |
|
Vlan-int1 |
2.1.1.2/24 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int2 |
3.1.1.1/24 |
Switch D |
Loop0 |
4.4.4.4/32 |
|
Vlan-int4 |
3.2.1.1/24 |
|
Vlan-int3 |
4.1.1.2/24 |
Switch C |
Loop0 |
3.3.3.3/32 |
|
Vlan-int10 |
100.1.1.1/24 |
|
Vlan-int3 |
4.1.1.1/24 |
Switch E |
Loop0 |
5.5.5.5/32 |
|
Vlan-int2 |
3.1.1.2/24 |
|
Vlan-int4 |
3.2.1.2/24 |
|
Vlan-int5 |
3.3.1.2/24 |
|
Vlan-int5 |
3.3.1.1/24 |
|
|
|
(1) 配置各接口的IP地址
按照图1-12配置各接口的IP地址和掩码,包括各Loopback接口,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口(具体配置过程略)
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力,并在Switch B和Switch C上配置RSVP-TE与BFD联动,以检测Switch B与Switch C之间链路的状态
# 配置Switch A。
<SwitchA> system-view
[SwitchA] mpls lsr-id 1.1.1.1
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] mpls lsr-id 2.2.2.2
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] rsvp bfd enable
[SwitchB-Vlan-interface2] quit
[SwitchB] interface vlan-interface 4
[SwitchB-Vlan-interface4] mpls enable
[SwitchB-Vlan-interface4] mpls te enable
[SwitchB-Vlan-interface4] rsvp enable
[SwitchB-Vlan-interface4] quit
# Switch C的配置与Switch B的配置相似,Switch D、Switch E的配置与Switch A的配置相似,此处不再赘述。
(4) 在主CRLSP的Ingress节点Switch A上建立MPLS TE隧道
# 配置主CRLSP的显式路径。
[SwitchA] explicit-path pri-path
[SwitchA-explicit-path-pri-path] nexthop 2.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 3.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 4.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 4.4.4.4
[SwitchA-explicit-path-pri-path] quit
# 配置主CRLSP的MPLS TE隧道Tunnel4:目的地址为Switch D的LSR ID(4.4.4.4);采用RSVP-TE信令协议建立MPLS TE隧道;隧道引用显式路径pri-path。
[SwitchA] interface tunnel 4 mode mpls-te
[SwitchA-Tunnel4] ip address 10.1.1.1 255.255.255.0
[SwitchA-Tunnel4] destination 4.4.4.4
[SwitchA-Tunnel4] mpls te signaling rsvp-te
[SwitchA-Tunnel4] mpls te path preference 1 explicit-path pri-path
# 开启MPLS TE隧道的FRR功能。
[SwitchA-Tunnel4] mpls te fast-reroute
[SwitchA-Tunnel4] quit
# 配置完成后,在Switch A上执行display interface tunnel命令,可以看到Tunnel4的状态为up。
[SwitchA] display interface tunnel
Tunnel4
Current state: UP
Line protocol current state: UP
Description: Tunnel4 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 10.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.4
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 1911 bytes/sec, 15288 bits/sec, 0 packets/sec
Input: 0 packets input, 0 bytes, 0 drops
Output: 1526 packets output, 22356852 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令,可以看到隧道接口的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 4
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 48960 Tunnel ID : 4
Admin State : Normal
Ingress LSR ID : 1.1.1.1 Egress LSR ID : 3.3.3.3
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : pri-path
Backup Explicit Path : -
Metric Type : TE
Record Route : Enabled Record Label : Enabled
FRR Flag : Enabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
(5) 在作为PLR的Switch B上配置Bypass隧道
# 配置Bypass隧道的显式路径。
[SwitchB] explicit-path by-path
[SwitchB-explicit-path-by-path] nexthop 3.2.1.2
[SwitchB-explicit-path-by-path] nexthop 3.3.1.2
[SwitchB-explicit-path-by-path] nexthop 3.3.3.3
[SwitchB-explicit-path-by-path] quit
# 配置隧道Tunnel5:目的地址为Switch C的LSR ID(3.3.3.3);采用RSVP-TE信令协议建立MPLS TE隧道;隧道引用显式路径by-path。
[SwitchB] interface tunnel 5 mode mpls-te
[SwitchB-Tunnel5] ip address 11.1.1.1 255.255.255.0
[SwitchB-Tunnel5] destination 3.3.3.3
[SwitchB-Tunnel5] mpls te signaling rsvp-te
[SwitchB-Tunnel5] mpls te path preference 1 explicit-path by-path
# 配置Bypass隧道可保护的带宽。
[SwitchB-Tunnel5] mpls te backup bandwidth un-limited
[SwitchB-Tunnel5] quit
# 将Bypass隧道绑定到被保护的接口。
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls te fast-reroute bypass-tunnel tunnel 5
[SwitchB-Vlan-interface2] quit
# 配置完成后,在Switch B上执行display interface tunnel命令可以看到接口Tunnel5的状态为up。
(6) 配置静态路由使流量沿MPLS TE隧道转发
# 在Switch A上配置静态路由,使得到达网络100.1.2.0/24的流量通过MPLS TE隧道接口Tunnel4转发。
[SwitchA] ip route-static 100.1.2.0 24 tunnel 4 preference 1
# 在所有设备上执行display mpls lsp命令,可以看到LSP表项。在Switch B和Switch C上存在两条LSP,通过Bypass隧道保护主CRLSP。
[SwitchA] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.1/4/61400 RSVP -/1245 Vlan1
2.1.1.2 Local -/- Vlan1
[SwitchB] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.1/4/614000 RSVP 1245/3 Vlan2
Backup 1245/3 Tun5
2.2.2.2/5/30914 RSVP -/1150 Vlan2
3.2.1.2 Local -/- Vlan4
3.1.1.2 Local -/- Vlan2
[SwitchE] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
2.2.2.2/5/30914 RSVP 1150/3 Vlan5
3.3.1.2 Local -/- Vlan5
# 在PLR上shutdown被保护的出接口Vlan-interface2。
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] shutdown
[SwitchB-Vlan-interface2] quit
# 在Switch A上执行display interface tunnel 4命令查看主CRLSP的状态,可以看到Tunnel接口仍然处于up状态。
# 在Switch A上执行display mpls te tunnel-interface命令,可以看到隧道接口的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 4
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP being set up)
Tunnel Attributes :
LSP ID : 18753 Tunnel ID : 4
Admin State : Normal
Ingress LSR ID : 1.1.1.1 Egress LSR ID : 3.3.3.3
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : pri-path
Backup Explicit Path : -
Metric Type : TE
Record Route : Enabled Record Label : Enabled
FRR Flag : Enabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
如果在FRR切换后马上执行display mpls te tunnel-interface命令查看隧道接口的详细信息,会看到两条处于up状态的CRLSP。这是因为FRR采用make-before-break方式建立新的LSP,旧的LSP在新LSP建立成功后过一段时间才被删除。
# 在Switch B上执行display mpls lsp命令,可以看到Bypass隧道被使用。
[SwitchB] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
1.1.1.1/4/61400 RSVP 1136/3 Tun5
2.2.2.2/5/30914 RSVP -/1149 Vlan4
3.2.1.2 Local -/- Vlan4
# 在PLR上配置在多条旁路隧道中进行优选的时间间隔为5秒。
[SwitchB] mpls te
[SwitchB-te] fast-reroute timer 5
[SwitchB-te] quit
# 在PLR上undo shutdown被保护的出接口Vlan-interface2。
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] undo shutdown
# 在Switch A上执行display interface tunnel 4命令查看主CRLSP的状态,可以看到Tunnel接口处于up状态。
# 等待约5秒钟后,在Switch B上执行display mpls lsp verbose命令,可以看到Tunnel5仍绑定到出接口Vlan-interface2,但未被使用。
# 在Switch A上执行display ip routing-table命令,可以看到路由表中有以Tunnel4为出接口的静态路由信息。
· 使用RSVP-TE信令协议、基于显式路径约束条件建立主CRLSP。主CRLSP使用的路径为Switch A→Switch B→Switch C→Switch D。
· 在Switch B上配置自动隧道备份功能,自动为主CRLSP建立Bypass隧道。
· 在Switch B和Switch C之间配置RSVP-TE与BFD联动,当Switch B和Switch C之间的链路出现故障后,BFD能够快速检测并通告RSVP-TE协议,以便快速将流量切换到Bypass隧道。
图1-13 MPLS TE自动快速重路由配置组网图
设备 |
接口 |
IP地址 |
设备 |
接口 |
IP地址 |
Switch A |
Loop0 |
1.1.1.1/32 |
Switch E |
Loop0 |
5.5.5.5/32 |
|
Vlan-int1 |
2.1.1.1/24 |
|
Vlan-int4 |
3.2.1.2/24 |
Switch B |
Loop0 |
2.2.2.2/32 |
|
Vlan-int5 |
3.4.1.1/24 |
|
Vlan-int1 |
2.1.1.2/24 |
Switch C |
Loop0 |
3.3.3.3/32 |
|
Vlan-int2 |
3.1.1.1/24 |
|
Vlan-int3 |
4.1.1.1/24 |
|
Vlan-int4 |
3.2.1.1/24 |
|
Vlan-int2 |
3.1.1.2/24 |
|
Vlan-int6 |
3.3.1.1/24 |
|
Vlan-int5 |
3.4.1.2/24 |
Switch D |
Loop0 |
4.4.4.4/32 |
Switch F |
Loop0 |
6.6.6.6/32 |
|
Vlan-int3 |
4.1.1.2/24 |
|
Vlan-int6 |
3.3.1.2/24 |
|
Vlan-int7 |
4.2.1.2/24 |
|
Vlan-int7 |
4.2.1.1/24 |
进行下面配置之前,需要先全局关闭STP功能,或为每个VLAN映射一个MSTP实例。具体配置方法请参见“二层技术-以太网交换配置指导”中的“生成树”。
(1) 配置各接口的IP地址
按照图1-13配置各接口的IP地址和掩码,包括各Loopback接口,具体配置过程略。
(2) 配置IS-IS协议发布接口所在网段的路由,包括Loopback接口(具体配置过程略)
(3) 配置LSR ID,开启MPLS、MPLS TE和RSVP-TE能力,并在Switch B和Switch C之间配置RSVP-TE与BFD联动,以检测Switch B与Switch C之间链路的状态
# 配置Switch A。
<SwitchA> system-view
[SwitchA] mpls lsr-id 1.1.1.1
[SwitchA] mpls te
[SwitchA-te] quit
[SwitchA] rsvp
[SwitchA-rsvp] quit
[SwitchA] interface vlan-interface 1
[SwitchA-Vlan-interface1] mpls enable
[SwitchA-Vlan-interface1] mpls te enable
[SwitchA-Vlan-interface1] rsvp enable
[SwitchA-Vlan-interface1] quit
# 配置Switch B。
<SwitchB> system-view
[SwitchB] mpls lsr-id 2.2.2.2
[SwitchB] mpls te
[SwitchB-te] quit
[SwitchB] rsvp
[SwitchB-rsvp] quit
[SwitchB] interface vlan-interface 1
[SwitchB-Vlan-interface1] mpls enable
[SwitchB-Vlan-interface1] mpls te enable
[SwitchB-Vlan-interface1] rsvp enable
[SwitchB-Vlan-interface1] quit
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] mpls enable
[SwitchB-Vlan-interface2] mpls te enable
[SwitchB-Vlan-interface2] rsvp enable
[SwitchB-Vlan-interface2] rsvp bfd enable
[SwitchB-Vlan-interface2] quit
[SwitchB] interface vlan-interface 4
[SwitchB-Vlan-interface4] mpls enable
[SwitchB-Vlan-interface4] mpls te enable
[SwitchB-Vlan-interface4] rsvp enable
[SwitchB-Vlan-interface4] quit
[SwitchB] interface vlan-interface 6
[SwitchB-Vlan-interface6] mpls enable
[SwitchB-Vlan-interface6] mpls te enable
[SwitchB-Vlan-interface6] rsvp enable
[SwitchB-Vlan-interface6] quit
# Switch C的配置与Switch B的配置相似,Switch D、Switch E、Switch F的配置与Switch A的配置相似,此处不再赘述。
(4) 在主CRLSP的Ingress节点Switch A上建立MPLS TE隧道
# 配置主CRLSP的显式路径。
[SwitchA] explicit-path pri-path
[SwitchA-explicit-path-pri-path] nexthop 2.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 3.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 4.1.1.2
[SwitchA-explicit-path-pri-path] nexthop 4.4.4.4
[SwitchA-explicit-path-pri-path] quit
# 配置主CRLSP的MPLS TE隧道Tunnel1:目的地址为Switch D的LSR ID(4.4.4.4);采用RSVP-TE信令协议建立MPLS TE隧道;隧道引用显式路径pri-path。
[SwitchA] interface tunnel 1 mode mpls-te
[SwitchA-Tunnel1] ip address 10.1.1.1 255.255.255.0
[SwitchA-Tunnel1] destination 4.4.4.4
[SwitchA-Tunnel1] mpls te signaling rsvp-te
[SwitchA-Tunnel1] mpls te path preference 1 explicit-path pri-path
# 开启MPLS TE隧道的FRR功能。
[SwitchA-Tunnel1] mpls te fast-reroute
[SwitchA-Tunnel1] quit
# 配置完成后,在Switch A上执行display interface tunnel命令,可以看到Tunnel1的状态为up。
[SwitchA] display interface tunnel
Tunnel1
Current state: UP
Line protocol state: UP
Description: Tunnel1 Interface
Bandwidth: 64kbps
Maximum transmission unit: 1496
Internet address: 10.1.1.1/24 (primary)
Tunnel source unknown, destination 4.4.4.4
Tunnel TTL 255
Tunnel protocol/transport CR_LSP
Last clearing of counters: Never
Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec
Last 300 seconds output rate: 1911 bytes/sec, 15288 bits/sec, 0 packets/sec
Input: 0 packets input, 0 bytes, 0 drops
Output: 1526 packets output, 22356852 bytes, 0 drops
# 在Switch A上执行display mpls te tunnel-interface命令,可以看到隧道接口的详细信息。
[SwitchA] display mpls te tunnel-interface
Tunnel Name : Tunnel 1
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 16802 Tunnel ID : 1
Admin State : Normal
Ingress LSR ID : 2.2.2.2 Egress LSR ID : 4.4.4.4
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : exp1
Backup Explicit Path : -
Metric Type : TE
Record Route : Enabled Record Label : Enabled
FRR Flag : Enabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : No Auto Created : No
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
(5) 在作为PLR的Switch B上配置自动隧道备份功能
# 全局开启自动隧道备份功能,并配置自动创建的Bypass隧道接口编号范围为50~100。
[SwitchB] mpls te
[SwitchB-te] auto-tunnel backup
[SwitchB-te-auto-bk] tunnel-number min 50 max 100
[SwitchB-te-auto-bk] quit
# 在Switch B上执行display interface tunnel brief命令,可以看到自动创建了两条隧道。
[SwitchB] display interface tunnel brief
Brief information on interfaces in route mode:
Link: ADM - administratively down; Stby - standby
Protocol: (s) - spoofing
Interface Link Protocol Primary IP Description
Tun50 UP DOWN --
Tun51 UP DOWN --
# 在Switch B上执行display mpls te tunnel-interface命令,查看Tunnel50和Tunnel51的信息,可以看到该隧道为自动创建的Bypass隧道,且Tunnel50为节点保护类型的Bypass隧道(Egress LSR ID为4.4.4.4,Switch D的LSR ID),Tunnel51为链路保护类型的Bypass隧道(Egress LSR ID为3.3.3.3,Switch C的LSR ID)
[SwitchB] display mpls te tunnel-interface tunnel 50
Tunnel Name : Tunnel 50
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 16802 Tunnel ID : 50
Admin State : Normal
Ingress LSR ID : 2.2.2.2 Egress LSR ID : 4.4.4.4
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Enabled Record Label : Disabled
FRR Flag : Disabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : Yes Auto Created : Yes
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
[SwitchB] display mpls te tunnel-interface tunnel 51
Tunnel Name : Tunnel 51
Tunnel State : Up (Main CRLSP up. Shared-resource CRLSP down)
Tunnel Attributes :
LSP ID : 16802 Tunnel ID : 51
Admin State : Normal
Ingress LSR ID : 2.2.2.2 Egress LSR ID : 3.3.3.3
Signaling : RSVP-TE Static CRLSP Name : -
Resv Style : SE
Tunnel mode : -
Reverse-LSP name : -
Reverse-LSP LSR ID : - Reverse-LSP Tunnel ID: -
Class Type : CT0 Tunnel Bandwidth : 0 kbps
Reserved Bandwidth : 0 kbps
Setup Priority : 7 Holding Priority : 7
Affinity Attr/Mask : 0/0
Explicit Path : -
Backup Explicit Path : -
Metric Type : TE
Record Route : Enabled Record Label : Disabled
FRR Flag : Disabled Bandwidth Protection : Disabled
Backup Bandwidth Flag: Disabled Backup Bandwidth Type: -
Backup Bandwidth : -
Bypass Tunnel : Yes Auto Created : Yes
Route Pinning : Disabled
Retry Limit : 3 Retry Interval : 2 sec
Reoptimization : Disabled Reoptimization Freq : -
Backup Type : None Backup LSP ID : -
Auto Bandwidth : Disabled Auto Bandwidth Freq : -
Min Bandwidth : - Max Bandwidth : -
Collected Bandwidth : - Service-Class : -
Path Setup Type : -/-
# 在Switch B上执行display mpls lsp命令,可以看到当前用来保护主CRLSP的Bypass隧道是Tunnel50。
[SwitchB] display mpls lsp
FEC Proto In/Out Label Out Inter/NHLFE/LSINDEX
2.2.2.2/51/16802 RSVP -/3 Vlan4
2.2.2.2/1/16802 RSVP -/1151 Vlan2
Backup -/3 Tun50
2.2.2.2/50/16802 RSVP -/3 Vlan6
3.2.1.2 Local -/- Vlan6
3.3.1.2 Local -/- Vlan6
# 在Switch A上执行display rsvp lsp verbose命令,查看Tunnel ID为1的MPLS TE隧道的详细信息,可以看到主CRLSP Tunnel1被节点保护类型的自动隧道Tunnel50保护。
[SwitchA] display rsvp lsp tunnel-id 1 verbose
Tunnel name: SwitchA_t1
Destination: 4.4.4.4 Source: 1.1.1.1
Tunnel ID: 1 LSP ID: 16802
LSR type: Ingress Direction: Unidirectional
Setup priority: 7 Holding priority: 7
In-Label: - Out-Label: 1150
In-Interface: - Out-Interface: Vlan1
Nexthop: 2.1.1.2 Exclude-any: 0
Include-Any: 0 Include-all: 0
Average bitrate: 0 kbps Maximum burst: 1000.00 bytes
Path MTU: 1500 Class type: CT0
RRO number: 12
2.1.1.1/32 Flag: 0x00 (No FRR)
2.1.1.2/32 Flag: 0x00 (No FRR)
1150 Flag: 0x01 (Global label)
2.2.2.2/32 Flag: 0x20 (No FRR/Node-ID)
3.1.1.1/32 Flag: 0x09 (FRR Avail/Node-Prot)
3.1.1.2/32 Flag: 0x00 (No FRR)
1151 Flag: 0x01 (Global label)
3.3.3.3/32 Flag: 0x20 (No FRR/Node-ID)
4.1.1.1/32 Flag: 0x00 (No FRR)
4.1.1.2/32 Flag: 0x00 (No FRR)
3 Flag: 0x01 (Global label)
4.4.4.4/32 Flag: 0x20 (No FRR/Node-ID)
Fast Reroute protection: Ready
FRR inner label: 3 Bypass tunnel: Tunnel50
配置OSPF TE,无法产生描述MPLS TE信息的TE LSA。
至少有一个OSPF邻居达到FULL状态时,才可能产生TE LSA。
· 执行display current-configuration命令,检查是否在相关接口上配置了MPLS TE;
· 执行debugging ospf mpls-te命令打开OSPF TE的调试开关,检查OSPF是否收到建立TE LINK的消息;
· 执行display ospf peer命令,检查OSPF邻居是否正常建立。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!