1 / 47

Optical Core Networks MPLS - basics

Optical Core Networks MPLS - basics. Piero Castoldi, Scuola Superiore Sant’Anna, castoldi@sssup.it. Outline. MPLS fundamentals Label Encapsulation Label Distribution methods. CREDIT: some figures are taken from the presentation “MPLS tutorial” by Peter Ashwood-Smith Bilel N. Jamoussi.

jarrod-chen
Télécharger la présentation

Optical Core Networks MPLS - basics

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. Optical Core NetworksMPLS - basics Piero Castoldi, Scuola Superiore Sant’Anna, castoldi@sssup.it

  2. Outline • MPLS fundamentals • Label Encapsulation • Label Distribution methods CREDIT: some figures are taken from the presentation “MPLS tutorial” by Peter Ashwood-Smith Bilel N. Jamoussi

  3. What is MPLS? Hybrid Packet Routing Circuit switching MPLS + IP ATM IP • MPLS stands for “Multi-Protocol Label Switching” • MPLS is an IETF–specified framework that provides for the efficient control of traffic flows through the network regardless of transport media. • MPLS controls the way of mapping Layer 3 data flow onto Layer 2 traffic between adjacent network nodes without concern how Layer 2 or Layer 3 traffic is transported (That’s why it called ‘Multiple Protocol’) • MPLS supports the IP, ATM, and frame-relay Layer-2 protocols, even though it is appreciate as a more effective means of deploying IP networks across ATM-based WAN backbones. • MPLS incorporate best properties in both packet routing (IP) and circuit switching (ATM)

  4. Multi Protocol Label Switching (MPLS) fundamentals

  5. “Label Substitution”, what is it? (1) One of the many ways of getting from A to B: • 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, it is 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”.

  6. Label Substitution, what is it? (2) LANE#1 TURN RIGHT USE LANE#2 • Have a friend go to B ahead of you using one of the last two techniques. At every road (link) he reserves a lane just for you. At every intersection (node) 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

  7. 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 TAG etc.. • GMPLS allows to use a “color substitution” where label is a light frequency (color) ..

  8. What is a “LABEL”? A property that uniquely identifies a flowon a logical or physical interface

  9. #3 IP #7 #99 #9 #4072 IP Label Switched Path (LSP) #3 Right #7 #7 LEFT #99 #99 RIGHT #9 #9 LEFT #4072

  10. IP IP Optical or Generalized Label Switched Path (G-LSP) RED RIGHT BLUE RED BLUE BLUE LEFT WHITE WHITE RIGHT ORANGE WHITE ORANGE ORANGE LEFT RED RED

  11. Label concept MPLS generates a short fixed-length label that acts as a shorthand representation of an IP packet’s header The label is attached in front of a IP packet. Value Exp S TTL IP packet MPLS label Value: Label value 20 bits Exp:Experimental Use, 3 bits S:Bottom of stack, 1 bit TTL:Time To Live, 8 bits Total: 32 bit = 4 byte ! Packets are switched, not routed, based on labels

  12. Basic operation #L2 #L3 IP1 IP1 LER LER LSR LSR IP1 #L1 IP1 IP1 IP forwarding IP forwarding Label Switching Relative meaning of label (only within the link): each MPLS-capable router (LSR) changes the packet label LSR: Label Switching Router LER: Label Edge Router (Useful term not in standards) Ingress Router and Egress Router

  13. FEC Forwarding Equivalence Class IP1 #L2 #L3 IP1 IP1 #L2 #L3 IP2 IP2 IP2 LSR LER LER LSR IP1 #L1 IP1 #L1 IP2 IP2 Packets are destined for different address prefixes, but can be mapped to common path • FEC = “A subset of packets that are all treated the same way by an edge 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

  14. Label stacking … L3 L2 L1 IP • Hierarchical use of the labels • Only outer label is used to forward packets • Creation of tunnel between non-neighbouring router => MPLS Domain • Scalability: the expansion of the network doesn’t increase the number of labels => This drastically reduces the size of routing tables in LSRs MPLS Domain 1 MPLS Domain 2 MPLS Domain 3

  15. MPLS features • Label swapping: • Bring the speed of layer 2 switching to layer 3 • Separation of forwarding plane and control plane • Forwarding hierarchy via Label stacking • Increase the scalability • Constraint-based routing • Traffic Engineering • Fast reroute • Facilitate the virtual private networks (VPNs) • Enables Traffic Engineering and QoS • Provides an opportunity for mapping DiffServ fields onto an MPLS label • Facilitate the elimination of multiple layers • Resolve the problems of IP over ATM, in particular: Complexity of control and management and scalability issues

  16. So what is MPLS? • Hop-by-hop or source routing to establish labels • Possible use of labels native to the media (colors) • Multi level label substitution transport

  17. Routers Do Both Routing and Switching • Routing • Deciding the next hop based on the destination address. • A Layer 3 (L3) function. • Switching • Moving a packet from an input port to an output port and out. • A layer 2 function. INPUT PORTS OUTPUT PORTS • So we can avoid performing the layer 3 function. • What benefit does this provide? • In what situations would this benefit not be very significant?

  18. MPLS: Flexible Forwarding IP IP IP IP IP DA DA DA DA DA IP #L1 IP #L2 IP #L3 IP: Packets are forwarded based on Destination Address (DA) • MPLS: Route at edge and switch in core • Map packets to LSP based on (Source Address, Destination Address, protocol, port, DSCP, interface, etc.) and forward packets based Label IP IP IP to LSP LSP to IP LABEL SWITCHING

  19. MPLS-based Solutions • IP Traffic Engineering • Constraint-based Routing making routing adapt to latest network loading • Virtual Private Networks • Controllable tunneling mechanism • L2/L3 Integration • Easy software implementation in current routers • L1/L3 Integration • Use of MPLS to control Optical Cross Connects (OXC) -> GMPLS • Enable QoS in IP Networks • Support IP Diffserv + ATM-style QoS

  20. 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), can be Ingress Router, Egress Router, Transit Router

  21. Label Switched Path (LSP) #14 #311 #216 #99 #311 #963 #311 #963 #14 #612 #462 #311 #99 #5 - An LSP is actually part of a tree from every source to that destination (unidirectional). - LDP builds that tree using existing IP forwarding tables to route the control messages.

  22. Topology dissemination in standard IP 3 47.1 1 2 1 3 2 1 47.2 3 47.3 2 • Destination based forwarding tables • as built by OSPF, IS-IS, RIP, etc.

  23. IP forwarding using hop-by-hop control IP 47.1.1.1 47.1 1 IP 47.1.1.1 2 IP 47.1.1.1 1 3 2 IP 47.1.1.1 1 47.2 3 47.3 2

  24. MPLS Label Distribution use-case Request: 47.1 Request: 47.1 Mapping: 0.50 Mapping: 0.40 1 47.1 3 3 2 1 1 2 47.3 3 47.2 2

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

  26. Benefits and Limitations • Why might this approach be better than normal IP forwarding that does not use MPLS? • Remember, all packets still travel the same paths. ANSWER: The label look-up allows ultra-fast forwarding of FEC • What else might we be able to do with MPLS that could be even more powerful? • See next two slides

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

  28. IP 47.1.1.1 IP 47.1.1.1 Explicited RoutedLSP or ER-LSP (2) 1 47.1 3 3 2 1 1 2 47.3 3 47.2 2

  29. 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)

  30. 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 • Little difference in mechanisms, but RSVP is the winner (in terms of market). • Survival of the fittest not such a bad thing.

  31. Label encapsulation

  32. Label Encapsulation IP or other non-IP PAYLOAD “Shim Label” ……. VPI VCI DLCI “Shim Label” λ Label ATM FR Ethernet PPP Optical Medium MPLS Encapsulation is specified over various media types. Outermost labels may use existing format (VPI/VCI, etc.), while inner label(s) use a new “shim” label format.

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

  34. MPLS Encapsulation - PPP & LAN Data Links MPLS ‘Shim’ Headers (1-n) ••• n 1 Network Layer Header and Packet (eg. IP) Layer 2 Header (eg. PPP, 802.3) 4 Octets Label Stack Entry Format TTL Label Exp. S 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 • Network layer must be inferable from value of bottom label of the stack • Note: The label at the bottom of the stack is the “top” label. MPLS on PPP links and LANs uses ‘Shim’ Header Inserted Between Layer 2 and Layer 3 Headers

  35. MPLS Encapsulation -> ATM ATM LSR constrained by the cell format imposed by existing ATM standards 5 Octets ATM Header Format VPI VCI PT HEC CLP Label Option 1 Label Combined Label Option 2 Option 3 ATM VPI (Tunnel) Label AAL-5 PDU Frame (nx48 bytes) ••• n 1 Network Layer Header and Packet (eg. IP) Generic Label Encap. (PPP/LAN format) AAL-5 Trailer ATM SAR 48 Bytes 48 Bytes ATM Header • • • ATM Payload • Top 1 or 2 labels are contained in the VPI/VCI fields of ATM header • - Option 1 uses two labels. • - 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

  36. MPLS Encapsulation -> Frame Relay Generic Encap. (PPP/LAN Format) Q.922 Header Layer 3 Header and Packet ••• n 1 C/ R FE CN E A BE CN D E E A DLCI Size = 10, 17, 23 Bits DLCI DLCI • 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

  37. Label distribution methods

  38. 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 LSR3 Routing Table: Addr-prefix Next Hop 47.0.0.0/8 LSR2 LSR1 LSR3 LSR2 IP Packet 47.80.55.3 Label Information Base: Label-In FEC Label-Out XX 47.0.0.0/8 17 For 47.0.0.0/8 use label ‘17’ Label Information Base: Label-In FEC Label-Out 17 47.0.0.0/8 XX Step 2: LSR communicates binding to adjacent LSR Step 3: LSR inserts label value into forwarding base Step 1: LSR creates binding between FEC and label value 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

  39. Label Distribution - Methods Label Distribution can take place using one of two possible methods Downstream-on-Demand Label Distribution Downstream (unsolicited) Label Distribution LSR2 LSR1 LSR2 LSR1 Label-FEC Binding Request for 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 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 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

  40. Downstream (unsolicited) Label Distribution #14 #311 #216 #99 #311 #963 #311 D #963 #14 #612 D #462 D D D #311 #99 #5 D D D

  41. Downstream on-demand Label Distribution #14 #311 #216 #99 #311 #963 #311 D D? D? #963 #14 D? D? #612 D D? #462 D D? D D #311 #99 #5 D D D D? D?

  42. Distribution Control: Ordered vs. Independent Next Hop (for FEC) MPLS path forms, as associations are made between FEC next-hops and incoming and outgoing labels Incoming Label Outgoing Label Independent LSP Control Ordered LSP Control • 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 Features • 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 • 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 • 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 Comparison Both methods are supported in the standard and can be fully interoperable

  43. Independent mode #14 #311 #216 #99 #311 #963 #311 D #963 #14 #612 D #462 D D D #311 #99 #5 D D D

  44. Label Retention Methods Binding for LSR5 LSR2 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 LSR1 LSR5 Binding for LSR5 LSR3 Binding for LSR5 LSR4 Conservative Label Retention Liberal Label Retention LSR2 LSR2 Label Bindings for LSR5 Label Bindings for LSR5 LSR1 LSR1 LSR3 LSR3 LSR4’s Label LSR3’s Label LSR2’s Label LSR4’s Label LSR3’s Label LSR2’s Label LSR4 LSR4 Valid Next Hop Valid Next Hop • 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

  45. Liberal retention mode These labels are kept incase they are needed after a failure. #216 D D #963 #14 #622 #612 D #462 D D D D #311 #422 #99 #5 D D D

  46. Conservative retention mode These labels are released the moment they are received. #216 D D #963 #14 #622 #612 D #462 D D D D #311 #422 #99 #5 D D D

  47. Suggested reading • B. Davie, Y. Rekhter, “MPLS – Technology and Applications”, Morgan Kaufmann, 2000, ISBN 1-55860-656-4. • E. Gray, “MPLS: Implementing the Technology”, Addison-Wesley, Reading, MA, 2001, ISBN 0-201-65762-7.

More Related