© 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 - 2
Copyright noticeThis set of transparencies, hereinafter referred to as slides, is protected by copyright laws and provisions of International Treaties. The title and copyright regarding the slides (including, but not limited to, each and every image, photography, animation, video, audio, music and text) are property of the authors specified on page 1.
The slides may be reproduced and used freely by research institutes, schools and Universities for non-profit institutional purposes. In such cases, no authorization is requested.
Any total or partial use or reproduction (including, but not limited to, reproduction on magnetic media, computer networks, and printed reproduction) is forbidden, unless explicitly authorized by the authors by means of written license.
Information included in these slides is deemed as accurate at the date of publication. Such information is supplied for merely educational purposes and may not be used in designing systems, products, networks, etc. In any case, these slides are subject to changes without any previous notice. The authors do not assume any responsibility for the contents of these slides (including, but not limited to, accuracy, completeness, enforceability, updated-ness of information hereinafter provided).
In any case, accordance with information hereinafter included must not be declared.
In any case, this copyright notice must never be removed and must be reported even in partial uses.
© 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
ATM
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
WDM
IP
ATM
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
λ 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)
© M. Baldi: see page 2MPLS - 11
Label switching
D
D
1234
03
0
12
3
01
0
2
A
D
X
0
0
1
1
In Out
2
2
1
In Out
0
1
In Out
0
1In Out
0
1122
0
D
© M. Baldi: see page 2MPLS - 12
MPLS history
Tag Switching
IP on ATM
No problems with resolution of addresses
Simpler signaling
Only one control plan
ATM with IP
Reusing ATM switching hardware
© M. Baldi: see page 2MPLS - 13
MPLS history
MPλS (Multi-Protocol Lambda Switching)
G-MPLS (Generalized MPLS)
Packet switching
Cell switching
Circuit switching (SONET/SDH)
Lambda switching
Anything switching
Unifying control plan
© M. Baldi: see page 2MPLS - 14
MPLS “header”
Contains the label
MPLS key elements
Upgraded routing protocols
Constraints in choosing paths
Protocols for label distribution
Signaling
© M. Baldi: see page 2MPLS - 15
Shim headerMPLS header
Level 2 IP packet
Label Exp S TTL20 bit 3 bit 8 bit1
TTL: Time to live
Exp: Experimental bits (CoS)S: Bottom of stack
© M. Baldi: see page 2MPLS - 16
VCI/VPI (ATM)
MPLS labels in layer 2 header
Connection oriented layer 2protocols
ATM and frame relay
DLCI (Frame relay)
© M. Baldi: see page 2MPLS - 17
Forwarding equivalence class (FEC)
Packets that
Follow the same pathin MPLS network
Are treated the same wayby each LSR
Receive the same label
© M. Baldi: see page 2MPLS - 18
Label Binding
A LSR determines the label it intends to use for packets belonging to a given FEC
Downstream binding
Packets of the FEC shall be received with chosen label
Upstream node to be notified
Unsolicited
On-demand
© M. Baldi: see page 2MPLS - 19
Input label
Output port
LSP Creation
Label Mapping
The label used by the downstream switch of a link for packets
belonging to a FEC is associated to
© M. Baldi: see page 2MPLS - 20
Downstream Label Binding
Label Distribution
The downstream switch of a link choses the label to be attached to packets belonging to a FEC when
forwarded on the link
The label is communicated to the upstream switch
Label mapping for the corresponding port
© M. Baldi: see page 2MPLS - 21
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 - 22
Dynamic label binding
Protocol (IP) driven
Explicit creation of LSP
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 - 23
Routing protocol: BGP
Only protocol driven
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 - 24
Routing protocols
Used to determine LSP routing
Guide label binding procedures
They indirectly determine packet routing
© M. Baldi: see page 2MPLS - 25
carry topology information
Routing protocols
Existing protocols
IS-IS
OSPF
BGP-4
In MPLS context
they are enhanced d to...
© M. Baldi: see page 2MPLS - 26
Routing protocols
...carry information to constraint routing decisions (constraint data)
Capacity of links
Link utilization
Dependencies among links
Used for fault recovery
© M. Baldi: see page 2MPLS - 27
Enhanced routing protocols
Constraint based routingis fundamental to support
traffic engineering
IS-IS–TE
OSPF–TE
© M. Baldi: see page 2MPLS - 28
Similar to routing for IP packets
Ingress and egress labels
Switches agree on corrispondencies among
Each switch decides the next stepof LSP path
Hop-by-hop routing
Labels and FEC
© M. Baldi: see page 2MPLS - 29
The choice is constraint based
Constraint based routing
Explicit constraint based routing
For example, LSR ingress
A single switch may choose the path of an LSP
Explicit routing
© M. Baldi: see page 2MPLS - 30
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 - 31
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 - 32
Control plane and data plane
Data plane
Control plane
RIP IGRP
OSPF
BGPIS-IS
Routing database
Routingtable
Continuous updating
IP
© M. Baldi: see page 2MPLS - 33
Control plane and data plane
Dataplane
Control plane
RIPIGRP
OSPF
BGP
IS-IS
Routing database
Forwarding table
MPLS
LDPRSVP
LSP setup
Signaling (LSP setup)
Routingtable
© M. Baldi: see page 2MPLS - 34
Traditional IP routingTraffic for D on optimal path
D
Aggregation!
© M. Baldi: see page 2MPLS - 35
Traditional IP routing
D
Traffic for D on optimal path4 overloaded linksCongestion!
© M. Baldi: see page 2MPLS - 36
Traditional IP routingTraffic for D on optimal path4 overloaded linksUnderutilization!
9 underutilized links
D
© M. Baldi: see page 2MPLS - 37
D
Traffic Engineering
Allows traffic distribution
© M. Baldi: see page 2MPLS - 38
Traffic Engineering
D
No conge-stion
Uniform use
© M. Baldi: see page 2MPLS - 39
Can you do it with traditional IP routing? Traffic for D on
optimal path4 overloaded links9 underutilized links
D
© M. Baldi: see page 2MPLS - 40
It is necessary to choose paths according to load
Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 41
In such way, unloaded links are loadedand viceversa ...
Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 42
... and routing tables change ... Traffic for D on
optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 43
…so does the link load...Traffic for D on optimal pathoverloaded linksunderutilized links
D
© M. Baldi: see page 2MPLS - 44
... and the paths change again!!! Traffic for D on
optimal pathoverloaded linksunderutilized links
D
Instability!
© M. Baldi: see page 2MPLS - 45
Traffic Engineering with MPLS
D
© M. Baldi: see page 2MPLS - 46
ATM has so far been used for traffic engineering on IP networks
Two control plans
Routers are ATM-unaware
Great number of adjacencies
Limitated scalability
Traffic Engineering without MPLS
© M. Baldi: see page 2MPLS - 47
Only one control plan operating on physical topology
Simpler
Greater scalability
MPLS is IP-aware
Traffic Engineering with MPLS
© M. Baldi: see page 2MPLS - 48
MPλS (MPLambdaS)
MPLS control plans in optical networks
GMPLS (Generalized MPLS)
MPLS control plane in any network
Packet, circuit, optics, etc…
MPLS extensions
© M. Baldi: see page 2MPLS - 49
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 - 50
Class of service (CoS)
Relative priority among different FECs
It does offer absolute guaranties
Support of DiffServ model
Per-hop behavior
EF (expedite forwarding), AF (assured forwarding)
Traffic engineering for class
DS-aware traffic engineering
© M. Baldi: see page 2MPLS - 51
Quality of service (QoS)
Specific guaranties on
Bandwidth
Delay
Burst size
© M. Baldi: see page 2MPLS - 52
Advantages of QoS in MPLS
Unified network supporting all types of services
(marketing message)
Support of QoS and real-time services on IP (e.g., voice) is not ready
Alot of multi-service networks now have a paradigm “Ships-in-the-night”
ATM protocols are ATM typical services
MPLS control plan for IP services
© M. Baldi: see page 2MPLS - 53
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 - 54
MPLS and scalability
MPLS labels introduce hierarchy
Various hierarchical levels, as needed for the necessary scalability
Routing tables of transit routers do not have to be comprehensive
LSP between edge routers
Simpler and faster exact match of labels rather than longest prefix matching
© M. Baldi: see page 2MPLS - 55
VPN: Virtual Private Network
Services similar to those of a private network, but provided on a public
infrastructure (IP)
Privacy and security
Overlapping addressing spaces (private)
Non-unique addresses
Class of Service (CoS) and Quality of Service (QoS)
© M. Baldi: see page 2MPLS - 56
VPN based on MPLS
The labels “hide” IP addresses of users on the public network
MPLS allows a scalable solution for VPN services
Other approaches require explicit setting (manual) of tunnels between each pair of websites
Number of VPNs
Number of VPN members
Service flexibility (thanks to FEC)
© M. Baldi: see page 2MPLS - 57
Standardization
IETF –Internet Engineering Task Force
FR/MPLS Alliance
MPLS working group
Consortium of producersSpeed up spreadingAspects omitted by IETF
VoMPLS, ADSL
© M. Baldi: see page 2MPLS - 58
BibliographyT. Tofoni, “MPLS – Fondamenti e applicazioni alle reti IP”, Hoepli, 2003
IETF MPLS Working Group, http://www.ietf.org/html.charters/mpls-charter.html
E. Rosen, A. Viswanathan, R. Callon, “Multiprotocol Label Switching Architecture,” RFC 3031, Standards Track, Jan. 2001
E. Rosen, D. Tappan, G. Fedorkow, Y. Rekhter, D. Farinacci, T. Li, A. Conta, “MPLS Label Stack Encoding,” RFC 3032, Standards Track, Jan. 2001
© M. Baldi: see page 2MPLS - 59
Bibliography
F. Le Faucheur, et al., “Multi-Protocol Label Switching (MPLS) Support of Differentiated Services,” RFC 3170, Standards Track, May 2002
Davie, B., Lawrence, J., McCloghrie, K., Rekhter, Y., Rosen, E., Swallow, G. and P. Doolan, "MPLS using LDP and ATM VC Switching", RFC 3035, January 2001.
Andersson, L., Doolan, P., Feldman, N., Fredette, A. and B. Thomas, "LDP Specification", RFC 3036, January 2001.