280 likes | 812 Views
MPLS Architecture. Internet. IP. LER. LER. LER. LSR. LSR. LSR. LSR. MPLS. IP. MPLS Network Model. MPLS. LSR = Label Switched Router LER = Label Edge Router. MPLS Benefits. Comparing MPLS with existing IP core and IP/ATM technologies, MPLS has many advantages and benefits:
E N D
Internet IP LER LER LER LSR LSR LSR LSR MPLS IP MPLS Network Model MPLS LSR = Label Switched Router LER = Label Edge Router
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
MPLS Benefits (cont’d) • 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
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 support MPLS • For Scaling • Forward on a finer granularity than the labels can provide
MPLS Architecture • Down stream label assignment for unicast traffic • On demand • Unsolicited • Path selection • Hop by hop • Explicit • Ordered vs. independent control • Loop detection and prevention mechanisms
Label Distribution Protocol (LDP) • Set of procedures used by LSRs to 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”
LDP Messages • Discovery messages • Used to announce and maintain the presence of an LSR • Session/Adjacency 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
Forwarding Equivalence Class (FEC) • Introduced to denote packet forwarding classes • Comprises traffic • To a particular destination • To destination with distinct service requirements
LSP - FEC Mapping • FEC specified as a set of two elements • IP Address Prefix - any length from 0 – 32 • 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
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
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
LDP Discovery (Cont’d) • 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
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 its 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
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
Label Distribution Control Mode • Independent Label Distribution Control • Each LSR may advertise label mappings to its neighbors at any time • Independent Downstream on Demand mode - LSR answers without waiting for a label mapping from next hop • 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
Distribution Control Mode (cont’d) • 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
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 • Faster reaction to routing changes
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
Hierarchical Routing in MPLS • 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
Hierarchical Routing (cont’d) • 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
Explicit Routing in MPLS • Two options for route selection: • Hop by hop routing • Explicit routing • Explicit Routing (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
Explicit Routing (Cont’d) • In an explicitly routed LSP • 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)
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 Mitigation/Survival • Loop Detection • Loop Prevention
Loop Mitigation • Minimizes the impact of loops by limiting the amount of resources consumed by the loop • Method • Based on use of TTL field which is decremented at each hop • Use of dynamic routing protocol converging rapidly to non-looping paths
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
Loop Detection (Cont’d) • 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
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