Introduction to MPLS DGTL-BRKMPL-1100 Travis Jones Systems Architect CCIE #4603 – DC, R&S, SP, Security, & Voice CCDE 2013::60
Total Page:16
File Type:pdf, Size:1020Kb
#CiscoLive Introduction to MPLS DGTL-BRKMPL-1100 Travis Jones Systems Architect CCIE #4603 – DC, R&S, SP, Security, & Voice CCDE 2013::60 #CiscoLive Agenda • Introduction • MPLS Technology Basics • MPLS Layer-3 VPNs • MPLS Layer-2 VPNs • Advanced Topics • Summary #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 3 Session Goals Objectives • Definition and history of MPLS • Learn about MPLS customer and market segments • Understand the problems MPLS is addressing • Understand the major MPLS technology components • Understand typical MPLS applications • Understand benefits of deploying MPLS • Learn about MPLS futures; where MPLS is going #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 4 Introduction What Is MPLS? Most Painful Learn Study #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 6 What Is MPLS? Most Painful Learn Study #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 7 What Is MPLS? Definition Multi-Protocol: The ability to carry any Multi payload Have: IPv4, IPv6, Ethernet, ATM, FR Protocol Uses Labels to tell a node what to do Label with a packet; separates forwarding (hop by hop behavior) from routing (control plane) Routing based on IPv4 or IPv6 lookup. Switching Everything else is Switching. #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 8 What is MPLS? Brief Summary • It’s all about labels … • Use the best of both worlds • Layer-2 (ATM/FR): efficient forwarding and traffic engineering • Layer-3 (IP): flexible and scalable • MPLS forwarding plane • Use of labels for forwarding Layer-2/3 data traffic • Labeled packets are being switched instead of routed • MPLS control/signaling plane • Use of existing IP control protocols extensions + new protocols to exchange label information #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 9 Evolution of MPLS Technology Evolution and Main Growth Areas • Evolved from tag switching in 1996 to full IETF standard Optimize MPLS covering over 130 RFCs for SDN and Cloud • Key application initially were Layer-3 VPNs, followed by Optimize MPLS for Traffic Engineering (TE) and Layer-2 VPNs packet transport First Optimize MPLS for video SDN/PCE Deployments Complete base MPLS portfolio First G-MPLS Bring MPLS to Market Deployment First First Large Scale First L2VPN Segment L3VPNs L2VPN Deployments Routing Deployed Deployments Deployments Large Scale Large Scale First PBB- Cisco ships First MPLS TE First LSM First MPLS TP L3VPN MPLS TE EVPN MPLS Deployments Deployments Deployments Deployments Deployments Deployments 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 10 MPLS Technology Basics Topics Basics of MPLS Signaling and Forwarding Service (Clients) Management • MPLS Reference Architecture • MPLS Labels Layer-3 VPNs Layer-2 VPNs MPLSOAM • MPLS signaling and forwarding Transport operations IP/MPLS (LDP/RSVP-TE/BGP/OSPF/IS-IS) • MPLS Traffic Engineering • MPLS QoS MPLS Forwarding • MPLS OAM #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 12 MPLS Reference Architecture PE P P PE Node Types & Protocols § P (Provider) router = Label Switching Router (LSR) – Runs an IGP and LDP § PE (Provider Edge) router = edge router (LER) – Imposes and removes MPLS labels – Runs an IGP, LDP and MP-BGP § CE (Customer Edge) router – Not required § Label Distribution Protocol – UDP/TCP port 646 (multicast/unicast) – IGP to label binding § Multi-Protocol BGP – Address-family support (IPv4, IPv6, multicast, EVPN etc…) – Used for VRF / VPN route exchange #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 13 MPLS Labels MPLS Label Characteristics • MPLS Label has local significance • One router assigns the MPLS label independently • There is no global assignment for the whole network • No global authority • 20 bits for the label gives label range of 0-1048575 • Default label range might be lower • Label range is limited on some platforms • Normal MPLS labels are: 16-1048575 • Reserved label range is: 0-15 #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 14 MPLS Labels Label Definition and Encapsulation • Labels used for making MPLS Label Stack Entry forwarding decision Label = 20 bits TC S TTL TC = Traffic Class: 3 Bits; S = Bottom of Stack; TTL = Time to Live • Multiple labels can be used for MPLS packet encapsulation • No limit on the number of LAN MAC Header Label, S=1 Layer 3 labels in a stack Packet MPLS Label Stack (1 label) • Outer label always used for switching MPLS packets in network LAN MAC Header Label, S=0 Label, S=1 Layer 3 • Inner labels usually used for Packet services (e.g. L2/L3 VPN) MPLS Label Stack (2 labels) #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 15 MPLS Label Operations Label Imposition ( Push)Label Swap Label Swap Label Disposition( PoP) L2/L3 Packet L1 L1 L2 L2 L3 L3 CE/Access PE/Distribution PE/Distribution CE/Access CE/Access CE/Access P/Core P/Core CE/Access PE/Distribution PE/Distribution CE/Access § Label imposition (Push) By ingress PE router; classify and label packets § Label swapping or switching By P router; forward packets using labels; indicates service class & destination § Label disposition (PoP) By egress PE router; remove label and forward original packet to destination CE #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 16 MPLS Path (LSP) Setup and Traffic Forwarding MPLS Traffic Forwarding and MPLS Path (LSP) Setup • LSP signaling protocols IP MPLS • Either LDP* or RSVP Destination address Label based • Leverages IP routing based Forwarding table Forwarding Forwarding table learned learned from control • Routing table (Routing Information Base – from control plane plane RIB) TTL support TTL support LDP, RSVP, BGP, Control Plane OSPF, IS-IS, BGP • Exchange of labels OSPF, IS-IS • Label bindings Packet Encapsulation IP Header One or more labels • Downstream MPLS node advertises what 8 bit TOS field in IP label to use to send traffic to node QoS 3 bit TC field in label header • MPLS forwarding OAM IP ping, traceroute MPLS OAM • MPLS Forwarding table (Forwarding Information Base – FIB) (*) LDP siGnalinG assumed for next the examples #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 17 MPLS Path (LSP) Setup Signaling Options LDP RSVP • LDP signaling LSP or TE Tunnel Forwarding path LSP • Leverages existing routing Primary and, optionally, backup Based on TE topology • database RSVP signaling Forwarding Based on IP routing database Shortest-path and/or other Calculation Shortest-Path based • constraints AKA MPLS RSVP / TE (CSPF calculation) • Enables enhanced capabilities, such Packet Single label One or two labels as Fast ReRoute (FRR) Encapsulation Initiated by head-end node • Can use both protocols simultaneously towards tail-end node By each node independently Uses routing protocol extensions/information • They work differently, they solve Signaling Uses existing routing protocols/information Supports bandwidth different problems reservation Supports link/node protection • Dual-protocol deployments are very common #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 18 IP Routing IGP vs. BGP • Exchange of IP routes for Forwarding Table Forwarding Table Forwarding Table In Address Out Out In Address Out Out In Address Out Out Loopback Reachability Label Prefix I’face Label Label Prefix I’face Label Label Prefix I’face Label • OSPF, IS-IS, EIGRP, etc. 10.2.2.2 F0/0 10.2.2.2 F0/0 10.2.1.1 F0/0 10.2.1.1 F0/0 10.2.1.1 N/A • iBGP neighbor peering over … … … … … … IGP transport F0/0 10.2.1.1 Loop0: 2.2.2.2 F0/0 PE2 • Route towards BGP Next- F0/0 PE1 BGP Update: Hop P You Can Reach 10.2.1.1 Thru Me You Can Reach 2.2.2.2 Through Me By routing towards 2.2.2.2 Routing Updates You Can Reach 2.2.2.2 Thru Me (OSPF) #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 19 MPLS Label Switched Path (LSP) Setup with LDP Assignment of Remote Labels Forwarding Table Forwarding Table Forwarding Table In Address Out Out In Address Out Out In Address Out Out Label Prefix I’faceLabel Label Prefix I’faceLabel Label Prefix I’faceLabel • Local label mappings are - 2.2.2.2 F0/0 20 20 2.2.2.2 F0/0 30 30 10.2.1.1 F0/0 - sent to connected nodes - … … … … … … … … … … … … … … … … … … … • Receiving nodes update forwarding table F0/0 F0/0: 10.2.1.1 F0/0 PE2 Loop0: 2.2.2.2 • Out label PE1 P • LDP label advertisement happens in parallel Use Label 20 for 2.2.2.2 (downstream unsolicited) Use Label 30 for 2.2.2.2 Label Distribution Protocol (LDP) BGP Update: You Can Reach 10.2.1.1 Thru Me (Downstream By routing towards 2.2.2.2 Allocation) #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates. All rights reserved. Cisco Public 20 MPLS Traffic Forwarding with LDP Hop-by-hop Traffic Forwarding Using Labels • Ingress PE node adds label Forwarding Table Forwarding Table Forwarding Table to packet (push) In Address Out Out In Address Out Out In Address Out Out Label Prefix I’faceLabel Label Prefix I’faceLabel Label Prefix I’faceLabel • Via MPLS forwarding - 2.2.2.2 F0/0 20 20 2.2.2.2 F0/0 30 30 10.2.1.1 F0/0 - table - … … … - … … … … … … … … … … … … … … … • Downstream P node uses label for forwarding F0/0 10.2.1.1 F0/0 PE2 Loop0: 2.2.2.2 decision (swap) F0/0 PE1 • Outgoing interface P 10.2.1.1 Data 20 2.2.2.2 Data 30 2.2.2.2 Data 10.2.1.1 Data • Out label • Egress PE removes label Forwarding based on Label towards BGP Next-Hop (Loopback of far end router) BGP Update: and forwards original You Can Reach 10.2.1.1 Thru Me packet (pop) By routing towards 2.2.2.2 #CiscoLive DGTL-BRKMPL-1100 © 2020 Cisco and/or its affiliates.