MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

47
MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011

Transcript of MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Page 1: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

MPLS

Multi-Protocol Label Switching

Teoría de las Comunicaciones 4 de Mayo del 2011

Page 2: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 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”

Page 3: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Page 4: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Page 5: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Page 6: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Page 7: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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”

Page 8: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Page 9: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

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

Describe un método por el cual es posible retirar la etiqueta MPLS, no en el Egress LSR, sino en el LSR anterior a este. De esta forma se consigue que el paquete llegue al Egress LSR sin etiqueta y sólo haga falta examinar su cabecera de capa de red, evitando así realizar la doble consulta

Page 10: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

LSP: PHP (cont.)

•Si existe más de una etiqueta en la pila, el Penultimote Hop Popping retira la situada en el nivel superior. Si el Egress LSR pertenece a un subdominio utilizará la etiqueta más alta para encaminar el paquete. En caso de que la etiqueta fuera la última, eso significa que el paquete no se encuentra en ningún subdominio, y por ello el egress LSR encaminará el paquete en función de su header de Nivel de Red

• Esta técnica se consigue reducer el trabajo del Egress LER y del mismo modo aumentar el rendimiento de la red. También se consigue que en algunos casos no sea imprescindible el hecho de que el Egress LSR sea un router MPLS•La opción viene totalmente ligada a la capacidad del LSR de retirar etiquetas para llevar a cabo el Penultimate Hop Popping, ya que en cualquier otro caso sí sera imprescindible usar un router MPLS como Egress LSR

Page 11: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

PHP: resumiendo

• El label en el tope del stack es removido (popped) por “upstream neighbor” del egress LSR

• El egress LSR solicita el “popping” mediante LDP (label distribution protocol)

•Egress LSR anuncia “ implicit-null label “

• Egress LSR no necesita realizar un lookup y tener que remover el label

•Un lookup es salvado en el egress LSR

Page 12: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Label Switch Path (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

Page 13: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

“Day in the life of a Packet”

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

Page 14: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Label Distribution Protocol - LDP

• Un protocolo a nivel aplicación para distribuir la asociación a lebels a LSRs.– Son usados para mapear FECs a labels, los cuales a

su vez crean LSPs. – Las sesiones LDP son establecidas entre LDP pares

en la red MPLS (no necesariamente adyacentes).– Algunas veces emplea OSPF o BGP.

Page 15: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Detalles de LDP

• Tipos de mensaje LDP: – discovery messages— anuncia y mantiene la presencia de

un LSR en la red – session messages— establece, mantiene, y termina

sesiones entre LDP pares– advertisement messages— crea, cambia, y borra mapeo

de labels para FECs – notification messages— provee información de avisos y

señalización de errores

Page 16: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Operación de MPLS

• Los siguientes pasos deben ser seguidos para que un paquete de datos viaje a través de una red MPLS. – Creación y distribución de label– Creación de tablas en cada router– Creación de label-switched path (LSP, caminos

conmutados por labels)– Inserción de labels y su acceso en tablas– Re-envío de paquetes

Page 17: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 1

• Creación y distribución de Label– Antes que el tráfico comience los routers deciden asociar

un label a un FEC (forward equivance class) y construir sus tablas.

– En LDP (label distribution protocol), routers inician la distribución de labels y la asociación label/FEC.

– Además características relacionas con el tráfico y capacidades MPLS son negociadas usando LDP.

– Un protocolo de transporte confiable debería ser usado para el protocolo de señalización.

Page 18: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 2

• Creación de tablas – Bajo recepción de la asociación de label, cada LSR

(Label switching router) crea entradas en una base de información de labels (label information base - LIB).

– El contenido de la tabla especifica el mapeo entre un label y un FEC.

• Mapeo entre la puerta y label de entrada y la puerta y label de salida.

• Las entradas son actualizadas en cada renegociación asociando label y FEC.

Page 19: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de Tabla LIB (Label information Base)

Input Port Incoming Port Label Output Port Outgoing

Port Label

1 3 3 6

2 9 1 7

Page 20: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de operación MPLS

Label edge router

Label switched router

Page 21: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 3

• Creación del camino de switcheo de label (Label switched path- LSP)– Los LSPs son creados en dirección inversa a la

creación de entradas en el LIBs.

Page 22: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo operación MPLS

a b

c

Page 23: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 4

• Inserción de labels y su acceso en tablas– El primer router (LER1) usas la tabla LIB para

encontrar el próximo hop y requerir un label para un FEC específico.

– Router subsecuentes sólo usan la tabla para encontrar el próximo hop.

– Una vez que el paquete llega al LSR de egreso (LER4), el label es removido y el paquete es entregado al estino.

Page 24: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de operación MPLS

Page 25: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 5

• Re-envío de paquetes– LER1 podría no tener ningún label para este paquete por

tratarse de la primera ocurrencia de este requerimiento. En una red IP, LER1 encontrará la dirección de su tablas de ruteo de calce mayor para definir el próximo hop. LSR1 será el próximo hop para LER1.

– LER1 iniciará un requerimiento de label hacia LSR1. – Éste requerimiento se propagará a través de la red como

lo indica la línea punteada verde..

Page 26: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 5 (cont.)

– Cada router intermedio recibirá un label desde su router downstream comenzando por LER2 y yendo upstream hasta LER1. La configuración del LSP es indicada por la línea azul usando LDP o cualquier otro protocolo de señalización.

– LER1 insertará el label y re-enviará el paquete a LSR1.

Page 27: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Paso 5 (cont.)

– Cada LSR subsiguiente, i.e., LSR2 y LSR3, examinarán el label en el paquete recibido, y lo reemplazarán con el label de salida y lo re-enviarán.

– Cuando el paquete llega a LER4, éste removerá el label porque el paquete está dejando el dominio MPLS y es entregado al destino.

– El camino recorrido por el paquete es indicado por la línea roja.

Page 28: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de Operación MPLS

Page 29: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Túneles en MPLS

• La idea es controlar el camino entero sin explícitamente especificar los router intermedios. – Creando túneles a través de routers intermedios

que pueden cubrir múltiples segmentos.

• Aplicación en VPNs basadas en MPLS.

Page 30: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.
Page 31: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

MPLS Protocol Stack Architecture

Page 32: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Información de Ruteo

Page 33: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Asignando Labels

Page 34: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Forwardeo

Page 35: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Asignando Labels (ejemplo 2): Tabla en R1

Page 36: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Asignando Labels (ejemplo 2) : como queda …

Page 37: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

MPLS-VPN What is a VPN ?

• An IP network infrastructure delivering private network services over a public infrastructure– Use a layer 3 backbone– Scalability, easy provisioning– Global as well as non-unique private address space– QoS– Controlled access– Easy configuration for customers

Page 38: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS

• Esta es una red MPLS en la cual se ven todos sus componentes

• La línea azul representa el LDP entre el LSR de entrada y el LSR de salida.

Page 39: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS

• Cada LSR posee las tablas LIB que le permiten realizar acciones sobre la pila de etiquetas.

• Se observan los LSR de entrada y de salida que se conectan con los routers frontera de otras redes o sistemas autónomos.

Page 40: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• En este ejemplo se quiere

comunicar el router (no MPLS) que se encuentra en la parte superior y el router (no MPLS) que se encuentra en la parte inferior a través de la red MPLS

• Las tablas muestran la asociación de las direcciones de red con las parejas interfaz-etiqueta de salida y de entrada.

Page 41: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Paso 1: Vemos la tabla del router

externo que está conectado a dos redes de clase C. La flecha azul claro indica que el router externo comunica al LSR frontera las rutas que posee (a través del protocolo que sea). Es el ‘routing update’.

Page 42: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Paso 2: El LSR elige una etiqueta

no usada mediante LDP (la 5 por ejemplo).Así un paquete que llegue por el Serial1 con la etiqueta 5 será enviada por el Serial0 sin etiqueta. La flecha roja indica que se comunica el uso de la etiqueta 5 al siguiente LSR .

Page 43: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Paso 3: El siguiente LSR almacena

la etiqueta 5 (como etiqueta de salida) en su LIB asociada con la Serial0. Escoge la etiqueta 17 (como etiqueta de entrada) y la asocia con el Serial1 y lo propaga al siguiente LSR vía LDP. De este modo los paquetes que lleguen por el Serial1 con la etiqueta 17 se enviaran por la Serial0 con la etiqueta 5.

Page 44: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Pasos 4 y 5: Se procede de forma

similar a los anteriores pasos.La tabla del paso 4 es más grande porque se actualiza con información del LSR de la derecha.La tabla del LSR frontera (paso 5) solo tiene etiquetas de salida porque esta conectado al router no-MPLS emisor.El LSP establecido queda señalado con la flecha azul marino.

Page 45: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Paso 6: El LSR frontera envía

información de routing al router externo.Éste actualiza sus tablas de routing, de modo que para enviar paquetes a las redes de clase C del router de la parte inferior, lo hará a través del Serial0.

Page 46: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Pasos 7 y 8: El LSR frontera del

fondo también propaga la información de routing al LSR que tiene conectado por el Serial2.Éste actúa de forma similar y propaga la información al otro LSR.Se supone que se seguiría propagando por todos los LSR

Page 47: MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 4 de Mayo del 2011.

Ejemplo de MPLS• Paso 9: El LSR recibe información

de routing del LSR de la izquierda y actualiza su tabla LIB.

• Podemos observar el comportamiento multipunto del MPLS en el LSR del paso 4 ya que todos los paquetes que entran son etiquetados con la misma etiqueta (17) y enviados por el Serial0.