MPLS Architecture

Download Report

Transcript MPLS Architecture

MPLS Architecture
1
MPLS Network Model
Internet
LER
IP
LER
LSR
LSR
MPLS
LSR
MPLS
LSR
LER
LSR = Label Switched Router
LER = Label Edge Router
IP
2
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
3
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
4
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
5
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
6
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”
7
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
8
Forwarding Equivalence Class (FEC)
• Introduced to denote packet forwarding
classes
• Comprises traffic
– To a particular destination
– To destination with distinct service
requirements
9
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
10
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
11
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
12
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
13
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
14
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
15
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
16
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
17
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
18
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
19
Hierarchical Routing in MPLS
•External Routers A,B,C,D,E,F - Talk BGP
•Internal Routers 1,2,3,4,5,6 - Talk OSPF
C
D
Domain #2
1
A
B
Domain #1
6
2
3
4
5
F
E
Domain #3
Note: Internal routers in domains 1 and 3 not shown
20
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
21
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
22
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)
23
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
24
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
25
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
26
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
27
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
28