Introducción a MPLS
Multi-Protocol Label Switching
Teoría de las Comunicaciones
2011
MPLS : Conceptos
• MPLS: Multi Protocol Label Switching
• MPLS es “Nivel 2+ switching”
• MPLS el forwarding se realiza de la misma
forma que en los switches VC (Virtual Circuit)
• “Packet forwarding” se realiza en base a los
“Labels”
Motivación
• IP
– Primer protocolo definido y usado
– De facto el único protocolo para la Internet
Global trabajando
… pero tiene desventajas
Motivación (cont.)
•
Desventajas del Ruteo IP
–
–
–
–
–
Sin conexión
- e.g. no QoS
Cada router debe tomar decisiones independientes basado en
las Direcciones IP
Encabezado IP Grande
- al menos 20 bytes
Ruteo en capa de red
- Más lento que Switching (conmutación)
Usualmente diseñado para obtener el camino más corto
- No toma en cuenta otras métricas
Motivación (cont.)
• ATM (Asynchronous Transfer Mode)
– Orientada a Conexión
- Provee QoS
– “Switcheo” rápido de paquetes con paquetes
(celdas) de largo fijo
– Integración de diferentes tipos de tráfico (voz,
datos, video)
… Pero también tiene desventajas
Motivación (cont.)
• Desventajas de ATM
– Complejo
– Caro
– No ampliamente adoptado
Motivación (cont.)
• Idea: Combinar los algoritmos de re-envío
usados en ATM e IP.
Bases de MPLS
• Multi Protocol Label Switching es acomodado
entre capa 2 y capa 3 ???
Bases de MPLS (cont.)
• Características de MPLS
– Mecanismo para manejar el flujo de tráfico de tamaños
variados (Flow Management)
– Es independiente de protocolos de capa 2 y 3
– Mapea direcciones IP a rótulos ( labels) de longitud fija
– Interconecta a protocolos de existentes (RSVP, OSPF)
– Soporta ATM, Frame-Relay y Ethernet
MPLS : esquema básico….
Label push
Label Swapping
Incoming
L1
IF1
Label Pop
LIB
Outgoing
L2
IF2
MPLS : esquema básico (cont)….
IP
IP
IP Forwarding
#L1
IP
#L2
LABEL SWITCHING
IP
#L3
IP
IP Forwarding
MPLS
• A diferencia de IP la clasificacion / etiqueta puede basarse en:
Destination Unicast address
Traffic Engineering
VPN
QoS
• FEC: Forwarding Equivalence Class
Puede representar : Destination address prefix, VPN, Traffic
Engineering tunnel, Class of Service (CoS).
Terminología MPLS
•FEC (Forwarding Equivalence Class): conjunto de paquetes que entran en la red MPLS por la
misma interfaz, que reciben la misma etiqueta y por tanto circulan por un mismo trayecto.
Normalmente se trata de datagramas que pertenecen a un mismo flujo. Una FEC puede agrupar
varios flujos, pero un mismo flujo no puede pertenecer a más de una FEC al mismo tiempo.
•LSP (Label Switched Path): camino que siguen por la red MPLS los paquetes que pertenecen a la
misma FEC. Es equivalente a un circuito virtual en ATM o Frame Relay.
•LSR (Label Switching Router) : router que puede encaminar paquetes en función del valor de la
etiqueta MPLS
•LDP (Label Distribution Protocol): es el protocolo que utilizan los LSR para asignar las etiquetas
•LIB (Label Information Base): La tabla de etiquetas que manejan los LSR. Relaciona la pareja
(interfaz de entrada - etiqueta de entrada) con (interfaz de salida - etiqueta de salida)
Los LSR pueden ser a su vez de varios tipos:
•LSR Interior: el que encamina paquetes dentro de la red MPLS. Su misión es únicamente
cambiar las etiquetas para cada FEC según le indica su LIB
•LSR Frontera de ingreso: los que se encuentran en la entrada del flujo a la red MPLS (al
principio del LSP). Se encargan de clasificar los paquetes en FECs y poner las etiquetas
correspondientes.
•LSR Frontera de egreso: Los que se encuentran a la salida del flujo de la red MPLS (al final
del LSP). Se encargan de eliminar del paquete la etiqueta MPLS, dejándolo tal como estaba al
principio
Forwarding Equivalence Classes
LSR
LER
LSR
LER
LSP
IP1
IP1
IP1
#L1
IP1
#L2
IP1
#L3
IP2
#L1
IP2
#L2
IP2
#L3
IP2
IP2
Los paquetes tienen distinta direccion destino pero pueden
mapearse a un mismo camino .
• FEC = un subconjunto de paquetes que son “tratados de la misma
manera” por un router
• FECs : flexibilidad y escalabilidad
• En el routing que vimos , un paquetes es asignado a un FEC en cada hop
(e.j. L3 look-up), en MPLS esto se realiza solo al ingreso de la red
En consecuencia tenemos….
• LSR: Label Switch Router
• Edge-LSR
Rótulo (Label)
• Formato genérico del label
Label (cont.)
• Distribución de Label (rótulo)
– MPLS no especifica un único método para
distribuir los rótulos (labels)
– BGP (Border Gateway Protocol) ha sido mejorado
para la información de label dentro de mensajes
del protocolo (piggyback)
– RSVP también ha sido extendido para incluir
intercambio de labels (también vía piggybacked).
Label (cont.)
– IETF ha definido un nuevo protocolo conocido
como Label Distribution Protocol (LDP) para
señalización y administración
– Extensiones al protocolo base LDP ha sido
definido para soportar ruteo basado en
requerimientos de QoS.
Label (cont.)
ESCENARIO DE UNA RED MPLS
IP
RED
LAN
Analiza
Etiqueta
Router IP
RED
MPLS
LSR
IP
RED
LAN
Analiza
Etiqueta
LSR
Edge
LSR
Edge
LSR
IP
IP
Etiqueta
Introduce (push)
Etiqueta
Extrae (pop)
Etiqueta
LSR
LSR
Analiza
Etiqueta
Analiza
Etiqueta
QoS en la
Red MPLS
PRINCIPIO DE CONMUTACION EN MPLS
Las etiquetas tienen significado
local; no tiene significado global
IP
2
3
RED
LAN
Router IP
LSR
Edge
LSR
1
FEC Interfaz Etiqueta
de salida de salida
a
2
70
b
2
23
1
3
IP 80
LSR
Interfaz
Etiqueta
Interfaz Etiqueta
de entrada de entrada de salida de salida
34
80
2
3
4
3
4
RED
LAN
Edge
LSR
1
2
2
swap
IP
4
2
3
2
70
23
17
77
LSR
2
1
4
4
RED
MPLS
1
1
1
34
71
IP 71
IP
Interfaz
Etiqueta
Interfaz Etiqueta
de entrada de entrada de salida de salida
3
IP
IP
3
1
LSR
Interfaz
Etiqueta
Interfaz Etiqueta
de entrada de entrada de salida de salida
1
80
2
71
PRINCIPIO DE CONMUTACION EN MPLS
Interfaz
Etiqueta
Interfaz Etiqueta
de entrada de entrada de salida de salida
2
3
RED
LAN
Router IP
Edge
LSR
QoS para cada
2
2
Edge
LSR
4
3
1
2
3
3
4
LSR
LSP
QoS para cada
LSP.
Etiqueta
Interfaz Etiqueta
de entrada
LSP de entrada de salida de salida
3
4
34
Red80orientada
3
QoS para cada
1
Medio
físicoInterfaz
70
23
1
2
FEC Interfaz Etiqueta
de salida de salida
a
2
70
b
2
23
RED
LAN
LSP.
2
3
1
17
77
LSR
2
1
LSP.
4
4
RED
MPLS
LSR
QoS para cada
1
1
34
71
LSP.
1
LSR
QoS para cada
LSP.
Interfaz
Etiqueta
Interfaz Etiqueta
de entrada de entrada de salida de salida
1
a conexión
80
2
71
DESCRIPCION DE LA RED MPLS
Label Switching Router, LSR.
►Nodo dentro de la red MPLS capaz de conmutar y enrutar
paquetes analizando la etiqueta adicionada a cada paquete
Edge Label Switching Router, Edge LSR.
►Nodo MPLS de borde que maneja tráfico que ingresa o
sale a una red MPLS.
►El de entrada adiciona etiqueta a cada paquete IP.
►El de salida extrae etiqueta del paquete IP y enruta
según capa 3.
Label Switch Path, LSP
►Trayecto definido con QoS entre dos puntos extremos
dentro de la red MPLS.
RED MPLS
Red del
Cliente
LSR
Edge
LSR
Red del
Cliente
Edge
LSR
LSR
Edge
LSR
RED
MPLS
LSR
Edge
LSR
Red del
Cliente
LSR
Red del
Cliente
FORWARDING EQUIVALENCE CLASS-FEC
Forwarding Equivalence Class, FEC
►Grupo de paquetes IP, ó flujos, que son enviados sobre
un mismo trayecto y con el mismo tratamiento.
El FEC para un paquete puede ser determinado por
el análisis de los siguientes parámetros:
►Dirección IP de origen o destino.
►Dirección de red de origen o destino.
►Valor del campo Protocolo (protocol ID)
►Valor de DSCP (nivel de prioridad del paquete IP)
►Valor del campo Etiqueta de Flujo en IPv6
Un PHB puede ser asignado en un LSR para un
FEC dado.
ROUTER DEL PROVEEDOR Y CLIENTE
Red del
usuario
C
C
Red de
usuario
Red del
proveedor
CE
P
P
2
1
4
2
3
1
1
3
1
PE
2
2
CE .- Customer Edge
C .- Customer
PE .- Provider Edge
P .- Provider
2
2
3
1
P
4
1
P
3
PE
3
4
8
16 19
0
31
4
8
16 19
31
Etiqueta MPLS
EXP S
TTL
S=0
Etiqueta MPLS
EXP S
TTL
Etiqueta MPLS
EXP S
TTL
S=0
Etiqueta MPLS
EXP S
TTL
Cabecera
MPLS
Etiqueta MPLS
EXP S
TTL
S=1
Etiqueta MPLS
EXP S
TTL
Cabecera
MPLS
Ver HLEN Tipo Serv.
Longitud total
Identificador
Indic Desplaz de frag.
TTL
Protocolo
Ver
DS
Etiqueta de flujo
Longitud de carga útil Cabe.sigte Límite salto
Suma de chequeo
Dirección de origen
Dirección de origen
Dirección de destino
Dirección de destino
Opciones-relleno
Opcional
Label
Stacking
0
CABECERA(S) MPLS
Cabecera opcionales
Carga útil
PDU de la capa superior
FORMATO DE ETIQUETA O CABECERA MPLS
20bits
3bits
Etiqueta
MPLS
EXP
1bits 8bits
S
TTL
MPLS Shim
header
Campo Label ó Etiqueta.
►Campo de 20 bits. Valores del 0 al 15 son reservados.
Campo EXP ó experimental.
►Campo de 3 bits. Indica CoS o información de PHB.
Campo S ó Stack
►Campo de 1 bit. Indica un grupo ó stack de etiquetas.
Campo TTL ó Time-To-Live
►Campo de 8 bits. Elimina bucles en la región MPLS.
LABEL STACKING
Un paquete IP etiquetado puede transportar varias
etiquetas.
►Stack tipo LIFO: Last-In-First-Out.
Label Stacking permite la agregación de LSPs en
un sólo LSP creando un túnel.
►Al inicio del túnel, un LSP asigna la misma etiqueta a
paquetes provenientes de varios LSPs, introduciendo
etiqueta a la parte superior del stack.
Un ISP puede agregar varios LSPs en pocos túneles
entre puntos de presencia (PoP, Points of Presence)
►Pocos túneles  pocas tablas: mejora la escalabilidad.
LABEL STACKING
IP
PE
PE
IP
P
P
P
PE
P
2
1
1
4
2
3
1
IP 81
P
3
1
PE
IP 27
2
2
IP 61
2
2
3
P
IP 25
1
P
3
4
1
PE
P
IP
PE
IP
LSP
LSP1
LSP2
Túnel
PROCESAMIENTO DEL CAMPO TIME-TO-LIVE
a – 1 = 0, No se envía el paquete IP etiquetado
Se descarta simplemente o
se envía a la capa 3 para generar ICMP
j – 1 = 0, No se envía el paquete IP etiquetado
Se descarta simplemente o
se envía a la capa 3 para generar ICMP
a – 1 > 0, Se actualiza el campo TTL de MPLS y el
paquete etiquetado en enviado
j – 1 > 0, Se actualiza el campo TTL de IP y el
paquete IP es enviado según la capa 3
Es copiado
en el campo
TTL de MPLS
TTL = a
TTL = a
Red MPLS
Dato IP CabecIP Etiqueta
TTL = a
Dato IP CabecIP
2
1
TTL = j-1
4
2
3
1
1
3
2
2
2
2
3
1
4
1
Dato IP CabecIP
1
3
3
LSRs y Labels : Resumiendo (1)
IGP domain con un LDP (label
distribution protocol )
• Un protocolo de ruteo IP se utiliza en el interior del dominio
(e.j.:OSPF, i-ISIS)
• Un “LDP: label distribution protocol” es usado para distribuir el
mapeo address/label entre vecinos adyacentes
• El ingress LSR recibe los paquetes IP , los clasifica y asigna un
label, y forwardea el paquete etiquetado en la red MPLS
• Los Core LSRs switcheab packets/cells basados en el valor del
label .
•
El egress LSR remueve el label antes de forwardear el paquete
IP outside de la red MPLS
LSRs y Labels : Resumiendo (2)
0
1
2
3
01234567890123456789012345678901
Label
| Exp|S|
TTL
Label = 20 bits
Exp = Experimental, 3 bits
S = Bottom of stack, 1bit
TTL = Time to live, 8 bits
• Usa nuevos Ethertypes/PPP PIDs/SNAP values/etc
• Mas de un Label es permitido-> Label Stack
• MPLS LSRs permite forwardear paquetes basados en el valor del
label situado en el top del stack
PPP Header(Packet over
SONET/SDH)
Ethernet
PPP Header
Shim Header
Layer 3 Header
Ethernet Hdr
Shim Header
Layer 3 Header
Asignación de Label y Distribución
• Labels tienen significacion a nivel link-local
Cada LSR bindea su propio mapeo de label
• Cada LSR asigna labels a sus FECs
• Labels son asignados e intercambiados entre
LSR vecinos adyacentes
• Aplicaciones pueden requerir vecinos no
adyacentes
Asignación de Label y Distribución
Upstream y Downstream LSRs
171.68.40/24
171.68.10/24
Rtr-A
Rtr-B
Rtr-C
• Rtr-C es el downstream vecino del Rtr-B para la 171.68.10/24
• Rtr-B es el downstream vecino del Rtr-A para la 171.68.10/24
• Los LSRs conocen sus downstream vecinos via un IP routing
protocol
• Next-hop address es el downstream vecino
Asignación de Label y Distribución (cont.)
“Unsolicited Downstream Distribution”
Use label 30 for destination
171.68.10/24
Use label 40 for destination
171.68.10/24
171.68.40/24
171.68.10/24
Rtr-A
In
I/F
In
Lab
Address
Prefix
0
-
171.68.10
...
...
Out
I/F
Rtr-B
Rtr-C
Out
Lab
In
I/F
In
Lab
30
Next-Hop...
...
...
0
30 171.68.10
...
...
1
Address
Prefix
Out
I/F
Out
Lab
40
Next-Hop...
...
...
IGP derived routes
1
In
I/F
In
Lab
Address
Prefix
0
40 171.68.10
...
...
Out
I/F
Out
Lab
1
...
Next-Hop...
...
• Los LSR distribuyen los labels a los upstreams vecinos
Label Assignment and Distribution
On-Demand Downstream Distribution
Use label 40 for destination
171.68.10/24
Use label 30 for destination
171.68.10/24
171.68.10/24
171.68.40/24 Rtr-A
Rtr-B
Request label for
destination 171.68.10/24
Rtr-C
Request label for
destination 171.68.10/24
• Upstream LSRs request labels to downstream neighbors
• Downstream LSRs distribute labels upon request
LSP: PHP( Penultimate Hop Popping)
• caso general el Egress LER examina la cabecera del paquete y
consulta sus tablas dos veces. Este proceso añade un retardo
considerable al tratamiento del mismo
•=> Penultimate Hop Popping
LSP: Penultimate Hop Popping
In
I/F
0
In
Lab
-
...
...
Address
Prefix
171.68/16
Out
I/F
1
Next-Hop
...
...
Out
Lab
4
In
I/F
0
In
Lab
4
...
...
...
Address
Prefix
171.68/16
Next-Hop
...
...
Summary route
for 171.68/16
0
1
Out
I/F
2
1
Out
Lab
pop
...
Address
Prefix and mask
Next-Hop
Interface
171.68.10/24
171.68.9.1
Serial1
171.68.44/24
171.68.12.1
Serial2
171.68/16
...
Null
Summary route
for 171.68/16
0
171.68.44/24
Use label 4 for
FEC 171.68/16
Summary route is propagate through
the IGP and label is assigned by each
LSR
Use label “implicit-null”
for FEC 171.68/16
171.68.10/24
Egress LSR summarises more
specific routes and advertises
a label for the new FEC
Información de Ruteo
Asignando Labels
Forwardeo
Asignando Labels (ejemplo 2): Tabla en
R1
Asignando Labels (ejemplo 2) : como
queda …
In
I/F
0
In
Lab
-
...
...
Address
Prefix
171.68/16
Out
I/F
1
Next-Hop
...
...
Out
Lab
4
In
I/F
0
In
Lab
4
...
...
...
Address
Prefix
171.68/16
Next-Hop
...
...
Out
Lab
7
In
I/F
0
In
Lab
7
...
...
...
P1
1
PE
0
0
CE
Out
I/F
1
Use label 4 for
FEC 171.68/16
P
0
Use label 7 for
FEC 171.68/16
Summary route
for 171.68/16
Address
Prefix
171.68/16
Out
I/F
2
Next-Hop
...
...
Out
Lab
pop
...
Address
Prefix and mask
Next-Hop
Interface
171.68.10/24
171.68.9.1
Serial1
171.68.44/24
171.68.12.1
Serial2
171.68/16
...
Null
2
0
PE
Use label “implicit-null”
for FEC 171.68/16
Summary route
for 171.68/16
171.68.44/24
171.68.10/24
Summary route is propagate through
the IGP and label is assigned by each
LSR
Egress LSR summarises more
specific routes and advertises
a label for the new FEC
Descargar

MPLS Concepts