Life is a Roller Coaster

October 29, 2008

L2Circuits – CoC

Filed under: General — Tags: , — adisubrata @ 1:43 AM

The objective of this experiment is connecting two separates network using L2CCC over MPLS on VPN services (CoC).

CE1 and CE2 want to connect each other. MPLS operator provides them COC termination on PE1 and PE2. MPLS provider needs to enable MPLS session towards CE.
After MPLS session are created on each routers, PEA and PEB creates L2Circuits connection each others.

Step 1: Configure MP-BGP on PE1 and PE2 to carry l3VPN unicast.

enugadi@JNCIE-M# show logical-routers PE1 protocols bgp
group ibgp {
    type internal;
    local-address 100.0.0.1;
    family inet-vpn {
        unicast;
    }
    neighbor 100.0.0.3;
}

[edit]
enugadi@JNCIE-M# show logical-routers PE2 protocols bgp   
group ibgp {
    type internal;
    local-address 100.0.0.3;
    family inet-vpn {
        unicast;
    }
    neighbor 100.0.0.1;
}

Step 2: Configure L3VPN and policies on PE1 and PE2.

Note: Since the PE-CE used is OSPF, you need to export policy to redistribute BGP prefix to OSPF. Egress policy will need to ensure that Lo0 of PE will send to CE.

L3VPN Configuration on PE1

enugadi@JNCIE-M# show logical-routers PE1 routing-instances
NPE-VRF {
    instance-type vrf;
    interface fe-1/3/0.15;
    interface lo0.888;
    route-distinguisher 1:2;
    vrf-import csc-import;
    vrf-export csc-export;
    vrf-table-label;
    protocols {
        ospf {
            export bgp-to-ospf;
            area 0.0.0.11 {
                interface fe-1/3/0.15;
                interface lo0.888;
            }
        }
        ldp {
            egress-policy bgp-to-ospf;
            interface fe-1/3/0.15;
            interface lo0.888;
        }
    }
}

[edit]
enugadi@JNCIE-M# show logical-routers PE1 policy-options policy-statement csc-import
term 1 {
    from {
        protocol bgp;
        community csc-comm;
    }
    then accept;
}
term 2 {
    then reject;
}

[edit]
enugadi@JNCIE-M# show logical-routers PE1 policy-options policy-statement csc-export   
term 1 {
    from protocol ldp;
    then {
        community add csc-comm;
        accept;
    }
}
term 2 {
    then reject;
}

L3VPN  Configuration on PE2:

enugadi@JNCIE-M# show logical-routers PE2 routing-instances
NPE-VRF-B {
    instance-type vrf;
    interface fe-1/3/0.34;
    interface lo0.999;
    route-distinguisher 1:1;
    vrf-import csc-import;
    vrf-export csc-export;
    vrf-table-label;
    protocols {
        ospf {
            export bgp-to-ospf;
            area 0.0.0.10 {
                interface fe-1/3/0.34;
                interface lo0.999;
            }
        }
        ldp {
            egress-policy bgp-to-ospf;
            interface fe-1/3/0.34;
            interface lo0.999;
        }
    }
}

[edit]
enugadi@JNCIE-M# show logical-routers PE2 policy-options policy-statement csc-import
term 1 {
    from {
        protocol bgp;
        community csc-comm;
    }
    then accept;
}
term 2 {
    then reject;
}

[edit]
enugadi@JNCIE-M# show logical-routers PE2 policy-options policy-statement csc-export   
term 1 {
    from protocol ldp;
    then {
        community add csc-comm;
        accept;
    }
}
term 2 {
    then reject;
}

Step 3: Verify BGP connection from PE1 to PE2 vice versa. Verify PE-CE OSPF neighbor state.

Verification on PE1:

enugadi@JNCIE-M# run show bgp summary logical-router PE1
Groups: 1 Peers: 1 Down peers: 0
Table          Tot Paths  Act Paths Suppressed    History Damp State    Pending
bgp.l3vpn.0            1          1          0          0          0          0
Peer               AS      InPkt     OutPkt    OutQ   Flaps Last Up/Dwn State|#Active/Received/Damped...
100.0.0.3       64000         54         60       0       0       21:46 Establ
bgp.l3vpn.0: 1/1/0
NPE-VRF.inet.0: 1/1/0
[edit]
enugadi@JNCIE-M# run show ospf neighbor logical-router PE1 instance NPE-VRF
Address          Interface              State     ID               Pri  Dead
15.15.0.2        fe-1/3/0.15            Full      100.0.0.1        128    34

Verification on PE2

enugadi@JNCIE-M# run show bgp summary logical-router PE2
Groups: 1 Peers: 1 Down peers: 0
Table          Tot Paths  Act Paths Suppressed    History Damp State    Pending
bgp.l3vpn.0            2          2          0          0          0          0
Peer               AS      InPkt     OutPkt    OutQ   Flaps Last Up/Dwn State|#Active/Received/Damped...
100.0.0.1       64000         60         57       0       0       22:12 Establ
bgp.l3vpn.0: 2/2/0
NPE-VRF-B.inet.0: 2/2/0
[edit]
enugadi@JNCIE-M# run show ospf neighbor logical-router PE2 instance NPE-VRF-B
Address          Interface              State     ID               Pri  Dead
13.13.0.2        fe-1/3/0.34            Full      100.0.0.4        128    32
Well, all protocols are working as expected.
Step 4: Verify LDP session on PE-CE connection.
enugadi@JNCIE-M# run show ldp neighbor logical-router PE1 instance NPE-VRF
Address            Interface          Label space ID         Hold time
15.15.0.2          fe-1/3/0.15        100.0.0.1:0              11
[edit]
enugadi@JNCIE-M# run show ldp neighbor logical-router PE2 instance NPE-VRF-B
Address            Interface          Label space ID         Hold time
13.13.0.2          fe-1/3/0.34        100.0.0.4:0              11

Step 5: Verify PEA receives FEC of PEB (10.0.100.4).

enugadi@JNCIE-M# run show route logical-router PEA table inet.3 

inet.3: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

100.0.0.1/32       *[LDP/9] 00:17:29, metric 1
                    > to 15.16.0.1 via fe-1/3/0.16
100.0.0.4/32       *[LDP/9] 00:17:28, metric 1
                    > to 15.16.0.1 via fe-1/3/0.16, Push 100048

Step 6: Configure L2Circuit from PEA to PEB vice versa.

enugadi@JNCIE-M# show logical-routers PEA protocols l2circuit
neighbor 100.0.0.4 {
    interface ge-0/0/3.0 {
        virtual-circuit-id 15;
    }
}

[edit]
enugadi@JNCIE-M# show logical-routers PEA interfaces ge-0/0/3   
unit 0;

enugadi@JNCIE-M# show logical-routers PEB protocols l2circuit   
neighbor 100.0.0.5 {
    interface ge-0/0/0.0 {
        virtual-circuit-id 15;
    }
}

enugadi@JNCIE-M# show logical-routers PEB interfaces ge-0/0/0    
unit 0;

Step 7: Verify L2Circuits connection

enugadi@JNCIE-M# run show l2circuit connections logical-router PEA   
Layer-2 Circuit Connections:

Legend for connection status (St)  
EI -- encapsulation invalid      NP -- interface h/w not present  
MM -- mtu mismatch               Dn -- down                      
EM -- encapsulation mismatch     VC-Dn -- Virtual circuit Down   
CM -- control-word mismatch      Up -- operational               
VM -- vlan id mismatch           CF -- Call admission control failure
OL -- no outgoing label          XX -- unknown
NC -- intf encaps not CCC/TCC
CB -- rcvd cell-bundle size bad

Legend for interface status 
Up -- operational           
Dn -- down                  
Neighbor: 100.0.0.4
    Interface                 Type  St     Time last up          # Up trans
    ge-0/0/3.0(vc 15)         rmt   Up     Oct 29 04:15:46 2008           2
      Local interface: ge-0/0/3.0, Status: Up, Encapsulation: ETHERNET
      Remote PE: 100.0.0.4, Negotiated control-word: Yes (Null)
      Incoming label: 100000, Outgoing label: 100000

[edit]
enugadi@JNCIE-M# run show l2circuit connections logical-router PEB   
Layer-2 Circuit Connections:

Legend for connection status (St)  
EI -- encapsulation invalid      NP -- interface h/w not present  
MM -- mtu mismatch               Dn -- down                      
EM -- encapsulation mismatch     VC-Dn -- Virtual circuit Down   
CM -- control-word mismatch      Up -- operational               
VM -- vlan id mismatch           CF -- Call admission control failure
OL -- no outgoing label          XX -- unknown
NC -- intf encaps not CCC/TCC
CB -- rcvd cell-bundle size bad

Legend for interface status 
Up -- operational           
Dn -- down                  
Neighbor: 100.0.0.5
    Interface                 Type  St     Time last up          # Up trans
    ge-0/0/0.0(vc 15)         rmt   Up     Oct 29 04:15:48 2008           1
      Local interface: ge-0/0/0.0, Status: Up, Encapsulation: ETHERNET
      Remote PE: 100.0.0.5, Negotiated control-word: Yes (Null)
      Incoming label: 100000, Outgoing label: 100000

Since the L2Circuit between PEA and PEB is in upstate, CE1 should be able to create connection to CE2.

enugadi@JNCIE-M# run ping 172.16.0.2 logical-router CE1 rapid count 100     
PING 172.16.0.2 (172.16.0.2): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
--- 172.16.0.2 ping statistics ---
100 packets transmitted, 100 packets received, 0% packet loss
round-trip min/avg/max/stddev = 1.066/1.129/3.223/0.278 ms

Check OSPF neighbor state on CE1 and CE2

enugadi@JNCIE-M# run show ospf neighbor logical-router CE1
Address          Interface              State     ID               Pri  Dead
172.16.0.2       ge-0/0/2.0             Full      22.22.22.22      128    39

[edit]
enugadi@JNCIE-M# run show ospf neighbor logical-router CE2   
Address          Interface              State     ID               Pri  Dead
172.16.0.1       ge-0/0/1.0             Full      11.11.11.11      128    32

Well, it’s working as expected.

You can download complete configuration here coc-l2circuits.

October 14, 2008

Awesome guitar player !!

Filed under: General — adisubrata @ 1:11 AM

Finally Trace Bundy and SungHa Jung made a collaboration and playing Canon.

Nice play.. indeed…. I really enjoy this music.

October 7, 2008

Traffic Protection on MPLS (RSVP)

Filed under: Technical section — Tags: , — adisubrata @ 8:14 AM

In this post I would like to share traffic protection mechanism that you can use to protect your traffic during link flaps. There are some protection mechanism to guard RSVP LSP session between Ingress and Egress node. You should considering all technical aspects before you start to designing your network and choose which mechanism fit to your network scalability as your network will growth, operational prespective and interoperability between each vendors. Basically LDP is able to protects the traffic from error link or node. It takes more time to convergence when there are link flaps or node problem on the network, LDP rely on OSPF as an IGP and follow the best-path to destination FEC.  Many ISP using RSVP to protects the production traffic expecially for critical voice or high priority traffics. Traffic protection is one advantage from RSVP beside capability of TE, resource reservation and more…

Let’s back to the main topic….

1. Fast reroute

Fast reroute is mechanism to protect the packet to another link/node in the network. FRR compute detours on the LSP’s downstream and upstream. It can protects all node along the LSP with exception Ingress and  Egress node. Detours is automatically compute using CSPF algorithm and TED database. The configuration is simplest compare to link-protection and node-link-protection mechanism. Only ingress router need to be configured to makes detours computation along the LSP. FRR is “one to one” LSP protection. FRR creates separate detours for each LSPs. Since FRR is “one to one” protection, you should aware that you will having more LSPs session on the transit routers. FRR detour is propietry tech.

2. Link-protection.

Link protection is the mechanism to protect specific interface and absolutely having different concepts to FRR. Link protection will generates Bypass LSP to protect specific interfaces. You need to configure link protection on Ingress router and LSR router. Link-protection also make use of a CSPF algorithm and TED database.

3. Node Link-protection.

This one is similar to Link-protection mechanism, BUT you will able protect node failure which link-protection cannot do it. It is also rely on TED and CSPF algorithm.

To simplify the diagram, I will use diagram from Sybex JNCIE book’s diagram. I have setup MPLS/OSPF network with logical routers inside single M7i router. Beloh is the basic diagram captured from JNCIE Book (Thanks Harry):

Basic Diagram

Basic Diagram

The routers used for this post are r1, r2, r3, r4, r5, r6, and r7.

enugadi@M7i# show logical-routers ?
Possible completions:
  <[Enter]>            Execute this command
  <name>               Logical router name
  r1                   Logical router name
  r2                   Logical router name
  r3                   Logical router name
  r4                   Logical router name
  r5                   Logical router name
  r6                   Logical router name
  r7                   Logical router name
  |                    Pipe through a command

LSP Configuration

The MPLS LSP configured isr1 (10.0.6.1) to r7 (10.0.9.7) using CSPF with admin-groups blue.

The LSP path is r1-r3-r6-r5-r7

enugadi@M7i# show logical-routers r1 protocols mpls
traffic-engineering bgp-igp; <- Make use LSP for IGP.
admin-groups {
    blue 20;
    red 21;
    yellow 22;
}
label-switched-path r1-r7 {
    to 10.0.9.7;
    bandwidth 20m;
    primary aho {
        admin-group include-any blue;
    }
}
path aho;
interface fe-1/3/0.1 {
    admin-group blue;
}
interface fe-1/3/0.2 {
    admin-group yellow;
}
interface fe-1/3/0.3 {
    admin-group red;
}

LSP verification:

enugadi@M7i# run show mpls lsp logical-router r1
Ingress LSP: 1 sessions
To              From            State Rt ActivePath       P     LSPname
10.0.9.7        10.0.6.1        Up     1 aho              *     r1-r7
Total 1 displayed, Up 1, Down 0

Path Verification:

enugadi@M7i# run show mpls lsp logical-router r1 extensive
Ingress LSP: 1 sessions

10.0.9.7
  From: 10.0.6.1, State: Up, ActiveRoute: 1, LSPname: r1-r7
  ActivePath: aho (primary)
  LoadBalance: Random
  Encoding type: Packet, Switching type: Packet, GPID: IPv4
 *Primary   aho              State: Up
    Bandwidth: 20Mbps
    SmartOptimizeTimer: 180
          Include Any: blue
    Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 400)
 10.0.4.13 S 10.0.2.13 S 10.0.8.6 S 10.0.8.10 S
    Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt):
          10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    6 Oct  7 10:22:39.241 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    5 Oct  7 10:01:04.814 Selected as active path
    4 Oct  7 10:01:04.814 Record Route:  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    3 Oct  7 10:01:04.812 Up
    2 Oct  7 10:01:04.753 Originate Call
    1 Oct  7 10:01:04.753 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
  Created: Tue Oct  7 10:01:04 2008
Total 1 displayed, Up 1, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

As expected, the LSP setup from r1 to r7 is through follow r3 (10.0.4.13), r6 (10.0.2.13), r5 (10.0.8.6) and r7 (10.0.8.10).

Traffic verification from r1 to r7 is tunneled over the LSP.

enugadi@M7i# run show mpls lsp statistics logical-router r1
Ingress LSP: 1 sessions
To              From            State     Packets            Bytes LSPname
10.0.9.7        10.0.6.1        Up              0                0 r1-r7
Total 1 displayed, Up 1, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

[edit]
enugadi@M7i# run ping 10.0.9.7 logical-router r1 rapid count 1000                     
PING 10.0.9.7 (10.0.9.7): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -- snipped
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.920/1.148/11.052/1.379 ms

[edit]
enugadi@M7i# run show mpls lsp statistics logical-router r1
Ingress LSP: 1 sessions
To              From            State     Packets            Bytes LSPname
10.0.9.7        10.0.6.1        Up           1000            84000 r1-r7
Total 1 displayed, Up 1, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  0.987 ms  0.929 ms  0.899 ms
     MPLS Label=101008 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.959 ms  0.965 ms  0.935 ms
     MPLS Label=100064 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.961 ms  0.988 ms  0.991 ms
     MPLS Label=101328 CoS=0 TTL=1 S=1
 4  10.0.9.7 (10.0.9.7)  0.925 ms  0.948 ms  0.910 ms

Yes,  as expected, 1000 icmp packet from r1 to r7 flows over the LSP as indicated on the traffic statistic and so we can move to the next step.

1. Fast Reroute:

Basic Configuration:

enugadi@M7i# set logical-routers r1 protocols mpls label-switched-path r1-r7 fast-reroute no-include-any;

enugadi@M7i# show logical-routers r1 protocols mpls label-switched-path r1-r7
to 10.0.9.7;
bandwidth 20m;
fast-reroute {
    no-include-any;
}
primary aho {
    admin-group include-any blue;
}

FRR verification on r1:

enugadi@M7i# run show mpls lsp logical-router r1 extensive
Ingress LSP: 1 sessions

10.0.9.7
  From: 10.0.6.1, State: Up, ActiveRoute: 1, LSPname: r1-r7
  ActivePath: aho (primary)
  FastReroute desired
  LoadBalance: Random
  Encoding type: Packet, Switching type: Packet, GPID: IPv4
 *Primary   aho              State: Up
    Bandwidth: 20Mbps
    SmartOptimizeTimer: 180
          Include Any: blue
    Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 400)
 10.0.4.13 S 10.0.2.13 S 10.0.8.6 S 10.0.8.10 S
    Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt):
          10.0.4.13(flag=9) 10.0.2.13(flag=9) 10.0.8.6(flag=1) 10.0.8.10
   25 Oct  7 10:36:59.175 Fast-reroute Detour Up
   24 Oct  7 10:36:08.265 Record Route:  10.0.4.13(flag=9) 10.0.2.13(flag=9) 10.0.8.6(flag=1) 10.0.8.10
   23 Oct  7 10:36:08.229 Record Route:  10.0.4.13(flag=9) 10.0.2.13(flag=9) 10.0.8.6 10.0.8.10
   22 Oct  7 10:36:08.158 Record Route:  10.0.4.13(flag=9) 10.0.2.13 10.0.8.6 10.0.8.10
   21 Oct  7 10:36:05.193 Record Route:  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
   20 Oct  7 10:36:05.193 Up
   19 Oct  7 10:36:05.138 Originate make-before-break call
   18 Oct  7 10:36:05.138 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
   17 Oct  7 10:33:28.164 Record Route:  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
   16 Oct  7 10:33:28.164 Up
   15 Oct  7 10:33:28.096 Originate make-before-break call
   14 Oct  7 10:33:28.096 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
   13 Oct  7 10:31:04.711 Selected as active path
   12 Oct  7 10:31:04.711 Record Route:  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
   11 Oct  7 10:31:04.710 Up
   10 Oct  7 10:31:04.623 Originate Call
    9 Oct  7 10:31:04.623 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    8 Oct  7 10:31:04.615 Clear Call
    7 Oct  7 10:31:04.613 Deselected as active
    6 Oct  7 10:22:39.241 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    5 Oct  7 10:01:04.814 Selected as active path
    4 Oct  7 10:01:04.814 Record Route:  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
    3 Oct  7 10:01:04.812 Up
    2 Oct  7 10:01:04.753 Originate Call
    1 Oct  7 10:01:04.753 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
  Created: Tue Oct  7 10:01:04 2008
Total 1 displayed, Up 1, Down 0

Detour Verification on R3:

enugadi@M7i# run show mpls lsp logical-router r3 extensive
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 2 sessions

10.0.9.7 <-- this is coming back from r6. Actually we will not use this detour.
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
---- snipped -----

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: 100064
  Resv style: 1 FF, Label in: 101008, Label out: 100064
  Time left:  123, Since: Tue Oct  7 10:36:05 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 4 receiver 30266 protocol 0
  FastReroute desired
  PATH rcvfrom: 10.0.4.14 (fe-1/3/1.1) 24 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.2.13 (fe-1/3/0.9) 21 pkts
  RESV rcvfrom: 10.0.2.13 (fe-1/3/0.9) 20 pkts
  Explct route: 10.0.2.13 10.0.8.6 10.0.8.10
  Record route: 10.0.4.14 <self> 10.0.2.13 10.0.8.6 10.0.8.10  
    Detour is Up
    Detour Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
    Detour adspec: received MTU 1500 sent MTU 1500
    Path MTU: received 1500
    Detour PATH sentto: 10.0.2.1 (fe-1/3/0.7) 19 pkts
    Detour RESV rcvfrom: 10.0.2.1 (fe-1/3/0.7) 18 pkts
    Detour Explct route: 10.0.2.1 10.0.8.10
    Detour Record route: 10.0.4.14 <self> 10.0.2.1 10.0.8.10  
    Detour Label out: 101344
Total 2 displayed, Up 2, Down 0

Detour verification on r5:

enugadi@M7i# run show mpls lsp logical-router r5 extensive
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 1 sessions, 1 detours

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: 101328, Recovery label sent: 3
  Resv style: 1 FF, Label in: 101328, Label out: 3
  Time left:  124, Since: Tue Oct  7 10:36:05 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 4 receiver 30266 protocol 0
  FastReroute desired
  PATH rcvfrom: 10.0.8.5 (fe-1/3/0.15) 29 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.8.10 (fe-1/3/0.16) 29 pkts
  RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 28 pkts
  Explct route: 10.0.8.10
  Record route: 10.0.4.14 10.0.2.14 10.0.8.5 <self> 10.0.8.10
    Detour is Up (r5 also create detour to protects link fail between r5 and r7)
    Detour Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
    Detour adspec: received MTU 1500 sent MTU 1500
    Path MTU: received 1500
    Detour PATH sentto: 10.0.2.10 (fe-1/3/1.8) 27 pkts
    Detour RESV rcvfrom: 10.0.2.10 (fe-1/3/1.8) 26 pkts
    Detour Explct route: 10.0.2.10 10.0.2.17
    Detour Record route: 10.0.4.14 10.0.2.14 10.0.8.5 <self> 10.0.2.10 10.0.2.17
    Detour Label out: 101440
  Detour branch from 10.0.2.2, to skip 10.0.9.6, Up
    Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
    Adspec: received MTU 1500
    Path MTU: received 0
    PATH rcvfrom: 10.0.2.2 (fe-1/3/1.7) 27 pkts
    Adspec: received MTU 1500
    PATH sentto: 10.0.8.10 (fe-1/3/0.16) 0 pkts
    RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 0 pkts
    Explct route: 10.0.8.10
    Record route: 10.0.4.14 10.0.2.2 <self> 10.0.8.10  
    Label in: 101344, Label out: 3
Total 1 displayed, Up 1, Down 0

Verify traffic flows on r1 before r6 down:

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  0.987 ms  0.929 ms  0.899 ms
     MPLS Label=101008 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.959 ms  0.965 ms  0.935 ms
     MPLS Label=100064 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.961 ms  0.988 ms  0.991 ms
     MPLS Label=101328 CoS=0 TTL=1 S=1
 4  10.0.9.7 (10.0.9.7)  0.925 ms  0.948 ms  0.910 ms
enugadi@M7i# run clear mpls lsp statistics logical-router r1 

[edit]
enugadi@M7i# run ping 10.0.9.7 logical-router r1 rapid count 1000
PING 10.0.9.7 (10.0.9.7): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --- snipped ----
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.920/1.047/11.014/0.971 ms

[edit]
enugadi@M7i# run show mpls lsp statistics logical-router r1
Ingress LSP: 1 sessions
To              From            State     Packets            Bytes LSPname
10.0.9.7        10.0.6.1        Up           1000            84000 r1-r7
Total 1 displayed, Up 1, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Lets make the router r6 down to simulate the FRR:

enugadi@M7i# deactivate logical-routers r6 

[edit]
enugadi@M7i# commit
commit complete

[edit]
enugadi@M7i# run ping 10.0.9.7 logical-router r1 rapid count 1000
PING 10.0.9.7 (10.0.9.7): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - snipped -
--- 10.0.9.7 ping statistics ---
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.894/1.062/43.530/1.653 ms

[edit]
enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  1.020 ms  0.939 ms  0.882 ms
     MPLS Label=101008 CoS=0 TTL=1 S=1
 2  10.0.2.1 (10.0.2.1)  0.938 ms  10.568 ms  0.955 ms
     MPLS Label=101344 CoS=0 TTL=1 S=1
 3  10.0.9.7 (10.0.9.7)  0.894 ms  0.928 ms  0.910 ms

Yes, traffics flow through r1-r3-r5-r7 as expected :)

enugadi@M7i# run clear mpls lsp statistics logical-router r1 

[edit]
enugadi@M7i# run ping 10.0.9.7 logical-router r1 rapid count 1000
PING 10.0.9.7 (10.0.9.7): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - snipped -
--- 10.0.9.7 ping statistics ---
1000 packets transmitted, 1000 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.893/1.012/10.561/0.960 ms

[edit]
enugadi@M7i# run show mpls lsp statistics logical-router r1
Ingress LSP: 1 sessions
To              From            State     Packets            Bytes LSPname
10.0.9.7        10.0.6.1        Up           1000            84000 r1-r7
Total 1 displayed, Up 1, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Lets look on the router r1:

(Traffic still flowing from r1 to r7 even r6 is down and CSPF computation fail detected on r1).

enugadi@M7i# run show mpls lsp logical-router r1 extensive
Ingress LSP: 1 sessions
  From: 10.0.6.1, State: Up, ActiveRoute: 1, LSPname: r1-r7
  ActivePath: aho (primary)
  FastReroute desired
  LoadBalance: Random
  Encoding type: Packet, Switching type: Packet, GPID: IPv4
 *Primary   aho              State: Up
    Bandwidth: 20Mbps
    SmartOptimizeTimer: 180
          Include Any: blue
    Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 400)
 10.0.4.13 S 10.0.2.13 S 10.0.8.6 S 10.0.8.10 S
    Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt):
          10.0.4.13(flag=0xb) 10.0.2.1 10.0.8.10
   34 Oct  7 11:10:27.571 CSPF failed: no route toward 10.0.9.7
   33 Oct  7 11:10:27.570 CSPF: link down/deleted: 10.0.8.5(10.0.9.6:0)(10.0.9.6)->0.0.0.0(10.0.8.6:0)(10.0.8.6)
   32 Oct  7 11:10:26.755 CSPF failed: no route toward 10.0.9.7[18 times]
   31 Oct  7 11:00:39.256 CSPF: link down/deleted: 0.0.0.0(10.0.8.6:0)(10.0.8.6)->0.0.0.0(10.0.3.5:0)(10.0.3.5)
   30 Oct  7 11:00:39.015 CSPF: link down/deleted: 0.0.0.0(10.0.2.14:0)(10.0.2.14)->0.0.0.0(10.0.9.6:0)(10.0.9.6)
- sniped -

Lets look more inside the router r3:

enugadi@M7i# run show mpls lsp logical-router r3 extensive
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 2 sessions

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: -
  Resv style: 0 -, Label in: 101008, Label out: -
  Time left:  151, Since: Tue Oct  7 10:36:05 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 4 receiver 30266 protocol 0
  FastReroute desired
  PATH rcvfrom: 10.0.4.14 (fe-1/3/1.1) 47 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.2.13 (fe-1/3/0.9) 44 pkts
  Explct route: 10.0.2.13 10.0.8.6 10.0.8.10 
  Record route: 10.0.4.14 <self> ...incomplete
    Detour is Up
    Detour Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
    Detour adspec: received MTU 1500 sent MTU 1500
    Path MTU: received 1500
    Detour PATH sentto: 10.0.2.1 (fe-1/3/0.7) 42 pkts
    Detour RESV rcvfrom: 10.0.2.1 (fe-1/3/0.7) 39 pkts
    Detour Explct route: 10.0.2.1 10.0.8.10 
    Detour Record route: 10.0.4.14 <self> 10.0.2.1 10.0.8.10  
    Detour Label out: 101344

10.0.9.7
  From: 10.0.6.1, LSPstate: Dn, ActiveRoute: 0
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: -
  Resv style: 0 -, Label in: -, Label out: -
  Time left:  151, Since: Tue Oct  7 11:00:28 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 5 receiver 30266 protocol 0
  FastReroute desired
  PATH rcvfrom: 10.0.4.14 (fe-1/3/1.1) 3 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.2.13 (fe-1/3/0.9) 3 pkts
  Explct route: 10.0.2.13 10.0.8.6 10.0.8.10
  Record route: 10.0.4.14 <self> ...incomplete
Total 2 displayed, Up 1, Down 1

And r5:

(Since the primary LSP is down, so the detour of r5-r4-r7 is removed).

enugadi@M7i# run show mpls lsp logical-router r5 extensive
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 1 sessions

10.0.9.7
From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
LSPname: r1-r7, LSPpath: Primary
Suggested label received: -, Suggested label sent: -
Recovery label received: 101344, Recovery label sent: -
Resv style: 1 FF, Label in: 101344, Label out: 3
Time left:  155, Since: Tue Oct  7 10:36:08 2008
Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
Port number: sender 4 receiver 30266 protocol 0
Detour branch from 10.0.2.2, to skip 10.0.9.6, Up
Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
Adspec: received MTU 1500
Path MTU: received 0
PATH rcvfrom: 10.0.2.2 (fe-1/3/1.7) 48 pkts
Adspec: received MTU 1500 sent MTU 1500
PATH sentto: 10.0.8.10 (fe-1/3/0.16) 9 pkts
RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 9 pkts
Explct route: 10.0.8.10
Record route: 10.0.4.14 10.0.2.2 <self> 10.0.8.10
Label in: 101344, Label out: 3
Total 1 displayed, Up 1, Down 0

As expected: FRR able to protect the LSP from r1 to r7.

Activate router r6 to make sure that the traffics will flowing back through r6:

enugadi@M7i# activate logical-routers r6 

[edit]
enugadi@M7i# commit
commit complete
enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  0.996 ms  0.950 ms  0.878 ms
     MPLS Label=101040 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.938 ms  0.982 ms  0.949 ms
     MPLS Label=100000 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.972 ms  0.984 ms  0.985 ms
     MPLS Label=101360 CoS=0 TTL=1 S=1
 4  10.0.9.7 (10.0.9.7)  0.920 ms  0.946 ms  0.929 ms

IP packet flowing back through r6 (10.0.2.13) as expected.

2. Link Protection

In this scenario, I will configure the link protection to guard link between router r5 to r7. When the link on routers r5 and r7 down, traffic will flow through router r4. This test is bit different with FRR test. FRR able to do Node protection, so when protected node going down (in this case is r6), FRR will able to reroute the traffics through another router (r5).

I will not configure link protection to interface between router r3 and r6. The reason is link protection only protect link failure, and so all packets being protected will still flow through router r6. If I protect the link between r3 and r6, and this interface is down, the new path setup is r1-r3-r5-r6-r5-r7. It is not nice in the real network :)

Below is the configuration on r1:

enugadi@M7i# set logical-routers r1 protocols mpls label-switched-path r1-r7 link-protection    

[edit]
enugadi@M7i# delete logical-routers r1 protocols mpls label-switched-path r1-r7 fast-reroute    

[edit]
enugadi@M7i# commit
commit complete

enugadi@M7i# show logical-routers r1 protocols mpls label-switched-path r1-r7
to 10.0.9.7;
bandwidth 20m;
link-protection;
primary aho {
    admin-group include-any blue;
}

Below is the configuration on r5:

enugadi@M7i# show interfaces fe-1/3/0.16
description r5-r7;
vlan-id 16;
family inet {
    address 10.0.8.9/30;
}
family mpls;

[edit logical-routers r5]
enugadi@M7i# set protocols rsvp interface fe-1/3/0.16 link-protection 

enugadi@M7i# show protocols rsvp
interface fe-1/3/0.15 {
    authentication-key "$9$9zdTt0ILX-Vwg"; ## SECRET-DATA
    aggregate;
}
interface fe-1/3/0.16 {
    link-protection;
}
interface fe-1/3/1.7;
interface fe-1/3/1.8;

Verification on r1:

enugadi@M7i# run show mpls lsp logical-router r1 extensive
Ingress LSP: 1 sessions

10.0.9.7
  From: 10.0.6.1, State: Up, ActiveRoute: 1, LSPname: r1-r7
  ActivePath: aho (primary)
  Link protection desired
  LoadBalance: Random
  Encoding type: Packet, Switching type: Packet, GPID: IPv4
 *Primary   aho              State: Up
    Bandwidth: 20Mbps
    SmartOptimizeTimer: 180
          Include Any: blue
    Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 400)
 10.0.4.13 S 10.0.2.13 S 10.0.8.6 S 10.0.8.10 S
    Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt):
          10.0.4.13(Label=101088) 10.0.2.13(Label=100032) 10.0.8.6(Label=101408) 10.0.8.10(Label=3)
    5 Oct  7 11:24:51.248 Selected as active path
    4 Oct  7 11:24:51.248 Record Route:  10.0.4.13(Label=101088) 10.0.2.13(Label=100032) 10.0.8.6(Label=101408) 10.0.8.10(Label=3)
    3 Oct  7 11:24:51.248 Up
    2 Oct  7 11:24:51.187 Originate Call
    1 Oct  7 11:24:51.187 CSPF: computation result accepted  10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
  Created: Tue Oct  7 11:24:51 2008
Total 1 displayed, Up 1, Down 0

Verification on r5:

Bypass LSP is generated by R5 to protect the link failed between r5 and r7.

enugadi@M7i# run show rsvp session logical-router r5
Ingress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       0  1 SE       -   101552 Bypass->10.0.8.10
Total 1 displayed, Up 1, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       1  1 SE  101408        3 r1-r7
Total 1 displayed, Up 1, Down 0
enugadi@M7i# run show rsvp session logical-router r5 detail
Ingress RSVP: 1 sessions

10.0.9.7
  From: 10.0.3.5, LSPstate: Up, ActiveRoute: 0
  LSPname: Bypass->10.0.8.10
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: 101552
  Resv style: 1 SE, Label in: -, Label out: 101552
  Time left:    -, Since: Tue Oct  7 11:29:30 2008
  Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
  Port number: sender 1 receiver 11567 protocol 0
  Type: Bypass LSP
    Number of data route tunnel through: 1
    Number of RSVP session tunnel through: 0
  PATH rcvfrom: localclient
  Adspec: sent MTU 1500
  Path MTU: received 1500
  PATH sentto: 10.0.2.10 (fe-1/3/1.8) 7 pkts
  RESV rcvfrom: 10.0.2.10 (fe-1/3/1.8) 7 pkts
  Explct route: 10.0.2.10 10.0.2.17 
  Record route: <self> 10.0.2.10 10.0.2.17
Total 1 displayed, Up 1, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: 101408, Recovery label sent: 3
  Resv style: 1 SE, Label in: 101408, Label out: 3
  Time left:  121, Since: Tue Oct  7 11:24:51 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 1 receiver 30282 protocol 0
  Link protection desired
  Type: Link protected LSP
  PATH rcvfrom: 10.0.8.5 (fe-1/3/0.15) 15 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.8.10 (fe-1/3/0.16) 17 pkts
  RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 16 pkts
  Explct route: 10.0.8.10
  Record route: 10.0.4.14 10.0.2.14 10.0.8.5 <self> 10.0.8.10
Total 1 displayed, Up 1, Down 0

[edit logical-routers r5]
enugadi@M7i# run show mpls lsp logical-router r5 extensive
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit LSP: 1 sessions

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: 101408, Recovery label sent: 3
  Resv style: 1 SE, Label in: 101408, Label out: 3
  Time left:  148, Since: Tue Oct  7 11:24:51 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 1 receiver 30282 protocol 0
  Link protection desired
  Type: Link protected LSP, using Bypass->10.0.8.10
      3 Oct  7 11:29:36 Link protection up, using Bypass->10.0.8.10
      2 Oct  7 11:29:30 New bypass Bypass->10.0.8.10
      1 Oct  7 11:28:45 Link protection disabled on outbound interface[8 times]
  PATH rcvfrom: 10.0.8.5 (fe-1/3/0.15) 11 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.8.10 (fe-1/3/0.16) 13 pkts
  RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 12 pkts
  Explct route: 10.0.8.10
  Record route: 10.0.4.14 10.0.2.14 10.0.8.5 <self> 10.0.8.10
Total 1 displayed, Up 1, Down 0

Verify BYPASS LSP on r4 and r7:

(BYPASS LSP should be in UP state in both of r4 and r7)

enugadi@M7i# run show rsvp session logical-router r4 transit
Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       1  1 SE  101552        3 Bypass->10.0.8.10
Total 1 displayed, Up 1, Down 0

[edit logical-routers r5]
enugadi@M7i# run show rsvp session logical-router r4 transit extensive
Transit RSVP: 1 sessions

10.0.9.7
  From: 10.0.3.5, LSPstate: Up, ActiveRoute: 1
  LSPname: Bypass->10.0.8.10
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: 3
  Resv style: 1 SE, Label in: 101552, Label out: 3 (As expected)
  Time left:  124, Since: Tue Oct  7 11:29:30 2008
  Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
  Port number: sender 1 receiver 11567 protocol 0
  PATH rcvfrom: 10.0.2.9 (fe-1/3/0.8) 11 pkts
  Adspec: received MTU 1500 sent MTU 1500
  PATH sentto: 10.0.2.17 (fe-1/3/0.10) 11 pkts
  RESV rcvfrom: 10.0.2.17 (fe-1/3/0.10) 11 pkts
  Explct route: 10.0.2.17
  Record route: 10.0.2.9 <self> 10.0.2.17  
Total 1 displayed, Up 1, Down 0
enugadi@M7i# run show mpls lsp logical-router r7
Ingress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress LSP: 2 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       0  1 SE       3        - Bypass->10.0.8.10
10.0.9.7        10.0.6.1        Up       0  1 SE       3        - r1-r7
Total 2 displayed, Up 2, Down 0

Verify ICMP packet on r1 before we deactivate interface between r5 to r7:

(traffic flows should be through r6 – 10.0.8.6)

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  1.002 ms  0.930 ms  0.874 ms
     MPLS Label=101088 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.955 ms  0.960 ms  0.924 ms
     MPLS Label=100032 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.961 ms  0.984 ms  0.947 ms
     MPLS Label=101408 CoS=0 TTL=1 S=1
 4  10.0.9.7 (10.0.9.7)  3.708 ms  0.959 ms  0.935 ms

Let’s deactivate interface between r5 and r7:

[edit logical-routers r5]
enugadi@M7i# deactivate interfaces fe-1/3/0.16  

[edit logical-routers r5]
enugadi@M7i# show interfaces fe-1/3/0.16
##
## inactive: logical-routers r5 interfaces fe-1/3/0 unit 16
##
description r5-r7;
vlan-id 16;
family inet {
    address 10.0.8.9/30;
}
family mpls;

[edit logical-routers r5]
enugadi@M7i# commit
commit complete

Verify ICMP packet flow:

(ICMP packet must be flow through r4 – 10.0.2.10)

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  1.022 ms  0.925 ms  0.870 ms
     MPLS Label=101088 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.970 ms  0.962 ms  0.941 ms
     MPLS Label=100032 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.961 ms  0.982 ms  0.942 ms
     MPLS Label=101408 CoS=0 TTL=1 S=1
 4  10.0.2.10 (10.0.2.10)  0.973 ms  0.977 ms  0.937 ms
     MPLS Label=101552 CoS=0 TTL=1 S=1
 5  10.0.9.7 (10.0.9.7)  0.921 ms  0.947 ms  0.903 ms

enugadi@M7i# run ping 10.0.9.7 logical-router r1 rapid count 1000
PING 10.0.9.7 (10.0.9.7): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - snipped -
552 packets transmitted, 551 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.920/1.123/43.969/2.079 ms

Yes, Its working as expected :)

Lets look on ingress router r1:

enugadi@M7i# run show rsvp session logical-router r1 extensive
Ingress RSVP: 1 sessions

10.0.9.7
  From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
  LSPname: r1-r7, LSPpath: Primary
  Suggested label received: -, Suggested label sent: -
  Recovery label received: -, Recovery label sent: 101088
  Resv style: 1 SE, Label in: -, Label out: 101088
  Time left:    -, Since: Tue Oct  7 11:24:51 2008
  Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
  Port number: sender 1 receiver 30282 protocol 0
  Link protection desired
  Type: Protection down
      1 Oct  7 11:45:08 Link protection disabled on outbound interface[36 times]
  PATH rcvfrom: localclient
  Adspec: sent MTU 1500
  Path MTU: received 1500
  PATH sentto: 10.0.4.13 (fe-1/3/0.1) 34 pkts
  RESV rcvfrom: 10.0.4.13 (fe-1/3/0.1) 35 pkts
  Explct route: 10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
  Record route: <self> 10.0.4.13 10.0.2.13 10.0.8.6 10.0.2.17  
Total 1 displayed, Up 1, Down 0

Lets look on egress router r7:

enugadi@M7i# run show rsvp session logical-router r7
Ingress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress RSVP: 3 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       0  1 SE       3        - Bypass->10.0.8.10
10.0.9.7        10.0.2.9        Up       0  1 SE       3        - r1-r7
10.0.9.7        10.0.6.1        Up       0  1 SE       3        - r1-r7
Total 3 displayed, Up 3, Down 0

Lets look what does happened on r5:

(Ingress LSP for BYPASS LSP is up, but transit lsp is down, it is as expected).

enugadi@M7i# run show rsvp session logical-router r5
Ingress RSVP: 2 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       1  1 SE       -   101552 Bypass->10.0.8.10
10.0.9.7        10.0.2.9        Up       0  1 SE       -        3 r1-r7
Total 2 displayed, Up 2, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Dn       0  0  -  101408        - r1-r7
Total 1 displayed, Up 0, Down 1

Lets activate the interface between r5 and r7 again and see the packet will flow back to primary LSP:

enugadi@M7i# activate interfaces fe-1/3/0.16 

[edit logical-routers r5]
enugadi@M7i# show interfaces fe-1/3/0.16
description r5-r7;
vlan-id 16;
family inet {
    address 10.0.8.9/30;
}
family mpls;

[edit logical-routers r5]
enugadi@M7i# commit
commit complete

ICMP packet flow back to previous path – 10.0.8.6 :

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
 1  10.0.4.13 (10.0.4.13)  0.992 ms  0.935 ms  0.876 ms
     MPLS Label=101104 CoS=0 TTL=1 S=1
 2  10.0.2.13 (10.0.2.13)  0.937 ms  0.986 ms  0.942 ms
     MPLS Label=100048 CoS=0 TTL=1 S=1
 3  10.0.8.6 (10.0.8.6)  0.955 ms  0.991 ms  0.941 ms
     MPLS Label=101424 CoS=0 TTL=1 S=1
 4  10.0.9.7 (10.0.9.7)  0.904 ms  0.926 ms  0.886 ms

The transit LSP on r5 is in UP state again

enugadi@M7i# run show rsvp session logical-router r5
Ingress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.3.5        Up       0  1 SE       -   101568 Bypass->10.0.8.10
Total 1 displayed, Up 1, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       0  1 SE  101424        3 r1-r7

Base on this experiment, Link-protection able to protect the LSP from faulty interface.

3. Node Link protection

Node link protection is extended version for link protection :)

Node link protect able to protect node failure as FRR can do that. The different to FRR is, Node link protection do “One to many protection” while FRR do “one to one protection.

In this test I will do same scenario as FRR. r3 will protect LSP r1-r7 and so any errors on r6 will not impact to the traffic since the LSP will tranverse through r5.

Below is the configuration on r1:

enugadi@M7i# delete logical-routers r1 protocols mpls label-switched-path r1-r7 link-protection

[edit]
enugadi@M7i# set logical-routers r1 protocols mpls label-switched-path r1-r7 node-link-protection

[edit]
enugadi@M7i# commit
commit complete

configure RSVP link protection on r3 (interface between r3 and r6):

enugadi@M7i# show logical-routers r3 interfaces fe-1/3/0.9
description r3-r6;
vlan-id 9;
family inet {
address 10.0.2.14/30;
}
family mpls;

[edit]
enugadi@M7i# set logical-routers r3 protocols rsvp interface fe-1/3/0.0 link-protection

[edit]
enugadi@M7i# show logical-routers r3 protocols rsvp
interface fe-1/3/0.4;
interface fe-1/3/0.6;
interface fe-1/3/0.7;
interface fe-1/3/0.9 {
link-protection;
}
interface fe-1/3/1.1;
interface fe-1/3/0.0;

[edit]
enugadi@M7i# commit
commit complete

Node-link-protection verification on r1:

enugadi@M7i# run show rsvp session ingress logical-router r1
Ingress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       1  1 SE       -   101152 r1-r7
Total 1 displayed, Up 1, Down 0

enugadi@M7i# run show rsvp session ingress logical-router r1 extensive
Ingress RSVP: 1 sessions

10.0.9.7
From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
LSPname: r1-r7, LSPpath: Primary
Suggested label received: -, Suggested label sent: -
Recovery label received: -, Recovery label sent: 101152
Resv style: 1 SE, Label in: -, Label out: 101152
Time left:    -, Since: Tue Oct  7 12:13:30 2008
Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
Port number: sender 1 receiver 30302 protocol 0
Node/Link protection desired
Type: Protection down
1 Oct  7 12:16:45 Link protection disabled on outbound interface[9 times]
PATH rcvfrom: localclient
Adspec: sent MTU 1500
Path MTU: received 1500
PATH sentto: 10.0.4.13 (fe-1/3/0.1) 8 pkts
RESV rcvfrom: 10.0.4.13 (fe-1/3/0.1) 8 pkts
Explct route: 10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
Record route: <self> 10.0.4.13 10.0.2.13 10.0.8.6 10.0.8.10
Total 1 displayed, Up 1, Down 0

Node-link-protection verification on r3:

enugadi@M7i# run show rsvp session logical-router r3
Ingress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.3.5        10.0.3.3        Up       0  1 SE       -        3 Bypass->10.0.2.13->10.0.8.6
Total 1 displayed, Up 1, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       0  1 SE  101152   100016 r1-r7
Total 1 displayed, Up 1, Down 0

enugadi@M7i# run show rsvp session logical-router r3 extensive
Ingress RSVP: 1 sessions

10.0.3.5
From: 10.0.3.3, LSPstate: Up, ActiveRoute: 0
LSPname: Bypass->10.0.2.13->10.0.8.6
Suggested label received: -, Suggested label sent: -
Recovery label received: -, Recovery label sent: 3
Resv style: 1 SE, Label in: -, Label out: 3
Time left:    -, Since: Tue Oct  7 12:13:32 2008
Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
Port number: sender 1 receiver 38542 protocol 0
Type: Bypass LSP
Number of data route tunnel through: 1
Number of RSVP session tunnel through: 0
PATH rcvfrom: localclient
Adspec: sent MTU 1500
Path MTU: received 1500
PATH sentto: 10.0.2.1 (fe-1/3/0.7) 8 pkts
RESV rcvfrom: 10.0.2.1 (fe-1/3/0.7) 8 pkts
Explct route: 10.0.2.1
Record route: <self> 10.0.2.1
Total 1 displayed, Up 1, Down 0

Egress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Transit RSVP: 1 sessions

10.0.9.7
From: 10.0.6.1, LSPstate: Up, ActiveRoute: 0
LSPname: r1-r7, LSPpath: Primary
Suggested label received: -, Suggested label sent: -
Recovery label received: -, Recovery label sent: 100016
Resv style: 1 SE, Label in: 101152, Label out: 100016
Time left:  135, Since: Tue Oct  7 12:13:30 2008
Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
Port number: sender 1 receiver 30302 protocol 0
Node/Link protection desired
Type: Node/Link protected LSP, using Bypass->10.0.2.13->10.0.8.6
2 Oct  7 12:13:33 Node protection up, using Bypass->10.0.2.13->10.0.8.6
1 Oct  7 12:13:30 New bypass Bypass->10.0.2.13->10.0.8.6
PATH rcvfrom: 10.0.4.14 (fe-1/3/1.1) 9 pkts
Adspec: received MTU 1500 sent MTU 1500
PATH sentto: 10.0.2.13 (fe-1/3/0.9) 12 pkts
RESV rcvfrom: 10.0.2.13 (fe-1/3/0.9) 8 pkts
Explct route: 10.0.2.13 10.0.8.6 10.0.8.10
Record route: 10.0.4.14 <self> 10.0.2.13 10.0.8.6 10.0.8.10
Total 1 displayed, Up 1, Down 0

LSP verification on r6:

enugadi@M7i# run show rsvp session logical-router r6 transit
Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       1  1 SE  100016   101520 r1-r7
Total 1 displayed, Up 1, Down 0

Node-link-protection verification on router r5:

enugadi@M7i# run show rsvp session logical-router r5
Ingress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.3.5        10.0.3.3        Up       0  1 SE       3        – Bypass->10.0.2.13->10.0.8.6
Total 1 displayed, Up 1, Down 0

Transit RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       1  1 SE  101520        3 r1-r7
Total 1 displayed, Up 1, Down 0

enugadi@M7i# run show rsvp session logical-router r5 extensive
Ingress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress RSVP: 1 sessions

10.0.3.5
From: 10.0.3.3, LSPstate: Up, ActiveRoute: 0
LSPname: Bypass->10.0.2.13->10.0.8.6
Suggested label received: -, Suggested label sent: -
Recovery label received: 3, Recovery label sent: -
Resv style: 1 SE, Label in: 3, Label out: -
Time left:  121, Since: Tue Oct  7 12:13:32 2008
Tspec: rate 0bps size 0bps peak Infbps m 20 M 1500
Port number: sender 1 receiver 38542 protocol 0
PATH rcvfrom: 10.0.2.2 (fe-1/3/1.7) 9 pkts
Adspec: received MTU 1500
PATH sentto: localclient
RESV rcvfrom: localclient
Record route: 10.0.2.2 <self>
Total 1 displayed, Up 1, Down 0

Transit RSVP: 1 sessions

10.0.9.7
From: 10.0.6.1, LSPstate: Up, ActiveRoute: 1
LSPname: r1-r7, LSPpath: Primary
Suggested label received: -, Suggested label sent: -
Recovery label received: 101520, Recovery label sent: 3
Resv style: 1 SE, Label in: 101520, Label out: 3
Time left:  119, Since: Tue Oct  7 12:13:30 2008
Tspec: rate 20Mbps size 20Mbps peak Infbps m 20 M 1500
Port number: sender 1 receiver 30302 protocol 0
Node/Link protection desired
Type: Protection down
1 Oct  7 12:18:07 Link protection disabled on outbound interface[9 times]
PATH rcvfrom: 10.0.8.5 (fe-1/3/0.15) 10 pkts
Adspec: received MTU 1500 sent MTU 1500
PATH sentto: 10.0.8.10 (fe-1/3/0.16) 10 pkts
RESV rcvfrom: 10.0.8.10 (fe-1/3/0.16) 10 pkts
Explct route: 10.0.8.10
Record route: 10.0.4.14 10.0.2.14 10.0.8.5 <self> 10.0.8.10
Total 1 displayed, Up 1, Down 0

Node-link-protection verification on r7:

enugadi@M7i# run show rsvp session logical-router r7
Ingress RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Egress RSVP: 1 sessions
To              From            State   Rt Style Labelin Labelout LSPname
10.0.9.7        10.0.6.1        Up       0  1 SE       3        – r1-r7
Total 1 displayed, Up 1, Down 0

Transit RSVP: 0 sessions
Total 0 displayed, Up 0, Down 0

Traffic verification on r1 before deactivate router r6:

(traffic must flow through r6 – 10.0.2.13)

enugadi@M7i# run traceroute 10.0.9.7 logical-router r1
traceroute to 10.0.9.7 (10.0.9.7), 30 hops max, 40 byte packets
1  10.0.4.13 (10.0.4.13)  0.988 ms  1.061 ms  0.885 ms
MPLS Label=101152 CoS=0 TTL=1 S=1
2  10.0.2.13 (10.0.2.13)  0.933 ms  0.984 ms  0.921 ms
MPLS Label=100016 CoS=0 TTL=1 S=1
3  10.0.8.6 (10.0.8.6)  0.954 ms  0.978 ms  0.949 ms
MPLS Label=101520 CoS=0 TTL=1 S=1
4  10.0.9.7 (10.0.9.7)  0.902 ms  0.929 ms  0.898 ms

Deactivate router r6:

To be continued…… I’m sleepy :(

October 6, 2008

Google’s Translator for Indonesia Language

Filed under: Sharing — adisubrata @ 4:46 PM

Google has recognized their translator for Indonesia language (BAHASA). Now, their translator is available to translate many languages to Indonesia.

Below is the sample that you can find at URL http://translate.google.com/

English:

“I saw an opportunity in the service side,” Wahlers says of the asset purchases and the creation of his new company. “I still saw an important role that Vidiom could play in contributing to the ecosystem of interactive TV, particularly in the cable market.”

Although some may view development tools and training as the “butt-end” of the iTV business, “it’s something that we’ve embraced and chased because we thought it was so critical,” notes Wahlers, who founded Vidiom with Walden Miller in 1997.

Indonesia:

“Saya melihat sebuah kesempatan di samping layanan,” ujar Wahlers dari pembelian aset dan penciptaan dari perusahaan baru. “Saya masih melihat peran penting yang dapat memutar Vidiom dalam menyumbang kepada ekosistem interaktif TV, khususnya di pasar kabel.”

Walaupun beberapa dapat melihat pembangunan peralatan dan pelatihan sebagai “memotong-akhir” dari ITV bisnis, adalah sesuatu yang kita telah merasa istilah dan menampilkan karena itu kami sangat kritis, “Wahlers catatan, yang didirikan dengan Vidiom Walden Miller pada tahun 1997 .

Blog at WordPress.com.