Outline • Introduction • Applications of MPLS • Fundamental concepts – Constraint-based MPLS – Multiprotocol Label Switching Routing • Predecessor switching – Virtual Private techniques Networks (VPN) – IP switching Datakommunikation, påbyggnad – (RSVP) – Tag switching DK2-VT01 • MPLS Core Protocols Jerry Eriksson Introduction Definitions • Router architectures • A brief history • Forwarding – IP over ATM • Background – Receive a packet on an input – IP switching – Growth of Internet – determine where it needs to go by examine – Tag switching – Price and performance some fields in the packet – MPLS Working group – Integration of IP over – send it to an appropriate output ATM • Summary of • Label – Extending routing introduction functionality – a short, fixed-length identifier Questions How did we get there? • What is MPLS? • Label swapping • Need of fast cheap IP routers is one reason technique • How does it works? • More important – IP switching • What benefits does it – Scalability – Tag switching provide? – Price/performance – ARIS (IBM) • Switches cheaper • Standardisation needed • router more powerful – IETF promote MPLS – IP over ATM 1
IP over ATM Many ways of getting from A to B: •BROADCAST: Go everywhere, stop when you get to B, never • Mapping of ATM and IP involves ask for directions. considerable complexity •HOP BY HOP ROUTING: Continually ask who’s closer to B • IP and ATM were developed with no regard go there, repeat … stop when you get to B. “Going to B? You’d better go to X, its on the way”. of each other •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”. ROUTE AT EDGE, SWITCH IN CORE The fish picture Over utilized Router IP IP #L1 IP #L2 IP #L3 IP Under utilized IP Forwarding IP Forwarding LABEL SWITCHING Consider destination, only Comparison - Hop-by-Hop vs. Explicit Routing Explicit Routing - MPLS vs. Traditional Routing Hop-by-Hop Routing Explicit Routing •Connectionless nature of IP implies that routing is based on information in • Source routing of control traffic • Distributes routing of control traffic each packet header • Builds a path from source to dest • Builds a set of trees either fragment • Requires manual provisioning, or •Source routing is possible, but path must be contained in each IP by fragment like a random fill, or automated creation mechanisms. header backwards, or forwards in organized • LSPs can be ranked so some •Lengthy paths increase size of IP header, make it variable size, manner. reroute very quickly and/or backup • Reroute on failure impacted by increase overhead paths may be pre-provisioned for convergence time of routing protocol rapid restoration •Some gigabit routers require ‘slow path’ option-based routing of IP packets • Existing routing protocols are • Operator has routing flexibility •Source routing has not been widely adopted in IP and is seen as impractical destination prefix based (policy-based, QoS-based, • Difficult to perform traffic •Some network operators may filter source routed packets for security • Adapts well to traffic engineering engineering, QoS-based routing reasons Explicit routing shows great promise for traffic engineering Explicit routing shows great promise for traffic engineering 2
EXPLICITLY ROUTED Summary of introduction Route= {A,B,C} • The need to evolve the routing architecture #14 #972 of IP networks #216 B • The need for greater price/performance in #14 C routers A #972 • Complexity of mapping IP to ATM #462 • Scalability • The need to add new routing functionality (MPLS) Terminology Fundamental Concepts • LDP: Label Distribution Protocol • Network layer routing functional components: • LSP: Label Switched Path control and forwarding • Label switching: The forwarding component • FEC: Forwarding Equivalence Class • Label switching: The control component • LSR: Label Switching Router • Edge devices • LER: Label Edge Router (Useful term not in • Relationship between label switching and network layer addressing and routing standards) Control and forwarding Forwarding Equivalence Classes • Partitioning the set of all possible packets into a • Two basic components finite number of disjoint subsets – Control component: responsible for construction and maintenance of the forwarding table • Packets with the same FEC are treated equally – Forwarding component: responsible for the actual – i.e., sent to the same next hop forwarding of packets from input to output across a • Examples switch – unicast packets with same destination address • uses forwarding table and information in the packet – packets with the same type-of-service • Each router implements both components • Granularity - very important 3
The forwarding component Forwarding Equivalence Classes LSR LSR LER LER • Label switching forwarding table LSP Incoming label First subentry Second subentry IP1 Outgoing label Outgoing label IP1 IP1 #L1 IP1 #L2 IP1 #L3 Incoming label Outgoing interface Outgoing interface Next hop address Next hop address IP2 #L1 IP2 #L2 IP2 #L3 IP2 IP2 Link layer “shim” layer Network layer Network layer header header header data Packets are destined for different address prefixes, but can be Packets are destined for different address prefixes, but can be mapped to common path • Label in a packet ? mapped to common path • The concept of FECs provides for a great deal of flexibility and scalability – “Shim” label header • In conventional routing, a packet is assigned to a FEC at each hop (i.e. L3 – VCI/VPI for ATM look-up), in MPLS it is only done once at the network ingress Label switching forwarding algorithm Single switching forwarding algorithm • LSR receives a packet Unicast routing with Multicast Routing function Unicast routing types of service routing • Router extracts the label Longest match Longest match on Forwarding algorithm Longest match on destination + exact match on destination address – uses it as an index in the forwarding table source address + exact match on Type of service on source address, • For each subentry found the router replaces the label in the destination address, packet with the outgoing label and incoming interface • Sends the packet over the interface specified by the next Unicast routing with Multicast Routing function Unicast routing hop address types of service routing Forwarding algorithm Common forwarding (label swapping) The forwarding component (cont) The forwarding component: summary • Multiprotocol: both above and below • Uses a single forwarding algorithm – based on label switching • The label is a short, fixed-length unstructured entity IPv6, IPv4, AppleTalk – both forwarding and reservation semantics Label switching • No constraints on the granularity that can associated with a label Ethernet, FDDI, ATM • Support many network and link layer protocols 4
The control component The control component • Responsible for • a) Create bindings between labels and FECs – distributing routing information to other LSRs • b) Inform other LSRs of the binding it • as in conventional routing creates – Algorithms to maintain forwarding tables • Utilize both a) and b) to construct and maintain the forwarding table – used by the the label switching component The label switching control component Construction of a label switching forwarding table Network Layer Procedure for creating Procedure for distributing routing protocols binding between labels information about Network Layer Procedure for creating Procedure for distributing (e.g., OSPF, BGP, PIM) and FECs created label bindings routing protocols binding between labels information about (e.g., OSPF, BGP, PIM) and FECs created label bindings Maintenance of forwarding table FEC to next FEC to label mapping hop mapping Label switching forwarding table (label to next hop mapping) Label Distribution - Methods Binding labels Label Distribution can take place using one of two possible methods Label Distribution can take place using one of two possible methods • Local versus remote binding Downstream Label Distribution Downstream-on-Demand Label Distribution LSR1 LSR2 • Upstream versus downstream binding LSR1 LSR2 Label-FEC Binding Request for Binding • LSR2 and LSR1 are said to have an “LDP adjacency” (LSR2 being the downstream LSR) Label-FEC Binding • LSR2 discovers a ‘next hop’ for a particular FEC • LSR2 generates a label for the FEC and • LSR1 recognizes LSR2 as its next-hop for an FEC communicates the binding to LSR1 • A request is made to LSR2 for a binding between the FEC and a label • LSR1 inserts the binding into its forwarding tables • If LSR2 recognizes the FEC and has a next hop for • If LSR2 is the next hop for the FEC, LSR1 can use that label knowing that its meaning is understood 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 5
Recommend
More recommend