Example for Configuring Srefresh Based on Manual TE FRR
Networking Requirements
As shown in Figure 4-50, the primary CR-LSP is along the path LSRA -> LSRB -> LSRC -> LSRD, and the link between LSRB and LSRC needs to be protected by FRR.
A bypass CR-LSP is set up along the path LSRB -> LSRE -> LSRC. LSRB functions as the PLR and LSRC functions as the MP.
The primary and bypass MPLS TE tunnels are set up by using explicit paths. RSVP-TE is used as the signaling protocol.
The Srefresh function needs to be configured on LSRB and LSRC.
Procedure
- Assign IP addresses to interfaces.
# Configure LSRA. The configurations of LSRB, LSRC, LSRD, and LSRE are similar to the configuration of LSRA, and are not mentioned here.
<Huawei> system-view [Huawei] sysname LSRA [LSRA] interface gigabitethernet 1/0/0 [LSRA-GigabitEthernet1/0/0] ip address 172.1.1.1 255.255.255.0 [LSRA-GigabitEthernet1/0/0] quit [LSRA] interface loopback 1 [LSRA-LoopBack1] ip address 1.1.1.9 255.255.255.255 [LSRA-LoopBack1] quit
- Configure IS-IS to advertise routes.
# Configure LSRA. The configurations of LSRB, LSRC, LSRD, and LSRE are similar to the configuration of LSRA, and are not mentioned here.
[LSRA] isis 1 [LSRA-isis-1] network-entity 00.0005.0000.0000.0001.00 [LSRA-isis-1] is-level level-2 [LSRA-isis-1] quit [LSRA] interface gigabitethernet 1/0/0 [LSRA-GigabitEthernet1/0/0] isis enable 1 [LSRA-GigabitEthernet1/0/0] quit [LSRA] interface loopback 1 [LSRA-LoopBack1] isis enable 1 [LSRA-LoopBack1] quit
After the configurations are complete, run the display ip routing-table command on each LSR. You can see that the LSRs learn the routes from each other.
- Configure basic MPLS functions and enable MPLS TE, CSPF, RSVP-TE, and IS-IS TE.
# Configure LSRA. The configurations of LSRB, LSRC, LSRD, and LSRE are similar to the configuration of LSRA, and are not mentioned here. CSPF needs to be enabled only on the ingress node of the primary tunnel (LSRA) and the ingress node LSRB of the bypass tunnel (LSRB); CSPF does not need to be enabled on LSRC, LSRD, or LSRE.
[LSRA] mpls lsr-id 1.1.1.9 [LSRA] mpls [LSRA-mpls] mpls te [LSRA-mpls] mpls rsvp-te [LSRA-mpls] mpls te cspf [LSRA-mpls] quit [LSRA] interface gigabitethernet 1/0/0 [LSRA-GigabitEthernet1/0/0] mpls [LSRA-GigabitEthernet1/0/0] mpls te [LSRA-GigabitEthernet1/0/0] mpls rsvp-te [LSRA-GigabitEthernet1/0/0] quit [LSRA] isis [LSRA-isis-1] cost-style wide [LSRA-isis-1] traffic-eng level-2 [LSRA-isis-1] quit
- On LSRA, create an MPLS TE tunnel for the primary CR-LSP.
# Configure the explicit path of the primary CR-LSP.
[LSRA] explicit-path pri-path [LSRA-explicit-path-pri-path] next hop 172.1.1.2 [LSRA-explicit-path-pri-path] next hop 172.2.1.2 [LSRA-explicit-path-pri-path] next hop 172.3.1.2 [LSRA-explicit-path-pri-path] next hop 4.4.4.9 [LSRA-explicit-path-pri-path] quit
# Configure the MPLS TE tunnel interface of the primary CR-LSP.
[LSRA] interface tunnel 0/0/1 [LSRA-Tunnel0/0/1] ip address unnumbered interface loopback 1 [LSRA-Tunnel0/0/1] tunnel-protocol mpls te [LSRA-Tunnel0/0/1] destination 4.4.4.9 [LSRA-Tunnel0/0/1] mpls te tunnel-id 100 [LSRA-Tunnel0/0/1] mpls te signal-protocol rsvp-te [LSRA-Tunnel0/0/1] mpls te path explicit-path pri-path
# Enable TE FRR.
[LSRA-Tunnel0/0/1] mpls te fast-reroute [LSRA-Tunnel0/0/1] mpls te commit [LSRA-Tunnel0/0/1] quit
After the configurations are complete, run the display interface tunnel command on LSRA. You can see that the status of Tunnel0/0/1 is Up.
- Configure a bypass CR-LSP on LSRB that functions as the PLR.
# Configure the explicit path of the bypass CR-LSP.
[LSRB] explicit-path by-path [LSRB-explicit-path-by-path] next hop 172.4.1.2 [LSRB-explicit-path-by-path] next hop 172.5.1.2 [LSRB-explicit-path-by-path] next hop 3.3.3.9 [LSRB-explicit-path-by-path] quit
# Configure a tunnel interface of the bypass CR-LSP.
[LSRB] interface tunnel 0/0/2 [LSRB-Tunnel0/0/2] ip address unnumbered interface loopback 1 [LSRB-Tunnel0/0/2] tunnel-protocol mpls te [LSRB-Tunnel0/0/2] destination 3.3.3.9 [LSRB-Tunnel0/0/2] mpls te tunnel-id 300 [LSRB-Tunnel0/0/2] mpls te signal-protocol rsvp-te [LSRB-Tunnel0/0/2] mpls te path explicit-path by-path [LSRB-Tunnel0/0/2] mpls te bypass-tunnel
# Bind the bypass CR-LSP to the protected interface.
[LSRB-Tunnel0/0/2] mpls te protected-interface gigabitethernet 2/0/0 [LSRB-Tunnel0/0/2] mpls te commit [LSRB-Tunnel0/0/2] quit
After the configurations are complete, run the display interface tunnel command on LSRB. You can see that the status of Tunnel0/0/2 is Up.
# On the PLR, set the TE FRR scanning interval to 120.
[LSRB] mpls [LSRB-mpls] mpls te timer fast-reroute 120 [LSRB-mpls] quit
- Configure the Srefresh function on LSRB and LSRC.
# Configure the Srefresh function on LSRB.
[LSRB] mpls [LSRB-mpls] mpls rsvp-te srefresh [LSRB-mpls] quit
# Configure the Srefresh function on LSRC.
[LSRC] mpls [LSRC-mpls] mpls rsvp-te srefresh [LSRC-mpls] quit
- Verify the configuration.
# Run the display mpls rsvp-te statistics global command on LSRB. You can view the status of the Srefresh function. If the command output shows that the values of SendSrefreshCounter, RecSrefreshCounter, SendAckMsgCounter, and RecAckMsgCounter are not zero, Srefresh packets are successfully transmitted.
[LSRB] display mpls rsvp-te statistics global LSR ID: 2.2.2.9 LSP Count: 2 PSB Count: 2 RSB Count: 2 RFSB Count: 1 Total Statistics Information: PSB CleanupTimeOutCounter: 0 RSB CleanupTimeOutCounter: 0 SendPacketCounter: 122613 RecPacketCounter: 127446 SendCreatePathCounter: 25 RecCreatePathCounter: 260 SendRefreshPathCounter: 62209 RecRefreshPathCounter: 62113 SendCreateResvCounter: 21 RecCreateResvCounter: 31 SendRefreshResvCounter: 60101 RecRefreshResvCounter: 64792 SendResvConfCounter: 0 RecResvConfCounter: 0 SendHelloCounter: 0 RecHelloCounter: 0 SendAckCounter: 0 RecAckCounter: 0 SendPathErrCounter: 242 RecPathErrCounter: 0 SendResvErrCounter: 0 RecResvErrCounter: 0 SendPathTearCounter: 11 RecPathTearCounter: 8 SendResvTearCounter: 2 RecResvTearCounter: 0 SendSrefreshCounter: 1 RecSrefreshCounter: 1 SendAckMsgCounter: 1 RecAckMsgCounter: 1 SendChallengeMsgCounter: 0 RecChallengeMsgCounter: 0 SendResponseMsgCounter: 0 RecResponseMsgCounter: 0 SendErrMsgCounter: 0 RecErrMsgCounter: 0 SendRecoveryPathMsgCounter: 0 RecRecoveryPathMsgCounter: 0 SendGRPathMsgCounter: 0 RecGRPathMsgCounter: 0 ResourceReqFaultCounter: 0 RecGRPathMsgFromLSPMCounter: 0 Bfd neighbor count: 3 Bfd session count: 0
# Shut down the protected outbound interface GE 2/0/0 on LSRB.
[LSRB] interface gigabitethernet 2/0/0 [LSRB-GigabitEthernet2/0/0] shutdown
# Run the display interface tunnel 0/0/1 command on LSRA. You can view the status of the primary CR-LSP and that the status of the tunnel interface is still Up.[LSRA] display interface tunnel 0/0/1 Tunnel0/0/1 current state : UP Line protocol current state : UP Last line protocol up time : 2013-01-21 10:58:49 Description: ...
# Run the tracert lsp te tunnel 0/0/1 command on LSRA. You can view the path that the tunnel passes.
[LSRA] tracert lsp te tunnel 0/0/1 LSP Trace Route FEC: TE TUNNEL IPV4 SESSION QUERY Tunnel0/0/1 , press CTRL_C t o break. TTL Replier Time Type Downstream 0 Ingress 172.1.1.2/[1034 ] 1 172.1.1.2 1 ms Transit 172.4.1.2/[1042 1025 ] 2 172.4.1.2 1 ms Transit 172.5.1.2/[3 ] 3 172.5.1.2 2 ms Transit 172.3.1.2/[3 ] 4 4.4.4.9 2 ms Egress
# The preceding information shows that services on the link have been switched to the bypass CR-LSP.
# Run the display mpls te tunnel name Tunnel0/0/1 verbose command on LSRB. You can see that the bypass CR-LSP is in use.
[LSRB] display mpls te tunnel name Tunnel0/0/1 verbose No : 1 Tunnel-Name : Tunnel0/0/1 Tunnel Interface Name : - TunnelIndex : 1 LSP Index : 2048 Session ID : 100 LSP ID : 5 LSR Role : Transit Ingress LSR ID : 1.1.1.9 Egress LSR ID : 4.4.4.9 In-Interface : GE1/0/0 Out-Interface : GE2/0/0 Sign-Protocol : RSVP TE Resv Style : SE IncludeAnyAff : 0x0 ExcludeAnyAff : 0x0 IncludeAllAff : 0x0 ER-Hop Table Index : - AR-Hop Table Index: 0 C-Hop Table Index : - PrevTunnelIndexInSession: - NextTunnelIndexInSession: - PSB Handle : 16634 Created Time : 2013/01/19 06:45:49 RSVP LSP Type : - -------------------------------- DS-TE Information -------------------------------- Bandwidth Reserved Flag : Unreserved CT0 Bandwidth(Kbit/sec) : 0 CT1 Bandwidth(Kbit/sec): 0 CT2 Bandwidth(Kbit/sec) : 0 CT3 Bandwidth(Kbit/sec): 0 CT4 Bandwidth(Kbit/sec) : 0 CT5 Bandwidth(Kbit/sec): 0 CT6 Bandwidth(Kbit/sec) : 0 CT7 Bandwidth(Kbit/sec): 0 Setup-Priority : 7 Hold-Priority : 7 -------------------------------- FRR Information -------------------------------- Primary LSP Info TE Attribute Flag : 0x63 Protected Flag : 0x1 Bypass In Use : In Use Bypass Tunnel Id : 19 BypassTunnel : Tunnel Index[Tunnel0/0/2], InnerLabel[1042] Bypass LSP ID : 2 FrrNextHop : 172.5.1.2 ReferAutoBypassHandle : - FrrPrevTunnelTableIndex : - FrrNextTunnelTableIndex: - Bypass Attribute(Not configured) Setup Priority : - Hold Priority : - HopLimit : - Bandwidth : - IncludeAnyGroup : - ExcludeAnyGroup : - IncludeAllGroup : - Bypass Unbound Bandwidth Info(Kbit/sec) CT0 Unbound Bandwidth : - CT1 Unbound Bandwidth: - CT2 Unbound Bandwidth : - CT3 Unbound Bandwidth: - CT4 Unbound Bandwidth : - CT5 Unbound Bandwidth: - CT6 Unbound Bandwidth : - CT7 Unbound Bandwidth: - -------------------------------- BFD Information -------------------------------- NextSessionTunnelIndex : - PrevSessionTunnelIndex: - NextLspId : - PrevLspId : -
# Run the display mpls rsvp-te statistics global command on LSRB to view Srefresh statistics.
[LSRB] display mpls rsvp-te statistics global LSR ID: 2.2.2.9 LSP Count: 2 PSB Count: 2 RSB Count: 2 RFSB Count: 1 Total Statistics Information: PSB CleanupTimeOutCounter: 0 RSB CleanupTimeOutCounter: 0 SendPacketCounter: 122707 RecPacketCounter: 127580 SendCreatePathCounter: 27 RecCreatePathCounter: 304 SendRefreshPathCounter: 62220 RecRefreshPathCounter: 62122 SendCreateResvCounter: 22 RecCreateResvCounter: 32 SendRefreshResvCounter: 60111 RecRefreshResvCounter: 64803 SendResvConfCounter: 0 RecResvConfCounter: 0 SendHelloCounter: 0 RecHelloCounter: 0 SendAckCounter: 0 RecAckCounter: 0 SendPathErrCounter: 287 RecPathErrCounter: 0 SendResvErrCounter: 0 RecResvErrCounter: 0 SendPathTearCounter: 11 RecPathTearCounter: 8 SendResvTearCounter: 2 RecResvTearCounter: 0 SendSrefreshCounter: 13 RecSrefreshCounter: 14 SendAckMsgCounter: 14 RecAckMsgCounter: 13 SendChallengeMsgCounter: 0 RecChallengeMsgCounter: 0 SendResponseMsgCounter: 0 RecResponseMsgCounter: 0 SendErrMsgCounter: 0 RecErrMsgCounter: 0 SendRecoveryPathMsgCounter: 0 RecRecoveryPathMsgCounter: 0 SendGRPathMsgCounter: 0 RecGRPathMsgCounter: 0 ResourceReqFaultCounter: 0 RecGRPathMsgFromLSPMCounter: 0 Bfd neighbor count: 2 Bfd session count: 0
# Because the Srefresh function is configured globally on LSRB and LSRC, the Srefresh function takes effect on LSRB and LSRC when the primary tunnel fails.
Configuration Files
LSRA configuration file
# sysname LSRA # mpls lsr-id 1.1.1.9 mpls mpls te mpls rsvp-te mpls te cspf # explicit-path pri-path next hop 172.1.1.2 next hop 172.2.1.2 next hop 172.3.1.2 next hop 4.4.4.9 # isis 1 is-level level-2 cost-style wide network-entity 00.0005.0000.0000.0001.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 172.1.1.1 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface LoopBack1 ip address 1.1.1.9 255.255.255.255 isis enable 1 # interface Tunnel0/0/1 ip address unnumbered interface LoopBack1 tunnel-protocol mpls te destination 4.4.4.9 mpls te record-route label mpls te path explicit-path pri-path mpls te tunnel-id 100 mpls te fast-reroute mpls te commit # return
LSRB configuration file
# sysname LSRB # mpls lsr-id 2.2.2.9 mpls mpls te mpls te timer fast-reroute 120 mpls rsvp-te mpls rsvp-te srefresh mpls te cspf # explicit-path by-path next hop 172.4.1.2 next hop 172.5.1.2 next hop 3.3.3.9 # isis 1 is-level level-2 cost-style wide network-entity 00.0005.0000.0000.0002.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 172.1.1.2 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface GigabitEthernet2/0/0 ip address 172.2.1.1 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface GigabitEthernet3/0/0 ip address 172.4.1.1 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface LoopBack1 ip address 2.2.2.9 255.255.255.255 isis enable 1 # interface Tunnel0/0/2 ip address unnumbered interface LoopBack1 tunnel-protocol mpls te destination 3.3.3.9 mpls te tunnel-id 300 mpls te record-route mpls te path explicit-path by-path mpls te bypass-tunnel mpls te protected-interface GigabitEthernet 2/0/0 mpls te commit # return
LSRC configuration file
# sysname LSRC # mpls lsr-id 3.3.3.9 mpls mpls te mpls rsvp-te mpls rsvp-te srefresh # isis 1 is-level level-2 cost-style wide network-entity 00.0005.0000.0000.0003.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 172.2.1.2 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface GigabitEthernet2/0/0 ip address 172.3.1.1 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface GigabitEthernet3/0/0 ip address 172.5.1.2 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface LoopBack1 ip address 3.3.3.9 255.255.255.255 isis enable 1 # return
LSRD configuration file
# sysname LSRD # mpls lsr-id 4.4.4.9 mpls mpls te mpls rsvp-te # isis 1 is-level level-2 cost-style wide network-entity 00.0005.0000.0000.0004.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 172.3.1.2 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface LoopBack1 ip address 4.4.4.9 255.255.255.255 isis enable 1 # return
LSRE configuration file
# sysname LSRE # mpls lsr-id 5.5.5.9 mpls mpls te mpls rsvp-te # isis 1 is-level level-2 cost-style wide network-entity 00.0005.0000.0000.0005.00 traffic-eng level-2 # interface GigabitEthernet1/0/0 ip address 172.4.1.2 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface GigabitEthernet2/0/0 ip address 172.5.1.1 255.255.255.0 isis enable 1 mpls mpls te mpls rsvp-te # interface LoopBack1 ip address 5.5.5.9 255.255.255.255 isis enable 1 # return