MPLS. Multi-Protocol Label Switching

Similar documents
Institute of Computer Technology - Vienna University of Technology. L85 - Multiprotocol Label Switching

IP Datagram Service MPLS. Virtual Call Call Request (CR) Agenda

MPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE

MPLS Introduction. (C) Herbert Haas 2005/03/11

COMP9332 Network Routing & Switching

Securizarea Calculatoarelor și a Rețelelor 32. Tehnologia MPLS VPN

Multi Protocol Label Switching (an introduction) Karst Koymans. Thursday, March 12, 2015

MPLS VPN. 5 ian 2010

Computer Network Architectures and Multimedia. Guy Leduc. Chapter 2 MPLS networks. Chapter 2: MPLS

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

Telematics Chapter 7: MPLS

Multiprotocol Label Switching (MPLS)

MPLS Core Networks Николай Милованов/Nikolay Milovanov

Migration Strategies for IP Service Growth: Cell-switched MPLS or IP-routed MPLS

MPLS Multi-protocol label switching Mario Baldi Politecnico di Torino (Technical University of Torino)

MPLS опорни мрежи MPLS core networks

Introduction to MPLS APNIC

ATM Quality of Service (QoS)

MPLS/Tag Switching. Background. Chapter Goals CHAPTER

Syed Mehar Ali Shah 1 and Bhaskar Reddy Muvva Vijay 2* 1-

Multiprotocol Label Switching (MPLS) on Cisco Routers

Introduction to MPLS. What is MPLS? 1/23/17. APNIC Technical Workshop January 23 to 25, NZNOG2017, Tauranga, New Zealand. [201609] Revision:

MultiProtocol Label Switching - MPLS ( RFC 3031 )

MPLS etc.. MPLS is not alone TEST. 26 April 2016 AN. Multi-Protocol Label Switching MPLS-TP FEC PBB-TE VPLS ISIS-TE MPƛS GMPLS SR RSVP-TE OSPF-TE PCEP

Cisco Training - HD Telepresence MPLS: Implementing Cisco MPLS V3.0. Upcoming Dates. Course Description. Course Outline

Advanced Internet Technologies

IP over ATM. IP over ATM. Agenda. IP over ATM : Solving the Problem I.

Table of Contents. Cisco MPLS FAQ For Beginners

Outline. Circuit Switching. Circuit Switching : Introduction to Telecommunication Networks Lectures 13: Virtual Things

AToM (Any Transport over MPLS)

Table of Contents Chapter 1 MPLS Basics Configuration

Exam : Title : Implementing Cisco MPLS Exam (MPLS) Ver :

ATM Logical Connections: VCC. ATM Logical Connections: VPC

Multiprotocol Label Switching (MPLS)

Tag Switching. Background. Tag-Switching Architecture. Forwarding Component CHAPTER

ATM PVC Bundle Enhancement MPLS EXP-Based PVC Selection

CPEG 514. Lecture 11 Asynchronous Transfer Mode (ATM) CPEG 514

Multiprotocol Label Switching (MPLS) on Cisco Routers

ATM Asynchronous Transfer Mode revisited

ATM. Asynchronous Transfer Mode. (and some SDH) (Synchronous Digital Hierarchy)

Trafffic Engineering 2015/16 1

MPLS etc.. 9 May 2017 AN

Concepts and Operation of MPLS VPNs. Francisco Bolanos

ENTERPRISE MPLS. Kireeti Kompella

MPLS Intro. Cosmin Dumitru March 14, University of Amsterdam System and Network Engineering Research Group ...

سوي يچينگ و مسيريابي در شبكه

Asynchronous Transfer Mode

Master Course Computer Networks IN2097

Multiprotocol Label Switching Overview

HP MSR Router Series. MPLS Configuration Guide(V5) Part number: Software version: CMW520-R2513 Document version: 6PW

Asynchronous Transfer Mode (ATM) ATM concepts

Label Switching. The idea. Add a small label (sometimes called a tag ) on the front of a packet and route the packet based on the label. cs670.

2D1490 p MPLS, RSVP, etc. Olof Hagsand KTHNOC/NADA

Asynchronous Transfer Mode

Ahmed Benallegue RMDCN workshop on the migration to IP/VPN 1/54

Asynchronous Transfer Mode (ATM) Broadband ISDN (B-ISDN)

MPLS. 9 March 2018 AN

HP Routing Switch Series

Operation Manual MPLS. Table of Contents

Label Distribution Protocol and Basic MPLS Configuration. APNIC Technical Workshop October 23 to 25, Selangor, Malaysia Hosted by:

Asynchronous. nous Transfer Mode. Networks: ATM 1

Multiprotocol Label Switching Virtual Private Network

HP A-MSR Router Series MPLS. Configuration Guide. Abstract

MPLS LDP. Agenda. LDP Overview LDP Protocol Details LDP Configuration and Monitoring 9/27/16. Nurul Islam Roman

Introduction to MPLS

MPLS Label Distribution Protocol (LDP)

Multi-Protocol Label Switching

Multiprotocol Label Switching (MPLS)

WORKSHOP MPLS.

Part 5: Link Layer Technologies. CSE 3461: Introduction to Computer Networking Reading: Chapter 5, Kurose and Ross

MPLS MPLS. Basically: 9 March 2018 AN. Multi-Protocol Label Switching. A bit of history. Multi-Protocol Label Switching.

This chapter covers the following topics: Label Distribution Protocol (LDP) AToM operations

MPLS, THE BASICS CSE 6067, UIU. Multiprotocol Label Switching

BROADBAND AND HIGH SPEED NETWORKS

Chapter 4. Advanced Internetworking. 4.3 MPLS 4.4 Mobile IP

! Cell streams relating to different media types are multiplexed together on a statistical basis for transmission and switching.

MPLS AToM Overview. Documentation Specifics. Feature Overview

Virtual Link Layer : Fundamentals of Computer Networks Bill Nace

internet technologies and standards

Configuring Quality of Service for MPLS Traffic

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

BROADBAND AND HIGH SPEED NETWORKS

MPLS Label Distribution Protocol (LDP)

MPLS (Multi-Protocol Label Switching)

MPLS Label Distribution Protocol (LDP)

Outline. Overview Label Encapsulations Label Distribution Protocols Constraint Based Routing with CR-LDP Summary

HP 5920 & 5900 Switch Series

ATM. Asynchronous Transfer Mode. these slides are based on USP ATM slides from Tereza Carvalho. ATM Networks Outline

Internet Multicast Routing

Master Course Computer Networks IN2097

Practice exam questions for the Nokia NRS II Composite Exam

MULTIPROTOCOL LABEL SWITCHING: REIVEW KAISER ALI BHAT

CCBOOTCAMP s CCIE Service Provider Core Knowledge Workbook

Internetworking Part 1

Intermediate Traffic Management

Configuring MPLS and EoMPLS

Introduction to ATM Traffic Management on the Cisco 7200 Series Routers

Next Generation MULTICAST In-band Signaling (VRF MLDP: Profile 6)

IPv6 Switching: Provider Edge Router over MPLS

CISC452 Telecommunications Systems. Lesson 6 Frame Relay and ATM

Transcription:

MPLS Multi-Protocol Label Switching

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 2

ATM Principles ATM Asynchronous Transfer Mode Based on asynchronous TDM Hence buffering and address information is necessary Variable delay (!) Cell switching technology Based on store-and-forward of cells Connection-oriented type of service with PVC and SVC But no error recovery (!) ATM cell Small packet with constant length 53 bytes long (5 bytes header + 48 bytes data) 2012, D.I. Lindner MPLS v4.6 3

Cell Format 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 GFC VPI 1 VPI VPI 1 VPI VCI 2 VPI VCI 2 VCI 3 VCI 3 VCI PT CLP 4 VCI PT CLP 4 HEC 5 HEC 5 UNI Header NNI Header Two slightly different formats UNI 8 bits for VPI NNI 12 bits for VPI 2012, D.I. Lindner MPLS v4.6 4

ATM Network: Physical Topology ATM DTE ATM DTE UNI ATM DCE NNI ATM DCE ATM DCE ATM DCE ATM DTE UNI + NNI defined ATM DTE 2012, D.I. Lindner MPLS v4.6 5

ATM Network: Virtual Circuits Local Connection Identifiers and Logical Channels VPI 1/253 1/452 1/455 UNI VCI IN OUT 9/99 66/6 3/253 3/200 3/452 VPI/VCI numbers (local significance!!!) 66/6 NNI 100/6 3/2 3/2 UNI 9/99 5/88 Virtual Path Identifier (VPI) Virtual Channel Identifier (VCI) 1/123 1/321 2012, D.I. Lindner MPLS v4.6 6

ATM Switching Tables A ATM DTE ATM DTE B I1 from to I1: 0/77 O2: 0/99 I4: 0/77 O3: 4/88 1 2 from to I1: 0/50 O3: 0/77 O3 I1 I4 O2 O3 I4 O2 from to Switching Table of ATM Switch 2 I4: 0/99 O2: 0/44 ATM DTE D I1 from to O2 3 I1: 0/88 O2: 0/77 I1: 4/88 O3: 2/99 I1 O3 ATM DTE from to 2012, D.I. Lindner MPLS v4.6 7 4 C

Cell Forwarding / Label Swapping 1...Cell Header (5 Byte) Payload (48 byte) A B 0 50 VPI / VCI I1 from to I1: 0/77 O2: 0/99 I4: 0/77 O3: 4/88 O2 O3 from to I1: 0/50 O3: 0/77 I1 I4 O2 O3 I4 from to I4: 0/99 O2: 0/44 0 88 I1 O2 I1 O3 from to D from to I1: 0/88 O2: 0/77 C I1: 4/88 O3: 2/99 2012, D.I. Lindner MPLS v4.6 8

Cell Forwarding / Label Swapping 2 A B I1 from to I1: 0/77 O2: 0/99 I4: 0/77 O3: 4/88 1 2 from to I1: 0/50 O3: 0/77 D O3 0 77 I1 O2 O3 0 77 I4 O2 I1 3 from to I1: 0/88 O2: 0/77 I1: 4/88 O3: 2/99 from to I4: 0/99 O2: 0/44 O3 2012, D.I. Lindner MPLS v4.6 9 I4 I1 from to 4 O2 C

Cell Forwarding / Label Swapping 3 A B I1 from to I1: 0/77 O2: 0/99 I4: 0/77 O3: 4/88 1 2 from to I1: 0/50 O3: 0/77 O3 O2 I1 O3 I4 I4 0 99 O2 from to I4: 0/99 O2: 0/44 D I1 from to O2 3 4 88 I1 O3 from to I1: 0/88 O2: 0/77 I1: 4/88 O3: 2/99 2012, D.I. Lindner MPLS v4.6 10 4 C

Cell Forwarding / Label Swapping 4 A B 1 2 from to I1: 0/50 O3: 0/77 0 44 I1 from to O2 I1: 0/77 O2: 0/99 I4: 0/77 O3: 4/88 O3 O2 I1 O3 I4 I4 from to I4: 0/99 O2: 0/44 D I1 from to O2 3 I1 2 99 O3 from to I1: 0/88 O2: 0/77 I1: 4/88 O3: 2/99 2012, D.I. Lindner MPLS v4.6 11 4 C

UNI and NNI Types Private ATM Network Public UNI Public ATM Network ATM Switch Private UNI Private NNI ATM Switch ATM Switch Public NNI ATM Switch Private UNI B-ICI Public UNI ATM DTEs ATM Switch Public NNI ATM Switch Public ATM Network Public UNI ATM DTEs 2012, D.I. Lindner MPLS v4.6 12

Control Plane <-> User Plane User plane describes protocols used between ATM DTEs on transport pipe ATM-DCE VPI/VCI = 0/5 (e.g. PNNI Signaling) ATM-DTE VPI/VCI = 0/5 (e.g. Q.2931 signaling) ATM-DTE VPI/VCI = 0/18 (e.g. PNNI Routing) Control plane describes protocols used between ATM DTE and ATM DCE or between ATM DCE and ATM DCE ATM-DCE Physical access link Virtual circuit for user data Virtual circuit for signaling / ILMI / routing 2012, D.I. Lindner MPLS v4.6 13

Service Classes Guaranteed Service Bandwidth on Demand CBR VBR Constant Bit Rate Circuit Emulation, Voice Variable Bit Rate Full Traffic Characterization Real-Time VBR and Non Real-Time VBR Best Effort Service UBR ABR Unspecified Bit Rate No Guarantees, Send and Pray Available Bit Rate No Quantitative Guarantees, but Congestion Control Feedback assures low cell loss 2012, D.I. Lindner MPLS v4.6 14

Traffic Contract per Service Class Specified for each service class ATTRIBUTE CBR rt-vbr nrt-vbr ABR UBR PCR & CDVT Specified Specified SCR, MBS, CDVT n/a Specified n/a MCR n/a Specified n/a max CTD & ptp CDV Specified Unspecified Unspecified CLR Specified Optional Unspecified CLR CTD CDV MBS = = = = Cell Loss Ratio Cell Transfer Delay Cell Delay Variation Maximum Burst Size PCR = CDVT = SCR = MCR = Peak Cell Rate CDV Tolerance Sustainable CR Minimum CR 2012, D.I. Lindner MPLS v4.6 15

ATM as an Intelligent Bandwidth Management System Available Trunk BW (e.g. 622Mb/s) UBR burst Σ PCR (VBR) + Σ MCR (ABR) + Σ SCR (VBR) + Σ PCR (CBR) ABR burst VBR burst ABR average VBR average CBR constant 2012, D.I. Lindner MPLS v4.6 16

ATM Goal: Bandwidth on Demand with QoS Guarantees Give me this Bandwidth and QoS to B OK Connect to B Yes/No A ATM End System UNI NNI NNI B ATM End System UNI ATM Switches Yes/No Connect to B 2012, D.I. Lindner MPLS v4.6 17

ATM Routing in Private ATM Networks PNNI is based on Link-State technique like OSPF Topology database Every switch maintains a database representing the states of the links and the switches Extension to link state routing!!! Announce status of node (!) as well as status of links Contains dynamic parameters like delay, available cell rate, etc. versus static-only parameters of OSPF (link up/down, node up/down, nominal bandwidth of link) Path determination based on metrics Much more complex than with standard routing protocols because of ATM-inherent QoS support 2012, D.I. Lindner MPLS v4.6 18

PNNI Routing Generic Connection Admission Control (GCAC) Used by the source switch to select a path through the network Calculates the expected CAC (Connection Admission Control) behavior of another node 1. Support this QoS locally? CAC UNI/NNI 2. Yes/No GCAC 3.) Is it likely that path will deliver expected QoS? 2012, D.I. Lindner MPLS v4.6 19

PNNI Routing (Simple QoS -> ACR only) Operation of the GCAC CR Cell Rate ACR Available Cell Rate D Distance like OSPF costs ATM-DCE ATM-DTE S2 ACR = 20 S6 Requested CR = 30 ATM-DTE S1 ATM-DCE ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S5 ACR = 40 D = 5 S4 2012, D.I. Lindner MPLS v4.6 20

PNNI Routing Operation of the GCAC 1) Links not supporting requested CR are eliminated -> Metric component -> ACR value used Requested CR = 30 S2 ACR = 20 S6 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S5 ACR = 40 D = 5 S4 2012, D.I. Lindner MPLS v4.6 21

PNNI Routing Operation of the GCAC 2) Next, shortest path(s) to the destination is (are) calculated Metric component -> Distance value used S2 ACR = 20 S6 Requested CR = 30 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S5 ACR = 40 D = 5 S4 2012, D.I. Lindner MPLS v4.6 22

PNNI Routing Operation of the GCAC 3) One path is chosen and source node S1 constructs a Designated Transit List (DTL) -> source routing --> Describes the complete route to the destination Requested CR = 30 S2 ACR = 20 S6 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S4 2012, D.I. Lindner MPLS v4.6 23 S5 ACR = 40 D = 5 requested ACR = 30

PNNI Routing - Source Routing Operation of the GCAC 4) DTL is inserted into signaling request and moved on to next switch 5) After receipt next switch perform local CAC 5a) if ok -> pass PNNI signaling message on to next switch of DTL 6a) finally signaling request will reach destination ATM-DTE -> VC ok PNNI Signaling with DTL list S2 ACR = 20 S6 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S5 ACR = 40 D = 5 requested ACR = 30 S4 2012, D.I. Lindner MPLS v4.6 24

PNNI Routing - Crankbank Operation of the GCAC 5) After receipt next switch (S2) perform local CAC 5b) if nok -> return PNNI signaling message to originator of DTL 6b) S1 will construct alternate source route PNNI Signaling with DTL list S2 cannot fulfill requirements on trunk to S5 S2 ACR = 20 S6 S1 ACR = 10 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50, D = 5 ACR = 50 D = 10 ACR = 50 D = 5 Crankbank to S1 S4 S5 ACR = 40 D = 5 requested ACR = 30 2012, D.I. Lindner MPLS v4.6 25

PNNI Routing - New Trial Operation after Crankbank 7b) The other possible path is chosen - source node constructs again a new Designated Transit List (DTL) Requested CR = 30 S2 ACR = 20 S6 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S4 2012, D.I. Lindner MPLS v4.6 26 S5 ACR = 40 D = 5 requested ACR = 30

PNNI Routing - Source Routing Operation of the GCAC 8b) DTL is inserted into signaling request 9b) After receipt next switch perform local CAC if ok -> pass PNNI signaling message on to next switch of DTL 10b) finally signaling request will reach destination ATM-DTE -> VC ok PNNI Signaling with DTL list S2 ACR = 20 S6 S1 ACR = 10 ACR = 50, D = 5 ACR = 50 D = 5 S3 ACR = 40 D = 5 ACR = 50 D = 10 ACR = 50 D = 5 S5 ACR = 40 D = 5 requested ACR = 30 S4 2012, D.I. Lindner MPLS v4.6 27

Agenda Review ATM IP over WAN Problems (Traditional Approach) Introduction, Base Problem 1 Non-NBMA-View NMBA-View Base Problem 2, Solution MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 28

IP Overlay Model - Scalability Base problem Nr.1 IP routing separated from ATM routing because of the normal IP overlay model no exchange of routing information between IP and ATM world leads to scalability and performance problems many peers, configuration overhead, duplicate broadcasts note: IP system requests virtual circuits from the ATM network ATM virtual circuits are established according to PNNI routing virtual circuits are treated by IP as normal point-to-point links IP routing messages are transported via this point-to-point links to discover IP neighbors and IP network topology 2012, D.I. Lindner MPLS v4.6 29

IP Performance Base problem Nr.2 IP forwarding is slow compared to ATM cell forwarding IP routing paradigm hop-by-hop routing with (recursive) IP routing table lookup, IP TTL decrement and IP checksum computing destination based routing (large tables in the core of the Internet) Load balancing in a stable network all IP datagram's will follow the same path (least cost routing versus ATM s QoS routing) QoS (Quality of Service) IP is connectionless packet switching (best-effort delivery versus ATM s guarantees) VPN (Virtual Private Networks) ATM VC s have a natural closed user group (=VPN) behavior 2012, D.I. Lindner MPLS v4.6 30

Basic Ideas to Solve the Problems Make ATM topology visible to IP routing to solve the scalability problems a classical ATM switch gets IP router functionality Divide IP routing from IP forwarding to solve the performance problems IP forwarding based on ATM s swapping paradigm (connection-oriented packet switching) IP routing based on classical IP routing protocols Combine best of both forwarding based on ATM swapping paradigm routing done by traditional IP routing protocols 2012, D.I. Lindner MPLS v4.6 31

MPLS Several similar technologies were invented in the mid-1990s IP Switching (Ipsilon) Cell Switching Router (CSR, Toshiba) Tag Switching (Cisco) Aggregated Route-Based IP Switching (ARIS, IBM) IETF merges these technologies MPLS (Multi Protocol Label Switching) note: multiprotocol means that IP is just one possible protocol to be transported by a MPLS switched network RFC 3031 2012, D.I. Lindner MPLS v4.6 32

MPLS Building Blocks MPLS VPN (Virtual Private Network) MPLS Multicast MPLS Transport MPLS ATOM (Any Transport over MPLS) MPLS TE (Traffic Engineering) MPLS QoS (Quality of Service) You always need this! MPLS Transport solves most of the mentioned problems (scalability / performance) If you need "Advanced Features like VPN or Multicast support you optionally may choose from these building blocks riding on top of a MPLS Transport network 2012, D.I. Lindner MPLS v4.6 33

Agenda Review ATM IP over WAN Problems (Traditional Approach) Introduction, Base Problem 1 Non-NBMA-View NMBA-View Base Problem 2, Solution MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 34

A Simple Physical Network... Physical wiring 2012, D.I. Lindner MPLS v4.6 35

IP Data Link View (Non-NBMA) Every virtual circuit has its own IP Net-ID (subinterface technique) 2012, D.I. Lindner MPLS v4.6 36

A Single Network Failure... 2012, D.I. Lindner MPLS v4.6 37

Causes Loss of Multiple IP Router Peers!!! 2012, D.I. Lindner MPLS v4.6 38

Example - Physical Topology net A net B net A1-A10 net B1-B10 Ra Rb net D1-D10 Sa Sb net C1-C10 net D Rd Sd Sc Rc net C 2012, D.I. Lindner MPLS v4.6 39

IP Connectivity through Full-mesh VC s net A net B net A1-A10 net B1-B10 Ra Rb net D1-D10 net C1-C10 net D Rd Rc net C 2012, D.I. Lindner MPLS v4.6 40

Static Routing/No Routing Broadcasts net A1-A10 net A net B net B1-B10 Ra Rb net D1-D10 net C1-C10 net D Rd Configuration Router Rd static routing address resolution PVC address resolution SVC net A via next hopra Ra map VPI/VCI Rd Ra Ra map ATM addr. Ra net B via next hoprb Rb map VPI/VCI Rd Rb Rb map ATM addr. Rb net C via next hoprc Rc map VPI/VCI Rd Rc Rc map ATM addr. Rc every remote network listed here! Rc net C 2012, D.I. Lindner MPLS v4.6 41

Dynamic Routing/Routing Broadcasts net A1-A10 net A net B net B1-B10 Ra Rb net D1-D10 net C1-C10 net D Configuration Router Rd Rd Rc dynamic routing on PVC address resolution PVC net C VPI/VCI Rd Ra broadcast Ra map VPI/VCI Rd Ra VPI/VCI Rd Rb broadcast Rb map VPI/VCI Rd Rb VPI/VCI Rd Rc broadcast Rc map VPI/VCI Rd Rc note: SVCs may be possible if Cisco neighbor command is specified for Cisco routing process because no automatic neighbor discovery is possible in this case 2012, D.I. Lindner MPLS v4.6 42

Observations This clearly does not scale Switch/router interaction needed peering model Without MPLS Only outside routers are layer 3 neighbors one ATM link failure causes multiple peer failures routing traffic does not scale (number of peers) With MPLS Inside MPLS switch is the layer 3 routing peer of an outside router one ATM link failure causes one peer failure highly improved routing traffic scalability 2012, D.I. Lindner MPLS v4.6 43

Agenda Review ATM IP over WAN Problems (Traditional Approach) Introduction, Base Problem 1 Non-NBMA-View NMBA-View Base Problem 2, Solution MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 44

A Simple Physical Network... Physical wiring and NBMA behavior 2012, D.I. Lindner MPLS v4.6 45

IP Data Link View (NBMA) Routers assume a LAN behavior because all interfaces have the same IP Net-ID but LAN broadcasting to reach all others is not possible LIS Logical IP Subnet 2012, D.I. Lindner MPLS v4.6 46

Some Solutions for the NBMA Problem ARP (Address Resolution Protocol) Server keeps configuration overhead for address resolution small but does not solve the routing issue (neighbor discovery and duplicate routing broadcasts on a single wire) MARS/MCS (Multicast Address Resolution Server / Multicast Server) additional keeps configuration overhead for routing small and does solve broadcast/multicast problem with either full mesh of point-to-multipoint circuits or by usage of MCS server LANE (LAN Emulation = ATM VLAN s) simulates LAN behavior where address resolution and routing broadcasts are not a problem All of them require a lot of control virtual circuits (p-t-p and p-t-m) and SVC support of the underlying ATM network 2012, D.I. Lindner MPLS v4.6 47

RFC 2225 Operation (Classical IP over ATM) ARP server for every LIS multiple hops for communication between Logical IP Subnets ARP Server Subnet 1 ATM Network LIS1 LIS2 ARP Server Subnet 2 2012, D.I. Lindner MPLS v4.6 48

MARS/MCS Architecture Control VC MARS MCS CLIENT Server Control VC Cluster Control VC CLIENT CLIENT MCS point-to-multipoint data VC CLIENT CLIENT CLIENT 2012, D.I. Lindner MPLS v4.6 49

LANE Connections LES Control Direct Control Direct Control Distribute Data Direct (SVC -> VC on Demand) Multicast Forward Multicast Send Configure Direct LECS 2012, D.I. Lindner MPLS v4.6 50 BUS

Scalability Aspects Number of IP peers determines number of data virtual circuits number of control virtual circuits number of duplicate broadcasts on a single wire Method to solve the broadcast domain problem split the network in several LIS (logical IP subnets) connect LIS s by normal IP router (ATM-DCE) which is of course outside the ATM network But then another problem arise traffic between to two systems which both are attached to the ATM network but belong to different LIS s must leave the ATM network and enter it again at the connecting IP router (-> SAR delay) 2012, D.I. Lindner MPLS v4.6 51

IP Multiple LIS s in case of ROLC (Routing Over Large Clouds) IP router A connects LIS1 and LIS2 Router A LIS 1 LIS 2 2012, D.I. Lindner MPLS v4.6 52

Some Solutions for the ROLC Problem NHRP (Next Hop Resolution Protocol) creates an ATM shortcut between two systems of different LIS s MPOA (Multi Protocol Over ATM) LANE + NHRP combined creates an ATM shortcut between two systems of different LIS s In both methods the ATM shortcut is created if traffic between the two systems exceeds a certain threshold -> data-flow driven a lot of control virtual circuits (p-t-p and p-t-m) is required 2012, D.I. Lindner MPLS v4.6 53

Wish for Optimized Connectivity Logical Network LIS2 Source Logical Network LIS1 ATM Network Logical Network LIS4 Logical Network LIS3 Classical Path Optimized Path Destination 2012, D.I. Lindner MPLS v4.6 54

Next Hop Resolution Protocol (RFC 2332) NHS1 NHS2 NHS3 NHS4 NH-Request NH-Reply Next Hop Server ATM Network LIS1 LIS2 LIS3 LIS4 Direct Connection Next hop requests are passed between next hop servers Next hop servers do not forward data NHS that knows about the destination sends back a NH-reply Allows direct connection between logical IP subnets across the ATM cloud Separates data forwarding path from reachability information 2012, D.I. Lindner MPLS v4.6 55

Agenda Review ATM IP over WAN Problems (Traditional Approach) Introduction, Base Problem 1 Non-NBMA-View NMBA-View Base Problem 2, Solution MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 56

IP Performance Base problem Nr.2 IP forwarding is slow compared to ATM cell forwarding IP routing paradigm hop-by-hop routing with (recursive) IP routing table lookup, IP TTL decrement and IP checksum computing destination based routing (large tables in the core of the Internet) Load balancing in a stable network all IP datagram's will follow the same path (least cost routing versus ATM s QoS routing) QoS (Quality of Service) IP is connectionless packet switching (best-effort delivery versus ATM s guarantees) VPN (Virtual Private Networks) ATM VC s have a natural closed user group (=VPN) behavior 2012, D.I. Lindner MPLS v4.6 57

Basic Ideas to Solve the Problems Make ATM topology visible to IP routing to solve the scalability problems a classical ATM switch gets IP router functionality Divide IP routing from IP forwarding to solve the performance problems IP forwarding based on ATM s swapping paradigm (connection-oriented packet switching) IP routing based on classical IP routing protocols Combine best of both forwarding based on ATM swapping paradigm routing done by traditional IP routing protocols 2012, D.I. Lindner MPLS v4.6 58

MPLS Several similar technologies were invented in the mid-1990s IP Switching (Ipsilon) Cell Switching Router (CSR, Toshiba) Tag Switching (Cisco) Aggregated Route-Based IP Switching (ARIS, IBM) IETF merges these technologies MPLS (Multi Protocol Label Switching) note: multiprotocol means that IP is just one possible protocol to be transported by a MPLS switched network RFC 3031 2012, D.I. Lindner MPLS v4.6 59

MPLS Building Blocks MPLS VPN (Virtual Private Network) MPLS Multicast MPLS Transport MPLS ATOM (Any Transport over MPLS) MPLS TE (Traffic Engineering) MPLS QoS (Quality of Service) You always need this! MPLS Transport solves most of the mentioned problems (scalability / performance) If you need "Advanced Features like VPN or Multicast support you optionally may choose from these building blocks riding on top of a MPLS Transport network 2012, D.I. Lindner MPLS v4.6 60

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 61

MPLS Approach Traditional IP uses the same information for path determination (routing) packet forwarding (switching) MPLS separates the tasks L3 addresses used for path determination s used for switching MPLS Network consists of MPLS Edge Routers and MPLS Switches MPLS Edge Routers and MPLS Switches exchange routing information about L3 IP networks exchange forwarding information about the actual usage of s 2012, D.I. Lindner MPLS v4.6 62

MPLS Network MPLS Edge Router or LER (Label Edge Router) MPLS Switch or LSR (Label Switching Router) MPLS Network Router Component + Control Component Forwarding Component 2012, D.I. Lindner MPLS v4.6 63

MPLS LSR Internal Components Routing Component still accomplished by using standard IP routing protocols creating routing table Control Component maintains correct distribution among a group of switches Label Distribution Protocol for communication between MPLS Switches between MPLS Switch and MPLS Edge Router Forwarding Component uses s carried by packets plus information maintained by a switch (classical VC switching table) to perform packet forwarding -> swapping 2012, D.I. Lindner MPLS v4.6 64

MPLS Control Communication Label Distribution Protocol Routing Protocol 2012, D.I. Lindner MPLS v4.6 65

Generic Overview of MPLS LSR Internal Processes and Communication Routing Protocol Label Distribution Protocol control packets in for routing and distribution Routing Table (RT) Routing Component Control Component Label Mgt. Process Routing Process Label Information Base (LIB) Routing Protocol Label Distribution Protocol control packets out for routing and distribution ed data packets in Forwarding Component Forwarding Process Label Switching Table ed data packets out 2012, D.I. Lindner MPLS v4.6 66

MPLS Basic Operations 1a. Routing protocol (e.g. OSPF) establishes reachability to destination networks 1b. Label Distribution Protocol establishes MPLS paths (VC) along switching tables 4. Egress MPLS router at egress removes and delivers packet 2. Ingress MPLS router receives packet, s it and by sends it along a particular MPLS path (VC) 3. MPLS switches ed packets using switching table 2012, D.I. Lindner MPLS v4.6 67

MPLS Header: Frame Mode One 4 Byte MPLS header Layer 2 (Ethernet, PPP) Label Exp S TTL IP 20 Bit 3 1 8 Label Stack Layer 2 MPLS Header 1 MPLS Header 2 MPLS Header 3 IP "Layer 2.5 can be used over Ethernet, 802.3 or PPP links note: 2.5 means 32 bit 20-bit MPLS (Label) 3-bit experimental field (Exp) could be copy of IP Precedence -> MPLS QoS like IP QoS with DiffServ Model based on DSCP 1-bit bottom-of-stack indicator (S) Labels could be stacked (Push & Pop) MPLS switching performed always on the first of the stack 8-bit time-to-live field (TTL) 2012, D.I. Lindner MPLS v4.6 68

MPLS Header: Cell Mode MPLS Header 1 MPLS Header 2 IP Packet ATM Convergence Sublayer (CS): MPLS Header 1 MPLS Header 2 IP Packet AAL5 Trailer ATM Switches can only switch VPI/VCI no MPLS s! Only the topmost is inserted in the VPI/VCI field ATM Segmentation and Reassembling Sublayer (SAR): (first cell) GFC VPI VCI PTI CLP HEC MPLS Header(s) IP Header DATA Topmost Label (subsequent cells) GFC VPI VCI PTI CLP HEC DATA Topmost Label 2012, D.I. Lindner MPLS v4.6 69

Labels and FEC A is used to identify a certain subset of packets which take the same MPLS path or which get the same forwarding treatment in the MPLS switched network The path is so called Label Switched Path (LSP) The MPLS Virtual Circuit Thus a represents a so called Forwarding Equivalence Class (FEC) The assignment of a packet to FEC is done just once by the MPLS Edge Router, as the packet enters the network most commonly this is based on the IP network layer destination address 2012, D.I. Lindner MPLS v4.6 70

Label Binding Two neighboring LSRs R1 and R2 may agree that when R1 transmits a packet to R2, R1 will with packet with value L if and only if the packet is a member of a particular FEC F They agree on a so called "binding" between L and FEC F for packets moving from R1 to R2 As a result L becomes R1 s "outgoing " or remote representing FEC F L becomes R2 s "incoming " or local representing FEC F 2012, D.I. Lindner MPLS v4.6 71

Creating and Destroying Label Binding 1 Control Driven (favored by IETF-WG) creation or deconstruction of s is triggered by control information such as OSPF routing, IS-IS routing PIM Join/Prune messages in case of IP multicast routing IntSrv RSVP messages in case of IP QoS IntSrv Model DiffSrv Traffic Engineering in Case of IP QoS DiffSrv Model hence we have a pre-assignment of s based on reachability information and optionally based on QoS needs also called Topology Driven 2012, D.I. Lindner MPLS v4.6 72

Creating and Destroying Label Binding 2 Data Driven creation or deconstruction of s is triggered by data packets but only if a critical threshold number of packets for a specific communication relationship is reached may have a big performance impact hence we have dynamic assignment of s based on data flow detection also called Traffic Driven 2012, D.I. Lindner MPLS v4.6 73

Some FEC Examples for Topology Driven FECs could be for example a set of unicast packets whose network layer destination address matches a particular IP address prefix MPLS application: Destination Based (Unicast) Routing a set of multicast packets with the same source and destination network layer address MPLS application: Multicast Routing a set of unicast packets whose network layer destination address matches a particular IP address prefix and whose Type of Service (ToS) or DSCP bits are the same MPLS application: Quality of Service MPLS application: Traffic Engineering or Constraint Based Routing 2012, D.I. Lindner MPLS v4.6 74

Label Distribution MPLS architecture allows an LSR to distribute bindings to LSRs that have not explicitly requested them Unsolicited Downstream" distribution usually used by Frame-Mode MPLS MPLS architecture allows an LSR to explicitly request, from its next hop for a particular FEC, a binding for that FEC Downstream-On-Demand" distribution must be used by Cell-Mode MPLS 2012, D.I. Lindner MPLS v4.6 75

Label Binding The decision to bind a particular L to a particular FEC F is made by the LSR which is DOWNSTREAM with respect to that binding the downstream LSR then informs the upstream LSR of the binding thus s are "downstream-assigned thus bindings are distributed in the "downstream to upstream direction Discussion were about if s should also be upstream-assigned not any longer part of current MPLS-RFC 2012, D.I. Lindner MPLS v4.6 76

Label Retention Mode 1 A LSR may receive a binding for a particular FEC from another LSR, which is not next hop based on the routing table for that FEC This LSR then has the choice of whether to keep track of such bindings, or whether to discard such bindings A LSR supports "Liberal Label Retention Mode" if it maintains the bindings between a and a FEC which are received from LSR s which are not its next hop for that FEC 2012, D.I. Lindner MPLS v4.6 77

Label Retention Mode 2 A LSR supports "Conservative Label Retention mode " If it discards the bindings between a and a FEC which are received from LSR s which are not its next hop for that FEC Liberal Label Retention mode allows for quicker adaptation to routing changes LSR can switch over to next best LSP Conservative Label Retention mode requires an LSR to maintain fewer s LSR has to wait for new bindings in case of topology changes 2012, D.I. Lindner MPLS v4.6 78

Independent versus Ordered Control Independent Control: each LSR may make an independent decision to assign a a to a FEC and to advertise the assignment to its neighbors typically used in Frame-Mode MPLS for destination based routing loop prevention must be done by other means (-> MPLS TTL) but there is faster convergence Ordered Control: assignment proceeds in an orderly fashion from one end of a LSP to the other under ordered control, LSP setup may be initiated by the ingress (header) or egress (tail) MPLS Edge Router 2012, D.I. Lindner MPLS v4.6 79

Ordered Control - Egress in case of egress method the only LSR which can initiate the process of assignment is the egress LSR a LSR knows that it is the egress for a given FEC if its next hop for this FEC is not an LSR this LSR will sent a advertisement to all neighboring LSRs a neighboring LSR receiving such a advertisement from a interface which is the next hop to a given FEC will assign its own and advertise it to all other neighboring LSRs inherent loop prevention slower convergence 2012, D.I. Lindner MPLS v4.6 80

Ordered Control - Ingress in case of ingress method the LSR which initiates the process of assignment is the ingress LSR the ingress LSR constructs a source route and pass on requests for bindings to the next LSR this is done until LSR which is the end of the source route is reached from this LSR bindings will flow upstream to the ingress LSR used for MPLS Traffic Engineering (TE) 2012, D.I. Lindner MPLS v4.6 81

MPLS Applications and MPLS Control Plane Different Control Planes Unicast Fwd. Multicast Fwd. MPLS TE MPLS QoS MPLS VPN Any IGP OSPF/ISIS Any IGP Any IGP IP RT M-RT IP RT IP RT IP RT LDP/TDP PIMv2 LDP RSVP LDP/TDP LDP BGP Data Plane (Forwarding Plane) Label Switching Table 2012, D.I. Lindner MPLS v4.6 82

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods Unsolicited Downstream Downstream On Demand MPLS and ATM, VC Merge Problem MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 83

Routing Table Created by Routing Protocol address prefix 128.89.10 171.69... FEC Label Binding: Control Driven Destination Based Routing i/f 1 interface 1 1 address prefix 128.89.10 171.69... i/f 0 interface 0 1 LSR Routing Table address prefix interface 128.89.10 0... LER LER i/f 0 128.89.10 LER i/f 1 i/f 0 171.69 Data Flow address prefix interface 171.69 0... 2012, D.I. Lindner MPLS v4.6 84

Labels Sent by LDP local x x Label Distribution: Unsolicited Downstream remote address address prefix 128.89.10 128.89.10 171.69 171.69...... if 1 1 local remote 5 7 address prefix 128.89.10 171.69... i/f 0 if 0 1 Switching Table (ST) local remote 5 x Advertises binding <5,128.89.10> Routing Table (RT) address prefix 128.89.10... Label Binding i/f 0 if 0 128.89.10 i/f 1 Advertisings received from the IP next hop (RT) for those networks (FECs) -> switching table i/f 1 Advertises binding <7,171.69> i/f 0 171.69 Data Flow local 7 remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 85

Labels Sent and Switching Table Entry Created by MPLS Switch local x x Label Distribution: Unsolicited Downstream remote address address prefix 128.89.10 3 128.89.10 4171.69 171.69...... if 1 1 local 3 4 Label Binding remote 5 7 address prefix 128.89.10 171.69... i/f 0 if 0 1 local 5 remote x address prefix 128.89.10... i/f 0 if 0 128.89.10 i/f 1 Advertises bindings <3,128.89.10> <4,171.69> i/f 1 i/f 0 171.69 Advertisings received from the IP next hop (RT) for those networks (FECs) -> switching table Data Flow local 7 remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 86

MPLS Switched Packets local x x remote address address prefix prefix 128.89.10 3 128.89.10 4171.69 171.69...... 1 if 1 1 local 3 4 remote 5 7 address prefix 128.89.10 171.69... if 0 1 MPLS Path = LSP to FEC 128.89.10 0 Label Swapping 128.89.10 MPLS Path = LSP to FEC 171.69 171.69 171.69.12.1 data 4 171.69.12.1 data 1 MPLS Edge Router does longest match, adds ( impose ) Data Flow subsequent MPLS switch forwards on (based on ST), swaps 7 171.69.12.1 data last MPLS router strip off the ( untag ) and routes packet based on RT local 7 171.69.12.1 data remote x address prefix 171.69... 2012, D.I. Lindner MPLS v4.6 87

Routing Table Created by Routing Protocol address prefix interface 135.24.50 1... FEC Label Binding: Control Driven Destination Based Routing address prefix interface 135.24.50 0... address prefix interface 135.24.50 0... i/f 0 LER i/f 1 i/f 0 LSR LER LER 135.24.50 Data Flow i/f 0 address prefix interface 135.24.50 0... 2012, D.I. Lindner MPLS v4.6 88

Labels Sent by LDP local 5 Label Distribution: Unsolicited Downstream remote address address prefix 128.89.10 x 135.24.50 171.69 if 1 local remote 5 address prefix 135.24.50... if 0 local x remote i/f 0 address prefix 135.24.50... if 0 i/f 1 i/f 0 Advertises binding <5, 135.24.50> i/f 0 135.24.50 Advertising received from the IP next hop (RT) for those networks (FECs) -> switching table Data Flow local x remote address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 89

Labels Sent and Switching Table Entry Created by MPLS Switch local 5 i/f 1 Label Distribution: Unsolicited Downstream remote address address prefix 128.89.10 x 135.24.50 171.69 if 1 local 7 i/f 0 remote 5 address prefix 135.24.50... if 0 local x Advertises binding <7, 135.24.50> remote 7 i/f 0 address prefix 135.24.50... Advertisings received from the IP next hop (RT) for those networks (FECs) -> switching table Advertises binding <7, 135.24.50> i/f 0 if 0 135.24.50 Data Flow local x remote 7 address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 90

Label Merging - LSP Merging local 5 remote address address prefix 128.89.10 x 135.24.50 171.69 if 1 local 7 remote 5 address prefix 135.24.50... if 0 local x remote 7 address prefix 135.24.50... if 0 MPLS Path = LSP to FEC 135.24.50 MPLS Path = LPS to FEC 135.24.50 0 135.24.50 1 0 MPLS Path = LSP to FEC 135.24.50 135.24.50.1 data 5 135.24.50.1 data 0 last MPLS router strip off the and routes packet Data Flow subsequent 7 MPLS switch forwards on, swaps 135.24.50.1 data 135.24.50.1 data MPLS Edge Router does longest match, adds ( imose ) 2012, D.I. Lindner MPLS v4.6 91

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods Unsolicited Downstream Downstream On Demand MPLS and ATM, VC Merge Problem MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 92

Routing Table Created by Routing Protocol address prefix 128.89.10 171.69... FEC Label Binding: Control Driven Destination Based Routing i/f 1 interface 1 1 address prefix 128.89.10 171.69... i/f 0 interface 0 1 LSR address prefix interface 128.89.10 0... LER LER i/f 0 128.89.10 LER i/f 1 i/f 0 171.69 address prefix interface 171.69 0... 2012, D.I. Lindner MPLS v4.6 93

Labels Requested by MPLS Edge Routers local x x Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 128.89.10 171.69 171.69...... if 1 1 local remote address prefix 128.89.10 171.69... i/f 0 if 0 1 local remote x address prefix 128.89.10... i/f 0 if 0 128.89.10 i/f 1 Request binding <128.89.10> Request binding <171.69> i/f 1 i/f 0 171.69 Data Flow Request binding are sent in direction of the IP next hop (RT) for these networks (FECs) local remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 94

Labels Requested by MPLS Switch local x x Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 128.89.10 171.69 171.69...... i/f 1 if 1 1 local remote address prefix 128.89.10 171.69... i/f 0 i/f 1 if 0 1 Request binding <128.89.10> local remote x address prefix 128.89.10... i/f 0 i/f 0 if 0 128.89.10 Request binding are passed on in direction of the IP next hop (RT) for these networks (FECs) Request binding <171.69> 171.69 Data Flow local remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 95

Labels Allocated by MPLS Edge Router local x x Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 128.89.10 171.69 171.69...... i/f 1 if 1 1 local remote 5 7 address prefix 128.89.10 171.69... i/f 0 if 0 1 local 5 Advertises binding <5,128.89.10> remote x address prefix 128.89.10... i/f 0 if 0 128.89.10 Advertise-Bindings caused by former requests will lead to entries in the switching table i/f 1 Advertises binding <7,171.69> i/f 0 171.69 Data Flow local 7 remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 96

Labels Allocated and Switching Table Built by MPLS Switch local x x Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 3 128.89.10 4171.69 171.69...... if 1 1 local 3 4 remote 5 7 address prefix 128.89.10 171.69... i/f 0 if 0 1 local 5 remote x address prefix 128.89.10... i/f 0 if 0 128.89.10 i/f 1 Advertises bindings <3,128.89.10> <4,171.69> i/f 1 i/f 0 171.69 Data Flow Advertise-Bindings caused by former requests will lead to entries in the switching table local 7 remote x address prefix 171.69... if 0 2012, D.I. Lindner MPLS v4.6 97

MPLS Switched Packets local x x remote address address prefix prefix 128.89.10 3 128.89.10 4171.69 171.69...... if 1 1 local 3 4 remote 5 7 address prefix 128.89.10 171.69... if 0 1 MPLS Path = LSP to FEC 128.89.10 0 128.89.10 1 local 7 remote x address prefix 171.69... 171.69.12.1 data 4 171.69.12.1 data MPLS Edge Router does longest match, adds Data Flow subsequent MPLS switch forwards solely on, swaps 7 1 MPLS Path = LSP to FEC 171.69 171.69.12.1 data last MPLS router strip off the and routes packet 171.69 171.69.12.1 data 2012, D.I. Lindner MPLS v4.6 98

Routing Table Created by Routing Protocol address prefix interface 135.24.50 1... FEC Label Binding: Control Driven Destination Based Routing address prefix interface 135.24.50 0... address prefix interface 135.24.50 0... i/f 0 LER i/f 1 i/f 0 LSR LER LER 135.24.50 Data Flow i/f 0 address prefix interface 135.24.50 0... 2012, D.I. Lindner MPLS v4.6 99

Labels Requested by MPLS Edge Routers local Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 x 135.24.50 171.69 in-if 1 2 if 1 local remote address prefix 135.24.50 i/f 1... out-if 0 local i/f 0 requests binding < 135.24.50 > remote x address prefix 135.24.50... if 0 i/f 1 i/f 0 request binding < 135.24.50 > i/f 2 i/f 0 135.24.50 Data Flow local remote x address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 100

Labels Requested by MPLS Switch local Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 x 135.24.50 171.69 in-if 1 2 if 1 local remote address prefix 135.24.50 i/f 1... out-if 0 local i/f 0 remote x address prefix 135.24.50... if 0 i/f 1 i/f 0 requests binding < 135.24.50 > i/f 2 i/f 0 135.24.50 Data Flow request binding < 135.24.50 > local remote x address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 101

Labels Allocated by MPLS Edge Router local 5 7 Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 x 135.24.50 x171.69135.24.50 in-if 1 2 if 1 1 local remote 5 7 address prefix 135.24.50 135.24.50... i/f 1 out-if 0 0 local i/f 0 remote x address prefix 135.24.50... if 0 i/f 1 i/f 0 advertise binding < 5, 135.24.50 > i/f 2 i/f 0 135.24.50 advertise binding <7, 135.24.50 > Data Flow local remote x address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 102

Labels Allocated and Switching Table Built by MPLS Switch local 5 7 Label Distribution: Downstream-On-Demand remote address address prefix 128.89.10 x 135.24.50 x171.69135.24.50 in-if 1 2 if 1 1 local 3 4 remote 5 7 address prefix 135.24.50 135.24.50... i/f 1 out-if 0 0 advertise binding <3, 135.24.50 > local 3 i/f 0 remote x address prefix 135.24.50... if 0 i/f 1 i/f 0 i/f 2 advertise binding <4, 135.24.50 > i/f 0 135.24.50 Data Flow local 4 remote x address prefix 135.24.50... if 0 2012, D.I. Lindner MPLS v4.6 103

Two Separate LSPs local 5 7 135.24.50 remote address address prefix 128.89.10 x 135.24.50 x171.69135.24.50 MPLS Path = LPS to FEC 135.24.50 1 in-if if 1 1 1 2 local 3 4 remote 5 7 0 address prefix 135.24.50 135.24.50... out-if 0 0 MPLS Path 1 = LSP 1 to FEC 135.24.50 1 local 3 remote x local remote address prefix 4 x 135.24.50... MPLS Path 2 = LSP 2 to FEC 135.24.50 0 address prefix 135.24.50... if 0 if 0 135.24.50.1 data 7 135.24.50.1 data 2 0 last MPLS router strip off the and routes packet Data Flow subsequent MPLS switch forwards solely on, swaps 4 135.24.50.1 data 135.24.50.1 data MPLS Edge Router does longest match, adds 2012, D.I. Lindner MPLS v4.6 104

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods Unsolicited Downstream Downstream On Demand MPLS and ATM, VC Merge Problem MPLS Details (Cisco) RFCs 2012, D.I. Lindner MPLS v4.6 105

Label Switching and ATM Can be easily deployed with ATM because ATM uses swapping VPI/VCI is used as a ATM switches needs to implement control component of switching ATM attached router peers with ATM switch ( switch) exchange binding information Differences how s are set up distribution -> downstream on demand allocation merging in order to scale, merging of multiple streams (s) into one stream () is required 2012, D.I. Lindner MPLS v4.6 106

Label Switching and ATM IP Packet local 5 remote 3 y address prefix 128.89... if 0 1 5 5 5 5 3 3 3 3 3 3 128.89 5 5 5 5 IP Packet ATM switch interleaves cells of different packets onto same. That is a problem in case of AAL5 encapsulation. No problem in case of AAL3/AAL4 encapsulation because of AAL3/AAL4 s inherent multiplexing capability. 2012, D.I. Lindner MPLS v4.6 107

Label Distribution Solution for ATM requests a for 128.89 input i/f 1 2 local 5 5 remote 3 7 address prefix 128.89 128.89... output i/f 0 0 128.89 requests a for 128.89 requests two s for 128.89 returns a to each requester Downstream On Demand Label Distribution 2012, D.I. Lindner MPLS v4.6 108

Label Distribution Solution for ATM input i/f 1 2 local 5 5 remote 3 7 address prefix 128.89 128.89... output i/f 0 0 5 5 5 5 7 3 7 3 7 3 128.89 5 5 5 5 Downstream On Demand distribution is necessary multiple s per FEC may be assigned one per (ingress, egress) router pair Label space can be reduced with VC-merge technique 2012, D.I. Lindner MPLS v4.6 109

VC Merge Technique local 5 remote 3 address prefix 128.89 if 0... 5 5 5 5 3 3 3 3 3 3 128.89 5 5 5 5 ATM switch avoids interleaving of frames VC Merge technique looking for AAL5 trailers and storing corresponding cells of a frame until AAL5 trailer is seen 2012, D.I. Lindner MPLS v4.6 110

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods MPLS Details (Cisco) Internal Components MPLS in Action TDP, LDP TTL Traffic Engineering MPLS and BGP RFCs 2012, D.I. Lindner MPLS v4.6 111

Generic MPLS Control and Data Plane Routing Protocol Label Distribution Protocol Routing Table (RT) Label Mgt. Process Control Plane Routing Process Label Information Base (LIB) Routing Protocol Label Distribution Protocol MPLS Domain control packets in Data Plane MPLS Domain control packets out ed data packets in Forwarding Process Label Switching Table ed data packets out 2012, D.I. Lindner MPLS v4.6 112

Frame Mode MPLS for IP at LSR (Cisco) Routing Protocol Label Distribution Protocol MPLS Domain Incoming IP datagram s Incoming ed packets Routing Table (RT) Label Mgt. Process Control Plane Data Plane Routing Process Label Information Base (LIB) Forwarding Information Base (FIB) = Optimized RT Cache, Cisco s CEF Label Forwarding Information Base (LFIB) = Label Switching Table e.g. IP OSPF e.g. MPLS LDP (RFC) or Cisco s TDP MPLS Domain Outgoing IP datagram s Outgoing ed packets 2012, D.I. Lindner MPLS v4.6 113

Frame Mode MPLS for IP at Edge (LER) 1 Routing Protocol Routing Table (RT) Label Mgt. Process Control Plane Routing Process Label Information Base (LIB) Routing Protocol Label Distribution Protocol Incoming IP datagram s L3 lookup may point to LFIB and inserted Data Plane Forwarding Information Base (FIB) = Optimized RT Cache, Cisco s CEF Label Forwarding Information Base (LFIB) = Label Switching Table MPLS Domain Outgoing IP datagram s Outgoing ed packets 2012, D.I. Lindner MPLS v4.6 114

Frame Mode MPLS for IP at Edge (LER) 2 Routing Protocol Routing Table (RT) Label Mgt. Process Control Plane Routing Process Label Information Base (LIB) Routing Protocol Label Distribution Protocol Outgoing IP datagram s after removal subsequent L3 lookup Data Plane Forwarding Information Base (FIB) = Optimized RT Cache, Cisco s CEF Label Forwarding Information Base (LFIB) = Label Switching Table MPLS Domain Incoming IP datagram s Incoming ed packets 2012, D.I. Lindner MPLS v4.6 115

Important Databases FIB Forwarding Information Base This is the CEF database at Cisco routers Contains L2/L3 headers, IP addresses, s, next hop, metric The routing table is only a subset of the FIB LIB Label Information Base Contains all s and associated destinations LFIB Label Forwarding Information Base Contains selected s used for forwarding Selection based on FIB 2012, D.I. Lindner MPLS v4.6 116

Cisco Express Forwarding (CEF) Requirement for MPLS Forwarding information (L2-headers, addresses, s) are maintained in FIB for each destination Newest and fastest IOS switching method Critical in environments with frequent route changes and large RT s: The Internet backbone! Invented to overcome Fast Switching problems: Originally Hash table, since 10.2 2-way radix-tree No overlapping cache entries Any change of RT or ARP cache invalidates route cache First packet is always process-switched to build route cache entry Inefficient load balancing when "many hosts to one server" 2012, D.I. Lindner MPLS v4.6 117

How CEF Works CEF "Fast Cache" consists of CEF table: Stripped-down version of the RT (256-way mtrie data structure) Adjacency table: Actual forwarding information (MAC, interfaces,...) CEF cache is pre-built before any packets are switched No packet needs to be process switched CEF entries never age out Any RT or ARP changes are immediately mapped into CEF cache 1.0.0.0 10.1.0.0 10.20.1.0 10.20.5.1 CEF Table 2.0.0.0 10.2.0.0 10.20.2.0 10.20.5.2 root... 10.0.0.0... 10.20.0.0... 10.20.5.0... 10.20.5.16 Example-Look up "10.20.5.16............ 255.0.0.0 10.255.0.0 10.20.255.0 10.20.5.255 Example-Look up "10.20.255.x CEF Table is built directly from the RT Adjacency Table is built directly from the ARP cache in case of LAN Attention: For an IP-Prefix the pointer to the Adjacency Table will start earlier in the structure Adj Tab... Adjacency Table 00E3.C10F.8B11 Interface e0/0... 2012, D.I. Lindner MPLS v4.6 118

Label Distribution 10/8 exist 10/8 exist 10/8 exist 10/8 exist 10/8 exist RT 10/8 via R2 RT 10/8 via R3 RT 10/8 via R4 RT 10/8 via R5 RT 10/8 via R6 Routing Update R1 R2 LER FIB 10/8 via R3 use 89 10/8 use 89 R3 LSR FIB 10/8 via R4 use 22 10/8 use 22 R4 LSR FIB 10/8 via R5 use 41 LDP Binding 10/8 use 41 R5 LER FIB 10/8 via R6 no lab. R6 10/8 LFIB LFIB LFIB LFIB In Out In Out In Out In Out - 89 89 22 22 41 41 Untag Both routing updates and LDP/TDP distribute reachability information in = local, out = remote 2012, D.I. Lindner MPLS v4.6 119

Label Switching RT 10/8 via R6 10.0.0.1 10.0.0.1 89 10.0.0.1 22 10.0.0.1 41 10.0.0.1 R1 R2 R3 R4 R5 R6 FIB 10/8 via R3 use 89 FIB 10/8 via R4 use 22 FIB 10/8 via R5 use 41 FIB 10/8 via R6 no lab. 10/8 LFIB LFIB LFIB LFIB Local Remote Local Remote Local Remote Local Remote - 89 89 22 22 41 41 Untag R5 must perform double lookup: LFIB tells "remove the FIB tells "use next hop R6" Label should be removed on hop earlier (by R4)!!!! 2012, D.I. Lindner MPLS v4.6 120

Penultimate Hop Popping 1 RT 10/8 via R6 10/8 exist Routing Update R1 R2 10/8 use 89 R3 10/8 use 22 R4 10/8 do POP R5 R6 FIB FIB FIB FIB 10/8 10/8 via R3 use 89 10/8 via R4 use 22 10/8 via R5 do POP 10/8 via R6 no lab. In - LFIB Out 89 In 89 LFIB Out 22 LFIB Last hop router (R5) tells penultimate router (R4) to remove "Penultimate Hop Popping" (PHP) Also called "Implicit Null Label" In 22 Out POP LFIB In Out implicit - null 2012, D.I. Lindner MPLS v4.6 121

Penultimate Hop Popping 2 RT 10/8 via R6 10.0.0.1 10.0.0.1 89 10.0.0.1 22 10.0.0.1 10.0.0.1 R1 R2 R3 R4 R5 R6 FIB 10/8 via R3 use 89 FIB 10/8 via R4 use 22 FIB 10/8 via R5 do POP FIB 10/8 via R6 no lab. 10/8 In - LFIB Out 89 In 89 LFIB Out R5 only performs single lookup in FIB Note: PHP does not work with ATM VPI/VCI cannot be removed 22 In 22 LFIB Out POP In implicit null LFIB Out - 2012, D.I. Lindner MPLS v4.6 122

Cisco IOS Standard Behavior 1 Routers with packet interfaces (Frame-Mode MPLS) Per-platform Label Space!!! a assigned by an LSR to a given FEC is used on all interfaces in advertisements of this LSR Unsolicited Downstream Label Distribution distribution is done unsolicited Liberal Label Retention Mode received s which are not used by a given LSR are still stored in the LIB allows faster convergence of LSP after rerouting Independent Control s are assigned by LSR independently from each other 2012, D.I. Lindner MPLS v4.6 123

Cisco IOS Standard Behavior 2 Routers with ATM interfaces (Cell-Mode MPLS) Per-interface Label Space a different for the same FEC is used on each single interface in advertisements of this LSR Downstream On Demand Label Distribution distribution is done on request Conservative or Liberal Label Retention Mode received s which are not used by a given LSR are not stored in the LIB in case of conservative mode Independent Control 2012, D.I. Lindner MPLS v4.6 124

Cisco IOS Standard Behavior 3 ATM switches (Cell-Mode MPLS) Per-interface Label Space Downstream On Demand Label Distribution Conservative Label Retention Mode Ordered control s are assigned by LSR in a controlled fashion from egress to ingress 2012, D.I. Lindner MPLS v4.6 125

Agenda Review ATM IP over WAN Problems (Traditional Approach) MPLS Principles Label Distribution Methods MPLS Details (Cisco) Internal Components MPLS in Action TDP, LDP TTL Traffic Engineering MPLS and BGP RFCs 2012, D.I. Lindner MPLS v4.6 126