presentazione di powerpointnetgroup.polito.it/courses/didattica/cnts-tsr_slide/mpls.pdfmpls - 3 ©...
TRANSCRIPT
© M. Baldi: see page 2MPLS - 1
MPLSMulti-protocol label switching
Mario BaldiPolitecnico di Torino
(Technical University of Torino)http://staff.polito.it/mario.baldi
© M. Baldi: see page 2MPLS - 3
MPLS is the enabling technology for the New Broadband (IP) Public
Network
From MPLS Forum Documents
© M. Baldi: see page 2MPLS - 4
IP
Leased Line
Frame Relay
ATM CircuitEmulation
IP over DWDM
IP over ATM Circuit Emulation
IP over ATM
IP over SONET/SDH
IP over Frame Relay
Optical switching
The “onion” that makes telecos “cry”
© M. Baldi: see page 2MPLS - 5
IPIP router
with LAN or WAN
interface
IP router with T3 interfacePABX with T1 interfaceIP router with LAN (GE) or WAN (PoS) Interface
IP/MPLS
Optical switching
The future: WDM, IP, MPLS
© M. Baldi: see page 2MPLS - 6
The idea
Instead of the IPdestination address
Forwarding packets according to a label
Label IP packet
© M. Baldi: see page 2MPLS - 7
Why?
The label may be used as an index
Faster lookup
Traffic engineering
Instead of longest prefix matching
© M. Baldi: see page 2MPLS - 8
MPLS introduces a connection-oriented
paradigm in IP networks
© M. Baldi: see page 2MPLS - 9
Network architecture
Label edge routerIngress/egress LSR
Label switch router (LSR)
MPLS networkMPLS cloud
© M. Baldi: see page 2MPLS - 10
Egress LSR
Ingress LSR
Label Switched Path (LSP)
A.k.aLSP tunnel
© M. Baldi: see page 2MPLS - 11
Label switching
D
D
1234
03
0
12
3
01
0
2
ADX
001
1
In Out221
In Out01
In Out01
In Out01
122
0
D
Forwarding table
© M. Baldi: see page 2MPLS - 12
MPLS “header” Contains the label
MPLS key elements
Enhanced routing protocols Constraints in choosing paths
Protocols for label distribution Signaling
© M. Baldi: see page 2MPLS - 13
MPLS history
Tag SwitchingIP over ATM No problems with resolution of
addressesSimpler signalingOnly one control plan
ATM with IPReusing ATM switching
hardware
© M. Baldi: see page 2MPLS - 14
MPLS historyMPλS (Multi-Protocol Lambda
Switching)G-MPLS (Generalized MPLS)Packet switchingCell switchingCircuit switching (SONET/SDH)Lambda switchingAnything switching
Unifying control plane
© M. Baldi: see page 2MPLS - 15
MPLS “header”
© M. Baldi: see page 2MPLS - 16
Shim headerMPLS header
Level 2 IP packet
Label Exp S TTL
20 bit 3 bit 8 bit1
TTL: Time to live
Exp: Experimental bits (CoS)S: Bottom of stack
© M. Baldi: see page 2MPLS - 17
VCI/VPI (ATM)
MPLS labels in layer 2 header
Connection oriented layer 2 protocols
ATM and frame relay
DLCI (Frame relay)
© M. Baldi: see page 2MPLS - 18
LSP setup:label and path selection
A glimpse into the control plane
© M. Baldi: see page 2MPLS - 19
Forwarding equivalence class (FEC)
Packets that
Are treated the same wayby each LSR
Follow the same pathin MPLS network
Receive the same label
© M. Baldi: see page 2MPLS - 20
Three Key Actions
Label bindingLabel mappingLabel distribution
Taken by LSRs
© M. Baldi: see page 2MPLS - 21
Label BindingAn LSR determines the label thatshould be prepended to packets
belonging to a given FECDownstream bindingLSR on receiving end of a linkPackets of the FEC shall be
received with chosen labelUpstream node to be notified
UnsolicitedOn-demand
© M. Baldi: see page 2MPLS - 22
How can the LSR know it?
Label MappingChosen by the considered LSR
Chosen by downstream LSR
Based on routing
Association betweenInput labelOutput labelOutput port/next hop
Actual creation of an LSP
© M. Baldi: see page 2MPLS - 23
Label Distribution
Notification of the label chosen for a given FEC
Follows label bindingAn LSR that has made a
binding, distributes it to neighboring LSRsOr at least to the upstream
one
© M. Baldi: see page 2MPLS - 26
Putting it all together: Sample LSP Setup
1234
03
0
12
3
01
0
2
ABX
001
1
In Out22
In Out0
In Out01
In Out01
122
0
D
Label for destination D
1
Label for destination D
for D
2
© M. Baldi: see page 2MPLS - 27
Putting it all together: Sample LSP Setup
1234
03
0
12
3
01
0
2
ABX
001
1
In Out22
In Out0
In Out01
In Out01
122
0
D
Label for destination D
1
Label for destination D
for D
2
Binding
Distrib
ution
© M. Baldi: see page 2MPLS - 28
Static label binding (and mapping)
Through management
Non-scalable
Equivalent to PVC ATM
No interoperability among managing systems
Impossible to have LSPs through different networks
© M. Baldi: see page 2MPLS - 29
Dynamic Label Binding
Data/traffic drivenTriggered by data packets
Control drivenTriggered by control
messageSignalingRouting
© M. Baldi: see page 2MPLS - 30
Control Driven Label Binding
Topology based
Explicit creation of LSPs
The creation of LSPs is linked to the discovery of routes towards destinations
Explicit signaling Initiated by label edge routers
© M. Baldi: see page 2MPLS - 31
Routing protocol: BGP Only topology based
Designed for allocation in integrated service networks
Resource reservation protocol (RSVP)
Label distribution protocols
Three alternatives (incompatible)
Label distribution protocol (LDP) Designed for the purpose
© M. Baldi: see page 2MPLS - 32
Routing protocols
Used to determine LSP routing
Impact label mapping phase
Indirectly determine packetrouting
© M. Baldi: see page 2MPLS - 33
carry topological information
Routing protocols
Existing protocols
IS-IS
OSPF
BGP-4
In MPLS context they are enhanced to...
© M. Baldi: see page 2MPLS - 34
Routing protocols
...carry information to constraint routing decisions (constraint data)
Capacity of linksLink utilization
Dependencies among linksUsed for fault recovery
© M. Baldi: see page 2MPLS - 35
Enhanced routing protocols
Constraint based routingis fundamental to support
traffic engineering
IS-IS–TE
OSPF–TE
© M. Baldi: see page 2MPLS - 36
Hop-by-hop Routing
Each LSR decides the next LSR of the LSP path
E.g., Based on IP routing tableSame principle and outcome
(route) as in traditional IP routing
© M. Baldi: see page 2MPLS - 37
Hop-by-hop Routing ProcedurePick label for upstream linkLabel binding
Map it to Next hopAddress of connected
interface of next LSRLabel announced by next LSR
© M. Baldi: see page 2MPLS - 40
Hop-by-hop Routing Example
1234
03
0
12
3
01
0
2
ABX
001
1
In Out12
In Out0
In Out0 In Out
01
122
0
D
2
1
1
Label for destination D
Routing table
X → 3D → 2
Label for destination D
Routing table
A → 3D → 1
Label for destination D
© M. Baldi: see page 2MPLS - 41
The choice is constraint based Constraint based routing
Explicit constraint based routing
For example, ingress LSR
A single switch chooses the pathof a whole LSP
Explicit routing
© M. Baldi: see page 2MPLS - 42
Constraint Based Routing
Distributed operation impossibleNo unique route selection
criteriaConflicting constraints
Hard to maintain constraint information synchronizedIt changes more frequently
than topology information
© M. Baldi: see page 2MPLS - 43
CR-LDP Constraint-based routing LDP
Should be modified
Label distribution protocols
RSVP-TE RSVP for Traffic Engineering
To be used withOSPF-TE and IS-IS-TE
© M. Baldi: see page 2MPLS - 44
New possibilities
Traffic engineering
Per-class traffic engineering
Guaranteed quality of service
Fast fault recovery
Not yet supported
In less than 50 ms
Synergy with DiffServ
© M. Baldi: see page 2MPLS - 45
Traffic Engineering
Motivation and enablement
© M. Baldi: see page 2MPLS - 46
Traditional IP routingTraffic for D on optimal path
D
Aggregation!
© M. Baldi: see page 2MPLS - 47
Traditional IP routing
D
Traffic for D on optimal path4 overloaded linksCongestion!
© M. Baldi: see page 2MPLS - 48
Traditional IP routingTraffic for D on optimal path4 overloaded linksUnderutilization!
9 underutilized links
D
© M. Baldi: see page 2MPLS - 49
D
Traffic Engineering
Enables traffic distribution
© M. Baldi: see page 2MPLS - 50
Traffic Engineering
D
No conge-stion
Uniform use
© M. Baldi: see page 2MPLS - 51
Can you do it with traditional IP routing? Traffic for D on
optimal path4 overloaded links9 underutilized links
D
© M. Baldi: see page 2MPLS - 52
Control plane and data plane
Data plane
Control plane
RIP IGRP
OSPF
BGPIS-IS
Routing database
Routingtable
Continuous updating
IPR
o
u
t
e
© M. Baldi: see page 2MPLS - 53
It would be possible to choosepaths according to load
Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 54
In such way, unloaded links are loadedand viceversa ...
Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 55
... and routing tables change ... Traffic for D on
optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 56
…so does the link load...Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 57
... and the paths change again!!! Traffic for D on
optimal pathoverloaded linksunderutilized links
D
Instability!
© M. Baldi: see page 2MPLS - 58
Control plane and data plane
Dataplane
Control plane
RIPIGRP
OSPF
BGP
IS-IS
Routing database
Forwarding table
MPLS
LDPRSVP
LSP setup
Signaling (LSP setup)
RoutingtableL
S
R
© M. Baldi: see page 2MPLS - 62
Traffic Engineering with MPLS
D
© M. Baldi: see page 2MPLS - 63
ATM has so far been used for traffic engineering on IP networks
Two control plansRouters are ATM-unaware
Great number of adjacencies Limitated scalability
Traffic Engineering without MPLS
© M. Baldi: see page 2MPLS - 64
Only one control plan operating on physical topology
SimplerGreater scalability
MPLS is IP-aware
Traffic Engineering with MPLS
© M. Baldi: see page 2MPLS - 65
MPλS (MPLambdaS)MPLS control plans in optical
networksGMPLS (Generalized MPLS)MPLS control plane in any
network Packet, circuit, optics,
etc…
MPLS extensions
© M. Baldi: see page 2MPLS - 66
Adding CoS and QoS
Explicit support is required in LSR data plan and control
plan
Resources and service modes may be associated to a FEC at
LSP setup
© M. Baldi: see page 2MPLS - 67
Class of service (CoS)
Relative priority among different FECs
It does offer absolute guarantiesSupport of DiffServ modelPer-hop behaviorEF (expedite forwarding), AF
(assured forwarding)Per class traffic engineeringDS-aware traffic engineering
© M. Baldi: see page 2MPLS - 68
Quality of service (QoS)
Specific guaranties onBandwidthDelayBurst size
© M. Baldi: see page 2MPLS - 69
Advantages of QoS in MPLSUnified network supporting all types of
services(marketing message)
Support of QoS and real-time services on IP (e.g., voice) is not ready
A lot of multi-service networks now have a paradigm “Ships-in-the-night” ATM protocols are ATM typical
servicesMPLS control plan for IP services
© M. Baldi: see page 2MPLS - 72
Fast Fault Recovery
Edge-to-edge re-routing
LSP
Link re-routing
Re-routing node
Re-routing node
© M. Baldi: see page 2MPLS - 73
Header Layer 2 IP packetLabel 3
MPLS Domain 3
Label 2
MPLS Domain 2
Label 1
MPLS Domain 1
Label Stackhierarchy and scalability
• Routing table reduction
• Forwarding table reduction
© M. Baldi: see page 2MPLS - 74
MPLS and scalability
MPLS labels introduce hierarchyVarious hierarchical levels, as
needed for the necessary scalability
Routing tables of transit routers do not have to be comprehensiveLSP between edge routers
(Simpler and faster exact match of labels rather than longest prefix matching)
© M. Baldi: see page 2MPLS - 75
Penultimate Hop Popping (PHP)
The last but one node on the path of an LSP pops the labelThe LER routes the packet based
on IP address (or next label in stack)
Distribution of label 3 indicates (implicit) PHP
Explicit PHP: label 0 is swappedWhen shim header is neededE.g., EXP bits
© M. Baldi: see page 2MPLS - 76
VPN: Virtual Private Network
Services similar to those of a private network, but provided on a public infrastructure (IP)
Privacy and securityOverlapping addressing spaces
(private) Non-unique addresses
Class of Service (CoS) and Quality of Service (QoS)
© M. Baldi: see page 2MPLS - 77
VPN based on MPLS
Labels “hide” IP addresses of users on the public network Allow for ovelapping address
spacesService flexibility FEC
© M. Baldi: see page 2MPLS - 78
VPN based on MPLS
MPLS allows a scalable solution for VPN servicesOther approaches require
explicit setting (manual) of tunnels between each pair of websites
Number of VPNsNumber of VPN members
© M. Baldi: see page 2MPLS - 79
Standardization
IETF –Internet Engineering Task Force
FR/MPLS Alliance
MPLS working group
Consortium of vendors Foster deployment Aspects omitted by IETF VoMPLS, ADSL