Multi-Protocol Label Switching: Basics & Applications Dr. Vishal Sharma  Email:  [email_address]   Web:  http://www.metanoia-inc.com   Metanoia, Inc. Critical Systems Thinking™ ©  Copyright 2002-2005 All Rights Reserved
The Start: Routing Process at a Router Destination address (DA) based forwarding Longest prefix  matching Routing Table
How Routing Works Today How do routers build their routing tables? By exchanging information with each other using routing protocols 198.100.9.75 198.100.9.75 198.100.9.75 198.100.9.75 198.100.9.75 198.168.7.4 198.168.7.3 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 2 3 4 5 6 1 198.100.9.75 Routing table (RT) at 198.168.7.6 Longest prefix match  gives next hop router as 198.100.9.1 and outgoing interface as 4. DA = 198.100.9.75 Packet generated
How it Would be with Labels How do routers learn the labels? By interpreting routing information and through signaling (as we will learn later) DA = 198.100.9.75 Packet generated Exact matching  label swapping gives outgoing label as  and outgoing interface as 4. Label Forwarding Table at 198.168.7.6 198.168.7.4 198.168.7.3 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 2 3 4 5 6 1 198.100.9.75 Attach label
Shortest-Path Routing: Little Flexibility Shortest path converges traffic on a few network links Significant increase in congestion Unbalanced resource utilization 198.168.7.4 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 3 4 5 6 1 198.100.9.75 198.101.84.21 R1 R2 R3 R4 Routing table (RT) at 198.168.7.6
Labels De-couple Routing and Forwarding: Much more Flexibility Labels enable: Differentiation based on criteria other than shortest path Permit policy routing R3 R2 R1 R4 198.168.7.4 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 3 4 5 6 1 198.100.9.75 198.101.84.21 Label Forwarding Table at 198.168.7.6
Basic Concept of MPLS Routing fills routing table Signaling fills label forwarding table R1 R2 R3 R4 128.89.10.x 1 179.69.x.x 2 1 128.89.10.12 179.69.42.3 198.168.7.6 Advertises binding <5, 128.89.10.x>   Advertises binding <7, 179.69.x.x>   128.89.10.x   5 1 179.69.x.x   7 2 Advertises bindings <3, 128.89.10.x>   <4, 179.69.x.x> 128.89.10.x   3 1 179.69.x.x   4 1 3 4 X X Routing Table Label Table
Basic Concept of MPLS R3 5 3 R2 R1 R3 R4 128.89.10.x 1 179.69.x.x 2 1 128.89.10.12 179.69.42.3 198.168.7.6 128.89.10.x   5 1 179.69.x.x   7 2 128.89.10.x   3 1 179.69.x.x   4 1 3 4 X X 3 5 Packet arrives  DA=128.89.10.25 3 Push Label 5 Pop label Forward packet 5 Swap Label
A Word on Network Layer Routing Control  Plane Forwarding /Data Plane Control Component Responsible for  construction  and  maintenance of forwarding table. Consists of: Routing protocols for exchange of routing info. Algorithms to convert this into forwarding table Forwarding/data Component Algos. used to make forwarding decision on packet The algorithms define:  Information  from packet used to find an entry in the forwarding table Exact  procedures   used to find that entry For unicast routing … Information = Network layer (IP) address Procedure = Longest prefix matching
So What about MPLS Control and Forwarding? Superset  of conventional router control Distribute routing info. via network layer routing (OSPF, BGP, etc.) Algos. to convert routing info. into forwarding table for fwding component Create binding from FEC (derived from routing info.)  --> label Assign and distribute labels to peer LSRs via signaling Uses a label switching forwarding table (or LIB), looking as: Forwarding algorithm = label swapping,  independent  of control component (implementable in optimized hardware or software) Control Component Forwarding Component First Subentry Second Subentry (for  multicast  or  load balancing ) Incoming Label Map Next hop label forwarding entry (NHFLE) Outgoing label Outgoing inf. Next hop address Outgoing label Outgoing inf. Next hop address Incoming Label
What does a label represent?  The issue of label granularity Packets treated  identically  by participating routers form  Forwarding Equivalence Class (FEC Assigned the  same  label Membership of a FEC must be determinable from  IP header  Info. that ingress router has about the packet Entities grouped into a FEC are flexible, and could involve A connection between two IP ports on two hosts All traffic between two IP hosts All traffic headed for a particular network with same TOS bits All destination networks with a certain prefix All traffic headed to a particular router (e.g. an egress) A manually configured connection … and many others
Let’s Recap: Elements of MPLS Label Forwarding Use data link addressing, e.g. ATM VPI/VCI, FR DLCI Put “shim” header between data link and IP header Label Creation and Binding Label Assignment and Distribution Ride piggyback on routing protocols, where possible (BGP) Use separate label distribution protocol – RSVP, LDP/CR-LDP Reliability: TCP or separate ACK/NACK Data  Plane Control Plane EXP/ 1 bit
Benefits over Conventional Routing MPLS forwarding possible by: Switches incapable of analyzing network layer headers  Unable to do so at adequate speeds Ingress can use  any info.   about  packet to assign to FEC/LSP Conventional forwarding only considers info.  in  the packet Forwarding decisions can depend on ingress router Conventional routing, identity of ingress router does not travel with packet Packet    FEC assignment can use complex decision process No impact on forwarding of labeled packets! Explicit routing    packet  need not  carry encoding of entire route Unlike “source routing” in conventional IP forwarding
MPLS Header over POS or IEEE 802.3
MPLS Header over ATM
Label Assignment and Distribution (Control Component) Direction   from  which labels flow Refers to whether LSR distributes  labels  on demand or voluntarily Whether LSR waits to hear from its upstream/downstream nbrs.  before responding to a request for label(s) Label Retention : Liberal or Conservative Whether LSR keeps labels from a neighbor who is not currently the next hop for a FEC Labels Data Labels Data
Example Label Assignment and Distribution Modes Edge LSR Downstream-on-demand with Independent Control Edge LSR Edge LSR Downstream-on-demand with Ordered Control 4 3 3’ Edge LSR 1 Requests 2 2’ Assignments 2 3 5 6 1 Requests 4 Assignments
Comparison of ATM Switch, IP Router, LSR, and Optical X-connect
More on the MPLS Control Plane: Hop-by-hop Routed LSPs LSPs whose routes are determined by IP routing protocols Shortest path, based on  destination IP address  of packet Effectively creates labels for each route in forwarding table Label distribution for hop-by-hop routed LSPs LDP (Label Distribution Protocol) Defined by IETF MPLS Working Group LDP messages: Notification, Hello, Initialization, KeepAlive, Address, Address Withdraw, Label Mapping, Label Request, Label Withdraw, Label Release Peer discovery msgs. over UDP, rest over TCP for reliability Piggyback on existing IP routing protocols Example: Add label information to BGP Not all IP interfaces may be enabled for dynamic routing protocols
Hop-by-hop Routed LSP Setup  using  LDP Edge LSR Edge LSR LSR1 learns new IP network prefix 1.1.1.0/24 via dynamic IP routing Each LSR forwards  Label Req.  along hop-by-hop routed path to 1.1.1.0/24 Path established via a dynamic IP routing protocol When next hop to 1.1.1.0/24 changes in LSR2 (e.g. due to topology or link metric change)  LSR2 releases original LSP Starts setting up new LSP from that point on Several other options available 1.1.1.0/24. Label Req. Label Req. Label Req. Label Mapping. Label Mapping. Label Mapping.
ER-LSPs: Explicitly Routed LSPs Routes determined by operators or n/w management apps Based on specific TE policy, QoS, or VPN membership Significantly more efficient than conventional IP source routing Label distribution for ER-LSPs Extended RSVP (significantly different from original RSVP) Associates labels with RSVP flows, supports aggregate flows Control messages run on raw IP transport, requiring refreshes CR - LDP (Constraint-based Routed LDP) Now mostly of historical value
Strict ER-LSP Setup using CR-LDP Edge LSR Edge LSR Traffic parameter TLV contains:  Frequency, weight  Peak data rate, Peak burst rate Committed data rate, committed burst rate, excess burst size Frequency specifies granularity at which CDR is made available Weight determines excess bandwidth possible above CDR 1.1.1.2 2.2.2.2 3.3.3.2 Label Req. <1.1.1.2, 2.2.2.2, 3.3.3.2> Label Req. <2.2.2.2, 3.3.3.2> Label Req. <3.3.3.2> Label Mapping Label Mapping Label Mapping Network operator or network management creates ER-LSP request with path and traffic parameters
Loose ER-LSP Setup using CR-LDP Edge LSR Edge LSR Network operator or network management creates ER-LSP request with path and traffic parameters 4.4.5.6 4.4.5.7 3.3.3.2 AS100 Label Req. <as100, 3.3.3.2> Label Req. <as100, 3.3.3.2> Label Req. <3.3.3.2> Label Mapping. Label Mapping. Label Mapping.
Are there any implications for hardware/ASICS?  Label stacking depth  (if any)  supported  depends on hardware processing capabilities and speeds Hardware engine needs  ability to examine both EXP bits and LABEL , and map it to any control hardware used for scheduling MPLS packets Ability to push and/or pop labels  determines whether switch can be an edge LSR, or only a core LSR (doing only swapping) Number of queues  in the switch/router determines  per-label queueing or per-class queueing ability Label merging capability   determined by  ability to re-assemble packets from interleaved cells
Advantages of MPLS Original justification was fast, amortized, ATM hardware Eliminated by hardware forwarding engines at multi-gigabit rates Current justifications include: Separates forwarding from control, enabling Evolution of routing functionality  independently  of forwarding algorithm (which can continue to be label swapping) Use of MPLS to control  non-packet  technologies like SONET/SDH channels or optical light-paths Facilitates scalable hierarchical routing   (via label stacking) Scalability by reducing number of IP peers/neighbors Provides explicit, manageable IP routes :  enables  policy routing  and  traffic engineering  (can setup routes different than default shortest-path)
Reducing number of IP Peers VCs between routers connected over ATM network  O(n^2) VCs for full adjacency O(n^4) routing info. exchange overwhelms routers and network   Interior switches participate in IP routing protocols    minimizes IP nbrs. Eliminates full VC mesh for adjacency, as LSRs run IP routing protocols LSR (runs IP routing) IP routing peers Router ATM Switch IP routing peers ATM Network
Hierarchical Label Stacking/Switching Inside transit AS each interior router must keep track of all networks reachable through it With hierarchical labels, an arrangement is possible where only Border Routers need to know what networks might eventually be reached through them All transit traffic can tunneled through interior routers of the AS using LSPs with stacked labels
Utility of Hierarchical Label Switching Interior LSRs Border LSRs Swap and Push Pop Swap
Explicit Manageable Routes -- Policy Routing, Traffic Engineering Carriers want  certain  traffic to go over  certain  routes This type of network engineering: Keeps network loads balanced Enhances network stability and reliability Enables better QoS and performance assurances    Allows carriers to meet SLAs Constraint-based routing + MPLS  Allows carriers to bind  specific traffic  to an LSP Place  (or route)  LSP over a desired sequence of LSRs
Constraint Based Routing A class of routing systems that computes routes through a network subject to a set of constraints and requirements QoS-based Routing Path of flows determined by Knowledge of resource availability in network QoS requirements of flows Policy-based Routing Path/routing decision based on administrative policy Can be on-line or off-line
CB Routing System Inputs Flow/path attributes:  required b/w, hop count, ... Resource attributes:  properties of nodes/links Network topology & state Outputs Computed feasible path Explicit route of the path
TE Topology versus Regular Routed Topology
Automatic Reroute Using MPLS RSVP-TE Rerouting is done when A better path is available Upon failure along LSP Use SESSION Obj. & SE style Tunnel uniquely identified by Destination IP address Tunnel ID  Ingress IP address Tunnel ingress made to appear as 2 different senders to the RSVP session (via LSP ID)
So what did we look at?  Let’s summarize … Looked at conventional IP routing and its limitations Saw how labels decouple data plane from control plane Examined basics of MPLS  Control and forwarding components Label granularity (forwarding equivalence class, FEC) Benefits over conventional routing Label assignment and distribution methods  Downstream-on-demand, with ordered or independent control Hop-by-hop routed LSPs, strict- and loosely explicitly-routed LSPs   Advantages of MPLS – efficient hierarchical routing, reduces number of IP peers, facilitates explicit routing Use of MPLS for traffic engineering, protection, automatic rerouting
References Further reading: To get an idea of the basic operation, purpose, motivation, and applications of MPLS “ Multiprotocol  Label Switching Architecture,” RFC 3031 http://www. ietf .org/ rfc /rfc3031.txt?number=3031 B. Davie and Y. Rekhter,  MPLS Technology and Applications , ISBN 1558606564, Morgan Kaufman, May 2000.   (Ask around, several people in the company have a copy.) For details on signaling protocols: “ LDP Specification,” RFC 3036.  http://www.ietf.org/rfc/rfc3036.txt?number=3036 Jamoussi, et al, “Constraint-Based LSP Setup Using LDP,” Internet Draft, Work in Progress, draft-ietf-mpls-cr-ldp-04.txt, July 2000.   http://search.ietf.org/internet-drafts/draft-ietf-mpls-cr-ldp-04.txt
References “ RSVP-TE Extensions to RSVP for LSP Tunnels,” Internet draft, draft-ietf-mpls-lsp-tunnel-07.txt .   http://search.ietf.org/internet-drafts/draft-ietf-mpls-rsvp-lsp-tunnel-07.txt “ MPLS Label Stack Encoding,” RFC 3032. http://www.ietf.org/rfc/rfc3032.txt?number=3032 For applications of MPLS to non-packet technologies: D. Awduche et al, “Multi-Protocol Lambda Switching: Combining MPLS Traffic Engineering Control with Optical Cross-Connects,” Internet Draft, Work in Progress, draft-awduche-mpls-te-optical-02.txt, July 2000 http://search.ietf.org/internet-drafts/draft-awduche-mpls-te-optical-02.txt
References Ashwood-Smith and L. Berger, Eds., “Generalized MPLS: Signaling Functional Description,” Internet Draft, Work in Progress, draft-ietf-mpls-generalized-signaling-01.txt, November 2000. ( do not  get bogged down in protocol specific details) http://search.ietf.org/internet-drafts/draft-ietf-mpls-generalized-signaling-00.txt  (may not be the most current link, I’ll try and get a more recent pointer) G. Bernstein, E. Mannie, and V. Sharma, “Framework for MPLS-based Control of Optical SDH/SONET Networks,” Internet Draft, Work in Progress, draft-bms-sdhsonet-mpls-control-frmwrk-00.txt, November 2000.   http://search.ietf.org/internet-drafts/draft-bms-optical-sdhsonet-mpls-control-frmwrk-00.txt  (has some errors, please ask me if you have any questions)
References All IETF drafts are available from :  http://search.ietf.org/search/brokers/internet-drafts/query.html Search with title words or draft name. All IETF RFCs are available from : http://www.ietf.org/rfc.html Search by RFC number.

Multi-Protocol Label Switching: Basics and Applications

  • 1.
    Multi-Protocol Label Switching:Basics & Applications Dr. Vishal Sharma Email: [email_address] Web: http://www.metanoia-inc.com Metanoia, Inc. Critical Systems Thinking™ © Copyright 2002-2005 All Rights Reserved
  • 2.
    The Start: RoutingProcess at a Router Destination address (DA) based forwarding Longest prefix matching Routing Table
  • 3.
    How Routing WorksToday How do routers build their routing tables? By exchanging information with each other using routing protocols 198.100.9.75 198.100.9.75 198.100.9.75 198.100.9.75 198.100.9.75 198.168.7.4 198.168.7.3 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 2 3 4 5 6 1 198.100.9.75 Routing table (RT) at 198.168.7.6 Longest prefix match gives next hop router as 198.100.9.1 and outgoing interface as 4. DA = 198.100.9.75 Packet generated
  • 4.
    How it Wouldbe with Labels How do routers learn the labels? By interpreting routing information and through signaling (as we will learn later) DA = 198.100.9.75 Packet generated Exact matching label swapping gives outgoing label as and outgoing interface as 4. Label Forwarding Table at 198.168.7.6 198.168.7.4 198.168.7.3 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 2 3 4 5 6 1 198.100.9.75 Attach label
  • 5.
    Shortest-Path Routing: LittleFlexibility Shortest path converges traffic on a few network links Significant increase in congestion Unbalanced resource utilization 198.168.7.4 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 3 4 5 6 1 198.100.9.75 198.101.84.21 R1 R2 R3 R4 Routing table (RT) at 198.168.7.6
  • 6.
    Labels De-couple Routingand Forwarding: Much more Flexibility Labels enable: Differentiation based on criteria other than shortest path Permit policy routing R3 R2 R1 R4 198.168.7.4 198.168.7.1 198.168.7.2 198.168.7.5 198.168.7.6 198.100.x.x 198.100.9.1 128.72.x.x 128.72.55.4 128.84.x.x 128.84.73.1 3 4 5 6 1 198.100.9.75 198.101.84.21 Label Forwarding Table at 198.168.7.6
  • 7.
    Basic Concept ofMPLS Routing fills routing table Signaling fills label forwarding table R1 R2 R3 R4 128.89.10.x 1 179.69.x.x 2 1 128.89.10.12 179.69.42.3 198.168.7.6 Advertises binding <5, 128.89.10.x> Advertises binding <7, 179.69.x.x> 128.89.10.x 5 1 179.69.x.x 7 2 Advertises bindings <3, 128.89.10.x> <4, 179.69.x.x> 128.89.10.x 3 1 179.69.x.x 4 1 3 4 X X Routing Table Label Table
  • 8.
    Basic Concept ofMPLS R3 5 3 R2 R1 R3 R4 128.89.10.x 1 179.69.x.x 2 1 128.89.10.12 179.69.42.3 198.168.7.6 128.89.10.x 5 1 179.69.x.x 7 2 128.89.10.x 3 1 179.69.x.x 4 1 3 4 X X 3 5 Packet arrives DA=128.89.10.25 3 Push Label 5 Pop label Forward packet 5 Swap Label
  • 9.
    A Word onNetwork Layer Routing Control Plane Forwarding /Data Plane Control Component Responsible for construction and maintenance of forwarding table. Consists of: Routing protocols for exchange of routing info. Algorithms to convert this into forwarding table Forwarding/data Component Algos. used to make forwarding decision on packet The algorithms define: Information from packet used to find an entry in the forwarding table Exact procedures used to find that entry For unicast routing … Information = Network layer (IP) address Procedure = Longest prefix matching
  • 10.
    So What aboutMPLS Control and Forwarding? Superset of conventional router control Distribute routing info. via network layer routing (OSPF, BGP, etc.) Algos. to convert routing info. into forwarding table for fwding component Create binding from FEC (derived from routing info.) --> label Assign and distribute labels to peer LSRs via signaling Uses a label switching forwarding table (or LIB), looking as: Forwarding algorithm = label swapping, independent of control component (implementable in optimized hardware or software) Control Component Forwarding Component First Subentry Second Subentry (for multicast or load balancing ) Incoming Label Map Next hop label forwarding entry (NHFLE) Outgoing label Outgoing inf. Next hop address Outgoing label Outgoing inf. Next hop address Incoming Label
  • 11.
    What does alabel represent? The issue of label granularity Packets treated identically by participating routers form Forwarding Equivalence Class (FEC Assigned the same label Membership of a FEC must be determinable from IP header Info. that ingress router has about the packet Entities grouped into a FEC are flexible, and could involve A connection between two IP ports on two hosts All traffic between two IP hosts All traffic headed for a particular network with same TOS bits All destination networks with a certain prefix All traffic headed to a particular router (e.g. an egress) A manually configured connection … and many others
  • 12.
    Let’s Recap: Elementsof MPLS Label Forwarding Use data link addressing, e.g. ATM VPI/VCI, FR DLCI Put “shim” header between data link and IP header Label Creation and Binding Label Assignment and Distribution Ride piggyback on routing protocols, where possible (BGP) Use separate label distribution protocol – RSVP, LDP/CR-LDP Reliability: TCP or separate ACK/NACK Data Plane Control Plane EXP/ 1 bit
  • 13.
    Benefits over ConventionalRouting MPLS forwarding possible by: Switches incapable of analyzing network layer headers Unable to do so at adequate speeds Ingress can use any info. about packet to assign to FEC/LSP Conventional forwarding only considers info. in the packet Forwarding decisions can depend on ingress router Conventional routing, identity of ingress router does not travel with packet Packet  FEC assignment can use complex decision process No impact on forwarding of labeled packets! Explicit routing  packet need not carry encoding of entire route Unlike “source routing” in conventional IP forwarding
  • 14.
    MPLS Header overPOS or IEEE 802.3
  • 15.
  • 16.
    Label Assignment andDistribution (Control Component) Direction from which labels flow Refers to whether LSR distributes labels on demand or voluntarily Whether LSR waits to hear from its upstream/downstream nbrs. before responding to a request for label(s) Label Retention : Liberal or Conservative Whether LSR keeps labels from a neighbor who is not currently the next hop for a FEC Labels Data Labels Data
  • 17.
    Example Label Assignmentand Distribution Modes Edge LSR Downstream-on-demand with Independent Control Edge LSR Edge LSR Downstream-on-demand with Ordered Control 4 3 3’ Edge LSR 1 Requests 2 2’ Assignments 2 3 5 6 1 Requests 4 Assignments
  • 18.
    Comparison of ATMSwitch, IP Router, LSR, and Optical X-connect
  • 19.
    More on theMPLS Control Plane: Hop-by-hop Routed LSPs LSPs whose routes are determined by IP routing protocols Shortest path, based on destination IP address of packet Effectively creates labels for each route in forwarding table Label distribution for hop-by-hop routed LSPs LDP (Label Distribution Protocol) Defined by IETF MPLS Working Group LDP messages: Notification, Hello, Initialization, KeepAlive, Address, Address Withdraw, Label Mapping, Label Request, Label Withdraw, Label Release Peer discovery msgs. over UDP, rest over TCP for reliability Piggyback on existing IP routing protocols Example: Add label information to BGP Not all IP interfaces may be enabled for dynamic routing protocols
  • 20.
    Hop-by-hop Routed LSPSetup using LDP Edge LSR Edge LSR LSR1 learns new IP network prefix 1.1.1.0/24 via dynamic IP routing Each LSR forwards Label Req. along hop-by-hop routed path to 1.1.1.0/24 Path established via a dynamic IP routing protocol When next hop to 1.1.1.0/24 changes in LSR2 (e.g. due to topology or link metric change) LSR2 releases original LSP Starts setting up new LSP from that point on Several other options available 1.1.1.0/24. Label Req. Label Req. Label Req. Label Mapping. Label Mapping. Label Mapping.
  • 21.
    ER-LSPs: Explicitly RoutedLSPs Routes determined by operators or n/w management apps Based on specific TE policy, QoS, or VPN membership Significantly more efficient than conventional IP source routing Label distribution for ER-LSPs Extended RSVP (significantly different from original RSVP) Associates labels with RSVP flows, supports aggregate flows Control messages run on raw IP transport, requiring refreshes CR - LDP (Constraint-based Routed LDP) Now mostly of historical value
  • 22.
    Strict ER-LSP Setupusing CR-LDP Edge LSR Edge LSR Traffic parameter TLV contains: Frequency, weight Peak data rate, Peak burst rate Committed data rate, committed burst rate, excess burst size Frequency specifies granularity at which CDR is made available Weight determines excess bandwidth possible above CDR 1.1.1.2 2.2.2.2 3.3.3.2 Label Req. <1.1.1.2, 2.2.2.2, 3.3.3.2> Label Req. <2.2.2.2, 3.3.3.2> Label Req. <3.3.3.2> Label Mapping Label Mapping Label Mapping Network operator or network management creates ER-LSP request with path and traffic parameters
  • 23.
    Loose ER-LSP Setupusing CR-LDP Edge LSR Edge LSR Network operator or network management creates ER-LSP request with path and traffic parameters 4.4.5.6 4.4.5.7 3.3.3.2 AS100 Label Req. <as100, 3.3.3.2> Label Req. <as100, 3.3.3.2> Label Req. <3.3.3.2> Label Mapping. Label Mapping. Label Mapping.
  • 24.
    Are there anyimplications for hardware/ASICS? Label stacking depth (if any) supported depends on hardware processing capabilities and speeds Hardware engine needs ability to examine both EXP bits and LABEL , and map it to any control hardware used for scheduling MPLS packets Ability to push and/or pop labels determines whether switch can be an edge LSR, or only a core LSR (doing only swapping) Number of queues in the switch/router determines per-label queueing or per-class queueing ability Label merging capability determined by ability to re-assemble packets from interleaved cells
  • 25.
    Advantages of MPLSOriginal justification was fast, amortized, ATM hardware Eliminated by hardware forwarding engines at multi-gigabit rates Current justifications include: Separates forwarding from control, enabling Evolution of routing functionality independently of forwarding algorithm (which can continue to be label swapping) Use of MPLS to control non-packet technologies like SONET/SDH channels or optical light-paths Facilitates scalable hierarchical routing (via label stacking) Scalability by reducing number of IP peers/neighbors Provides explicit, manageable IP routes : enables policy routing and traffic engineering (can setup routes different than default shortest-path)
  • 26.
    Reducing number ofIP Peers VCs between routers connected over ATM network O(n^2) VCs for full adjacency O(n^4) routing info. exchange overwhelms routers and network Interior switches participate in IP routing protocols  minimizes IP nbrs. Eliminates full VC mesh for adjacency, as LSRs run IP routing protocols LSR (runs IP routing) IP routing peers Router ATM Switch IP routing peers ATM Network
  • 27.
    Hierarchical Label Stacking/SwitchingInside transit AS each interior router must keep track of all networks reachable through it With hierarchical labels, an arrangement is possible where only Border Routers need to know what networks might eventually be reached through them All transit traffic can tunneled through interior routers of the AS using LSPs with stacked labels
  • 28.
    Utility of HierarchicalLabel Switching Interior LSRs Border LSRs Swap and Push Pop Swap
  • 29.
    Explicit Manageable Routes-- Policy Routing, Traffic Engineering Carriers want certain traffic to go over certain routes This type of network engineering: Keeps network loads balanced Enhances network stability and reliability Enables better QoS and performance assurances  Allows carriers to meet SLAs Constraint-based routing + MPLS Allows carriers to bind specific traffic to an LSP Place (or route) LSP over a desired sequence of LSRs
  • 30.
    Constraint Based RoutingA class of routing systems that computes routes through a network subject to a set of constraints and requirements QoS-based Routing Path of flows determined by Knowledge of resource availability in network QoS requirements of flows Policy-based Routing Path/routing decision based on administrative policy Can be on-line or off-line
  • 31.
    CB Routing SystemInputs Flow/path attributes: required b/w, hop count, ... Resource attributes: properties of nodes/links Network topology & state Outputs Computed feasible path Explicit route of the path
  • 32.
    TE Topology versusRegular Routed Topology
  • 33.
    Automatic Reroute UsingMPLS RSVP-TE Rerouting is done when A better path is available Upon failure along LSP Use SESSION Obj. & SE style Tunnel uniquely identified by Destination IP address Tunnel ID Ingress IP address Tunnel ingress made to appear as 2 different senders to the RSVP session (via LSP ID)
  • 34.
    So what didwe look at? Let’s summarize … Looked at conventional IP routing and its limitations Saw how labels decouple data plane from control plane Examined basics of MPLS Control and forwarding components Label granularity (forwarding equivalence class, FEC) Benefits over conventional routing Label assignment and distribution methods Downstream-on-demand, with ordered or independent control Hop-by-hop routed LSPs, strict- and loosely explicitly-routed LSPs Advantages of MPLS – efficient hierarchical routing, reduces number of IP peers, facilitates explicit routing Use of MPLS for traffic engineering, protection, automatic rerouting
  • 35.
    References Further reading:To get an idea of the basic operation, purpose, motivation, and applications of MPLS “ Multiprotocol Label Switching Architecture,” RFC 3031 http://www. ietf .org/ rfc /rfc3031.txt?number=3031 B. Davie and Y. Rekhter, MPLS Technology and Applications , ISBN 1558606564, Morgan Kaufman, May 2000. (Ask around, several people in the company have a copy.) For details on signaling protocols: “ LDP Specification,” RFC 3036. http://www.ietf.org/rfc/rfc3036.txt?number=3036 Jamoussi, et al, “Constraint-Based LSP Setup Using LDP,” Internet Draft, Work in Progress, draft-ietf-mpls-cr-ldp-04.txt, July 2000. http://search.ietf.org/internet-drafts/draft-ietf-mpls-cr-ldp-04.txt
  • 36.
    References “ RSVP-TEExtensions to RSVP for LSP Tunnels,” Internet draft, draft-ietf-mpls-lsp-tunnel-07.txt . http://search.ietf.org/internet-drafts/draft-ietf-mpls-rsvp-lsp-tunnel-07.txt “ MPLS Label Stack Encoding,” RFC 3032. http://www.ietf.org/rfc/rfc3032.txt?number=3032 For applications of MPLS to non-packet technologies: D. Awduche et al, “Multi-Protocol Lambda Switching: Combining MPLS Traffic Engineering Control with Optical Cross-Connects,” Internet Draft, Work in Progress, draft-awduche-mpls-te-optical-02.txt, July 2000 http://search.ietf.org/internet-drafts/draft-awduche-mpls-te-optical-02.txt
  • 37.
    References Ashwood-Smith andL. Berger, Eds., “Generalized MPLS: Signaling Functional Description,” Internet Draft, Work in Progress, draft-ietf-mpls-generalized-signaling-01.txt, November 2000. ( do not get bogged down in protocol specific details) http://search.ietf.org/internet-drafts/draft-ietf-mpls-generalized-signaling-00.txt (may not be the most current link, I’ll try and get a more recent pointer) G. Bernstein, E. Mannie, and V. Sharma, “Framework for MPLS-based Control of Optical SDH/SONET Networks,” Internet Draft, Work in Progress, draft-bms-sdhsonet-mpls-control-frmwrk-00.txt, November 2000. http://search.ietf.org/internet-drafts/draft-bms-optical-sdhsonet-mpls-control-frmwrk-00.txt (has some errors, please ask me if you have any questions)
  • 38.
    References All IETFdrafts are available from : http://search.ietf.org/search/brokers/internet-drafts/query.html Search with title words or draft name. All IETF RFCs are available from : http://www.ietf.org/rfc.html Search by RFC number.

Editor's Notes

  • #21 Issues in MPLS-based Control of SDH/SONET Networks This assumes a downstream on demand with ordered control mode of label distribution. Other label distribution modes are also possible. For example, unsolicited label distribution mode.
  • #31 Good afternoon! And welcome to the course on next-generation high-performance switch architectures. Thank you for coming. Over these two days my goal is to explore some details of this subject that will lead to a deeper understanding of the operation of canonical high-speed switch architectures. Before we begin, I’d like to give you a quick overview of the course, and of the sequence in which we’ll cover the material. The material is organized into 6 parts, half of which we’ll cover today. Today, we’ll begin with an overview of some basic switching notions and look at the essential architectural components of switches and cross-connects. We’ll also look at the generic data path processing that occurs within each. We will then look at a taxonomy of switch architectures and switching fabrics. Here we’ll cover the evolution of switch/routers over several generations, and examine the properties and features of different types of switching fabrics. We’ll also review the properties of input and output queueing. Having developed an overall understanding of the architectures of switches and routers, we’ll delve next into tracing the data path through an IP router, a TDM cross-connect, and a hybrid TDM/IP switch, and look at two examples in detail – the Cisco Catalyst switch and the Juniper M Series routers. Starting tomorrow, we will start dissecting each of the three main processing steps in a switch/router--- input processing, scheduling across the switch fabric, and output queueing. We’ll look at methods, algorithms, and techniques for each with a focus on hardware complexity and implementation issues. I have factored in time for discussions, so I hope you’ll ask questions freely at any time during these lectures. This will enable me to adjust my presentations to best help you. It will also make these lectures more interesting for me. If you have additional questions, please feel free to contact me after May 6 th . My contact information is on the title slide.
  • #32 Good afternoon! And welcome to the course on next-generation high-performance switch architectures. Thank you for coming. Over these two days my goal is to explore some details of this subject that will lead to a deeper understanding of the operation of canonical high-speed switch architectures. Before we begin, I’d like to give you a quick overview of the course, and of the sequence in which we’ll cover the material. The material is organized into 6 parts, half of which we’ll cover today. Today, we’ll begin with an overview of some basic switching notions and look at the essential architectural components of switches and cross-connects. We’ll also look at the generic data path processing that occurs within each. We will then look at a taxonomy of switch architectures and switching fabrics. Here we’ll cover the evolution of switch/routers over several generations, and examine the properties and features of different types of switching fabrics. We’ll also review the properties of input and output queueing. Having developed an overall understanding of the architectures of switches and routers, we’ll delve next into tracing the data path through an IP router, a TDM cross-connect, and a hybrid TDM/IP switch, and look at two examples in detail – the Cisco Catalyst switch and the Juniper M Series routers. Starting tomorrow, we will start dissecting each of the three main processing steps in a switch/router--- input processing, scheduling across the switch fabric, and output queueing. We’ll look at methods, algorithms, and techniques for each with a focus on hardware complexity and implementation issues. I have factored in time for discussions, so I hope you’ll ask questions freely at any time during these lectures. This will enable me to adjust my presentations to best help you. It will also make these lectures more interesting for me. If you have additional questions, please feel free to contact me after May 6 th . My contact information is on the title slide.
  • #33 Good afternoon! And welcome to the course on next-generation high-performance switch architectures. Thank you for coming. Over these two days my goal is to explore some details of this subject that will lead to a deeper understanding of the operation of canonical high-speed switch architectures. Before we begin, I’d like to give you a quick overview of the course, and of the sequence in which we’ll cover the material. The material is organized into 6 parts, half of which we’ll cover today. Today, we’ll begin with an overview of some basic switching notions and look at the essential architectural components of switches and cross-connects. We’ll also look at the generic data path processing that occurs within each. We will then look at a taxonomy of switch architectures and switching fabrics. Here we’ll cover the evolution of switch/routers over several generations, and examine the properties and features of different types of switching fabrics. We’ll also review the properties of input and output queueing. Having developed an overall understanding of the architectures of switches and routers, we’ll delve next into tracing the data path through an IP router, a TDM cross-connect, and a hybrid TDM/IP switch, and look at two examples in detail – the Cisco Catalyst switch and the Juniper M Series routers. Starting tomorrow, we will start dissecting each of the three main processing steps in a switch/router--- input processing, scheduling across the switch fabric, and output queueing. We’ll look at methods, algorithms, and techniques for each with a focus on hardware complexity and implementation issues. I have factored in time for discussions, so I hope you’ll ask questions freely at any time during these lectures. This will enable me to adjust my presentations to best help you. It will also make these lectures more interesting for me. If you have additional questions, please feel free to contact me after May 6 th . My contact information is on the title slide.
  • #34 Good afternoon! And welcome to the course on next-generation high-performance switch architectures. Thank you for coming. Over these two days my goal is to explore some details of this subject that will lead to a deeper understanding of the operation of canonical high-speed switch architectures. Before we begin, I’d like to give you a quick overview of the course, and of the sequence in which we’ll cover the material. The material is organized into 6 parts, half of which we’ll cover today. Today, we’ll begin with an overview of some basic switching notions and look at the essential architectural components of switches and cross-connects. We’ll also look at the generic data path processing that occurs within each. We will then look at a taxonomy of switch architectures and switching fabrics. Here we’ll cover the evolution of switch/routers over several generations, and examine the properties and features of different types of switching fabrics. We’ll also review the properties of input and output queueing. Having developed an overall understanding of the architectures of switches and routers, we’ll delve next into tracing the data path through an IP router, a TDM cross-connect, and a hybrid TDM/IP switch, and look at two examples in detail – the Cisco Catalyst switch and the Juniper M Series routers. Starting tomorrow, we will start dissecting each of the three main processing steps in a switch/router--- input processing, scheduling across the switch fabric, and output queueing. We’ll look at methods, algorithms, and techniques for each with a focus on hardware complexity and implementation issues. I have factored in time for discussions, so I hope you’ll ask questions freely at any time during these lectures. This will enable me to adjust my presentations to best help you. It will also make these lectures more interesting for me. If you have additional questions, please feel free to contact me after May 6 th . My contact information is on the title slide.
  • #39 Issues in MPLS-based Control of SDH/SONET Networks