Guys (and Gals),
I came across this scenario in a mock lab. Three routers sharing a single
subnet (10.123.123.0/24) frame relay network:
- A, B, C where A is the hub site with a single multi-point
sub-interface
- B/C as spokes with single point-to-point sub-interfaces with PVCs to A
- All are running OSPF (Non-broadcast, A is the DR) and MPLS LDP
- Loopbacks are A (1.1.1.1/32), B (2.2.2.2/24) and C (3.3.3.3/32) and
advertised in OSPF with the correct mask
- Targeted LDP session built between B and C
The issue I can't wrap my head around is how B and C know there is are
incomplete MPLS-VPN LSPs between them. I *believe* this is a sanity check
function of MPLS forwarding on the router but looking for a confirmation.
From the perspective of B as the ingress LSR to C as the egress LSR:
B is learning the loopback of C (3.3.3.3/32) with the next-hop unchanged so
it appears directly connected:
B#show ip cef 3.3.3.3
3.3.3.3/32, version 28, epoch 0, cached adjacency to Serial0/0.1
0 packets, 0 bytes
tag information set
local tag: 17
via 10.123.123.3, Serial0/0.1, 0 dependencies
next hop 10.123.123.3, Serial0/0.1
valid cached adjacency
tag rewrite with Se0/0.1, point2point, tags imposed: {}
In B's LIB, B is being told to pop the IGP label prior to forwarding to C
which would be correct if they were directly connected:
B#show mpls ldp bindings 3.3.3.3 32
tib entry: 3.3.3.3/32, rev 6
local binding: tag: 17
remote binding: tsr: 1.1.1.1:0, tag: 17
remote binding: tsr: 3.3.3.3:0, tag: imp-null
However, in the LFIB, B is removing the label stack completely:
B#show mpls forwarding-table 3.3.3.3
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
17 Untagged 3.3.3.3/32 0 Se0/0.1 point2point
From a layer 3 perspective, routers B and C appear to be directly connected.
But from a layer 2 perspective, there is actually 2 hops from B to C through
the frame-relay network and hub router A.
Based on the LIB, if B was to attempt to forward an MPLS-VPN labeled packet
to C, B would:
1. Pop the top (IGP) label
2. Forward the frame out it's serial interface toward A
3. A would receive the labeled packet, attempt to do a lookup on the
MPLS-VPN label (now top label w/ BoS bit set) and drop the packet
To prevent the above scenario from occurring, does B place an entry in the
LFIB to completely remove the stack since it knows the LSP is incomplete?
Thanks for the help,
Steve
Blogs and organic groups at http://www.ccie.net
Received on Mon Jan 18 2010 - 11:48:18 ART
This archive was generated by hypermail 2.2.0 : Thu Feb 04 2010 - 20:28:41 ART