CS 672 1 Summer 2003 Lecture 7. CS 672 2 Summer 2003 MPLS Forwarding MPLS forwarding can be described in terms of: Label imposition Label disposition.

Slides:



Advertisements
Similar presentations
MPLS VPN.
Advertisements

Identifying MPLS Applications
OLD DOG CONSULTING Challenges and Solutions for OAM in Point-to-Multipoint MPLS Adrian Farrel, Old Dog Consulting Ltd. Zafar Ali, Cisco Systems, Inc.
MULTIPROTOCOL LABEL SWITCHING Muhammad Abdullah Shafiq.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—2-1 Label Assignment and Distribution Introducing MPLS Label Allocation, Distribution, and Retention.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—2-1 Label Assignment and Distribution Introducing Typical Label Distribution in Frame-Mode MPLS.
CS Summer 2003 Quiz 3 Q1) Briefly describe IP control plane is composed of following protocols (list 2 to 3)? IP control plane provides information.
Hierarchy of Routing Knowledge IP Routing: All routers within domains that carry transit traffic have to maintain both interior and exterior routing information.
Introducing MPLS Labels and Label Stacks
CS Summer 2003 Lecture 5. CS Summer 2003 IP Router Architecture A multiservice router provides layer 2 and layer 3 services: Layer 2 services.
CS Summer 2003 Lecture 14. CS Summer 2003 MPLS VPN Architecture MPLS VPN is a collection of sites interconnected over MPLS core network. MPLS.
Introduction to MPLS and Traffic Engineering Zartash Afzal Uzmi.
CS Summer 2003 Lecture 6. CS Summer 2003 Hierarchical LSP LSP1 LSP2 LSP3 Ingress LSR for LSP1 Egress LSR for LSP1 Ingress LSR for LSP3 Hierarchical.
MPLS H/W update Brief description of the lab What it is? Why do we need it? Mechanisms and Protocols.
A Comparison Of MPLS Traffic Engineering Initiatives Robert Pulley & Peter Christensen.
ECE544: Communication Networks-II Spring 2009 H. Liu Lecture 9 (MPLS) Includes teaching materials from D. Saha.
MPLS and Traffic Engineering
CS Summer 2003 Lecture 8. CS Summer 2003 Populating LFIB with LDP Assigned/Learned Labels Changes in the LFIB may be triggered routing or.
CS Summer 2003 Lecture 13. CS Summer 2003 MP_REACH_NLRI Attribute The MP_REACH_NLRI attribute is encoded as shown below:
Introduction to MPLS and Traffic Engineering
CS Summer 2003 Lecture 9. CS Summer 2003 FILTERSPEC Object FILTERSPEC Object defines filters for selecting a subset of data packets in a session.
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
Multi-Protocol Label Switching
COS 420 Day 16. Agenda Assignment 3 Corrected Poor results 1 C and 2 Ds Spring Break?? Assignment 4 Posted Chap Due April 6 Individual Project Presentations.
A Study of MPLS Department of Computing Science & Engineering DE MONTFORT UNIVERSITY, LEICESTER, U.K. By PARMINDER SINGH KANG
1 MPLS Architecture. 2 MPLS Network Model MPLS LSR = Label Switched Router LER = Label Edge Router LER LSR LER LSR IP MPLS IP Internet LSR.
SMUCSE 8344 MPLS Virtual Private Networks (VPNs).
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—3-1 Frame-Mode MPLS Implementation on Cisco IOS Platforms Monitoring Frame-Mode MPLS on Cisco.
1 Multi-Protocol Label Switching (MPLS) presented by: chitralekha tamrakar (B.S.E.) divya krit tamrakar (B.S.E.) Rashmi shrivastava(B.S.E.) prakriti.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—1-1 MPLS Concepts Introducing Basic MPLS Concepts.
Multiprotocol Label Switching (MPLS)
1 Multi Protocol Label Switching Presented by: Petros Ioannou Dept. of Electrical and Computer Engineering, UCY.
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Introduction to MPLS and Traffic Engineering Zartash Afzal Uzmi.
Connection-Oriented Networks1 Chapter 6: The Multi-Protocol Label Switching Architecture TOPICS –IP: A primer –The MPLS architecture Label allocation schemes.
1 Multiprotocol Label Switching. 2 “ ” It was designed to provide a unified data-carrying service for both circuit-based clients and packet-switching.
IP/MPLS Multiprotocol Label Switching
1 © 2001, Cisco Systems. MPLS Architecture Overview Jay Kumarasamy Adopted from Stefano Previdi’s presentation.
Multiprotocol Label Switching (MPLS) References: Juniper white papers on MPLS and DiffServ at: white_papers/
MPLS Architecture Overview Adopted from Stefano Previdi’s presentation 麟瑞科技 技術經理 張晃崚.
MPLS: Multi-protocol Label Switching 2000/05/152 Topics Introduction History and motivation MPLS mechanisms MPLS protocols RSVP-TE/CR-LDP MPLS applications.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS Introduction Module 4: Frame Mode MPLS Implementation.
MPLS Architecture Overview V1.1. Course Objectives MPLS overview MPLS Concepts LSRs and labels Label assignment and distribution Label Switch Paths Loops.
RFC 3031: Multiprotocol Label Switching Architecture Chapter 3.27 – /07/14 (Thu) Shinichi Ishida 2005/07/14 (Thu) Shinichi Ishida.
MPLS Forwarder Preliminary 1 Outline MPLS Overview MPLS Overview MPLS MRD MPLS Data Path HLD 48K MPLS Fwder HLD IPE MPLS Fwder HLD Issues Summary.
Lab MPLS Basic Configuration Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
MPLS (MultiProtocol Labeling Switching) School of Electronics and Information Kyung Hee University. Choong Seon HONG.
1MPLS QOS 10/00 © 2000, Cisco Systems, Inc. rfc2547bis VPN Alvaro Retana Alvaro Retana
MPLS Concepts Introducing Basic MPLS Concepts. Outline Overview What Are the Foundations of Traditional IP Routing? Basic MPLS Features Benefits of MPLS.
MPLS Some notations: LSP: Label Switched Path
MULTI-PROTOCOL LABEL SWITCHING Brandon Wagner. Lecture Outline  Precursor to MPLS  MPLS Definitions  The Forwarding Process  MPLS VPN  MPLS Traffic.
1. Tag Switching RFC Cisco systems Tag Switching architecture overview. Switching In IP Networks - B.Davie, P.Doolan, Y.Rekhter. Presnted By - Shmuel.
Module 2 MPLS Concepts.
Multiple Protocol Support: Multiprotocol Level Switching.
January 2007 MPLS & GMPLS # 1 MPLS & GMPLS 60 minutes Stockholm Loa Andersson, Acreo AB.
Label Distribution Protocols LDP: hop-by-hop routing RSVP-TE: explicit routing CR-LDP: another explicit routing protocol, no longer under development.
MULTI-PROTOCOL LABEL SWITCHING By: By: YASHWANT.V YASHWANT.V ROLL NO:20 ROLL NO:20.
Multi-protocol Label Switching
Multiprotocol Label Switching (MPLS) Routing algorithms provide support for performance goals – Distributed and dynamic React to congestion Load balance.
Multi-protocol Label Switching (MPLS) RFC 3031 MPLS provides new capabilities: QoS support Traffic engineering VPN Multiprotocol support.
MPLS Introduction Computer Networks 2007 Week 9 Lecture 1 by Donald Neal.
MPLS Virtual Private Networks (VPNs)
Multi Protocol Label Switching (MPLS)
ODA MPLS Basic Knowledge
Multi Protocol Label Switching (MPLS)
MPLS Basics 2 2.
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
A Routing Protocol for WLAN Mesh
Presentation transcript:

CS Summer 2003 Lecture 7

CS Summer 2003 MPLS Forwarding MPLS forwarding can be described in terms of: Label imposition Label disposition Label swapping

CS Summer 2003 Label Imposition The action of adding the label to an unlabeled packet is known as label imposition. For example, an edge LSR performs label imposition. Label imposition involves: IP address lookup in the FIB to map the packet to a particular FEC FEC-to-NHLFE lookup in the LFIB

CS Summer 2003 Label Swapping Label swapping forwarding operation applies to transit nodes along an LSP. In the case of label swapping, the LSR: uses top label in the incoming packet to identify ILM uses ILM to identify one or more NHLFE Uses the information in the NHLFE to Perform the required label stack operation encodes the new label stack and transmits the labeled packet on the appropriate outgoing interface Label swapping operation only uses LFIB table

CS Summer 2003 Label Disposition The action of removing label stack from a label stack is known as label disposition. Label disposition is performed in the egress node for an LSP. In the case of label disposition, the LSR: uses top label in the incoming packet to identify ILM uses ILM to identify one or more NHLFE Uses the information in the NHLFE to Perform the required label stack operation.  The label stack operation in this case indicates that the label stack needs to be removed. In some case (e.g., de-aggregation), an additional IP address lookup may be required to forward the unlabeled packet.

CS Summer 2003 MPLS Forwarding Architecture Edge LSRs make use of both FIB and LFIB Transit LSRs can forward labeled traffic based on LFIB Each LSR may carry a mix of IP and MPLS traffic In general, each LSR supports both conventional IP forwarding (i.e., FIB) and label switching based forwarding (i.e., LFIB) components. In MPLS, LIB is the counterpart of RIB and LFIB is the counterpart of the FIB.

CS Summer 2003

CS Summer 2003 FIB and LFIB Synchronization 1.Exchange dynamic routing information and label information with peers 2.Process the routing information and build the FIB. Process the local/remote label and build the LIB. 3.Select the best paths. Build LFIB from LIB. 4.Distribute the FIB/LFIB to the line cards. Initially, entire database. Later, incremental.

CS Summer 2003 Label Distribution Protocol (LDP) Big Picture

CS Summer 2003 Label Distribution Methods To establish label switch paths, LSRs must be able exchange label information. MPLS uses multiple protocols for this purpose, namely : Label Distribution Protocol (LDP) RSVP-TE BGP Each label distribution protocol has certain characteristics that meets application specific requirements e.g: LDP maps unicast IP destinations into labels and establishes a hop-by-hop routed LSP RSVP is used to establish a LSP along explicit path. BGP is used to assign and distribute labels for BGP routes.

CS Summer 2003 MPLS Applications MPLS enables a diverse set of applications such as: IP over MPLS Traffic Engineering Virtual Private Networks (VPNs) IP over MPLS Use hop-by-hop routed LSP to route IP traffic Label distribution via LDP Traffic Engineering Use explicitly routed LSPs with QoS Label distribution via RSVP-TE VPN Share common transport network among multiple customers Label distribution via LDP and BGP

CS Summer 2003 Label Distribution Protocol (LDP) MPLS label distribution protocols are either extend existing protocols or define new protocols. For example, RSVP-TE and BGP label distribution protocols are based on extensions of the existing protocols. LDP is a protocols that is explicitly designed for distribution label information between directly or indirectly connected LSRs.

CS Summer 2003 Label Distribution Protocol (LDP) LDP assigns labels to IGP prefixes and as a result establishes hop- by-hop routed LSP. LSP that are established via LDP essentially traverse along path that would be followed by all packets in certain FEC if they were routed using conventional IP forwarding. In a nutshell, LDP assigns labels to the FEC. As a result, the LSPs that are established via LDP mimic or track the IGP Path. For example, if a next hop for a certain FEC changes, the corresponding LSP path also changes.

CS Summer 2003 R3 R5 R1 R2 R4 R6 PrefixNext hopOut Link d1,d2 R4 Link 2 PrefixNext hopOut Link d1,d2 R2 Link 1 PrefixNext hopOut Link d1 R6 Link 1 d2 R5 Link 2 d1d2d1d2 d1d2d1 d2 d1 d2 d1 and d2 mapped to different FECs d1 and d2 mapped to the same FEC Destination = d2 Destination = d1 FEC Packets destined for d1/d2 form a FEC from R1 to R4.

CS Summer 2003 R3 R5 R1 R2 R4 R6 PrefixNext hopOut Link d1,d2 R4 Link 2 PrefixNext hopOut Link d1 R6 Link 1 d2 R5 Link 2 d1 and d2 mapped to different FECs PrefixNext hopOut Link d1,d2 R2 Link 1 d1 and d2 mapped to the same FEC Destination = d2 Destination = d1 Using LDP label this Path and form a LSP LSP1 Similarly, label these paths via LDP d2 d1 d2 d1 d2d1 LSP2 LSP3 d2

CS Summer 2003 R3 R5 R1 R2 R4 R6 PrefixNext hopOut Link d1,d2 R3 Link 2 PrefixNext hopOut Link d1 R6 Link 1 d2 R5 Link 2 d1 and d2 mapped to different FECs PrefixNext hopOut Link d1,d2 R2 Link 1 d1 and d2 mapped to the same FEC Destination = d2 Destination = d1 LSP1 d2 d1 d2d1 LSP2 LSP3 d2 d1 Next hop change As IGP next hop changes, LDP follows and assigns label on the R2-R3 segment for this FEC.

CS Summer 2003 Downstream and Upstream LSRs Packets with IP destination = /10 and carrying label L /24 LSR1LSR2 UpstreamDownstream Upstream/downstream LSR are defined with respect to traffic flow for a given FEC. Traffic flow direction for /24 A LSR may be downstream with respect To certain FEC and upstream with respect another FEC.

CS Summer 2003 Label Distribution Modes In MPLS, it is always the downstream LSR that assigns the FEC-to-label bindings and distribute them to the upstream LSR. The downstream LSR distributes bindings in two ways: On explicit request from the upstream LSR Unsolicited The label distribution mode when the upstream LSR makes an explicit request for label-to-FEC bindings is known as downstream-on-demand (DoD). The label distribution mode when the downstream LSR distributes label- to-FEC bindings without explicit requests from the upstream LSR is known as downstream-unsolicited (DU).

CS Summer 2003 Downstream-on-Demand (DoD) LSRs assign a label to each FEC (usually triggered when IGP learns about a prefix) Upstream LSRs request labels to downstream neighbors Downstream LSRs distribute labels upon request /24 LSR1 LSR2 Use label 5 for destination /24 Request label for destination /24

CS Summer 2003 Downstream Unsolicited (DU) LSRs assign a label to each FEC Downstream LSRs distribute labels unsolicited /24 LSR1 LSR2 Use label 5 for destination /24

CS Summer 2003 Label Information Base (LIB) LDP maintains all locally assigned (i.e., incoming) and remotely learned (i.e., outgoing) labels in a Label Information Base (LIB). Each entry in the LIB consists of: destination address, incoming label (assigned by the LSR itself) one or more pair of the form (LDP Identifier, out label). For LSP established using LDP, incoming and outgoing label information is used to populate Label Forwarding Information Base (LFIB).

CS Summer 2003 LIB/LFIB DestinationIn Label (Peer, Out Label) d1L R1 (R2, L R2 ), (R3, L R3 ), (R4, L R4 ) LIB LFIB In LabelOut Label Interface L R1 L R2 i3i3 LDP Out labels learned either upon explicit request or unsolicited In labels are advertised unsolicited or on demand To/From LDP Peers

CS Summer 2003 Downstream-on-Demand (DoD) Traffic Flow (R1-R4) LDP LIB LFIB LDP LIB LFIB LDP LIB LFIB /16 IGP R1 R2 R3 R4 R1 requests a label for /16 R2 responds with a label. Request Response Request Response LFIB programmed. LSP ready! LSP

CS Summer 2003 Downstream Unsolicited (DU) Traffic Flow (R1-R4) LDP LIB LFIB LDP LIB LFIB LDP LIB LFIB /16 IGP R1 R2 R3 R4 LDP LIB LFIB R4 learns about /16 via IGP. Assigns a local label. L1. And advertises unsolicited this label-to-FEC mapping to LDP peers FEC Here is FEC/L1 Here is FEC/L3 Here is FEC/L2

CS Summer 2003 Label Retention Modes There are two modes to retain labels from peers namely liberal and conservative retention modes. In liberal retention mode, LSR retains labels from all neighbors (whether valid next hops or not for the associated FEC) Pros – faster convergence and LSP adaptation to next hop changes. This is because in label/FEC mappings from a new next hop already exist and don’t need to be requested. Cons - Require more memory and larger label space In conservative retention mode, LSR retains labels only from valid next-hops neighbors (i.e., discards all labels/FEC mappings except received from valid next-hops) Pros – Free memory and label space Cons – Slower LSP adaptation to changes in next hops.

CS Summer 2003 Label Retention Modes LDP LIB LFIB LDP LIB LFIB LDP LIB LFIB /16 IGP R1 R2 R3 R4 LDP LIB LFIB FEC X X Next hop for FEC Changes. R2 using liberal retention mode. Already have a label/FEC from new Next hop (R3). Quickly starts using the new label. Thus liberal retentions allows faster LSP adaptation

CS Summer 2003 Label Distribution Control (Ordered vs. Independent) There are two modes for LSP control: ordered and independent. In ordered LSP control, a LSR only binds and advertise a label for a particular FEC if: it is the egress LSR for that FEC or it has already received a label binding from its next-hop Pros – packets are not forwarded onto the LSP until the complete LSP is established Cons – Slower. Introduces dependencies in LSP establishment process. For example, a LSP may have a local label/FEC mappings but cannot advertise it because it must wait for the remote (out) label/FEC mappings.

CS Summer 2003 Example- DoD/Ordered Control LDP LIB LFIB LDP LIB LFIB LDP LIB LFIB /16 IGP R1 R2 R3 R4 FEC 1 Request label for / Use label 5 4 Use label 7

CS Summer 2003 Label Distribution Control (Ordered vs. Independent) In independent LSP control, a LSR binds a label to a FEC independently from the label it has to receive from its next-hop Pros – Faster. Does not introduce extra latency. Cons - An LSR may label forward packet to a next-hop that does not have yet label information for that FEC. Packets may be dropped in the core until LSP set-up is complete.

CS Summer 2003 DoD/Independent LSP Control LDP LIB LFIB LDP LIB LFIB LDP LIB LFIB /16 IGP R1 R2 R3 R4 FEC 1 Request label for / Use label 5 2 Use label 7 3 R1 starts sending the traffic for /16 with label 7 Between R2-R4 traffic is forwarded using IP.

CS Summer 2003 Independent LSP Control Depending upon the amount of traffic is routed on IP forwarding, the forwarding performance of some LSRs may suffer. R1 R4 R2 R3 Unlabeled LSP segments may exists for sometime Packets labeled Packets unlabeled Packets labeled

CS Summer 2003 Commonly used LDP Modes Frame-based LSR typically use: DU label advertisement Conservative label retention mode Ordered label distribution Cell-based LSR typically use: DoD label advertisement mode Conservative label retention mode Ordered label distribution

CS Summer 2003 Summary of LDP modes LDP Label Modes Advertisement Downstream-on-DemandDownstream-Unsolicited Independent Ordered Distribution Retention ConservativeLiberal

CS Summer 2003 LDP Mechanics Neighbor Discovery Session Establishment TCP Connection Establishment LDP Session Initialization Session Maintenance Label Advertisement

CS Summer 2003 LDP Discovery Before establishing LDP sessions, the potential LDP neighbors are discovered. To discover directly connected neighbours: LSR periodically transmits Hellos as UDP packets over each LDP interface LDP Link Hellos are addresses to “all routers on the subnet” Hello messages use UDP port = 646. Reception of Hello on an interface establishes a “Hello Adjacency” on the that interface with the sender. A separate Hello Adjacency is on each interface.

CS Summer 2003 Session Establishment Creation of Hello Adjacency triggers establishment of TCP connection. For establishing LDP sessions, TCP port = 646. Once TCP connection has been established, two LSRs exchange LDP Initialisation message to negotiate parameters. After successful negotiation of parameters, two LSRs are LDP peers and ready for label advertisement messages.

CS Summer 2003 Session Establishment LSR1 receives Hello LSR2:0 on link. LSR1 attempts to open LDP TCP connection to LSR2. LSR1 and LSR2 negotiate session parameters via exchange of Initialization messages; e.g., advertisement mode, label range. LSR1:0LSR2:0 Hello, LSR1:0 Hello, LSR2:0 Link 1

CS Summer 2003 Initialization Message The encoding for the Initialization Message is: |0| Initialization (0x0200) | Message Length | | Message ID | | Common Session Parameters TLV | | Optional Parameters | |0|0| Common Sess Parms (0x0500)| Length | | Protocol Version | KeepAlive Time | |A|D| Reserved | PVLim | Max PDU Length | | Receiver LDP Identifier | | |

CS Summer 2003 Initialization Message ATM Session Parameters Used when an LDP session manages label exchange for an ATM link to specify ATM-specific session parameters |0|0| ATM Sess Parms (0x0501) | Length | | M | N |D| Reserved | | ATM Label Range Component 1 | | | ~ ~ | | | ATM Label Range Component N |

CS Summer 2003 Hello Adjacencies and Sessions Recall, label space refers to set of unique label values. Label space be implemented system wide (global) and/or per interface: Per interface label space is used on LC-ATM interfaces System wide label space is implemented on frame-based LSRs A LSR may have one or more Hello adjacencies. However, as long as parallel links use global label space, only one LDP session is established. On ATM interfaces, however, a separate LDP session is established per interface.

CS Summer 2003 Label Space Identification LDP label space is identified by LDP Identifier (LDP Id). LDP Id is six bytes in length first 4 bytes represent router ID last 2 bytes indicate label space Global label space, last 2 bytes contain = :0 Per interface label space, last 2 bytes contain > :5

CS Summer 2003 LDP Session Between Directly Connected LSRs LDP Session Hello Adjacency link1 link2 LSR 2:0LSR 1:0 TCP connection = 1 Hello adjacencies = 2 LDP session = 1 TCP connection + 1 or more discovery adjacencies for the same label space Global label space LDP Session Hello Adjacency LSR 1:0LSR 2:0 TCP connection = 1 Hello adjacencies = 1

CS Summer 2003 LDP Session Between Directly Connected LSRs LDP Session Hello Adjacency link1 link2 TCP connection = 2 Hello adjacencies = 2 Per interface label space

CS Summer 2003 LDP Session Between Non-Directly Connected LSRs LSR1 and LSR7 uses to discover each other and establish hello adjacency R1 R4 LSR1 LSR7 In some applications such as L2 transport over MPLS, LDP session between non-directly connected LSRs is established for exchanging VC labels.

CS Summer 2003 Session Maintenance A Hello adjacency is created on receiving the first hello. Once created, LSR maintains a Hello adjacency by periodic transmission of Hellos LSR keeps a hold timer for each Hello adjacency. If no Hello is received before expiration of the hold timer, adjacency is deleted. As long as there is at least one adjacency, the corresponding LDP session is retained. Upon deletion of last adjacency, the LDP session is removed. Once LDP session is established, the integrity of LDP session is maintained by periodic transmission of KeepAlive messages.

CS Summer Exchange Hellos Maintain adjacency by periodic transmission of Hellos 2 Establish TCP connection Initialize LDP session LSR1 and LSR2 are LDP peers Exchange LDP address messages LDP session ready for label advertisement messages To maintain LDP session, send any LDP protocol message or KeepAlive message before the KeepAlive timer expiry LSR1LSR