zoukankan      html  css  js  c++  java
  • MPLS TE FRR(Fast Re-Route / 快速重路由)

    关于MPLS TE FRR(Fast Re-Route / 快速重路由)
            当 TE tunnel 所经过的节点或链路有失效时,TE 数据库会重新收敛!而这种收敛速度在骨干网上是不可取的!就 TE 本身来看它可以有建立第二条 tunnel 然后用浮动静态做备份或者启用 path-option 20!但最好的方式还是用 TE 的 FRR
    全局保护(几乎没有任何厂商能够提供该种保护机制的解决方案)
    部分保护(链路和节点保护)
    (1) 链路保护(下一跳保护)

    黄色作为主链路,其发送数据包的过程是(数据流是通过 TE tunnel 封装的):
    r1 --> r2 : 37 | IP-Data
    r2 --> r4 : 14 | IP-Data
    r4 --> r9 : pop | IP-Data
    当主链路出现故障,备份链路就会无缝接替转发数据包:
    r1 --> r2 : 27 | IP-Data
    r2 --> r6 : 17 | 14 | IP-Data
    r6 --> r7 : 22 | 14 | IP-Data
    r7 --> r4 : pop | 14 | IP-Data
    r4 --> r9 : pop | IP-Data

    (2) 节点保护(下下一跳保护)

    主链路正常时的发送数据包过程:
    r1 --> r2 : 37 | IP-Data
    r2 --> r3 : 11 | IP-Data
    r3 --> r4 : 14 | IP-Data
    r4 --> r9 : pop | IP-Data
    当主链路出现故障时,切换到备份链路的发送数据包过程:
    r1 --> r2 : 37 | IP-Data
    r2 --> r6 : 17 | 14 | IP-Data (注意封装的是下下一跳标签值,即末端 Tunnnel 标签)
    r6 --> r7 : 22 | 14 | IP-Data
    r7 --> r4 : pop | 14 | IP-Data
    r4 --> r9 : pop | IP-Data

    FRR Lab:
    Point of Local Repair(R2:本地修复点,R3:next-next-hop backup Router)
    Marge Point(缝合点)
    FRR一定需要用到RRO的,同时默认也是开启的

    其中以上两个 tunnel 一定要写显式路径

    1、主 tunnel 开启 FRR 功能
    2、PLR(Point of Loacl Repair)的主 tunnel 经过的物理接口(e0/0.23)下启用TE backup
    r1(config)#int tunnel 14
    r1(config-if)#tunnel mpls traffic-eng fast-reroute

    r2(config)#int e0/0.23
    r2(config-subif)#mpls traffic-eng backup-path tunnel 24

    r1#show mpls traffic-eng tunnels tunnel 15(可以发现 tunnel 15 写的显式路径依然没有改变的)
    r1#traceroute 5.5.5.5                                        
                                                                 
    Type escape sequence to abort.                               
    Tracing the route to 5.5.5.5                                 
                                                                 
      1 12.1.1.2 [MPLS: Label 16 Exp 0] 12 msec 12 msec 4 msec   
      2 23.1.1.3 [MPLS: Label 20 Exp 0] 8 msec 8 msec 8 msec     
      3 34.1.1.4 [MPLS: Label 18 Exp 0] 4 msec 8 msec 8 msec     
      4 45.1.1.5 8 msec *  4 msec                                

    r1#traceroute 5.5.5.5                                        
                                                                 
    Type escape sequence to abort.                               
    Tracing the route to 5.5.5.5                                 
                                                                 
      1 12.1.1.2 [MPLS: Label 16 Exp 0] 8 msec 8 msec 4 msec     
      2 26.1.1.6 [MPLS: Labels 19/18 Exp 0] 0 msec 12 msec 0 msec
      3 67.1.1.7 [MPLS: Labels 18/18 Exp 0] 4 msec 8 msec 8 msec 
      4 47.1.1.4 [MPLS: Label 18 Exp 0] 0 msec 8 msec 8 msec     
      5 45.1.1.5 8 msec *  0 msec                                
    把 R2 的 e0/0.23 断开在真实设备当中能够做到无缝切换到 Backup tunnel 转发数据,而模拟器会丢失 2~3 个包

  • 相关阅读:
    ES6的Proxy对象
    ES6的Reflect对象
    v-for中的key
    v-for和v-if的问题
    request请求的get/post的模块的封装
    HTTP 协议和接口分类
    cookies和session区别
    面试题目:接口访问中遇到验证码,怎么解决?
    数据驱动_Excel操作
    python完成http请求 get,post
  • 原文地址:https://www.cnblogs.com/cyrusxx/p/12824063.html
Copyright © 2011-2022 走看看