1 / 93

Multiprotocol Label Switching The future of IP Backbone Technology

Multiprotocol Label Switching The future of IP Backbone Technology. Ravikumar Pragada & Girish Srinivasan. Overview. Need for MPLS MPLS Basics Benefits Label Switched Path Label Distribution Protocol Hierarchy in MPLS Explicit Routing Loop Detection Traffic Engineering

koen
Download Presentation

Multiprotocol Label Switching The future of IP Backbone Technology

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Multiprotocol Label SwitchingThe future of IP Backbone Technology Ravikumar Pragada & Girish Srinivasan

  2. Overview • Need for MPLS • MPLS Basics • Benefits • Label Switched Path • Label Distribution Protocol • Hierarchy in MPLS • Explicit Routing • Loop Detection • Traffic Engineering • Constraint Based Routing • Tag Switching • IP Switching

  3. Conventional IP Networks & Routing • Client networks are connected to backbone via edge routers • LAN, PSTN, ADSL • Data packets are routed based on IP address and other information in the header • Functional components • Forwarding • responsible for actual forwarding across a router • consists of set of procedures to make forwarding decisions • Control • responsible for construction and maintenance of the forwarding table • consists of routing protocols such as OSPF, BGP and PIM

  4. Need for Multiprotocol Label Switching (MPLS) • Forwarding function of a conventional router • a capacity demanding procedure • constitutes a bottle neck with increase in line speed • MPLS simplifies forwarding function by taking a totally different approach by introducing a connection oriented mechanism inside the connectionless IP networks

  5. Label Switching • Decomposition of network layer routing into control and forwarding components applicable • Label switching forwarding component algorithm uses • forwarding table • label carried in the packet • What is a Label ? • Short fixed length entity

  6. MPLS Basics • A Label Switched Path (LSP) is set up for each route • A LSP for a particular packet P is a sequence of routers, <R1,R2………..Rn>for all i, 1< i < n: Ri transmits P to R[i+1] by means of a label • Edge routers • analyze the IP header to decide which LSP to use • add a corresponding local Label Switched Path Identifier, in the form of a label • forward the packet to the next hop

  7. MPLS Basics contd.. • Subsequent nodes • just forward the packet along the LSP • simplify the forwarding function greatly • increase performance and scalability dramatically • New advanced functionality for QoS, differentiated services can be introduced in the edge routers • Backbone can focus on capacity and performance • Routing information obtained using a common intra domain routing protocol such as OSPF

  8. Internet IP LER LER LER LSR LSR LSR LSR MPLS IP Basic Model for MPLS Network MPLS LSR = Label Switched Router LER = Label Edge Router

  9. MPLS Benefits Comparing MPLS with existing IP core and IP/ATM technologies, MPLS has many advantages and benefits: • The performance characteristics of layer 2 networks • The connectivity and network services of layer 3 networks • Improves the price/performance of network layer routing • Improved scalability

  10. MPLS Benefits contd.. • Improves the possibilities for traffic engineering • Supports the delivery of services with QoS guarantees • Avoids need for coordination of IP and ATM address allocation and routing information

  11. Necessity of L3 Forwarding • For security • To allow packet filtering at firewalls • Requires examination of packet contents, including the IP header • For forwarding at the initial router - used when hosts don’t do MPLS • For Scaling • Forward on a finer granularity than the labels can provide

  12. Carrying a Label • Certain link layer technologies can carry label as a part of their link layer header • e.g ATM & Frame Relay • Link layers that do not support labels in their header carry them in a “shim” label header

  13. Establishing Label Switched Path • LSPs are generated and maintained in a distributed fashion • Each LSR negotiates a label for each Forwarding Equivalence Class (FEC) with its upstream and downstream neighbors using a distribution method • Label Information Base (LIB) - Result of negotiation

  14. LDP - Terminology • Label Distribution Protocol (LDP) • set of procedures by which LSRs establish LSPs • mapping between network-layer routing information directly to data-link layer switched paths • LDP peers: • two LSRs which use LDP to exchange label/stream mapping • information exchange known as “LDP Session”

  15. LDP Message Exchange • Discovery messages - used to announce and maintain the presence of an LSR • Session messages - used to establish, maintain and terminate sessions between LDP peers • Advertisement messages - used to create, change, and delete label mappings • Notification messages - used to provide advisory information and to signal error information

  16. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 LDP Message Format

  17. 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 LDP Protocol Data Units (PDUs) • LDP message exchanges are accomplished by sending LDP PDUs • Each LDP PDU is an LDP header followed by LDP message • The LDP header is:

  18. Forwarding Equivalence Class (FEC) • Introduced in MPLS standards to denote packet forwarding classes • Comprises traffic • to a particular destination • to destination with distinct service requirements • Why FEC? • To precisely specify which IP packets are mapped to each LSP • Done by providing a FEC specification for each LSP

  19. LSP - FEC Mapping • FEC specified as a set of two elements (currently) 1. IP Address Prefix - any length from 0 - 32 2. Host Address - 32 bit IP address • A given packet matches a particular LSP if and only if IP Address Prefix FEC element matches packet’s IP destination address

  20. Rules for Mapping packet to a LSP • If exactly one LSP’s Host Address FEC element ~ packet’s IP destination address, packet is mapped to that LSP • If there are multiple LSPs satisfying the above condition, then the packet is mapped to one of those LSPs† • If a packet matches exactly one LSP, packet is mapped to that LSP • If packet matches multiple LSPs, mapped to one with the longest prefix match † Which LSP to be chosen - outside the scope of this presentation

  21. Label Spaces • Useful for assignment and distribution of labels • Two types of label spaces • Per interface label space: Interface-specific labels used for interfaces that use interface resources for labels • Per platform label space: Platform-wide incoming labels used for interfaces that can share the same label space

  22. LDP Identifiers • A six octet quantity • used to identify specific label space within an LSR • First four octets encode LSR’s IP address • Last two octets identify specific label space • Representation <IP address> : <label space id> • e.g., 171.32.27.28:0, 192.0.3.5:2 • Last two octets for platform-wide label spaces are always both zero

  23. LDP Discovery • A mechanism that enables an LSR to discover potential LDP peers • Avoids unnecessary explicit configuration of LSR label switching peers • Two variants of the discovery mechanism • basic discovery mechanism: used to discover LSR neighbors that are directly connected at the link level • extended discovery mechanism: used to locate LSRs that are not directly connected at the link level

  24. LDP Discovery contd.. • Basic discovery mechanism • To engage - send LDP Hellos periodically • LDP Hellos sent as UDP packets for all routers on that subnet • Extended discovery mechanism • To engage - send LDP targeted Hellos periodically • Targeted Hellos are sent to a specific address • Targeted LSR decides whether to respond or to ignore the targeted Hello • LDP Link Hello sent by an LSR • carries the LDP identifier for the label space the LSR intends to use for the interface

  25. Session establishment • Exchange of LDP discovery Hellos triggers session establishment • Two step process • Transport connection establishment • If LSR1 does not already have a LDP session for the exchange of label spaces LSR1:a and LSR2:b, it attempts to open a TCP connection with LSR2 • LSR1 determines the transport addresses at it’s end (A1) and LSR2’s end (A2) of the TCP connection • If A1>A2, LSR1 plays the active role; otherwise it is passive • Session initialization • Negotiate session parameters by exchanging LDP initialization messages

  26. NON EXISTENT Session connection Rx Any LDP msg except established Init msg or Timeout Rx Any other msg or Timeout Tx NAK msg INITIALIZED (Passive Role) Rx Acceptable Init msg/ Tx Init msg & KeepAlive msg (Active Role) Tx Init msg OPENSENT OPENREC Rx Any other msg or Timeout Tx NAK msg Rx KeepAlive msg Rx Acceptable Init msg Tx KeepAlive msg OPERATIONAL Rx Shutdown msg or Timeout Tx Shutdown msg All other LDP msgs Session Initialization State Transition Diagram Rx - Receive Tx - Transmit

  27. Session Initialization State Transition Table

  28. Session Initialization State Transition Table (cont.)

  29. Label Distribution and Management • Two label distribution techniques • Downstream on demand label distribution: An LSR can distribute a FEC label binding in response to an explicit request • Downstream Unsolicited label distribution: Allows an LSR to distribute label bindings to LSRs that have not explicitly requested them • Both can be used in the same network at the same time; however, each LSR must be aware of the distribution method used by its peer

  30. Label Distribution Control Mode • Independent Label Distribution Control • Each LSR may advertise label mappings to its neighbors at any time • In independent Downstream on Demand mode - LSR answers without waiting for a label mapping from next hop • In independent Downstream Unsolicited mode - LSR advertises label mapping for a FEC whenever it is prepared • Consequence: upstream label can be advertised before a downstream label is received

  31. Label Distribution Control Mode contd.. • Ordered Label Distribution Control • Initiates transmission of label mapping for a FEC only if it has next FEC next hop or is the egress • If not, the LSR waits till it gets a label from downstream LSR • LSR acts as an egress for a particular FEC, if • next hop router for FEC is outside of label switching network • FEC elements are reachable by crossing a domain boundary

  32. Label Retention Mode • Conservative Label Retention Mode • Advertised label mappings are retained only if they are used for forwarding packets • Downstream on Demand Mode typically used with Conservative Label Retention Mode • Advantage: only labels required are maintained • Disadvantage: a change in routing causes delay • Liberal Retention Mode • All label mappings are retained regardless of whether LSR is next hop or not • reaction to routing changes will be quick

  33. Label Information Base • LSR maintains learned labels in Label Information Base (LIB) • Each entry of LIB associates an FEC with an (LDP Identifier, label) pair • When next hop changes for a FEC, LSR will retrieve the label for the new next hop from the LIB

  34. Hierarchical Operation in MPLS Example: • External Routers A,B,C,D,E,F - Talk BGP • Internal Routers 1,2,3,4,5,6 - Talk OSPF Domain #2 C D 1 Domain #1 6 Domain #3 2 3 4 5 B F A E Note: Internal routers in domains 1 and 3 not shown

  35. Hierarchical Operation contd.. • When IP packet traverses domain #2, it will contain two labels, encoded as a “label stack” • Higher level label used between routers C and D, which is encapsulated inside a lower level label used within Domain #2 • Operation at C • C needs to swap BGP label to put label that D expects • C also needs to add an OSPF label that 1 expects • C therefore pushes down the BGP label and adds a lower level label

  36. Label Stack • Multiple labels are carried in data packets • e.g. data packet carried across Domain #2 • Concept of stacking • provides a mechanism to segregate streams within a switched path • one useful application of this technique is in Virtual Private Networks • Advantage of Hierarchical MPLS is that the internal routers need not know about higher level (BGP) routing

  37. Multipath • Many IP routing protocols support the notion of equal-cost multipath routes • Few possible approaches for handling multipath within MPLS • First approach: • separate switched path from each ingress node to the merge point • preserves switching performance, but at the cost of proliferating the number of switched paths

  38. Multipath contd.. • Second approach • Only one switched path from one ingress node to a destination • Conserves switched paths but cannot balance loads across downstream links as well as other approaches • LSP may be different from the normal L3 path • Third approach: • Allows single stream to be split into multiple streams, by using L3 forwarding • e.g. might use a hash function on source and destination IP addresses • Conserves paths at the cost of switching performance

  39. Explicit Routing in MPLS • Two options for route selection: • Hop by hop routing • Explicit routing • Explicit Routing (aka Source Routing) is a very powerful technique • With pure datagram routing overhead of carrying complete explicit route is prohibitive • MPLS allows explicit route to be carried only at the time the LSP is setup, and not with each packet • MPLS makes explicit routing practical

  40. Explicit Routing in MPLS contd.. • In an explicitly routed LSP • the LSP next hop is not chosen by the local node • selected by a single node, usually the ingress • The sequence of LSRs may be chosen by • configuration (e.g., by an operator or by a centralized server) • an algorithm (e.g., the ingress node may make use of topological information learned from a link state routing protocol)

  41. Loops and Loop Handling • Routing protocols used in conjunction with MPLS are based on distributed computation which may contain loops • Loops handling - 3 categories • Loop Survival • Loop Detection • Loop Prevention

  42. Loop Survival • Minimizes the impact of loops by limiting the amount of resources consumed by the loop • Method • based on use of TTL field which is decrement at each hop • Use of dynamic routing protocol converging rapidly to non-looping paths • Use of fair queuing

  43. Loop Detection • Loops may be setup but they are subsequently detected • The detected loop is then broken by dropping label relationship • Broken loops now necessitates packets to be forwarded using L3 forwarding

  44. Loop Detection (cont.) • Method is based on transmitting a Loop Detection Control Packet (LDCP) whenever a route changes • LDCP is forwarded towards the destination until • last MPLS node along the path is reached • TTL of the LDCP expires • it returns to the node which originated it

  45. Loop Prevention • Ensures that loops are never set up • labels are not used until it is sure to be loop free • Methods • labels are propagated starting at the egress switch • use source routing to set up label bindings from the egress switch to each ingress switch

  46. Leaf Leaf Leaf Detects loop immediately Link removed from tree LSR Change in Link Ingress Node Egress Node

  47. Traffic Engineering and Performance Objectives • Traffic Engineering (TE) is concerned with performance optimization of operational networks • The key performance objectives • traffic oriented - aspects that enhance the QoS of traffic streams e.g minimization of packet loss • resource oriented - aspects that pertain to the optimization of resource utilization e.g efficient management of bandwidth

  48. Performance Objectives (cont.) • Minimizing congestion is a major traffic and resource oriented performance objective • Congestion manifest under two scenarios • network resources are insufficient or inadequate • can be solved by capacity expansion or classical congestion control techniques • traffic streams are inefficiently mapped onto available resources • can be reduced by adopting load balancing policies

  49. Traffic and Resource Control • The traffic engineer acts as the controller in an adaptive feedback control system which includes • a set of interconnected network elements • a network performance monitoring system & • network configuration management tools • The traffic engineer formulates control policies, observes the state of the network, characterizes the traffic and applies the control actions in accordance to the control policy

  50. MPLS and Traffic Engineering • Main components used • Traffic Trunk - aggregation of traffic flows of the same class which are placed inside a Label Switched Path • Induced MPLS Graph • analogous to a virtual topology in an overlay model • logically mapped onto the physical network through the selections o LSPs for traffic trunk • comprises a set of LSRs which act as nodes of the graph and a set of LSPs which provide logical point to point connectivity between LSRs and thus act as edges of the graph

More Related