Lab MPLS Basic Configuration Last Update 2011.06.01 1.0.0 Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 1 What is MPLS • MPLS is the next development in privately managed shared networks • Large networks have migrated from dedicated T carrier circuits directly connecting sites to each other, to the first shared service provider network based on Frame Relay, to now MPLS • MPLS uses tunnels between sites to carry traffic needing different types of QoS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 2 What is MPLS • The source work on MPLS is defined in RFC 3031 • MPLS flows are connection-oriented and packets are routed along paths preconfigured by service providers called LSP - Label Switched Paths Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 3 What is MPLS • Basic MPLS has been extended with a set of Generalized MPLS extensions that allow it to handle different types of traffic between the same general end points Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 4 Operation of MPLS • Metaswitch provides an excellent discussion and graphic to show how MPLS works • They say – MPLS works by tagging the traffic, in this example packets, with an identifier, a label, to distinguish the LSPs Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 5 Operation of MPLS – When a packet is received, the router uses this label and sometimes also the link over which it was received to identify the LSP – It then looks up the LSP in its own forwarding table to determine the best link over which to forward the packet, and the label to use on this next hop – A different label is used for each hop, and it is chosen by the router or switch performing the forwarding operation Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 6 Operation of MPLS – This allows the use of very fast and simple forwarding engines, which are often implemented in hardware – Ingress routers at the edge of the MPLS network classify each packet potentially using a range of attributes, not just the packet's destination address, to determine which LSP to use Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 7 Operation of MPLS – Inside the network, the MPLS routers use only the LSP labels to forward the packet to the egress router – Here is their graphic on this Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 8 Operation of MPLS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 9 Operation of MPLS • The MPLS label is a four-byte, fixedlength, locally-significant identifier • According to Cisco it looks like this Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 10 Operation of MPLS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 11 Operation of MPLS • Cisco also says • This label is placed between the data link layer header and network layer • The top of the label stack appears first in the packet, and the bottom appears last • The network layer packet immediately follows the last label in the label stack Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 12 Operation of MPLS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 13 Types of MPLS Links • There are many types of MPLS connections to a service provider’s MPLS network • For example, ATT supports MPLS connections through what they call IP VPNs • As they say Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 14 Types of MPLS Links – Network-based VPN • Deployed on the AT&T global network, which uses multiprotocol level switching (MPLS) to provide high-performance, any-to-any communication around the globe Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 15 What is Traffic Engineering • Metaswitch says this about traffic engineering in MPLS networks – Traffic Engineering is the process where data is routed through the network according to a management view of the availability of resources and the current and expected traffic – The class of service and quality of service required for the data can also be factored into this process Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 16 What is Traffic Engineering – Traffic Engineering may be under the control of manual operators – They monitor the state of the network and route the traffic or provision additional resources to compensate for problems as they arise – Alternatively, Traffic Engineering may be driven by automated processes reacting to information fed back through routing protocols or other means Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 17 What is Traffic Engineering – Traffic Engineering helps the network provider make the best use of available resources, spreading the load over the layer 2 links, and allowing some links to be reserved for certain classes of traffic or for particular customers Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 18 What is Traffic Engineering – There are currently two label distribution protocols that provide support for Traffic Engineering • RSVP - Resource ReSerVation Protocol • CR-LDP - Constraint-based Routed Label Distribution Protocol Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 19 MPLS and Traffic Engineering • MPLS and Traffic Engineering work together to provide tunnels that carry a certain class of service from one point to another Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 20 MPLS in a Lab Environment • As it is difficult to create a real MPLS network in a lab environment and since simulation programs do not offer a MPLS cloud as they do for Frame Relay, this lab will use the GNS3 emulation program Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 21 MPLS Lab • This lab is mostly copied from a Cisco Networking Academy CCNP level lab titled – Lab 4.1 Configuring Frame Mode MPLS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 22 MPLS Lab • Here is the topology to create in GNS3 Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 23 MPLS Lab Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 24 MPLS Lab • In this lab, you will configure a network using EIGRP as the routing protocol • Then run MPLS over the IP internetwork to fast-switch Layer 2 frames • Here is the configuration for each router Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 25 R1 • • • • • • • • enable config t interface loopback 0 ip address 172.16.1.1 255.255.255.0 interface fastethernet 0/0 ip address 172.16.12.1 255.255.255.0 no shutdown exit Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 26 R1 • • • • • • • router eigrp 1 no auto-summary network 172.16.0.0 interface fastethernet 0/0 mpls ip exit end Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 27 R2 • • • • • • • enable config t interface loopback 0 ip address 172.16.2.1 255.255.255.0 interface fastethernet 0/0 ip address 172.16.12.2 255.255.255.0 no shutdown Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 28 R2 • • • • • interface serial 1/0 ip address 172.16.23.2 255.255.255.0 clockrate 64000 no shutdown exit Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 29 R2 • • • • • • • router eigrp 1 no auto-summary network 172.16.0.0 interface fastethernet 0/0 mpls ip exit end Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 30 R3 • • • • • • • • enable config t interface loopback 0 ip address 172.16.3.1 255.255.255.0 interface serial 1/0 ip address 172.16.23.3 255.255.255.0 no shutdown exit Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 31 R3 • • • • • • • router eigrp 1 no auto-summary network 172.16.0.0 interface fastethernet 0/0 mpls ip exit end Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 32 Check Connectivity • When everything is configured, ping from R1 to R3 – ping 172.16.3.1 • Check the routing table – show ip route Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 33 Check Connectivity Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 34 Check Connectivity • On R1, if you perform a traceroute to the R3’s loopback, you see the path the packet follows • Observe this • This output changes slightly once we configure MPLS Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 35 Check Connectivity Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 36 MPLS Configuration • As discussed earlier MPLS is a standardized protocol that allows routers to switch packets based on labels, rather than route switch packets based on standards in the protocol’s routing formula Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 37 MPLS Configuration • Under normal IP routing, every intermediate system looks up the destination prefix of an IP packet in the Routing Information Base of a router or in the Forwarding Information Base of a fast switch at every Layer 3 node Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 38 MPLS Configuration • Instead of switching that is based on prefix, the first router running MPLS can encapsulate the IP packet in an MPLS frame and then further encapsulate the packet in the Layer 2 frame before sending it across one of many supported Layer 2 media Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 39 MPLS Configuration • At the next MPLS-enabled LSR - Label Switch Router, the MPLS frame is read and the IP packet is switched as an MPLS frame from router to router with little rewrite at each node Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 40 MPLS Configuration • This allows routers to switch multiple protocols - hence the name - using the same switching mechanism, as well as perform some other functionality not available in traditional destination-based forwarding, including Layer 2 VPNs - ATM, Layer 3 VPNs, and traffic engineering Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 41 MPLS Configuration • Configuring the interface-level command mpls ip on an interface tells the router to switch MPLS packets inbound and outbound on that interface as well as attempt to bring up MPLS adjacencies with the LDP - Label Distribution Protocol out that egress interface Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 42 MPLS Configuration • LDP facilitates communication between MPLS peers by allowing them to inform each other of labels to assign packets to particular destinations based on Layer 2, Layer 3, or other significant information Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 43 Verify MPLS Configuration • MPLS has many show commands that you can use to verify proper MPLS operation • Issue the – show mpls interfaces • command to see a quick summary of interfaces configured with MPLS • Keep in mind that you will see this output because you applied the mpls ip command to these interfaces 44 Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com Verify MPLS Configuration Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 45 Verify MPLS Configuration • Issue the – show mpls ldp discovery • command to find out local sources for LDP exchanges and the show mpls ldp neighbor command to show LDP adjacencies • Notice that MPLS chooses its IDs based on loopback interfaces, similar to other protocols such as OSPF and BGP Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 46 Verify MPLS Configuration Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 47 Verify MPLS Configuration • In the configuration you set up, all routers are acting as Label Switch Routers and running LDP • On LSRs, each forwarding equivalence class - in this case, each routable IP prefix - is assigned an MPLS label • LDP automatically distributes labels to peers to be used when sending traffic to specific destinations through the LSR Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 48 Verify MPLS Configuration • Once labels have been distributed, switching for MPLS packets is done through the LIB - Label Information Base • Display the contents of the LIB using – show mpls ldp bindings • There is a binding for every routed prefix; however, the bindings may vary from router to router since they can get swapped at each hop Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 49 Verify MPLS Configuration • In a larger network, the way labels are swapped is easier to see Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 50 Verify MPLS Configuration Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 51 Verify MPLS Configuration • As mentioned earlier, traceroute would differ slightly once MPLS was set up • The output now includes labels for each hop • Unfortunately, because of the size of this network, you only see one label • In a larger network, you would see more hops, and therefore more labels Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 52 Verify MPLS Configuration Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 53 Verify MPLS Configuration • Because you are adding in extra header information to packets, the MTU of packets can change • Remember that each MPLS header is 4 bytes • The default MTU size of MPLS packets is taken from the interface it is running on, which in the case of Ethernet is 1500 bytes Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 54 Verify MPLS Configuration • For this lab, we will change the Ethernet connection between R1 and R2 to support 2 MPLS headers, so we will change the MPLS MTU to 1508 on their Fast Ethernet interfaces • Verify the change using the – show mpls interfaces interface detail • command used Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 55 Verify MPLS Configuration Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 56 MPLS Lab • As you can see, GNS3 running Dynagen and Dynamips is a very useful tool • As you can also see, MPLS is easy to setup Copyright 2011 Kenneth M. Chipps Ph.D. www.chipps.com 57