From the course: Cisco CCNP ENARSI v1.1 (300-410) Cert Prep: 3 Infrastructure Security

MPLS overview

- [Presenter] Multiprotocol Label Switching or MPLS is a method of packet forwarding technology that we can use to control the flow of network traffic and increase our speeds. Typically, packet forwarding decisions with IP traffic are made based on destination IP addresses, but instead of that, MPLS uses labels to make these decisions. It's very flexible and efficient and it supports many different services. But here for the ENARSI Exam, we want to focus on using MPLS with IP traffic. First, we need to cover the important pieces that MPLS uses, so let's break down the structures within an MPLS enabled router. We commonly refer to these routers as an LSR, a Label Switch Router. These routers perform routing based on labels rather than other information. If we take a typical router, we know that there is a Control Plane and a Data Plane. The Control Plane contains the RIB or the IP routing table, and the Data Plane contains the FIB, which is the IP forwarding table. The RIB, or Routing Information Base, contains routing information learned by dynamic routing protocols such as OSPF and BGP or any statically designated routes. So all information related to IP routing is stored here. Anytime a routing protocol learns a new route, that route is inserted into the RIB. These routes are then copied into the FIB, the Forwarding Information Base. The FIB is used to make IP destination prefix-based switching decisions, so this table would contain the interface information and the next hop information for each reachable destination network prefix. So Control Plane packets are destined to a router or originating from the router itself, while Data Plane packets would be any packets that are meant to pass through the router and those which are not destined for the router itself. If we look at an MPLS enabled router, or an LSR, in other words, a Label Switch Router, we have some additional structures. In the Control Plane, we have a LIB, a Label Information Base, and in the Data Plane we have an LFIB, a Label Forwarding Information Base. If we have multiple label switch routers using labels for MPLS, these labels are exchanged between LSRs using something called the Label Distribution Protocol, or LDP. The LSRs can also exchange routing information between themselves as you would normally expect using dynamic routing protocols, and those are populated into the RIB as with a normal router. With the exchange of labels via LDP, however, this information gets populated into the LIB, the Label Information Base. The LIB will select the best path based on this information and will populate this into the Label Forwarding Information Base, the LFIB. This is also populated into the normal FIB. If we have packets arriving that are unlabeled, they will be forwarded using the FIB, while labeled packets will be forwarded using the LFIB. Here, we have multiple interconnected LSRs within an MPLS domain. So another important term to know is LSP, the Label Switched Path, and very simply this is just the accumulative path that a label switched packet will take through an MPLS network, and that is unidirectional, it's only in a single direction. Because LSPs are unidirectional, if we have a complex network with multiple paths between source and destination for our traffic, it's possible that they can use two different LSPs during round trip. Now, typically this is not the case because our dynamic routing protocols will usually build symmetrical forwarding paths. There are also a few terms to know in regard to the router typology. Of course, we have our LSRs in the public internet here, our MPLS enabled label switch routers. On the edge of this, we have Edge LSRs, or ELSRs. We also refer to these as PE devices, Provider Edge devices. These are routers that only have some interfaces enabled for MPLS. So for instance, the interfaces facing the provider LSRs or the intermediate LSRs here, those would be MPLS enabled, while those facing the customer would not. And edge router is a term you're likely familiar with because that isn't a term that's specific to MPLS. As for the labels themselves, let's see what that looks like within a packet. Here, we have a simplified look at a very typical packet containing our payload, a Layer 3 IP Header, and a Layer 2 Frame Header. The MPLS label is a Shim Header that is placed in between the IP and Frame Headers. This Shim Header is 4 bytes, or 32 bits, and that structure contains four fields inside. The first 20 bits define the MPLS label number. The following three bits are reserved for quality of service. There's a tiny 1 bit section used to indicate if the label is on the bottom end of the stack, or if multiple labels are being used. So for example, MPLS VPNs, those would use multiple labels, so this would be necessary in that case. And there's an 8 bit TTL value, a time-to-live value, and that's used just as you would expect, so that MPLS frames will be discarded if they reach a 0 TTL value before they get to their destination. So that's an overview of MPLS.

Contents