introducción a mpls multi-protocol label switching teoría de las comunicaciones 2011
TRANSCRIPT
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….
Incoming OutgoingIF1 IF2L1 L2
LIB
Label Swapping Label Pop Label push
MPLS : esquema básico (cont)….
IP ForwardingLABEL SWITCHINGIP Forwarding
IP IP #L1 IP #L2 IP #L3 IP
MPLS 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
• 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
Los paquetes tienen distinta direccion destino pero pueden mapearse a un mismo camino .Los paquetes tienen distinta direccion destino pero pueden mapearse a un mismo camino .
IP1
IP2
IP1
IP2
LSRLSRLER LER
LSP
IP1 #L1
IP2 #L1
IP1 #L2
IP2 #L2
IP1 #L3
IP2 #L3
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
REDMPLS
REDLAN RED
LAN
Router IP
EdgeLSR
EdgeLSR
LSR LSR
LSR LSR
IP
IP
IP Etiqueta
IP
Introduce (push)Etiqueta
LSP
QoS en la Red MPLS
AnalizaEtiqueta
AnalizaEtiqueta
AnalizaEtiqueta
AnalizaEtiqueta
Extrae (pop)
Etiqueta
PRINCIPIO DE CONMUTACION EN MPLS
REDMPLS
REDLAN RED
LAN
Router IP
EdgeLSR
EdgeLSR
LSR LSR
LSR LSR
1
2
1 2
3
1
23
4
1
2 3
4 1
2 3
1
2 3
FEC Interfaz Etiqueta de salida de salida
a 2 70 b 2 23
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
1 70 3 34 1 23 4 80
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
1 80 2 71
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
2 34 4 17 3 71 4 77
IP IP
IP70
IP34
IP17
IP
IP
IPIP
23
IP 80
IP77
IP71
Las etiquetas tienen significadolocal; no tiene significado global
swap
PRINCIPIO DE CONMUTACION EN MPLS
REDMPLS
REDLAN RED
LAN
Router IP
EdgeLSR
EdgeLSR
LSR LSR
LSR LSR
1
2
1 2
3
1
23
4
1
2 3
4 1
2 3
1
2 3
FEC Interfaz Etiqueta de salida de salida
a 2 70 b 2 23
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
1 70 3 34 1 23 4 80
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
1 80 2 71
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida
2 34 4 17 3 71 4 77
QoS para cadaLSP.
QoS para cadaLSP.
QoS para cadaLSP.
QoS para cadaLSP.
QoS para cadaLSP.
Red orientada a conexión
Mediofísico
LSP
LSP
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.
Label Switch Path, LSP►Trayecto definido con QoS entre dos puntos extremos dentro de la red MPLS.
►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.
RED MPLS
REDMPLS
EdgeLSR
EdgeLSR
LSR LSR
LSR LSR
EdgeLSR
EdgeLSR
Red delCliente
Red delCliente
Red delCliente
Red delCliente
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 porel 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 delproveedor
Red delusuario
Red deusuario
1
2
1 2
3
1
23
4
1
2 3
4 1
2 3
1
2 3PEPE
P P
P P
CE
CC
CE .- Customer EdgeC .- Customer
PE .- Provider EdgeP .- Provider
EXPEtiqueta MPLS TTLS EXPEtiqueta MPLS TTLS
CABECERA(S) MPLS
Opciones-relleno
Ver HLEN Tipo Serv. Longitud total
Identificador Desplaz de frag. Indic
TTL Protocolo Suma de chequeo
Dirección de origen
Dirección de destino
Carga útil
0 4 8 16 19 3140
byt
es
max
20 b
ytes
DS Etiqueta de flujo
Dirección de origen
40 b
ytes
Ver
Longitud de carga útil Límite saltoCabe.sigte
Dirección de destino
PDU de la capa superior
Cabecera opcionales
Dirección de origen
Opc
iona
l
0 4 8 16 19 31
Cabe
cera
EXPEtiqueta MPLS TTLS EXPEtiqueta MPLS TTLS
EXPEtiqueta MPLS TTLS EXPEtiqueta MPLS TTLS
CabeceraMPLS
CabeceraMPLS
Lab
elS
tack
ing S=0
S=0
S=1
FORMATO DE ETIQUETA O CABECERA MPLS
EtiquetaMPLS
EXP S TTL
20bits 3bits 1bits 8bits
MPLS Shimheader
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.
Un paquete IP etiquetado puede transportar variasetiquetas.►Stack tipo LIFO: Last-In-First-Out.
LABEL STACKING
Label Stacking permite la agregación de LSPs enun 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únelesentre puntos de presencia (PoP, Points of Presence)►Pocos túneles pocas tablas: mejora la escalabilidad.
LABEL STACKING
1
2
1 2
3
1
23
4
1
2 3
4 1
2 3
1
2
PE PE
P P
P P
PE PE
P P
PE
P P
PEIP
IP
IP31
IP72
IP41
IP91
LSP1
LSP 2
IP9170IP
7270
LSP
IP9117IP
7217
LSP 1
LSP2
IP 27
IP 81
IP
IP91IP
72 IP 61
IP 25
IP
LSPLSP1
LSP2
Túnel
PROCESAMIENTO DEL CAMPO TIME-TO-LIVE
Red MPLS
1
2
1 2
3
1
23
4
1
2 3
4 1
2 3
1
2 3
Dato IP CabecIP
TTL = a
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
a – 1 > 0, Se actualiza el campo TTL de MPLS y el paquete etiquetado en enviado
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
j – 1 > 0, Se actualiza el campo TTL de IP y el paquete IP es enviado según la capa 3
Etiqueta
TTL = j
Dato IP CabecIP
TTL = a
Dato IP CabecIP
TTL = j-1
Etiqueta
TTL = a
Dato IP CabecIP
TTL = aEs copiadoen el campo
TTL de MPLS
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)
• 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
Label = 20 bits Exp = Experimental, 3 bits S = Bottom of stack, 1bitTTL = Time to live, 8 bits
0 1 2 30 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
Label | Exp|S| TTL
PPP HeaderPPP Header Layer 3 HeaderLayer 3 HeaderShim HeaderPPP Header(Packet over SONET/SDH)
Ethernet HdrEthernet Hdr Layer 3 HeaderLayer 3 HeaderShim HeaderEthernet
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
• 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
171.68.10/24
Rtr-BRtr-A Rtr-C
171.68.40/24
Upstream y Downstream LSRs
Asignación de Label y Distribución (cont.)
• Los LSR distribuyen los labels a los upstreams vecinos
171.68.10/24
Rtr-BRtr-A Rtr-C
171.68.40/24
Next-HopNext-Hop
In In LabLab
--
......
Address Address PrefixPrefix
171.68.10171.68.10
......
OutOutI/FI/F
11
......
Out Out LabLab
3030......
In In I/FI/F
00
...... Next-HopNext-Hop
In In LabLab
3030
......
Address Address PrefixPrefix
171.68.10171.68.10
......
OutOutI/FI/F
11
......
Out Out LabLab
4040......
In In I/FI/F
00
......
Next-HopNext-Hop
In In LabLab
4040
......
Address Address PrefixPrefix
171.68.10171.68.10
......
OutOutI/FI/F
11
......
Out Out LabLab
--......
In In I/FI/F
00
......
Use label 40 for destination 171.68.10/24
Use label 30 for destination 171.68.10/24
IGP derived routes
“Unsolicited Downstream Distribution”
Label Assignment and Distribution
• Upstream LSRs request labels to downstream neighbors
• Downstream LSRs distribute labels upon request
171.68.10/24
Rtr-BRtr-A Rtr-C171.68.40/24
Use label 30 for destination 171.68.10/24
Use label 40 for destination 171.68.10/24
Request label for destination 171.68.10/24
Request label for destination 171.68.10/24
On-Demand Downstream Distribution
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
0 1
Summary route for 171.68/16
01
171.68.10/24
Next-HopNext-Hop
In In LabLab
Address Address PrefixPrefix
OutOutI/FI/F
Out Out LabLab
In In I/FI/F
44 171.68/16171.68/16 22 poppop00
...... ...... ...... ............Next-HopNext-Hop
In In LabLab
Address Address PrefixPrefix
OutOutI/FI/F
Out Out LabLab
In In I/FI/F
-- 171.68/16171.68/16 11 4400
...... ...... ...... ............
Egress LSR summarises morespecific routes and advertises a label for the new FEC
Summary route is propagate through the IGP and label is assigned by each LSR
Use label “implicit-null” for FEC 171.68/16
Summary route for 171.68/16
Use label 4 for FEC 171.68/16
171.68.44/24
Address Address Prefix and maskPrefix and mask
171.68.10/24171.68.10/24
Next-HopNext-Hop
171.68.9.1171.68.9.1
InterfaceInterface
Serial1Serial1
171.68.44/24171.68.44/24 171.68.12.1171.68.12.1 Serial2Serial2
171.68/16171.68/16 ...... NullNull
Información de Ruteo
Asignando Labels
Forwardeo
Asignando Labels (ejemplo 2): Tabla en R1
Asignando Labels (ejemplo 2) : como queda …
0
Summary route for 171.68/16
01
171.68.10/24
Next-HopNext-Hop
In In LabLab
Address Address PrefixPrefix
OutOutI/FI/F
Out Out LabLab
In In I/FI/F
77 171.68/16171.68/16 22 poppop00
...... ...... ...... ............Next-HopNext-Hop
In In LabLab
Address Address PrefixPrefix
OutOutI/FI/F
Out Out LabLab
In In I/FI/F
-- 171.68/16171.68/16 11 4400
...... ...... ...... ............
Egress LSR summarises morespecific routes and advertises a label for the new FEC
Summary route is propagate through the IGP and label is assigned by each LSR
Use label “implicit-null” for FEC 171.68/16
Summary route for 171.68/16
Use label 4 for FEC 171.68/16
171.68.44/24
Address Address Prefix and maskPrefix and mask
171.68.10/24171.68.10/24
Next-HopNext-Hop
171.68.9.1171.68.9.1
InterfaceInterface
Serial1Serial1
171.68.44/24171.68.44/24 171.68.12.1171.68.12.1 Serial2Serial2
171.68/16171.68/16 ...... NullNull
Use label 7 for FEC 171.68/16
Next-HopNext-Hop
In In LabLab
Address Address PrefixPrefix
OutOutI/FI/F
Out Out LabLab
In In I/FI/F
44 171.68/16171.68/16 11 7700
...... ...... ...... ............
CE
PEP P PE
0
0
21