Information Technology Reference
In-Depth Information
IGP entries and tunnel interfaces created from MPLS TE tunnel configurations feed the
LFIB. Labels for the FIB routes are provided from the LIB, which is created from informa-
tion exchanged via LDP and TDP. Labels for TE tunnels are handled separately by the TE
module. To encode label encapsulation, a label rewrite table is created.
As with the FIB, load sharing is also supported within the LFIB. A load-sharing structure
is used to keep track of loads on available links. Because the load sharing is linked between
the FIB and the LFIB, it is possible to have load sharing among links that are labeled and
unlabeled. Table 10-5 provided an example of load sharing between a pair of label-switched
paths. When multiple paths to the same destination exist, multiple label rewrite entries
might be available.
When an IP packet is received, the FIB is consulted to determine its next hop. If the next-
hop information indicates that it is to be switched untagged, conventional CEF switching is
used to forward the packet. If the packet is to be switched labeled, the FIB uses the label
rewrite to prepare the label stack encapsulation. The label load-sharing structure is consult-
ed if multiple labeled paths to the destination exist. During the IP-to-label imposition, the
IP Precedence field value is copied to the label EXP field in all label entries that are pushed
onto the packet.
When a labeled packet is received, the in label is used as the lookup key. If the packet is to
be switched labeled, appropriate label rewrite entries are used to push the label stack. During
the label-to-label imposition, the EXP field value is copied to the EXP field in the swapped
label entry and all the label entries that pushed onto the packet. If the packet is to be deliv-
ered untagged, the label stack is popped.
Special handling is required when the label is Implicit Null or Explicit Null. When an
Implicit Null label is received via the signaling path, the penultimate hop LSR pops the top
label during packet forwarding. This is called penultimate hop popping (PHP). It's the
default behavior in IOS software for frame-based links. The purpose of PHP is to save one
lookup on the ultimate hop and thus offload some of the processing burden on the LER.
When the out label is Explicit Null, the top label is swapped with the Explicit Null label.
Upon receiving a packet labeled with Explicit Null, the ultimate hop or egress LER pops
the label and forwards the packet based on the information below the label. TTL processing
takes place before the label is popped. EXP bits are saved for QoS processing. The stack bit
is checked to determine if there are more labels underneath. The Explicit Null can be used
to retain EXP values up to the ultimate hop; with Implicit Null, the value of EXP in the top
label would be lost.
Building MPLS VPN Architectures
With MPLS and multiprotocol extension for BGP in place, the foundation is set for MPLS
VPN. Although you can build VPN services over an MPLS infrastructure in several ways,
this chapter is concerned with Layer 3 VPNs.
Search WWH ::




Custom Search