Multiprotocol Label Switching MPLS Sookyoung Lee Agenda l
Multiprotocol Label Switching (MPLS) Sookyoung Lee
Agenda l l Problems of traditional IP routing Motivations for MPLS Objectives of MPLS What is MPLS? ¡ l How MPLS works? ¡ l LDP, CR-LEP, TE-RSVP Main capabilities of MPLS ¡ l Label, FEC, LIB, LER, LSR, and LSP Connection-oriented Qo. S Support, Traffic Engineering, VPN support, Multiprotocol Support References
Problems of traditional IP routing l Problem of Traditional IP Routing ¡ Longish latency at every hop l Header analysis Routing table lookup based on the IP address Replace the layer 2 address ¡ No l Some congested links and some underutilized links ¡ No l assurance how a packet will travel Qo. S - all packets are treated equally No capability to prioritize packets between different hosts and of different applications
Motivation for MPLS l Rapid growth of Internet l Increase in traffic volumes l Voice and data convergence on a single network infrastructure l New latency dependent applications l Ever-increasing number of ISP networks l Still IP protocol suite popular – the most predominant networking technology
Objectives of MPLS l Speed up IP packet forwarding ¡ By cutting down on the amount of processing at every intermediate router l Prioritize IP packet forwarding ¡ By providing ability to engineer traffic flow and assure differential Qo. S l Without network losing on the flexibility of IP based
What is MPLS? l A technology to switch (forward) a packet at a high speed at layer 2 using fixed length labels obtained from layer 3 routing information. ¡ ¡ Integration of layer 2 and layer 3 IP supplements MPLS and ISO model l MPLS Architecture l MPLS terminology l MPLS Cloud l
MPLS and ISO model 7 to 5 Applications TCP PPP UDP IP MPLS Frame 4 3 ATM (*) ATM 2 Physical (Optical - Electrical) 1 FR Relay No modification needed on the existing layers when MPLS layer is added. l MPLS must be backward compatible. l
MPLS Architecture LSP Routing protocol FEC table Attributes Label table Label Switch Classification Label assignment Label swapping Label removal OSPF Local table Local table Layer 2 Layer 1 Core Node Egress Node OSPF Local table Precedence Ingress Node
MPLS terminology l Label and Label Stack l l FEC – Forward Equivalence Class LIB – Label Information Base l l LER – Label Edge Router LSR – Label Switching Router l l LDP – Label Distribution Protocol LSP – Label Switched Path
Label l l l A short, fixed length identifier (32 bits) Sent with each packet Local between two routers Can have different labels if entering from different routers One label for one FEC Decided by the downstream router § § l LSR binds a label to an FEC It then informs the upstream LSR of the binding Different depending on layer 2 technology ¡ ¡ ¡ ATM: VCI/VPI field of ATM header Frame Relay: DLCI field of FR header PPP/LAN: ‘shim’ header inserted between layer 2 and layer 3 32 bits 20 bits 3 bits 1 Label EXP S 8 bits TTL S: bottom of stack bit Exp: Experimental 1 to many DLL header label stack entry NL header L 3 data ATM-MPLS label GFC VPI VCI Label PTI CLP HEC DATA
Label Stack Layer 2 Header Label 3 Label 2 Label 1 MPLS Domain 1 MPLS supports hierarchy. l Each LSR processes the topmost label. l If traffic crosses several networks, it can be tunneled across them l Advantage – reduces the LIB table of each router drastically l Slide by By. Tamrat Bayle, Reiji Aibara, Kouji Nishimura MPLS Domain 2 MPLS Domain 3 IP Packet
FEC (Forward Equivalence Class) A group of packets that require the same forwarding treatment across the same path l grouped based on l ¡ ¡ ¡ Address prefix Host address Qo. S l FEC is encoded as a label l l l Assume packets have the destination address and Qo. S requirements as 124. 48. 45. 20 qos = 1 143. 67. 25. 77 qos = 1 143. 67. 84. 22 qos = 3 124. 48. 66. 90 qos = 4 143. 67. 12. 01 qos = 3 l l l FEC – 1 label a 143. 67. 25. 77 FEC – 2 label b 124. 48. 45. 20 FEC – 3 label c 143. 67. 84. 22 143. 67. 12. 01 FEC – 4 label d 124. 48. 66. 90
LSR l MPLS Cloud l l l IP Packet w/ Label LER A router/switch that supports MPLS Can be a router Can be an ATM switch + label switch controller Label swapping § Each LSR examines the label on top of the stack § Uses LIB to decide the outgoing path and the outgoing label § Removes the old label and attaches the new label § Forwards the packet on the predetermined path L 3 Routing Ingress LER Ordinary IP Router l l l LSR L 3 Routing LER Egress LER LSP LSR Label Swapping LER L 3 Routing Can be an ATM switch or a router Ingress LER performs the following: ¡ Receives the packet ¡ Adds label ¡ Forwards the packet into the MPLS domain Egress LER removes the label and delivers the packet LSP l l L 3 Routing LSP defines the path through LSRs from ingress to egress router FEC is determined at the LER-ingress LSPs are unidirectional LSP might deviate from the IGP shortest path
Label Distribution Protocol (LDP) l LDP is the set of procedures and messages ¡ ¡ ¡ l For LSRs to establish LSPs through a network by mapping network-layer routing information directly to data-link layer switched paths. associates a FEC with each LSP it creates. Currently, several protocols used as LDP are available: ¡ ¡ CR-LDP, RSVP-TE: Provides functionality for traffic engineering and Qo. S Multiprotocol extentions of BGP-4
LDP messages l Discovery Messages - UDP ¡ ¡ l Session Messages - TCP ¡ l used to establish, maintain and terminate sessions between LDP peers Advertisement Messages - TCP ¡ l Used to announce and maintain the presence of an LSR in a network LSRs multicast these messges periodically to 224. 0. 0. 2 and all routers listen to this group create, change and delete label mappings for FECs Notification Messages - TCP ¡ Used to provide advisory information and to signal error information
Label Distribution Methods Rd and Ru are said to have LDP adjacency Ru Rd Ru Label-FEC Binding Rd discovers a ‘next hop’ for a particular FEC l Rd generates a label for the FEC and communicates the binding to Ru l Ru inserts the binding into its forwarding tables Rd Label-FEC Binding Downstream on Demand Label Distribution Unsolicited Downstream Label Distribution l Request for Binding Ru recognizes Rd as its nexthop for an FEC l A request is made to Rd for a binding between the FEC and a label l If Rd recognizes the FEC and has a next hop for it, it creates a binding and replies to Ru l
Unsolicited Downstream Ingress Interface Label 1 5 Ingress Interface Label FEC Egress Interface Label 3 138. 120 1 12 FEC Egress Interface Label 138. 120 4 12 MPLS switch 3 1 4 127. 20 MPLS switch 1 3 Ma Mapp 2 g 5 ppin ing 12 2 1 1 x FEC Egress Interface Label 138. 120 3 5 MPLS switch 192. 168 2 MPLS switch Ingress Interface Label 3 2 3 138. 120 1 The downstream node defines the label and advertises it to the upstream node. x
Downstream on demand Ingress Interface Label 1 5 Ingress Interface Label FEC Egress Interface Label 3 138. 120 1 t 1 ues 127. 20 MPLS switch 1 Req 3 ping p a M Reque st 138. 120 3 1 5 x 3 5 138. 120 MPLS switch 192. 168 2 FEC Egress Interface Label 138. 120 x 3 2 3 1 4 ing 12 MPLS switch 1 4 1 Mapp 2 2 Ingress Interface Label 138. 120 12 MPLS switch 20 38. 1 12 FEC Egress Interface Label The label is requested by the upstream node and the downstream node defines the label used.
Label Distribution and Management l Label Distribution Control Mode ¡ ¡ Independent LSP control: Each LSR makes independent decision on when to generate labels and communicate them to upstream peers Ordered LSP control l Label-FEC binding is communicated to peers if: • LSR is the ‘egress’ LSR to particular FEC • Label binding has been received from upstream LSR l l Label Retention Mode ¡ ¡ l Used for explicit routing Conservative – LSR maintains only valid bindings Liberal - LSR maintains bindings other than the valid next hop, more label, quick adaptation for routing change Label Advertisement Mode ¡ ¡ Downstream allocation Downstream-on-Demand allocation
Label Information Base (LIB) Table maintained by the LSRs l Contents of the table l § § Incoming label Outgoing path Address prefix Incoming label Address Prefix Outgoing Path Outgoing label
MPLS forwarding example
MPLS Protocol Stack LER Core MPLS Network End System MPLS Network MPLS Interworking Architecture LER Routing Protocol LER Core LSR LDP TCP/UDP Routing Protocol IP LDP TCP/UDP IP MPLS Control protocol Stack Architecture End System LER IP IP Core LSR MPLS Layer 2 PHY MPLS End System IP IP MPLS Layer 2 PHY LER Layer 2 PHY PHY MPLS Data Protocol Stack Architecture Layer 2 PHY
Four main capabilities of MPLS l Connection-oriented l Traffic l VPN Qo. S Support Engineering support l Multiprotocol Support
Connection-oriented Qo. S Support l Connection-oriented network has powerful traffic management and Qo. S capabilities. l MPLS ¡ ¡ imposes a connection-oriented framework on a connectionless IP-based Internet providing the foundation for sophisticated and reliable Qo. S traffic contracts. Flow-by-flow Qo. S (End-to-end) not packet-by-packet Qo. S (Hop-by-hop)
Traffic Engineering (TE) l What is TE? ¡ ¡ l Dynamically define routes Maximize Bandwidth Utilization by spreading the network traffic across network Ensure available spare link capacity for re-routing traffic on failure Meet policy requirements imposed by the network operator MPLS ¡ ¡ ¡ has a primitive form of automated TE. is aware of flows of packet not just individual packets With MPLS, Routes are changed on a flow-by-flow basis (Explicit routing), instead of simply changing the route on a packet-bypacket basis
Constrained-Based Routed LDP (CR-LDP) Modified LDP to set up the “Explicit Routing (ER-LSP)” Strict ER-LSP: Specifies list of nodes using actual address of each node to traverse. l Loose ER-LSP: Specifies list of nodes to act as one of the ‘abstract’ nodes to traverse. l It can co-exist with the pure LDP. l Introduces additional constraints (new parameters) for traffic regulation l l LER 1 l LSR 2 LSR 3 Advantages of Explicit Routing l l l Can use routes other than shortest path Operator has routing flexibility Traffic engineering LER 4
Explicitly Routed LSP Overload !! LER 1 Overload !! Forward to LSR 2 LSR 3 LSR 4 LSR X LSR 2 LER 4 LSR 3 End-to-End forwarding decision determined by ingress node. l Enables Traffic Engineering l
CR-LDP Traffic Engineering l l l Qo. S and Traffic parameters Path Preemption Path Re-optimization 0 1 Failure Notification U F Loop Detection Traffic Para TLV Flags Frequency 15 31 Length Reserved Peak Data Rate l l Peak Rate – Maximum rate at which traffic should be sent to CR-LDP Committed Rate – The rate that the MPLS domain commits to be available to the CRLSP Excess Burst Size – Measures the extent by which the traffic sent on CR-LSP exceeds the committed rate Frequency – constraints delay Peak Burst Size Committed Data Rate Committed Burst Size Excess Burst Size Weight
TE-RSVP l l l Qo. S and Traffic parameters Failure Notification Loop Detection Multi Protocol Support Path Preemption Slide by By. Tamrat Bayle, Reiji Aibara, Kouji Nishimura
VPN support l With VPN, the traffic of a given enterprises or group passes transparently through the Internet in a way that effectively segregates that traffic from other packets on the Internet. l MPLS provides an efficient mechanism for supporting VPNs proving performance guarantees and security. LSP - Label Switched Path VPN A LDP VPN VPN B P 3 P 5 P 1 VPN A VPN B LDP VPN P 2 P 4 LDP VPN A
Multiprotocol Support l MPLS can be used on many networking technologies. ¡ ¡ l MPLS supports IPv 4, IPv 6, IPX, Apple. Talk at the network layer. MPLS supports Ethernet, Token Ring, FDDI, ATM, FR, PPP at the link layer. Universal nature of MPLS ¡ ¡ MPLS enabled routers can coexist with ordinary IP routers. MPLS-enabled ATM switches and MPLS-enabled FR switches can be configured to co-exist wit ordinary ATM or FR switches. MPLS is a good solution to optimize resources and expand Qo. S support over mixed network technologies.
References MPLS Charter: http: //www. ietf. org/html. charters/mplscharter. html l MPLS Resource Center: http: //www. mplsrc. com l MPLS Forum: http: //www. mplsforum. org l l Basic RFCs ¡ RFC 3031/3032 MPLS Forwarding/Architecture ¡ RFC 3036 MPLS LDP Specification ¡ RFC 3215 LDP State Machine ¡ RFC 2205 MPLS Signaling RSVP ¡ RFC 3209 MPLS Signaling RSVP-TE
- Slides: 32