mpls

Views:
 
Category: Entertainment
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

MPLS Tutorial:

MPLS Tutorial Peter Ashwood-Smith Bilel N. Jamoussi petera@nortelnetworks.com jamoussi@nortelnetworks.com

Tutorial Outline:

Tutorial Outline Overview Label Encapsulations Label Distribution Protocols MPLS & ATM Constraint Based Routing with CR-LDP Summary

“Label Substitution” what is it?:

“Label Substitution” what is it? BROADCAST : Go everywhere, stop when you get to B, never ask for directions. HOP BY HOP ROUTING : Continually ask who’s closer to B go there, repeat … stop when you get to B . “Going to B? You’d better go to X, its on the way”. SOURCE ROUTING : Ask for a list (that you carry with you) of places to go that eventually lead you to B . “Going to B? Go straight 5 blocks, take the next left, 6 more blocks and take a right at the lights”. One of the many ways of getting from A to B:

Label Substitution:

Label Substitution Have a friend go to B ahead of you using one of the previous two techniques. At every road they reserve a lane just for you. At ever intersection they post a big sign that says for a given lane which way to turn and what new lane to take. LANE#1 LANE#2 LANE#1 TURN RIGHT USE LANE#2

A label by any other name ...:

A label by any other name ... There are many examples of label substitution protocols already in existence. ATM - label is called VPI/VCI and travels with cell. Frame Relay - label is called a DLCI and travels with frame. TDM - label is called a timeslot its implied, like a lane. X25 - a label is an LCN Proprietary PORS, TAG etc.. One day perhaps Frequency substitution where label is a light frequency?

SO WHAT IS MPLS ?:

SO WHAT IS MPLS ? Hop-by-hop or source routing to establish labels Uses label native to the media Multi level label substitution transport

ROUTE AT EDGE, SWITCH IN CORE:

ROUTE AT EDGE, SWITCH IN CORE IP Forwarding LABEL SWITCHING IP Forwarding IP IP #L1 IP #L2 IP #L3 IP

MPLS: HOW DOES IT WORK :

MPLS: HOW DOES IT WORK UDP - Hello UDP - Hello TCP - open TIME TIME Label request IP Label mapping #L2 Initialization(s)

WHY MPLS ?:

WHY MPLS ? Leverage existing ATM hardware Ultra fast forwarding IP Traffic Engineering Constraint-based Routing Virtual Private Networks Controllable tunneling mechanism Voice/Video on IP Delay variation + QoS constraints

BEST OF BOTH WORLDS:

BEST OF BOTH WORLDS PACKET ROUTING CIRCUIT SWITCHING MPLS + IP form a middle ground that combines the best of IP and the best of circuit switching technologies. ATM and Frame Relay cannot easily come to the middle so IP has!! MPLS+IP IP ATM HYBRID

MPLS Terminology:

MPLS Terminology LDP: Label Distribution Protocol LSP: Label Switched Path FEC: Forwarding Equivalence Class LSR: Label Switching Router LER: Label Edge Router (Useful term not in standards)

Forwarding Equivalence Classes:

Forwarding Equivalence Classes FEC = “A subset of packets that are all treated the same way by a router” The concept of FECs provides for a great deal of flexibility and scalability In conventional routing, a packet is assigned to a FEC at each hop (i.e. L3 look-up), in MPLS it is only done once at the network ingress Packets are destined for different address prefixes, but can be mapped to common path IP1 IP2 IP1 IP2 LSR LSR LER LER LSP IP1 #L1 IP2 #L1 IP1 #L2 IP2 #L2 IP1 #L3 IP2 #L3

LABEL SWITCHED PATH (vanilla):

#216 #612 #5 #311 #14 #99 #963 #462 - A Vanilla LSP is actually part of a tree from every source to that destination (unidirectional). - Vanilla LDP builds that tree using existing IP forwarding tables to route the control messages. #963 #14 #99 #311 #311 #311 LABEL SWITCHED PATH (vanilla)

MPLS BUILT ON STANDARD IP:

MPLS BUILT ON STANDARD IP 47.1 47.2 47.3 1 2 3 1 2 3 1 2 3 Destination based forwarding tables as built by OSPF, IS-IS, RIP, etc.

IP FORWARDING USED BY HOP-BY-HOP CONTROL:

IP FORWARDING USED BY HOP-BY-HOP CONTROL 47.1 47.2 47.3 IP 47.1.1.1 1 2 3 1 2 1 2 3 IP 47.1.1.1 IP 47.1.1.1 IP 47.1.1.1

MPLS Label Distribution:

MPLS Label Distribution 47.1 47.2 47.3 1 2 3 1 2 1 2 3 3 Mapping: 0.40 Request: 47.1 Mapping: 0.50 Request: 47.1

Label Switched Path (LSP):

Label Switched Path (LSP) 47.1 47.2 47.3 1 2 3 1 2 1 2 3 3 IP 47.1.1.1 IP 47.1.1.1

EXPLICITLY ROUTED OR ER-LSP:

#216 #14 #462 - ER-LSP follows route that source chooses. In other words, the control message to establish the LSP (label request) is source routed . #972 #14 #972 A B C Route= {A,B,C} EXPLICITLY ROUTED OR ER-LSP

EXPLICITLY ROUTED LSP ER-LSP:

47.1 47.2 47.3 1 2 3 1 2 1 2 3 3 IP 47.1.1.1 IP 47.1.1.1 EXPLICITLY ROUTED LSP ER-LSP

ER LSP - advantages:

ER LSP - advantages Operator has routing flexibility (policy-based, QoS-based) Can use routes other than shortest path Can compute routes based on constraints in exactly the same manner as ATM based on distributed topology database. (traffic engineering)

ER LSP - discord!:

ER LSP - discord! Two signaling options proposed in the standards: CR-LDP, RSVP extensions: CR-LDP = LDP + Explicit Route RSVP ext = Traditional RSVP + Explicit Route + Scalability Extensions Not going to be resolved any time soon, market will probably have to resolve it. Survival of the fittest not such a bad thing.

Tutorial Outline:

Tutorial Outline Overview Label Encapsulations Label Distribution Protocols MPLS & ATM Constraint Based Routing with CR-LDP Summary

Label Encapsulation:

Label Encapsulation ATM FR Ethernet PPP MPLS Encapsulation is specified over various media types. Top labels may use existing format, lower label(s) use a new “shim” label format. VPI VCI DLCI “Shim Label” L2 Label “Shim Label” ……. IP | PAYLOAD

MPLS Link Layers:

MPLS Link Layers MPLS is intended to run over multiple link layers Specifications for the following link layers currently exist: ATM: label contained in VCI/VPI field of ATM header Frame Relay: label contained in DLCI field in FR header PPP/LAN: uses ‘shim’ header inserted between L2 and L3 headers Translation between link layers types must be supported MPLS intended to be “multi-protocol” below as well as above

MPLS Encapsulation - ATM:

MPLS Encapsulation - ATM ATM LSR constrained by the cell format imposed by existing ATM standards VPI PT CLP HEC 5 Octets ATM Header Format VCI AAL5 Trailer ••• Network Layer Header and Packet (eg. IP) 1 n AAL 5 PDU Frame (nx48 bytes) Generic Label Encap. (PPP/LAN format) ATM SAR ATM Header ATM Payload • • • Top 1 or 2 labels are contained in the VPI/VCI fields of ATM header - one in each or single label in combined field, negotiated by LDP Further fields in stack are encoded with ‘shim’ header in PPP/LAN format - must be at least one, with bottom label distinguished with ‘explicit NULL’ TTL is carried in top label in stack, as a proxy for ATM header (that lacks TTL) 48 Bytes 48 Bytes Label Label Option 1 Option 2 Combined Label Option 3 Label ATM VPI (Tunnel)

MPLS Encapsulation - Frame Relay:

MPLS Encapsulation - Frame Relay ••• n 1 DLCI C/ R E A DLCI FE CN BE CN D E E A Q.922 Header Generic Encap. (PPP/LAN Format) Layer 3 Header and Packet DLCI Size = 10, 17, 23 Bits Current label value carried in DLCI field of Frame Relay header Can use either 2 or 4 octet Q.922 Address (10, 17, 23 bytes) Generic encapsulation contains n labels for stack of depth n - top label contains TTL (which FR header lacks), ‘explicit NULL’ label value

MPLS Encapsulation - PPP & LAN Data Links:

MPLS Encapsulation - PPP & LAN Data Links Label Exp. S TTL Label: Label Value, 20 bits (0-16 reserved) Exp.: Experimental, 3 bits (was Class of Service) S: Bottom of Stack, 1 bit (1 = last entry in label stack) TTL: Time to Live, 8 bits Layer 2 Header (eg. PPP, 802.3) ••• Network Layer Header and Packet (eg. IP) 4 Octets MPLS ‘Shim’ Headers (1-n) 1 n Network layer must be inferable from value of bottom label of the stack TTL must be set to the value of the IP TTL field when packet is first labelled When last label is popped off stack, MPLS TTL to be copied to IP TTL field Pushing multiple labels may cause length of frame to exceed layer-2 MTU - LSR must support “Max. IP Datagram Size for Labelling” parameter - any unlabelled datagram greater in size than this parameter is to be fragmented MPLS on PPP links and LANs uses ‘Shim’ Header Inserted Between Layer 2 and Layer 3 Headers Label Stack Entry Format

Tutorial Outline:

Tutorial Outline Overview Label Encapsulations Label Distribution Protocols MPLS & ATM IETF Status Nortel’s Activity Summary

Label Distribution Protocols:

Label Distribution Protocols Overview of Hop-by-hop & Explicit Label Distribution Protocol (LDP) Constraint-based Routing LDP (CR-LDP) Extensions to RSVP Extensions to BGP

Comparison - Hop-by-Hop vs. Explicit Routing:

Comparison - Hop-by-Hop vs. Explicit Routing Hop-by-Hop Routing Explicit Routing Source routing of control traffic Builds a path from source to dest Requires manual provisioning, or automated creation mechanisms. LSPs can be ranked so some reroute very quickly and/or backup paths may be pre-provisioned for rapid restoration Operator has routing flexibility (policy-based, QoS-based, Adapts well to traffic engineering Distributes routing of control traffic Builds a set of trees either fragment by fragment like a random fill, or backwards, or forwards in organized manner. Reroute on failure impacted by convergence time of routing protocol Existing routing protocols are destination prefix based Difficult to perform traffic engineering, QoS-based routing Explicit routing shows great promise for traffic engineering

Explicit Routing - MPLS vs. Traditional Routing:

Explicit Routing - MPLS vs. Traditional Routing Connectionless nature of IP implies that routing is based on information in each packet header Source routing is possible, but path must be contained in each IP header Lengthy paths increase size of IP header, make it variable size, increase overhead Some gigabit routers require ‘slow path’ option-based routing of IP packets Source routing has not been widely adopted in IP and is seen as impractical Some network operators may filter source routed packets for security reasons MPLS’s enables the use of source routing by its connection-oriented capabilities - paths can be explicitly set up through the network - the ‘label’ can now represent the explicitly routed path Loose and strict source routing can be supported MPLS makes the use of source routing in the Internet practical

Label Distribution Protocols:

Label Distribution Protocols Overview of Hop-by-hop & Explicit Label Distribution Protocol (LDP) Constraint-based Routing LDP (CR-LDP) Extensions to RSVP Extensions to BGP

Label Distribution Protocol (LDP) - Purpose:

Label Distribution Protocol (LDP) - Purpose Label distribution ensures that adjacent routers have a common view of FEC <-> label bindings Routing Table: Addr-prefix Next Hop 47.0.0.0/8 LSR2 LSR1 LSR2 LSR3 IP Packet 47.80.55.3 Routing Table: Addr-prefix Next Hop 47.0.0.0/8 LSR3 For 47.0.0.0/8 use label ‘17’ Label Information Base: Label-In FEC Label-Out 17 47.0.0.0/8 XX Label Information Base: Label-In FEC Label-Out XX 47.0.0.0/8 17 Step 1: LSR creates binding between FEC and label value Step 2: LSR communicates binding to adjacent LSR Step 3: LSR inserts label value into forwarding base Common understanding of which FEC the label is referring to! Label distribution can either piggyback on top of an existing routing protocol, or a dedicated label distribution protocol (LDP) can be created

Label Distribution - Methods:

Label Distribution - Methods LSR1 LSR2 Label Distribution can take place using one of two possible methods Downstream Label Distribution Label-FEC Binding LSR2 and LSR1 are said to have an “LDP adjacency” (LSR2 being the downstream LSR) LSR2 discovers a ‘next hop’ for a particular FEC LSR2 generates a label for the FEC and communicates the binding to LSR1 LSR1 inserts the binding into its forwarding tables If LSR2 is the next hop for the FEC, LSR1 can use that label knowing that its meaning is understood LSR1 LSR2 Downstream-on-Demand Label Distribution Label-FEC Binding LSR1 recognizes LSR2 as its next-hop for an FEC A request is made to LSR2 for a binding between the FEC and a label If LSR2 recognizes the FEC and has a next hop for it, it creates a binding and replies to LSR1 Both LSRs then have a common understanding Request for Binding Both methods are supported, even in the same network at the same time For any single adjacency, LDP negotiation must agree on a common method

DOWNSTREAM MODE MAKING SPF TREE COPY IN H/W:

#963 #14 #99 #311 #311 #311 DOWNSTREAM MODE MAKING SPF TREE COPY IN H/W #462 D #311 D #963 D #14 D #99 D #216 D #612 D #5 D

DOWNSTREAM ON DEMAND MAKING SPF TREE COPY IN H/W:

#963 #14 #99 #311 #311 #311 DOWNSTREAM ON DEMAND MAKING SPF TREE COPY IN H/W #462 D #311 D #963 D #14 D #99 D #216 D #612 D #5 D D? D? D? D? D? D? D? D?

Distribution Control: Ordered v. Independent:

Distribution Control: Ordered v. Independent Independent LSP Control Ordered LSP Control Next Hop (for FEC) Outgoing Label Incoming Label MPLS path forms as associations are made between FEC next-hops and incoming and outgoing labels Each LSR makes independent decision on when to generate labels and communicate them to upstream peers Communicate label-FEC binding to peers once next-hop has been recognized LSP is formed as incoming and outgoing labels are spliced together Label-FEC binding is communicated to peers if: - LSR is the ‘egress’ LSR to particular FEC - label binding has been received from upstream LSR LSP formation ‘flows’ from egress to ingress Definition Comparison Labels can be exchanged with less delay Does not depend on availability of egress node Granularity may not be consistent across the nodes at the start May require separate loop detection/mitigation method Requires more delay before packets can be forwarded along the LSP Depends on availability of egress node Mechanism for consistent granularity and freedom from loops Used for explicit routing and multicast Both methods are supported in the standard and can be fully interoperable

INDEPENDENT MODE:

#963 #14 #99 #311 #311 #311 INDEPENDENT MODE #462 D #311 D #963 D #14 D #99 D #216 D #612 D #5 D

Label Retention Methods:

Label Retention Methods LSR1 LSR2 LSR3 LSR4 LSR5 Binding for LSR5 Binding for LSR5 Binding for LSR5 An LSR may receive label bindings from multiple LSRs Some bindings may come from LSRs that are not the valid next-hop for that FEC Liberal Label Retention Conservative Label Retention LSR1 LSR2 LSR3 LSR4 Label Bindings for LSR5 Valid Next Hop LSR4’s Label LSR3’s Label LSR2’s Label LSR1 LSR2 LSR3 LSR4 Label Bindings for LSR5 Valid Next Hop LSR4’s Label LSR3’s Label LSR2’s Label LSR maintains bindings received from LSRs other than the valid next hop If the next-hop changes, it may begin using these bindings immediately May allow more rapid adaptation to routing changes Requires an LSR to maintain many more labels LSR only maintains bindings received from valid next hop If the next-hop changes, binding must be requested from new next hop Restricts adaptation to changes in routing Fewer labels must be maintained by LSR Label Retention method trades off between label capacity and speed of adaptation to routing changes

LIBERAL RETENTION MODE:

LIBERAL RETENTION MODE #462 D #311 D #963 D #14 D #99 D #216 D #612 D #5 D #422 D #622 D These labels are kept incase they are needed after a failure.

CONSERVATIVE RETENTION MODE:

CONSERVATIVE RETENTION MODE #462 D #311 D #963 D #14 D #99 D #216 D #612 D #5 D #422 D #622 D These labels are released the moment they are received.

LDP - STATUS:

LDP - STATUS Gone to last call Multi Vendor interoperability demonstrated for DSOD on OC-3/ATM by (Nortel Networks & Cisco) at Interop/99 Source code for these PDUs publicly available: www.NortelNetworks.com/mpls

Label Distribution Protocols:

Label Distribution Protocols Overview of Hop-by-hop & Explicit Label Distribution Protocol (LDP) Constraint-based Routing LDP (CR-LDP) Extensions to RSVP

Constraint-based LSP Setup using LDP:

Constraint-based LSP Setup using LDP Uses LDP Messages (request, map, notify) Shares TCP/IP connection with LDP Can coexist with vanilla LDP and inter-work with it, or can exist as an entity on its own Introduces additional data to the vanilla LDP messages to signal ER, and other “Constraints”

ER-LSP Setup using CR-LDP:

ER-LSP Setup using CR-LDP LSR B LSR C LER D LER A ER Label Switched Path Ingress Egress 4. Label mapping message originates. 3. Request message terminates. 2. Request message processed and next node determined. Path list modified to <C,D> 1. Label Request message. It contains ER path < B,C,D> 5. LSR C receives label to use for sending data to LER D. Label table updated 6. When LER A receives label mapping, the ER established.

LDP/CR-LDP INTERWORKING:

#216 #14 #612 #5 #311 #462 - It is possible to take a vanilla LDP label request let it flow vanilla to the edge of the core, insert an ER hop list at the core boundary at which point it is CR-LDP to the far side of the core. A B C LDP CR-LDP #99 INSERT ER{A,B,C} LDP/CR-LDP INTERWORKING

Basic LDP Message additions:

Basic LDP Message additions LSPID: A unique tunnel identifier within an MPLS network. ER: An explicit route, normally a list of IPV4 addresses to follow (source route) the label request message. Resource Class (Color): to constrain the route to only links of this Color. Basically a 32 bit mask used for constraint based computations. Traffic Parameters: similar to ATM call setup, which specify treatment and reserve resources.

CR-LDP Traffic Parameters:

CR-LDP Traffic Parameters

CRLSP characteristics not edge functions:

CRLSP characteristics not edge functions The approach is like diff-serv’s separation of PHB from Edge The parameters describe the “path behavior” of the CRLSP, i.e. the CRLSP’s characteristics Dropping behavior is not signaled Dropping may be controlled by DS packet markings CRLSP characteristics may be combined with edge functions (which are undefined in CRLDP) to create services Edge functions can perform packet marking Example services are in an appendix

Peak rate:

Peak rate The maximum rate at which traffic should be sent to the CRLSP Defined by a token bucket with parameters Peak data rate (PDR) Peak burst size (PBS) Useful for resource allocation If a network uses the peak rate for resource allocation then its edge function should regulate the peak rate May be unused by setting PDR or PBS or both to positive infinity

Committed rate:

Committed rate The rate that the MPLS domain commits to be available to the CRLSP Defined by a token bucket with parameters Committed data rate (CDR) Committed burst size (CBS) Committed rate is the bandwidth that should be reserved for the CRLSP CDR = 0 makes sense; CDR = +  less so CBS describes the burstiness with which traffic may be sent to the CRLSP

Excess burst size:

Excess burst size Measure the extent by which the traffic sent on a CRLSP exceeds the committed rate Defined as an additional limit on the committed rate’s token bucket Can be useful for resource reservation If a network uses the excess burst size for resource allocation then its edge function should regulate the parameter and perhaps mark or drop packets EBS = 0 and EBS = +  both make sense

Frequency:

Frequency Specifies how frequently the committed rate should be given to CRLSP Defined in terms of “granularity” of allocation of rate Constrains the variable delay that the network may introduce Constrains the amount of buffering that a LSR may use Values: Very frequently: no more than one packet may be buffered Frequently: only a few packets may be buffered Unspecified: any amount of buffering is acceptable

Weight:

Weight Specifies the CRLSP’s weight in the “realtive share algorithm” Implied but not stated: CRLSPs with a larger weight get a bigger relative share of the “excess bandwidth” Values: 0 — the weight is not specified 1-255 — weights; larger numbers are larger weights The definition of “relative share” is network specific

Negotiation flags:

Negotiation flags

CR-LDP PREEMPTION:

CR-LDP PREEMPTION A CR-LSP carries an LSP priority. This priority can be used to allow new LSPs to bump existing LSPs of lower priority in order to steal their resources. This is especially useful during times of failure and allows you to rank the LSPs such that the most important obtain resources before less important LSPs. These are called the setupPriority and a holdingPriority and 8 levels are provided.

CR-LDP PREEMPTION:

CR-LDP PREEMPTION When an LSP is established its setupPriority is compared with the holdingPriority of existing LSPs, any with lower holdingPriority may be bumped to obtain their resources. This process may continue in a domino fashion until the lowest holdingPriority LSPs either clear or are on the worst routes.

PREEMPTION A.K.A. BUMPING:

#216 #14 #462 #972 A B C Route= {A,B,C} PREEMPTION A.K.A. BUMPING

TOPOLOGY DB FOR BUMPING:

TOPOLOGY DB FOR BUMPING LOW PRI HIGH PRI Topology Database sees 8 levels of bandwidth, depending on the setup priority of the LSP, a subset of that bandwidth is seen as available. The highest priority sees all bandwidth used and free at levels lower that it, etc. to the lowest priority which only sees unused bandwidth.

CR-LDP Status:

CR-LDP Status Going through last call Demonstrated Interoperability Nov/98 Nortel Networks, Ericson, GDC Extensions to CR-LDP now being proposed for: Bandwidth Adjustment (AT&T) Multicast …. Source code for these PDUs publicly available: www.NortelNetworks.com/mpls

Label Distribution Protocols:

Label Distribution Protocols Overview of Hop-by-hop & Explicit Label Distribution Protocol (LDP) Constraint-based Routing LDP (CR-LDP) Extensions to RSVP

ER-LSP setup using RSVP:

ER-LSP setup using RSVP LSR B LSR C LER D LER A 1. Path message. It contains ER path < B,C,D> 2. New path state. Path message sent to next node 3. Resv message originates. Contain the label to use and the required traffic/QoS para. 4. New reservation state. Resv message propagated upstream 5. When LER A receives Resv, the ER established. Per-hop Path and Resv refresh unless suppressed Per-hop Path and Resv refresh unless suppressed Per-hop Path and Resv refresh unless suppressed

Tutorial Outline:

Tutorial Outline Overview Label Encapsulations Label Distribution Protocols MPLS & ATM Constraint Based Routing with CR-LDP Summary

MPLS & ATM:

MPLS & ATM Various Modes of Operation Label-Controlled ATM Tunneling Through ATM Ships in the night with ATM ATM Merge VC Merge VP Merge

MPLS & ATM:

MPLS & ATM Several Models for running MPLS on ATM: 1. Label-Controlled ATM: Use ATM hardware for label switching Replace ATM Forum SW by IP/MPLS IP Routing MPLS ATM HW

Label-Controlled ATM:

Label-Controlled ATM Label switching is used to forward network-layer packets It combines the fast, simple forwarding technique of ATM with network layer routing and control of the TCP/IP protocol suite IP Packet 17 IP Packet 05 B A D C Forwarding Table B 17 C 05 • • • Port Label Switching Router Forwarding Table Network Layer Routing (eg. OSPF, BGP4) Label Packets forwarded by swapping short, fixed length labels (I.e. ATM technique) Switched path topology formed using network layer routing (I.e. TCP/IP technique) Label ATM Label Switching is the combination of L3 routing and L2 ATM switching

2. MPLS Over ATM:

2. MPLS Over ATM MPLS ATM Network MPLS L S R L S R VC VP Two Models Internet Draft: VCID notification over ATM Link

3. Ships in the Night:

3. Ships in the Night ATM Forum and MPLS control planes both run on the same hardware but are isolated from each other, i.e. they do not interact. This allows a single device to simultaneously operate as both an MPLS LSR and an ATM switch. Important for migrating MPLS into an ATM network ATM SW L S R ATM MPLS ATM SW L S R

Ships in the night Requirements:

Ships in the night Requirements Resource Management VPI.VCI Space Partitioning Traffic management Bandwidth Reservation Admission Control Queuing & Scheduling Shaping/Policing Processing Capacity

Bandwidth Management:

Bandwidth Management Bandwidth Guarantees Flexibility A. Full Sharing Port Capacity Pool 1 MPLS ATM MPLS ATM Available B. Protocol Partition Pool 2 50% rt-VBR Pool 1 50% ATM MPLS ATM Available Available C. Service Partition Pool 2 50% nrt-VBR COS1 Pool 1 50% rt-VBR COS2 MPLS ATM Available MPLS ATM Available

ATM Merge:

ATM Merge Multipoint-to-point capability Motivation Stream Merge to achieve scalability in MPLS: O(n) VCs with Merge as opposed to O(n 2 ) for full mesh less labels required Reduce number of receive VCs on terminals Alternatives Frame-based VC Merge Cell-based VP Merge

Stream Merge:

Stream Merge 1 1 1 2 2 2 3 3 1 1 1 2 2 2 3 3 Input cell streams Input cell streams in out 1 2 3 7 6 9 1 2 3 7 7 7 in out Non-VC merging ( Nin -- Nout ) VC merging (Nin-1out) 7 7 7 7 7 7 7 7 6 7 9 6 7 7 9 6 7 7 7 7 7 7 7 No Cell Interleaving 7 AAL5 Cell Interleaving Problem

VC-Merge: Output Module:

VC-Merge: Output Module Merge Reassembly buffers Output buffer

VP-Merge:

VP-Merge VPI=3 VPI=2 VCI=1 VPI=1 VCI=2 VCI=3 VCI=1 VCI=2 VCI=3 merge multiple VPs into one VP use separate VCIs within VPs to distinguish frames less efficient use of VPI/VCI space, needs support of SVP No Cell Interleaving Problem Since VCI is unique Option 1 : Dynamic VCI Mapping Option 2 : Root Assigned VCI

Tutorial Outline:

Tutorial Outline Overview Label Encapsulations Label Distribution Protocols MPLS & ATM Constraint Based Routing with CR-LDP Summary

IP FOLLOWS A TREE TO DESTINATION:

- IP will over-utilize best paths and under-utilize less good paths. Dest=a.b.c.d Dest=a.b.c.d Dest=a.b.c.d IP FOLLOWS A TREE TO DESTINATION

HOP-BY-HOP(A.K.A Vanilla) LDP:

#216 #14 #612 #5 #99 #311 #963 #462 - Ultra fast, simple forwarding a.k.a switching - Follows same route as normal IP datapath - So like IP, LDP will over-utilize best paths and under-utilize less good paths. HOP-BY-HOP(A.K.A Vanilla) LDP

Label Switched Path (Two Types):

Two types of Label Switched Paths: Hop by hop (“Vanilla” LDP) Explicit Routing (LDP+”ER”) #18 #427 #819 #216 #14 #612 #5 #99 #311 #963 #462 #77 Label Switched Path (Two Types)

CR-LDP:

CR = “Constraint” based “Routing” eg: USE: (links with sufficient resources AND (links of type “someColor”) AND (links that have delay less than 200 ms) & & = CR-LDP

Pieces Required for Constraint Based Routing:

1) A topology database that knows about link attributes. 2) A label distribution protocol that goes where it’s told. z {a,b,c} ANSWER: OSPF/ISIS + attribs{a,b,c} z m y x ANSWER: LDP + Explicit Route{x,y,m,z} z {a,b,c} Pieces Required for Constraint Based Routing

Tutorial Outline:

Overview Label Encapsulations Label Distribution Protocols MPLS & ATM Constraint Based Routing with CR-LDP Summary Tutorial Outline

Summary of Motivations for MPLS:

Summary of Motivations for MPLS Simplified forwarding based on exact match of fixed length label - initial drive for MPLS was based on existance of cheap, fast ATM switches Separation of routing and forwarding in IP networks - facilitates evolution of routing techniques by fixing the forwarding method - new routing functionality can be deployed without changing the forwarding techniques of every router in the Internet Facilitates the integration of ATM and IP - allows carriers to leverage their large investment of ATM equipment - eliminates the adjacency problem of VC-mesh over ATM Enables the use of explicit routing/source routing in IP networks - can be easily used for such things as traffic management, QoS routing Promotes the partitioning of functionality within the network - move granular processing of packets to edge; restrict core to packet forwarding - assists in maintaining scalability of IP protocols in large networks Improved routing scalability through stacking of labels - removes the need for full routing tables from interior routers in transit domain; only routes to border routers are required Applicability to both cell and packet link-layers - can be deployed on both cell (eg. ATM) and packet (eg. FR, Ethernet) media - common management and techniques simplifies engineering Many drivers exist for MPLS above and beyond high speed forwarding

IP and ATM Integration:

IP and ATM Integration IP over ATM VCs ATM cloud invisible to Layer 3 Routing Full mesh of VCs within ATM cloud Many adjacencies between edge routers Topology change generates many route updates Routing algorithm made more complex ATM network visible to Layer 3 Routing Singe adjacency possible with edge router Hierachical network design possible Reduces route update traffic and power needed to process them IP over MPLS MPLS eliminates the “n-squared” problem of IP over ATM VCs

Traffic Engineering:

Traffic Engineering A B C D Traffic engineering is the process of mapping traffic demand onto a network Demand Network Topology Purpose of traffic engineering: Maximize utilization of links and nodes throughout the network Engineer links to achieve required delay, grade-of-service Spread the network traffic across network links, minimize impact of single failure Ensure available spare link capacity for re-routing traffic on failure Meet policy requirements imposed by the network operator Traffic engineering key to optimizing cost/performance

Traffic Engineering Alternatives:

Traffic Engineering Alternatives Current methods of traffic engineering: Manipulating routing metrics Use PVCs over an ATM backbone Over-provision bandwidth Difficult to manage Not scalable Not economical MPLS combines benefits of ATM and IP-layer traffic engineering Chosen by routing protocol (least cost) Chosen by Traffic Eng. (least congestion) Example Network: MPLS provides a new method to do traffic engineering (traffic steering) Ingress node explicitly routes traffic over uncongested path Potential benefits of MPLS for traffic engineering: - allows explicitly routed paths - no “n-squared” problem - per FEC traffic monitoring - backup paths may be configured operator control scalable granularity of feedback redundancy/restoration Congested Node

MPLS Traffic Engineering Methods:

MPLS Traffic Engineering Methods MPLS can use the source routing capability to steer traffic on desired path Operator may manually configure these in each LSR along the desired path - analogous to setting up PVCs in ATM switches Ingress LSR may be configured with the path, RSVP used to set up LSP - some vendors have extended RSVP for MPLS path set-up Ingress LSR may be configured with the path, LDP used to set up LSP - many vendors believe RSVP not suited Ingress LSR may be configured with one or more LSRs along the desired path, hop-by-hop routing may be used to set up the rest of the path - a.k.a loose source routing, less configuration required If desired for control, route discovered by hop-by-hop routing can be frozen - a.k.a “route pinning” In the future, constraint-based routing will offload traffic engineering tasks from the operator to the network itself

MPLS: Scalability Through Routing Hierarchy:

MPLS: Scalability Through Routing Hierarchy BR1 BR2 BR3 BR4 TR1 TR2 TR3 TR4 AS1 AS2 AS3 Border routers BR1-4 run an EGP, providing inter-domain routing Interior transit routers TR1-4 run an IGP, providing intra-domain routing Normal layer 3 forwarding requires interior routers to carry full routing tables - transit router must be able to identify the correct destination ASBR (BR1-4) Carrying full routing tables in all routers limits scalability of interior routing - slower convergence, larger routing tables, poorer fault isolation MPLS enables ingress node to identify egress router, label packet based on interior route Interior LSRs would only require enough information to forward packet to egress Ingress router receives packet Packet labelled based on egress router Forwarding in the interior based on IGP route Egress border router pops label and fwds. MPLS increases scalability by partitioning exterior routing from interior routing

MPLS: Partitioning Routing and Forwarding:

MPLS: Partitioning Routing and Forwarding Routing Forwarding OSPF, IS-IS, BGP, RIP MPLS Forwarding Table Based on: Classful Addr. Prefix? Classless Addr. Prefix? Multicast Addr.? Port No.? ToS Field? Based on: Exact Match on Fixed Length Label Current network has multiple forwarding paradigms - class-ful longest prefix match (Class A,B,C boundaries) - classless longest prefix match (variable boundaries) - multicast (exact match on source and destination) - type-of-service (longest prefix. match on addr. + exact match on ToS) As new routing methods change, new route look-up algorithms are required - introduction of CIDR Next generation routers will be based on hardware for route look-up - changes will require new hardware with new algorithm MPLS has a consistent algorithm for all types of forwarding; partitions routing/fwding - minimizes impact of the introduction of new forwarding methods MPLS introduces flexibility through consistent forwarding paradigm

Upper Layer Consistency Across Link Layers:

Upper Layer Consistency Across Link Layers Ethernet PPP (SONET, DS-3 etc.) ATM Frame Relay MPLS is “multiprotocol” below (link layer) as well as above (network layer) Provides for consistent operations, engineering across multiple technologies Allows operators to leverage existing infrastructure Co-existence with other protocols is provided for - eg. “Ships in the Night” operation with ATM, muxing over PPP MPLS positioned as end-to-end forwarding paradigm

Summary:

Summary MPLS is an exciting promising emerging technology Basic functionality (Encapsulation and basic Label Distribution) has been defined by the IETF Traffic engineering based on MPLS/IP is just round the corner. Convergence is one step closer …...