Documente Academic
Documente Profesional
Documente Cultură
Switching
(MPLS)
By
Behzad Akbari
Fall 2008
These slides are based in parts on the slides of J. Kurose (UMASS) and Shivkumar (RPI)
1
Outline
ATM basics
IP over ATM
MPLS basics
MPLS VPN
MPLS traffic engineering
2
Asynchronous Transfer Mode:
ATM
1990s/00 standard for high-speed (155Mbps to
622 Mbps and higher) Broadband Integrated
Service Digital Network architecture
Goal: integrated, end-end transport of carry voice,
video, data
meeting timing/QoS requirements of voice,
telephone world
packet-switching (fixed length packets, called
physical layer
4
ATM: network or link layer?
Vision: end-to-end transport:
ATM from desktop to IP
desktop network
ATM is a network ATM
network
technology
Reality: used to connect IP
backbone routers
IP over ATM
layer, connecting IP
routers
5
ATM Adaptation Layer (AAL)
ATM Adaptation Layer (AAL): adapts upper
layers (IP or native ATM applications) to ATM layer
below
AAL present only in end systems, not in switches
AAL layer segment (header/trailer fields, data)
fragmented across multiple ATM cells
analogy: TCP segment in many IP packets
AAL AAL
User data
AAL PDU
ATM cell
7
ATM Layer
Service: transport cells across ATM network
analogous to IP network layer
9
ATM VCs
Advantages of ATM VC approach:
QoS performance guarantee for connection
10
ATM Layer: ATM cell
5-byte ATM cell header
48-byte payload
Why?: small payload -> short cell-creation
Cell header
Cell format
11
ATM cell header
VCI: virtual channel ID
will change from link to link thru net
discarded if congestion
HEC: Header Error Checksum
cyclic redundancy check
12
ATM Physical Layer (more)
TCS Functions:
Header checksum generation: 8 bits CRC
Cell delineation
14
IP-Over-ATM
IP over ATM
Classic IP only
3 networks (e.g., LAN segments)
addresses
ATM
network
Ethernet Ethernet
LANs LANs
15
IP-Over-ATM
app
app transport
transport IP IP
IP AAL AAL
Eth Eth ATM
ATM
phy phy phy ATM phy
phy
ATM
phy
16
Datagram Journey in IP-over-ATM
Network
at Source Host:
IP layer maps between IP, ATM dest address (using ARP)
passes datagram to AAL5
AAL5 encapsulates data, segments cells, passes to ATM layer
ATM network: moves cell along VC to destination
at Destination Host:
AAL5 reassembles cells into original datagram
17
IP-Over-ATM
Issues: ATM
IP datagrams into network
ATM addresses
just like IP
18
Re-examining Basics: Routing vs
Switching
19
IP Routing vs IP Switching
20
MPLS: Best of Both
PACKET
ROUTING Worlds HYBRID CIRCUIT
SWITCHING
23
Issues with Ipsilons IP
switching
24
Tag Switching
26
Background
It was meant to improve routing performance on the
Internet
Routing is difficult using CIDR (longest prefix matching)
Using the label-swapping paradigm to optimize network
performance
MPLS is similar to virtual circuits
Only a fixed-sized label is used (like a VCID) with local
scope
It is very datagram oriented though
It uses IP addressing and IP routing protocols
27
Goals of MPLS
To enable IP capability on devices that cannot handle IP traffic
Making cell switches behave as routers
Increased performance
Using the label-swapping paradigm to optimize network
performance
Forward packets along explicit routes (pre-calculated routes not
used in regular routing)
MPLS also permits explicit backbone routing, which specifies in
advance the hops that a packet will take across the network.
This should allow more deterministic, or predictable, performance
28
IP Regular Destination Based
Forwarding
Address I/F Address I/F Address I/F
Prefix Prefix Prefix
128.89 1 128.89 0 128.89 0
171.69 1 171.69 1
0 128.89
0
1
128.89.25.4 Data
0 128.89.25.4 Data
1
0 128.89
0
1
You Can Reach 128.89 Thru
Me
You Can Reach 128.89 and 1
171.69 Thru Me
0 128.89
0
1
0 128.89
0
1
128.89.25.4 Data
9 128.89.25.4 Data
1
36
Label Header
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
38
Traffic Aggregates: Forwarding
Equivalence Classes
LSR LSR
LER LER
LSP
IP1 IP1
IP1 #L1 IP1 #L2 IP1 #L3
IP2 #L1 IP2 #L2 IP2 #L3
IP2 IP2
FEC = A subset of packets that are all treated the same way by a router
The concept of FECs provides for a great deal of flexibility and scalability
In conventional routing, a packet is assigned to a FEC at each hop (i.e. L3 look-up),
in MPLS it is only done once at the network ingress
39
Label Switched Path
(LSP)
Intf Label Dest Intf Label Intf Label Dest Intf
In In Out Out In In Out
3 0.50 47.1 1 0.40 3 0.40 47.1 1
40
Label Merging
When multiple input streams corresponding to the
same FEC exit using the same MPLS label.
InLabel NextHop Label
10 Port 3 30
25 Port 3 30
Netw D
Dest NextHop Label
D Port 1 10 R2 R4
Port 3
R1 Port 1
Port 5
41
Non-Label Merging
Each source-destination pair has its own label at
each LSR router.
Port 5
42
Pushing-Requesting Labels
R2 can push a label to R1, indicating which label
to use to reach D
R1 can request a label from R2 to be used to
reach D.
If using non-merging, usually R1 requests a label
from R2
Netw D
R2 R4
R1
43
ATM
44
IP over ATM (Before MPLS)
We had every router with a VC over an ATM network to every other router
Known as an overlay network
Whole ATM network looked like a single subnet to the IP Routers
ATM switches are not aware that the payload is an IP packet
45
IP disassembly into ATM
cells
IP becomes an application to the ATM layer.
IP packets have to be broken into small 48-byte pieces, and placed
into ATM Cells
Cells are sent over the ATM circuit (e.g. from R1 to R6), the
switches only see ATM Cells, not IP packet
At R6, the cells are regrouped and the IP packet restored
46
ATM switches as LSRs (using
MPLS)
ATM switches are now peers of MPLS routers
No longer viewed as a single subnet, each link is now a
subnet
47
Advantages of MPLS vs
overlay
Each MPLS router has fewer adjacencies (i.e. neighbors)
This reduces the OSPF traffic to the router significantly
In OSPF you receive the topology of the entire network via each
of your neighbors.
48
How to route IP packets?
Can we send IP messages to our neighbors?
We can use a special VCID (say 0) to send IP
messages to our neighbor.
Each node has a VCID 0 with each of its neighbors (a
single hop VCID
Thus, to send an IP message to a neighbor
Disassemble the IP packet into ATM Cells
Send them on VCID 0 of the link of the desired neighbor
The neighbor reassembles the IP packet
Since we can send an IP message to any
neighbor
This implies ATM LSRs can execute ANY Internet
protocol based on IP (e.g., OSPF, RIP, etc) and forward
IP datagrams
49
End-to-end VCs
Disassembly/reassembly at each hop is wasteful
It is better to establish an e-2-e VC for each
source/destination pair, e.g., from R1 to R6
From OSPF (or other mechanism), each router knows
which other router is ATM or regular router
R1 requests a label from LSR1 for destination R6
LSR1 requests a label from LSR3 for destination R6
LSR3 requests a label from R6
50
GMPLS
Generalized MPLS
51
Explicit Routing
Similar to source routing but done by a router
Fish network due to its shape
R1 -> R7 : R1 R3 R6 R7
R2 -> R7 : R2 R3 R4 R5 R7
Perhaps we want to balance the load somehow
Cannot be done with regular IP
IP routing does not look at the source of the message
52
Explicitly Routed (ER-) LSP
Route=
{A,B,C}
#14 #972
#216
B
#14
A C
#972
#462
53
Explicitly Routed (ER-) LSP
Contd
Intf Label Dest Intf Label Intf Label Dest Intf
In In Out Out In In Out
3 0.50 47.1 1 0.40 3 0.40 47.1 1
Intf Dest Intf Label
In Out Out IP 47.1.1.1
1 47.1
3 47.1.1 2 1.33 3
3 47.1 1 0.50 3
2
1
1 2
47.3 3 47.2
2
IP 47.1.1.1
54
Explicit Route Advantages
Traffic Engineering
You can control how much traffic travels through some
point in the network
This is done by controlling the paths taken by traffic
Fast-rerouting
You can bypass broken links quickly with explicit routing.
No need to wait for a routing protocol (OSPF) to react.
How?
Keep track of two paths, regular path and backup path
If the regular path fails use the backup
55
Virtual Private Networks
We can do VPNs with MPLS.
Let us review VPNs with regular IP first.
Goal
Controlled connectivity
Virtual Private Network
A group of connected networks
Connections may be over multiple networks not belonging
to the group (e.g. over the Internet)
E.g., joining the networks of several branches of a
company into a private internetwork
56
Virtual Private Networks
C
A B
K L
M
C
K L
A B
M
57
Tunneling
IP Tunnel
Virtual point-to-point link between an arbitrarily
connected pair of nodes
Network
Network Network
Network
11 Internetwork
Internetwork 22
R1 R2
IP Tunnel
10.0.0.1
IP Dest = 2.x IP Dest = 10.0.0.1 IP Dest = 2.x
IP Payload IP Dest = 2.x IP Payload
IP Payload
58
Tunneling
Advantages of tunneling
Transparent transmission of packets over heterogeneous
networks
The data carried may not even be IP messages!
Only need to change relevant routers (end points)
Coupled with encryption, gives you a secure private
internetwork.
End-points of tunnels my have features not available in other
Internet routers.
Multicast
Local Addresses
Useful for mobile routing.
Disadvantages
Increases packet size
Processing time needed to encapsulate and decapsulate
packets
Management at tunnel-aware routers
59
Virtual Private Networks
60
Layer 2 tunnel
Use MPLS to provide a tunnel between two
LANs (Ethernet, etc)
ATM points
Any data can be wrapped with a label
It need not be IP datagrams
LSR does not look beyond the label
61
Demultiplexing Label
62
E.g., Emulate a VC
63
64
Emulate a VC (steps)
65
Label Stacks
In the example
It enables to have a tunnel
And many types of traffic within the tunnel
66
Layer 3 VPNs
The packet being carried is an IP packet
Hence the name layer 3 VPNs
67
68