680 likes | 1.18k Views
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)
E N D
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 Swapping Label Pop Label push LIB Incoming Outgoing IF1 IF2 L1 L2
IP #L1 IP #L2 IP #L3 MPLS : esquema básico (cont)…. IP IP IP Forwarding IP Forwarding LABEL SWITCHING
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
IP1 IP1 IP1 IP2 IP1 IP2 IP1 IP2 #L1 #L1 #L2 #L3 #L3 #L2 IP2 IP2 Forwarding Equivalence Classes LSR LSR LER LER LSP 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.
RED LAN RED LAN RED MPLS Analiza Etiqueta Analiza Etiqueta Router IP LSR LSR Edge LSR Edge LSR LSP IP Etiqueta LSR LSR Analiza Etiqueta Analiza Etiqueta QoS en la Red MPLS ESCENARIO DE UNA RED MPLS IP IP IP Introduce (push) Etiqueta Extrae (pop) Etiqueta
Las etiquetas tienen significado local; no tiene significado global swap Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida 2 34 4 17 RED LAN 3 71 4 77 RED LAN RED MPLS Router IP LSR LSR Edge LSR 2 1 1 4 2 3 3 1 1 Edge LSR 3 2 2 2 FEC Interfaz Etiqueta IP IP IP IP 80 71 23 77 2 3 3 IP IP IP 17 34 70 de salida de salida 1 a 2 70 4 1 b 2 23 LSR LSR Interfaz Etiqueta Interfaz Etiqueta Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida de entrada de entrada de salida de salida 1 70 3 34 1 80 2 71 1 23 4 80 PRINCIPIO DE CONMUTACION EN MPLS IP IP IP IP IP
Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida 2 34 4 17 RED LAN 3 71 4 77 RED LAN RED MPLS QoS para cada LSP. QoS para cada LSP. QoS para cada LSP. QoS para cada LSP. QoS para cada LSP. Router IP LSR LSR Edge LSR 2 1 1 4 2 3 3 1 1 Edge LSR 3 2 2 2 FEC Interfaz Etiqueta 2 3 3 de salida de salida 1 a 2 70 4 1 b 2 23 LSR LSR LSP Medio físico Interfaz Etiqueta Interfaz Etiqueta Interfaz Etiqueta Interfaz Etiqueta de entrada de entrada de salida de salida LSP de entrada de entrada de salida de salida 1 70 3 34 1 80 2 71 1 23 4 80 PRINCIPIO DE CONMUTACION EN MPLS Red orientada a conexión
Label Switching Router, LSR. Edge Label Switching Router, Edge LSR. Label Switch Path, LSP DESCRIPCION DE LA RED MPLS ►Nodo dentro de la red MPLS capaz de conmutar y enrutar paquetes analizando la etiqueta adicionada a cada paquete. ►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. ►Trayecto definido con QoS entre dos puntos extremos dentro de la red MPLS.
Red del Cliente Edge LSR LSR LSR Edge LSR Edge LSR Red del Cliente Red del Cliente RED MPLS Edge LSR LSR LSR Red del Cliente RED MPLS
Forwarding Equivalence Class, FEC El FEC para un paquete puede ser determinado por el análisis de los siguientes parámetros: Un PHB puede ser asignado en un LSR para un FEC dado. ►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 FORWARDING EQUIVALENCE CLASS-FEC ►Grupo de paquetes IP, ó flujos, que son enviados sobre un mismo trayecto y con el mismo tratamiento.
Red del usuario C C Red de usuario Red del proveedor 2 1 1 4 CE P P 2 3 3 1 1 PE 3 2 2 PE 2 2 3 3 1 4 1 CE .- Customer Edge P P C .- Customer PE .- Provider Edge P .- Provider ROUTER DEL PROVEEDOR Y CLIENTE
0 4 8 16 19 31 0 4 8 16 19 31 S=0 Etiqueta MPLS Etiqueta MPLS Etiqueta MPLS Etiqueta MPLS Etiqueta MPLS Etiqueta MPLS EXP EXP EXP EXP EXP EXP S S S S S S TTL TTL TTL TTL TTL TTL Cabecera MPLS Label Stacking S=0 Ver HLEN Tipo Serv. Longitud total Ver DS Etiqueta de flujo Cabecera MPLS S=1 Identificador Indic Desplaz de frag. Longitud de carga útil Cabe.sigte Límite salto Dirección de origen Dirección de origen TTL Protocolo Suma de chequeo Dirección de origen 40 bytes 20 bytes Dirección de destino Dirección de destino Cabecera Opciones-relleno 40 bytes max Cabecera opcionales Carga útil Opcional PDU de la capa superior CABECERA(S) MPLS
Campo Label ó Etiqueta. Campo EXP ó experimental. Campo S ó Stack Campo TTL ó Time-To-Live 20bits 3bits 1bits 8bits Etiqueta MPLS EXP S TTL MPLS Shim header FORMATO DE ETIQUETA O CABECERA MPLS ►Campo de 20 bits. Valores del 0 al 15 son reservados. ►Campo de 3 bits. Indica CoS o información de PHB. ►Campo de 1 bit. Indica un grupo ó stack de etiquetas. ►Campo de 8 bits. Elimina bucles en la región MPLS.
Un paquete IP etiquetado puede transportar varias etiquetas. Label Stacking permite la agregación de LSPs en un sólo LSP creando un túnel. Un ISP puede agregar varios LSPs en pocos túneles entre puntos de presencia (PoP, Points of Presence) LABEL STACKING ►Stack tipo LIFO: Last-In-First-Out. ►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. ►Pocos túneles pocas tablas: mejora la escalabilidad.
PE PE P P LSP1 P P LSP1 PE PE 2 1 P 1 4 P 2 3 3 1 1 LSP2 2 P P LSP2 LSP 2 2 2 3 3 PE PE 1 4 1 IP IP IP IP IP IP IP IP IP IP IP IP IP IP 61 31 25 91 91 72 41 72 81 72 72 91 27 91 70 17 LSP1 LSP 17 70 Túnel LSP2 LABEL STACKING IP IP IP IP
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, No se envía el paquete IP etiquetado Se descarta simplemente o se envía a la capa 3 para generar ICMP TTL = a TTL = j Etiqueta Etiqueta j – 1 > 0, Se actualiza el campo TTL de IP y el paquete IP es enviado según la capa 3 a – 1 > 0, Se actualiza el campo TTL de MPLS y el paquete etiquetado en enviado Red MPLS Es copiado en el campo TTL de MPLS TTL = a TTL = a TTL = a TTL = j-1 Dato IP Dato IP Dato IP Dato IP CabecIP CabecIP CabecIP CabecIP 2 1 1 4 2 3 3 1 1 3 2 2 2 2 3 3 1 4 1 PROCESAMIENTO DEL CAMPO TIME-TO-LIVE
IGP domain con un LDP (label distribution protocol ) LSRs y Labels : Resumiendo (1) • 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
0 1 2 3 0 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 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, 1bit TTL = Time to live, 8 bits PPP Header(Packet over SONET/SDH) PPP Header Shim Header Layer 3 Header Ethernet 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 • 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 Upstream y Downstream LSRs 171.68.40/24 171.68.10/24 Rtr-A Rtr-B Rtr-C
Use label 30 for destination 171.68.10/24 Use label 40 for destination 171.68.10/24 In I/F In I/F In I/F In Lab In Lab In Lab Address Prefix Address Prefix Address Prefix Out I/F Out I/F Out I/F Out Lab Out Lab Out Lab 0 0 0 - 40 30 171.68.10 171.68.10 171.68.10 1 1 1 40 - 30 Next-Hop Next-Hop Next-Hop ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... Asignación de Label y Distribución (cont.) • Los LSR distribuyen los labels a los upstreams vecinos “Unsolicited Downstream Distribution” 171.68.40/24 171.68.10/24 Rtr-A Rtr-B Rtr-C IGP derived routes
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 Label Assignment and Distribution On-Demand Downstream Distribution 171.68.10/24 171.68.40/24 Rtr-A Rtr-B Rtr-C • 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
Address Prefix and mask Next-Hop Interface In I/F In I/F In Lab In Lab Address Prefix Address Prefix Out I/F Out I/F Out Lab Out Lab Serial1 171.68.10/24 171.68.9.1 0 0 - 4 171.68/16 171.68/16 1 2 4 pop Next-Hop Next-Hop 171.68.44/24 171.68.12.1 Serial2 ... ... ... ... ... ... ... ... ... ... 171.68/16 ... Null LSP: Penultimate Hop Popping • Summary route for 171.68/16 • Summary route for 171.68/16 0 0 1 1 171.68.44/24 • Use label 4 for FEC 171.68/16 • Use label “implicit-null” for FEC 171.68/16 171.68.10/24 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
Address Prefix and mask Next-Hop Interface In I/F In I/F In I/F In Lab In Lab In Lab Address Prefix Address Prefix Address Prefix Out I/F Out I/F Out I/F Out Lab Out Lab Out Lab Serial1 171.68.10/24 171.68.9.1 0 0 0 4 - 7 171.68/16 171.68/16 171.68/16 1 2 1 4 7 pop Next-Hop Next-Hop Next-Hop 171.68.44/24 171.68.12.1 Serial2 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 171.68/16 ... Null P P 1 1 2 PE 0 PE 0 0 • Use label “implicit-null” for FEC 171.68/16 0 • Use label 4 for FEC 171.68/16 • Use label 7 for FEC 171.68/16 171.68.44/24 • Summary route for 171.68/16 • Summary route for 171.68/16 CE 171.68.10/24 Summary route is propagate through the IGP and label is assigned by each LSR Egress LSR summarises morespecific routes and advertises a label for the new FEC