Escolar Documentos
Profissional Documentos
Cultura Documentos
Ravikumar Pragada
&
Girish Srinivasan
1
Overview
Label Switching
Decomposition of network layer routing
into control and forwarding components
applicable
Label switching forwarding component
algorithm uses
forwarding table
label carried in the packet
What is a Label ?
Short fixed length entity
5
MPLS Basics
A Label Switched Path (LSP) is set up for each
route
A LSP for a particular packet P is a sequence of
routers,
<R1,R2..Rn>
for all i, 1< i < n: Ri transmits P to R[i+1] by means
of a label
Edge routers
analyze the IP header to decide which LSP to use
add a corresponding local Label Switched Path
Identifier, in the form of a label
6
forward the packet to the next hop
LER
IP
LER
LSR
LSR
MPLS
LSR
MPLS
LSR
LER
IP
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
9
Necessity of L3 Forwarding
For security
To allow packet filtering at firewalls
Requires examination of packet contents,
including the IP header
Carrying a Label
Certain link layer technologies can carry
label as a part of their link layer header
e.g ATM & Frame Relay
Network
layer data
12
LDP - Terminology
Label Distribution Protocol (LDP)
set of procedures by which LSRs 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 Session14
01234567890123456789012345678901
U
Message Type
Message Length
Message ID
Mandatory Parameters
Optional Parameters
16
01234567890123456789012345678901
Version
PDU Length
LDP Identifier
17
Why FEC?
To precisely specify which IP packets are
mapped to each LSP
Done by providing a FEC specification for
each LSP
18
20
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
21
LDP Identifiers
A six octet quantity
used to identify specific label space within an
LSR
First four octets encode LSRs IP address
Last two octets identify specific label space
Representation <IP address> : <label space id>
e.g., 171.32.27.28:0, 192.0.3.5:2
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
23
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
LSR2s 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
25
messages
NON EXISTENT
Session connection
Rx Any LDP msg except
established
Init msg or Timeout
(Passive Role)
Rx Acceptable
Init msg/
Tx Init msg &
KeepAlive msg
INITIALIZED
OPENSENT
OPENREC
Rx KeepAlive
msg
(Active Role)
Tx Init msg
Rx - Receive
Tx - Transmit
Rx Any other
msg or Timeout
Tx NAK msg
Rx Shutdown
msg or Timeout
Tx Shutdown msg
EVENT
NEW STATE
NON
EXISTENT
INITIALIZED
INITIALIZED
OPENSENT
OPENREC
NON
EXISTENT
27
OPENSENT
EVENT
Receive KeepAlive msg
NEW STATE
OPERATIONAL
OPERATIONAL
31
32
D
Domain #2
Domain #1
Domain #3
34
Label Stack
Multiple labels are carried in data packets
e.g. data packet carried across Domain #2
Concept of stacking
provides a mechanism to segregate streams
within a switched path
one useful application of this technique is in
Virtual Private Networks
Multipath
Many IP routing protocols support the notion
of equal-cost multipath routes
Few possible approaches for handling
multipath within MPLS
First approach:
separate switched path from each ingress node to
the merge point
preserves switching performance, but at the cost
of proliferating the number of switched paths
37
Multipath contd..
Second approach
Only one switched path from one ingress node to a
destination
Conserves switched paths but cannot balance loads
across downstream links as well as other approaches
LSP may be different from the normal L3 path
Third approach:
Allows single stream to be split into multiple streams, by
using L3 forwarding
e.g. might use a hash function on source and destination
IP addresses
Conserves paths at the cost of switching performance
39
Loop Survival
Minimizes the impact of loops by limiting
the amount of resources consumed by the
loop
Method
based on use of TTL field which is decrement
at each hop
Use of dynamic routing protocol converging
rapidly to non-looping paths
Use of fair queuing
42
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
43
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
45
Leaf
Leaf
Leaf
Detects loop
immediately
LSR
Link removed
from tree
Change in Link
Ingress Node
Egress Node
46
Augmented Capabilities
Set of attributes associated with traffic
trunks which collectively specify their
behavioral characteristics
Set of attributes associated with resources
which constrain the placement of traffic
trunks through them
A constraint based routing framework
which is used to select paths for traffic
trunks subject to constraints imposed
51
Resource Attributes
Part of the topology state parameters used to
constrain the routing of traffic trunks through
specific resources
Main components
Maximum Allocation Multiplier (MAM) administratively configured to determine the proportion
of resource available for allocation
Resource Class Attribute - administratively assigned
parameters which express some notion of Class for
resources
54
Basic features
prune the resources that do not meet the requirements
of the traffic trunk attribute
55
run a shortest path algorithm on the residual graph
Preemption
Setup and Holding priorities are used to rank
new and existing paths respectively to
determine if new paths can preempt existing
paths
Allocation of these priorities is a network
policy
57
Resource Class
While setup , indication must be given as to
which class the CRLSP can draw resources
from
58
Implementation Consideration
Management Interface
MPLS
Constraint Based
Routing Process
Resource Attribute
Availability Database
Conventional
IGP Process
Link State
Database
59
60
Tag Switching
Terminologies
Tags
Analogies in Label
Switching
Labels
if0
if1
if2
if1
if2
if0
if0
if1
if0
if2
if2
C
if1
D
192.16/16
if0
TSR
63
Next
hop
Outgoing
Interface
On TSR A
100
TSR B
If1
On TSR B
TSR E
If1
On TSR C
17
TSR D
If2
On TSR D
TSR E
If0
On TSR E
TSR E
If0
65
Next
hop
Outgoing
Interface
On TSR A
100
TSR B
If1
On TSR B
TSR E
If1
On TSR C
17
TSR D
If2
On TSR D
TSR E
If0
On TSR E
TSR E
If0
66
if0
if1
if2
if1
if2
if0
if0
if1
if2
Link Down
if0
if2
C
if1
D
if0
TSR
67
Updated TFIB
Incoming Outgoing
tag
tag
Next
hop
Outgoing
Interface
On TSR A
100
TSR B
If1
On TSR B
TSR E
If1
On TSR C
17
TSR D
If2
On TSR D
TSR B
If0
On TSR E
TSR E
If0
68
Routing
domain
C
Routing domain A
Z
TSR
71
Next
hop
On TSR A
N/A
10
TSR X
On TSR B
10
12
TSR Y
On TSR C
12
17
TSR W
On TSR D
17
N/A
TSR W
72
Top of
Stack
10
2
75
TSR
if0
if0
if1
if2
if0
if0
76
Explicit Routes
Tag switching supports explicit routes with
the help of a RSVP object - the Explicit
Route Object
The object is carried in the RSVP PATH
message
The tag information is carried in the Tag
Object by the RSVP RESV
78
IP Switching
Introduced by Ipsilon
Already been tested in the field
Significant Innovation: Defined a switch
management protocol (GSMP) along with
label binding protocol called Ipsilon Flow
Management Protocol (IFMP)
General Switch Management Protocol
(GSMP) - allows an ATM switch to be
controlled by an IP switch controller
79
IP Switching Overview
IP over ATM models are complex and
inefficient - involve running two control
planes
ATM Forum signaling and routing
IP routing and address resolution on top
80
IP
MARS
NHRP
PNNI
IP
IFMP
Q.2931
ATM hardware
ATM hardware
(a)
(b)
81
IP Switching Architecture
Switch controller
control processor of the system
uses GSMP to communicate with ATM switch
itself
runs IP routing and forwarding code
Default VC
defined to get control traffic before IP Switching
is performed
uses well known VCI/VPI value
also used for data that doesnt yet have a label
IP Switch Architecture
Switch controller
To
upstream
switch
Default
VC
Data
VC
GSMP
IFMP
To
downstream
switch
GSMP
Default
VC
Switch
Data
VC
83
IP Switching Basics
IP Switching relies on IP protocols
to establish routing information
to determine next hop
Flow Redirection
Redirection: Process of binding labels to flows
and establishing label switched paths
Example:
data is flowing from A via B to C on default VC
B sends a redirect to A specifying flow y and the
label (VPI/VCI) on which it expects to receive
If C issues a redirect to B for flow y, B forwards y
on the VPI/VCI specified by C
Since same flow y enters B on one VC and leaves
on another, B uses GSMP to inform its switching
element to set up the appropriate switching path
Flow Redirection
Redirect:
Flow y VPI/VCI 3/57
C
Default VC
Default VC
Switch
Controller
Switch
Element
3/57
Switch B issues a REDIRECT message to switch A
Redirect:
Flow y VPI/VCI 3/57
Redirect:
Flow y VPI/VCI 2/22
B
Default VC
C
Default VC
Switch
Controller
Switch
Element
3/57
2/22
Switch B and C redirect the same flow, allowing it to be switched at B
87
Op code
Checksum
Sender Instance
Peer Instance
Sequence Number
Message body: variable length
Flow ID length
Label
Flow identifier
Lifetime
SNAP IP header
Data
AAL5
trailer
IFMP flow
type header
Data
AAL5
trailer
GSMP contd..
GSMP packets are LLC/SNAP
encapsulated and sent over ATM link using
AAL5
GSMP Adjacency Protocol
used to gain information about the system at the
other end of the link and
to monitor link status
92