Introducción a MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 2011.

Post on 24-Jan-2016

221 views 1 download

Transcript of Introducción a MPLS Multi-Protocol Label Switching Teoría de las Comunicaciones 2011.

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