MPLS examples and applications

Transcription

MPLS examples and applications
MPLS
examples and applications
David Larrabeiti
Piotr Pacyna
Dpto. de Ingeniería Telemática
Universidad Carlos III de Madrid
Programme authors and contributors
Lecturers (Spanish course):
‹ David
Larrabeiti López
‹ José Félix Kukielka
Supporting lecturers (English course):
‹
‹
Jorg Diederich
Huw Oliver
‹ Piotr
Pacyna
Departamento de Ingeniería Telemática
MPLS
1
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
-
I/F in Label in
-
-
-
Dest.
I/F out Label out
10.1.1.3
-
I/F in Label in
-
-
-
Dest.
I/F out
10.1.1.3
-
12.0.0.1
Request: 10.1.1.3
10.1.1.1 a
b
Request: 10.1.1.3
d 10.1.1.3
10.1.1.2 c
e
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
2
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
-
I/F in Label in
-
-
-
Dest.
I/F out Label out
10.1.1.3
-
I/F in Label in
-
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
Request: 10.1.1.3
10.1.1.1 a
b
Request: 10.1.1.3
d 10.1.1.3
10.1.1.2 c
e
Mapping: 50
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
3
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
-
I/F in Label in
-
-
-
Dest.
I/F out Label out
10.1.1.3
c
I/F in Label in
50
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
Request: 10.1.1.3
10.1.1.1 a
b
Request: 10.1.1.3
d 10.1.1.3
10.1.1.2 c
e
Mapping: 50
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
4
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
-
I/F in Label in
-
b
40
Dest.
I/F out Label out
10.1.1.3
c
I/F in Label in
50
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
Request: 10.1.1.3
10.1.1.1 a
b
Mapping: 40
Request: 10.1.1.3
d 10.1.1.3
10.1.1.2 c
e
Mapping: 50
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
5
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
I/F in Label in
40
b
40
Dest.
I/F out Label out
10.1.1.3
c
I/F in Label in
50
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
Request: 10.1.1.3
10.1.1.1 a
b
Mapping: 40
Request: 10.1.1.3
d 10.1.1.3
10.1.1.2 c
e
Mapping: 50
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
6
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
Dest.
I/F out Label out
10.1.1.3
c
50
I/F in Label in
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
e
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
7
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
Dest.
I/F out Label out
10.1.1.3
c
50
I/F in Label in
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
e
Request:
10.1.1.3
10.1.1.5
10.1.1.6
Request:
10.1.1.3
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.7
MPLS
8
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
e
40
30
10.1.1.1 a
Dest.
I/F out Label out
10.1.1.3
c
50
I/F in Label in
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
b
d 10.1.1.3
10.1.1.2 c
e
Mapping:
30
Request:
10.1.1.3
10.1.1.5
10.1.1.6
Request:
10.1.1.3
10.1.1.4
Mapping:
20
Departamento de Ingeniería
POP Telemática
10.1.1.7
MPLS
9
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
e
40
30
Dest.
I/F out Label out
10.1.1.3
c
50
I/F in Label in
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
47.1.1.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
e
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
10
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
e
30
Dest.
I/F out Label out
10.1.1.3
c
50
I/F in Label in
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
47.1.1.1
47.1.1.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
47.1.1.1
iBGP routing table
e
Prefix Next Hop
47/8
10.1.1.3
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
11
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
Dest.
I/F out Label out
10.1.1.3
c
I/F in Label in
50
d
50
Dest.
I/F out
10.1.1.3
-
12.0.0.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
e Request:
Release:
10.1.1.3
Request:
10.1.1.3
10.1.1.3
Request:
10.1.1.3
10.1.1.5
Mapping:
100
10.1.1.6
Mapping:
110
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.7
MPLS
12
RFC 3031 MPLS Architecture
‹
5.1.6. Downstream LSR: Withdraw Procedure
‹
In this case, there is only a single procedure. When LSR Rd decides to break the
binding between label L and address prefix X, then this unbinding must be distributed
to all LSRs to which the binding was distributed.
‹
It is required that the unbinding of L from X be distributed by Rd to a LSR Ru before Rd
distributes to Ru any new binding of L to any other address prefix Y, where X != Y. If
Ru were to learn of the new binding of L to Y before it learned of the unbinding of L
from X, and if packets matching both X and Y were forwarded by Ru to Rd, then for a
period of time, Ru would label both packets matching X and packets matching Y with
label L.
‹
…. if label distribution adjacency is brought down by either peer (whether as a result of
failure or as a matter of normal operation), all bindings received over that adjacency
must be considered to have been withdrawn.
‹
As long as the relevant label distribution adjacency remains in place, label bindings that
are withdrawn must always be withdrawn explicitly. If a second label is bound to an
address prefix, the result is not to implicitly withdraw the first label, but to bind both
labels; this is needed to support multi-path routing. If a second address prefix is bound
to a label, the result is not to implicitly withdraw the binding of that label to the first
address prefix, but to use that label for both address prefixes.
Departamento de Ingeniería Telemática
MPLS
13
RFC 3036 - LDP Specification
‹
‹
‹
‹
3.5.10. Label Withdraw Message
An LSR sends a Label Withdraw Message to an LDP peer to signal the peer
that the peer may not continue to use specific FEC-label mappings the LSR
had previously advertised. This breaks the mapping between the FECs and
the labels.
3.5.10.1. Label Withdraw Message Procedures
An LSR transmits a Label Withdraw message under the following conditions:
z
z
‹
‹
‹
1. The LSR no longer recognizes a previously known FEC for which it has
advertised a label
2. The LSR has decided unilaterally (e.g., via configuration) to no longer label
switch a FEC (or FECs) with the label mapping being withdrawn.
An LSR that receives a Label Withdraw message must respond with a Label
Release message.
3.5.11.1. Label Release Message Procedures
An LSR transmits a Label Release message to a peer when it is no longer
needs a label previously received from or requested of that peer. An LSR
must transmit a Label Release message under any of the following
conditions:
z
z
z
1. The LSR which sent the label mapping is no longer the next hop for the
mapped FEC, and the LSR is configured for conservative operation.
2. The LSR receives a label mapping from an LSR which is not the next hop for
the FEC, and the LSR is configured for conservative operation.
3. The LSR receives a Label Withdraw message.
Departamento de Ingeniería Telemática
MPLS
14
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
Dest.
I/F out Label out
10.1.1.3
e
I/F in Label in
120
f
100
Dest.
I/F out
10.1.1.3
-
12.0.0.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
Mapping:
120
e Request:
f
Request:
10.1.1.3
10.1.1.3
Request:
10.1.1.3
10.1.1.5
Mapping:
100
10.1.1.6
Mapping:
110
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.7
MPLS
15
Downstream-on-demand, conservative,
ordered
I/F in
Dest.
-
10.1.1.3
I/F out Label out
a
40
I/F in Label in
b
40
Dest.
I/F out Label out
10.1.1.3
e
120
I/F in Label in
f
100
Dest.
I/F out
10.1.1.3
-
12.0.0.1
10.1.1.1 a
b
d 10.1.1.3
10.1.1.2 c
e
10.1.1.5
10.1.1.4
Departamento de Ingeniería
POP Telemática
10.1.1.6
10.1.1.7
MPLS
16
MPLS: Summary
‹
‹
‹
‹
Backbone network technology
LSRs participate in the routing protocol as any other
“ordinary” IP router
Creates a mesh of LSPs from the layer 3 forwarding
tables
Distributes the corresponding bindings using either an
available routing protocol or a special-purpose protocol
z
‹
LDP: Label Distribution Protocol
Packets forwarded by label switching usually follow the
same path as packets forwarded by traditional IP
forwarding
z
But: it is possible to establish other paths (traffic engineering)
Departamento de Ingeniería Telemática
MPLS
17
Applications
MPLS Applications
‹
‹
Optimize packet forwarding in the routers
z
Initial objective of label switching techniques
z
Unified IP over ATM solution
Mechanisms for controlling the packet forwarding
z
More efficient tunnels
ƒ
z
z
Virtual private networks using MPLS and BGP
Traffic engineering in the Internet
ƒ
z
Reroute traffic on non-shortest-path routes over less congested links
Quality of Service
ƒ
z
With MPLS: adding 4 byte header, with IPIP tunneling adding 20 bytes)
Type DiffServ or mapping to ATM VCs / Frame Relay
Optical switching:
ƒ
Using MPLS signaling instead of manual configuration
Departamento de Ingeniería Telemática
MPLS
19
MPLS Applications (2)
‹A
unified IP/ATM solution
‹ Multiservice network
‹ Automatically Switched Optical Networks (ASON)
‹ Substitution of iBGP in the core routers
Departamento de Ingeniería Telemática
MPLS
20
Penultimate Hop Popping
‹
Small inefficiency: Egress LER receives a packet with a label and
could in principle do forwarding based on label switching instead of IP
forwarding
z
‹
Solution: Define a proxy egress LER
z
z
z
‹
But cannot do label swapping since the next hop is not label-switching
capable
Using the last but one (penultimate) LSR in the LSP
After having performed the label switching decision, it removes the label
completely
The last router in an LSP can therefore be non-MPLS capable
Deployment issue:
z
z
If a domain is fully MPLS-enabled: Use the label-switching capabilities
until the end of the domain and define the first router outside the MPLS
domain to be the (non MPLS-enabled) egress router...
Drawback: No possibility for IP-based processing on the egress (e.g.,
traffic shaping)
Departamento de Ingeniería Telemática
MPLS
21
Example: Penultimate Hop Popping (1)
Egress LER
Plain IP forwarding
IP
Ingress
LER adds
label to packet
Proxy Egress LSR:
Packet forwarded
based on label
Removes label
IP Domain
Unlabeled
Packet arrives
IP
IP 1
0
IP
IP Domain
MPLS Domain
Source: Nortel Networks
Departamento de Ingeniería Telemática
MPLS
22
Example: Penultimate Hop Popping (2)
Proxy Egress LER:
Packet forwarded
Based on label;
removes label
Egress LER
IP
Ingress
LER adds
label to packet
LSR:
Packet forwarded
based on label
IP Domain
Unlabeled
Packet arrives
IP 20
IP 1
0
IP
IP Domain
MPLS Domain
Source: Nortel Networks
Departamento de Ingeniería Telemática
MPLS
23
Exam June 2003 (1)
MPLS backbone network (over ATM) of provider A
R_C
LSR_D
LSR_C
C
ATM public
network
R_A
LSR_AC
A
R_B
z
B
All links based on ATM
R_[ABCD]: IP routers using CLIP technology
Scenario a): MPLS
z
z
‹
LSR_B
General Scenario:
z
‹
D
LSR_BD
LSR_A
‹
R_D
LSR_[ABCD]: Label Edge Routers of MPLS network
LSR_AC, LSR_BD: Interior MPLS network backbone switches
Scenario b): CLIP
z
LSR_*: Operating as normal IP routers using CLIP technology
Departamento de Ingeniería Telemática
MPLS
24
Exam June 2003 (2)
‹
Question a)
z
Calculate the packet forwarding delay between A and B for both scenarios. The
delay for forwarding a packet using IP shall be 10 µs, for forwarding a packet
using label switching shall be 2 µs, the delay for segmenting / reassembling an
AAL5 frame shall be 1 us. You can assume that all other delays are zero (e.g.,
propagation delay, delay within the public ATM network, ATM cell processing
delay) since the delays are the same for both scenarios. What is the forwarding
delay in case LSR_B acts as a proxy egress and R_B is the egress of the LSP
between LSR_A and LSR_B?
‹
Solution:
‹
Scenario a) Delay = 64 µs
Scenario b) Delay = 84 µs Î Difference of 20 µs.
With proxy egress: scenario a) = 56 µs.
‹
‹
Departamento de Ingeniería Telemática
MPLS
25
Examen Junio 2003 (3)
‹ b)
Make a similar comparison between MPLS
and NHRP, assuming that the LSRs are
substituted for ATM switches in the NHRP
scenario
ƒ
b.1) NHRP used end to end
ƒ
b.2) NHRP only in the core network
‹ Solution:
ƒ
b.1) NHRP end to end: Delay = 24 µs (40 les than with
MPLS)
ƒ
b.2) NHRP only in the core network: Delay = 64 µs (the
same as with MPLS)
Departamento de Ingeniería Telemática
MPLS
26