|<---Area 1---->|<--------------Area 0------------->|<----Area 2---->| +----+ /-----| R3 |-----\ / +----+ \ / \ +----+ +----+/ \+----+ +----+ | R1 |-----------| R2 | | R5 |----------| R6 | +----+ +----+\ /+----+ +----+ \ / \ +----+ / \-----| R4 |-----/ +----+ |<----------FA LSP-------------->| |<---------------------------E2E LSP--------------------------->| With respect to above diagram, End to End (E2E) LSP is from R1 to R6 while Forwarding Adjaceny (FA) LSP would be from R2 to R5. In this scneario, E2E LSP would be tunneled inside FA LSP, making use of all TE properties of FA-lSP. <<< AT THE END I HAVE PROVIDED COMPLETE CONFIGS OF R1, R2 and R5 >>> Below is the LSP status at R1, which is E2E LSP: ================================================= regress@unicron# run show mpls lsp extensive Ingress LSP: 1 sessions 6.6.6.6 From: 1.1.1.1, State: Up, ActiveRoute: 0, LSPname: r1-r6 <<<< Note the LSP Name ActivePath: via-te-lsp (primary) LSPtype: Static Configured LoadBalance: Random Encoding type: Packet, Switching type: Packet, GPID: IPv4 *Primary via-te-lsp State: Up Priorities: 7 0 SmartOptimizeTimer: 180 Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID): 110.0.0.2 20.1.1.2 120.0.0.2 regress@unicron# run show rsvp session Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF - 299936 r1-r6 Total 1 displayed, Up 1, Down 0 Similary the LSP on R2 which would be r2-r5-FA: =============================================== regress@ddt# run show mpls lsp extensive Ingress LSP: 1 sessions 5.5.5.5 From: 2.2.2.2, State: Up, ActiveRoute: 0, LSPname: r2-r5-FA <<<< Note the LSP Name ActivePath: (primary) FastReroute desired LSPtype: Static Configured LoadBalance: Random Encoding type: Packet, Switching type: Packet, GPID: IPv4 *Primary State: Up Priorities: 7 0 SmartOptimizeTimer: 180 Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 2) 10.8.1.2 S 10.8.3.2 S Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID): 10.8.1.2(flag=1) 10.8.3.2 regress@ddt# run show rsvp session transit name r1-r6 Transit RSVP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF 299936 299856 r1-r6 Total 1 displayed, Up 1, Down 0 [edit] regress@ddt# run show rsvp session ingress name r2-r5-FA Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 5.5.5.5 2.2.2.2 Up 0 1 FF - 299808 r2-r5-FA Total 1 displayed, Up 1, Down 0 On R2, we can vefiry the tunneling of LSP "r1-r6" over FA-lSP "r2-r5-FA" ======================================================================== regress@ddt# run show link-management te-link name TE-LINK-1 TE link name: TE-LINK-1, State: Up Local identifier: 26182, Remote identifier: 0, Local address: 20.1.1.1, Remote address: 20.1.1.2, Encoding: Packet, Switching: Packet, Minimum bandwidth: 0bps, Maximum bandwidth: 0bps, Total bandwidth: 0bps, Available bandwidth: 0bps Name State Local ID Remote ID Bandwidth Used LSP-name r2-r5-FA Up 28262 0 0bps Yes r1-r6 <<<<<<< r1-r6 is the E2E LSP Let's examine the Data forwarding from R1 to R6 with the above output as reference =================================================================================== R1 will forward the packets mapped to the LSP with a label "299936" On R2, the label "299936" will be swapped with a "299856" (which is given by R5 for E2E LSP) and then pushes FA-LSP's label "299808" on the top. regress@ddt# run show route forwarding-table label 299936 Routing table: default.mpls MPLS: Destination Type RtRef Next hop Type Index NhRef Netif 299936 user 0 10.8.1.2 Swap 299856, Push 299808(top) 605 2 xe-4/0/1.0 On R3(which is the path the LSP has taken), it performs POP operation for label "299808" regress@murano# run show route forwarding-table label 299808 Routing table: default.mpls MPLS: Destination Type RtRef Next hop Type Index NhRef Netif 299808 user 0 10.8.3.2 Pop 760 2 ge-1/1/0.0 299808(S=0) user 0 10.8.3.2 Pop 761 2 ge-1/1/0.0 Since R3 has popped the top label, R5 would be forwarding based on the next label "299856" (which it had given for E2E LSP). Thus performs POP operation and forwards the data to R6 regress@deet# run show route forwarding-table label 299856 Routing table: default.mpls MPLS: Destination Type RtRef Next hop Type Index NhRef Netif 299856 user 0 120.0.0.2 Pop 585 2 ge-4/1/0.0 299856(S=0) user 0 120.0.0.2 Pop 586 2 ge-4/1/0.0 R1: === [edit] regress@unicron# show protocols rsvp { interface ge-1/0/1.0; } mpls { label-switched-path r1-r6 { to 6.6.6.6; no-cspf; primary via-te-lsp; } path via-te-lsp { 110.0.0.2; 20.1.1.2; 120.0.0.2; } interface ge-1/0/1.0; } ospf { traffic-engineering; area 0.0.0.1 { interface ge-1/0/1.0; interface lo0.0 { passive; } } } [edit] regress@unicron# run show mpls lsp Ingress LSP: 1 sessions To From State Rt P ActivePath LSPname 6.6.6.6 1.1.1.1 Up 0 * via-te-lsp r1-r6 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] regress@unicron# run show rsvp session Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF - 299936 r1-r6 Total 1 displayed, Up 1, Down 0 Egress RSVP: 0 sessions Total 0 displayed, Up 0, Down 0 Transit RSVP: 0 sessions Total 0 displayed, Up 0, Down 0 R2: === [edit] regress@ddt# show protocols rsvp { interface ge-7/2/0.0; interface xe-4/0/1.0; interface ge-6/2/1.0; peer-interface PEER-DEET; } mpls { label-switched-path r2-r5-FA { to 5.5.5.5; fast-reroute; } interface ge-7/2/0.0; interface xe-4/0/1.0; interface ge-6/2/1.0; } ospf { traffic-engineering; area 0.0.0.1 { interface ge-7/2/0.0; } area 0.0.0.0 { interface xe-4/0/1.0; interface ge-6/2/1.0; interface lo0.0 { passive; } peer-interface PEER-DEET; } } link-management { te-link TE-LINK-1 { local-address 20.1.1.1; remote-address 20.1.1.2; label-switched-path r2-r5-FA; } peer PEER-DEET { address 5.5.5.5; te-link TE-LINK-1; } } [edit] regress@ddt# run show mpls lsp Ingress LSP: 1 sessions To From State Rt P ActivePath LSPname 5.5.5.5 2.2.2.2 Up 0 * r2-r5-FA Total 1 displayed, Up 1, Down 0 Egress LSP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 2.2.2.2 5.5.5.5 Up 0 1 FF 3 - r5-r2-FA Total 1 displayed, Up 1, Down 0 Transit LSP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF 299936 299856 r1-r6 Total 1 displayed, Up 1, Down 0 [edit] regress@ddt# run show rsvp session Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 5.5.5.5 2.2.2.2 Up 0 1 FF - 299808 r2-r5-FA Total 1 displayed, Up 1, Down 0 Egress RSVP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 2.2.2.2 5.5.5.5 Up 0 1 FF 3 - r5-r2-FA Total 1 displayed, Up 1, Down 0 Transit RSVP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF 299936 299856 r1-r6 Total 1 displayed, Up 1, Down 0 [edit] regress@ddt# R3: === [edit] regress@murano# show protocols rsvp { interface xe-3/1/0.0; interface ge-1/1/0.0; } mpls { interface xe-3/1/0.0; interface ge-1/1/0.0; } ospf { traffic-engineering; area 0.0.0.0 { interface xe-3/1/0.0; interface lo0.0 { passive; } interface ge-1/1/0.0; } } [edit] regress@murano# run show mpls lsp logical-system sys1 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 To From State Rt Style Labelin Labelout LSPname 2.2.2.2 5.5.5.5 Up 1 1 FF 299824 3 r5-r2-FA 5.5.5.5 2.2.2.2 Up 1 1 FF 299808 3 r2-r5-FA Total 2 displayed, Up 2, Down 0 [edit] regress@murano# run show rsvp session logical-system sys1 Ingress RSVP: 0 sessions Total 0 displayed, Up 0, Down 0 Egress RSVP: 0 sessions Total 0 displayed, Up 0, Down 0 Transit RSVP: 2 sessions To From State Rt Style Labelin Labelout LSPname 2.2.2.2 5.5.5.5 Up 1 1 FF 299824 3 r5-r2-FA 5.5.5.5 2.2.2.2 Up 1 1 FF 299808 3 r2-r5-FA Total 2 displayed, Up 2, Down 0 R5: === regress@deet# show protocols rsvp { interface ge-2/1/1.0; interface ge-5/0/1.0; interface ge-4/1/0.0; peer-interface PEER-DDT; } mpls { label-switched-path r5-r2-FA { to 2.2.2.2; fast-reroute; } interface ge-2/1/1.0; interface ge-5/0/1.0; interface ge-4/1/0.0; } ospf { traffic-engineering; area 0.0.0.0 { interface ge-2/1/1.0; interface lo0.0 { passive; } interface ge-5/0/1.0; peer-interface PEER-DDT; } area 0.0.0.2 { interface ge-4/1/0.0; } } link-management { te-link TE-LINK-2 { local-address 20.1.1.2; remote-address 20.1.1.1; label-switched-path r5-r2-FA; } peer PEER-DDT { address 3.3.3.3; te-link TE-LINK-2; } } [edit] regress@deet# run show mpls lsp Ingress LSP: 1 sessions To From State Rt P ActivePath LSPname 2.2.2.2 5.5.5.5 Up 0 * r5-r2-FA Total 1 displayed, Up 1, Down 0 Egress LSP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 5.5.5.5 2.2.2.2 Up 0 1 FF 3 - r2-r5-FA Total 1 displayed, Up 1, Down 0 Transit LSP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 1 1 FF 299856 3 r1-r6 Total 1 displayed, Up 1, Down 0 [edit] regress@deet# run show rsvp session Ingress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 2.2.2.2 5.5.5.5 Up 0 1 FF - 299824 r5-r2-FA Total 1 displayed, Up 1, Down 0 Egress RSVP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 5.5.5.5 2.2.2.2 Up 0 1 FF 3 - r2-r5-FA Total 1 displayed, Up 1, Down 0 Transit RSVP: 1 sessions, 1 detours To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 1 1 FF 299856 3 r1-r6 Total 1 displayed, Up 1, Down 0 R6: === regress@sammy# show protocols rsvp { interface ge-1/3/0.0; } mpls { interface ge-1/3/0.0; } ospf { traffic-engineering; area 0.0.0.2 { interface ge-1/3/0.0; interface lo0.0 { passive; } } } [edit] regress@sammy# run show mpls lsp Ingress LSP: 0 sessions Total 0 displayed, Up 0, Down 0 Egress LSP: 1 sessions To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF 3 - r1-r6 Total 1 displayed, Up 1, Down 0 Transit LSP: 0 sessions Total 0 displayed, Up 0, Down 0 [edit] regress@sammy# run show rsvp session Ingress RSVP: 0 sessions Total 0 displayed, Up 0, Down 0 Egress RSVP: 1 sessions To From State Rt Style Labelin Labelout LSPname 6.6.6.6 1.1.1.1 Up 0 1 FF 3 - r1-r6 Total 1 displayed, Up 1, Down 0 Transit RSVP: 0 sessions Total 0 displayed, Up 0, Down 0