is a special case that uses fixed-length cells, and a label cannot be added inside the cells because the cell length would exceed the fixed 53-byte size. MPLS thus uses the virtual path identifier/virtual channel identifier (VPI/VCI) fields in the ATM header as a label (cell mode MPLS). MPLS labels have a specific format and fields that assist in making forwarding decisions. Figure shows the 32-bit MPLS label and describes each of the four fields. Label Stack
A label shown in Figure does not contain any information about the Layer 3 protocol that is being carried in a packet. This lack of information means that the identity of the network layer protocol must be inferable from the value of the label. However for Layer-2 protocols that have TYPE or PID fields new values indicate the MPLS-enabled Layer-3 protocol. As an example, a PPP frame carrying unicast MPLS would have a Protocol ID field set to 0x2081. In most cases only one label is assigned to a packet. There are some instances where more than one label is used: There are three Ethertype values that are used to identify Layer 3 protocols with most Layer 2 encapsulations: Example: Frame Mode MPLS
When the ingress edge router receives an IP packet, the router performs these tasks: Note
Other routers in the core simply forward packets based on information in the label. Figure shows an edge router that receives a normal IP packet. The MPLS label is often depicted as a new "shim layer" that has interposed itself between the network and data link layers. This layer is where the term "Layer 2.5 technology" comes from.
Content 4.1 Introducing MPLS Networks 4.1.4 MPLS Architecture To support multiple protocols, MPLS divides the classic router architecture into two major components: The control plane is dependent on the routing protocol used: The control plane also requires label exchange protocols, including the MPLS LDP and BGP, which is used by MPLS VPN. MPLS Traffic Engineering uses RSVP to reserve resources, or bandwidth, in the network. The data plane is a simple label-based forwarding engine that is independent of routing or label exchange protocols. A Label Forwarding Information Base (LFIB) table stores the label information that the forwarding engine uses to forward packets. The LFIB table is populated by the label exchange protocol that is used, which is LDP, BGP, or RSVP. Control Plane Components
MPLS can implement destination-based forwarding using labels to make forwarding decisions. In the example shown in Figure , a Layer 3 routing protocol is needed to propagate Layer 3 routing information. A label exchange mechanism is simply an add-on mechanism that propagates labels that are used for Layer 3 destinations. The figure illustrates the two components of the control plane: The data plane then forwards all packets with label 24 through the appropriate interfaces after swapping label 24 for label 17.
Content 4.1 Introducing MPLS Networks 4.1.5 Label Switch Routers When discussing MPLS, there are two commonly used terms: Note
LSR and Edge LSR are only used in this context in the Request For Comments (RFC). Cisco refers to LSR as the general class of router running MPLS. What the RFC refers to as LSR, Cisco calls a provider router (P router); what the RFC refers to as Edge LSR, Cisco calls a provider edge router (PE router). LSRs and Edge LSRs forward packets by making switching decisions based on the MPLS label. LSRs and Edge LSRs are usually capable of doing both label switching and IP routing. Their names are based on the router positions in an MPLS domain. Routers that have all interfaces enabled for MPLS are called LSRs because they mostly forward labeled packets. Routers that have some interfaces that are not enabled for MPLS are usually at the edge of an MPLS domain—autonomous systems (ASs). These routers also forward packets based on IP destination addresses and label the packets if the outgoing interface is enabled for MPLS. For example, an Edge LSR receives a packet for destination 10.1.1.1, imposes label 21, and forwards the frame to the LSR in the MPLS backbone. LSR swaps label 21 with label 25 and forwards the frame. The edge LSR removes label 25 and forwards the packet based on IP destination address 10.1.1.1.
Content 4.1 Introducing MPLS Networks 4.1.6 LSR Component Architecture The control plane and data plane in an LSR interact and enable label switching and forwarding of labeled packets to occur. These functions are summarized in Figure . All LSRs must perform a number of functions: Component Architecture of LSR
The primary function of an LSR is to forward labeled packets. To accomplish this, every LSR needs a Layer 3 routing protocol and a protocol to exchange labels. Figure shows the component architecture of an LSR. LDP populates the LFIB table in the data plane that is used to forward labeled packets. Component Architecture of Edge LSR
Figure