Sie sind auf Seite 1von 157

1908 Arquitectura de Redes

Tema 3. IP Multicast

Pedro M. Ruiz <pedrom@um.es>

Francisco J. Ros <fjros@um.es>

3 Grado en Ingeniera Informtica 2011/2012

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

Contextualizacin
Hasta ahora hemos asumido comunicaciones desde un emisor a un receptor
Encaminamiento (IP) Control de flujo y de errores (TCP)

En esta leccin, introduciremos el caso de un emisor, que desea enviar la misma informacin a mltiples destinos
Caso 1: multi-unicast. Una sesin con cada destino. Caso 2: broadcast. Datos a todos los nodos.

Es posible conseguir algo mejor?


Arquitectura de Redes - Universidad de Murcia 4

Qu es multicast?

Unicast
Host Router

Multicast
Host Router

Arquitectura de Redes - Universidad de Murcia

Ventajas e inconvenientes
Ventajas
Reduccin del consumo de ancho de banda Reduccin de la carga en servidores Reduccin de la carga en la red

Inconvenientes
Transmisin no fiable basada en UDP Congestin de la red al no usar el slow-start de TCP

Arquitectura de Redes - Universidad de Murcia

El modelo IP Multicast
S. Deering, RFC 1112: Host Extensions for Multicast Support No existe requisito alguno para transmitir multicast Los receptores deben unirse al grupo multicast para recibir los datagramas Los routers conspiran para hacer que los datagramas lleguen de los emisores a los receptores

Arquitectura de Redes - Universidad de Murcia

Modelo IP Multicast

Protocolos entre Hosts y Routers (IGMP)

Hosts

Routers

Protocolos de Enrutamiento Multicast (PIM, DVMRP, MBGP,...)


Arquitectura de Redes - Universidad de Murcia 8

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

Direcciones IP Multicast
Clase D: 224.0.0.0 - 239.255.255.255 Algunas direcciones reservadas (IANA)
224.0.0.0/24: link-local
224.0.0.1 (todos los hosts), 224.0.0.2 (todos los routers multicast),

224.0.1.0/24: reservadas para distintos protocolos


224.0.1.1 (NTP, Network Time Protocol),

etc

Direcciones privadas para mbito local


239.0.0.0/8

Otras usadas dinmicamente


Arquitectura de Redes - Universidad de Murcia 10

IP Mcast vs. Link Mcast


32 bits 1110 28 bits 239.255.0.1 5 bits perdidos

01-00-5e-7f-00-01 Prefijo 25 bits 48 bits


Arquitectura de Redes - Universidad de Murcia 11

23 bits

Clculo de MAC Mcast


Ethernet y FDDI
Dada IPmcast, MAC corresondiente es (0x0000IPmcast & 0x0000007FFFFF) | 0x01005E000000

229.12.10.93 0000E5C0A05D

AND

0000007FFFFF 00000040A05D

OR

01005E000000 01005E40A05D

Arquitectura de Redes - Universidad de Murcia

12

Ejemplo de mapping incompleto


224.1.1.1 224.128.1.1 225.1.1.1 225.128.1.1 . . . . . . 238.1.1.1 238.128.1.1 239.1.1.1 239.128.1.1
Arquitectura de Redes - Universidad de Murcia

0x0100.5E01.0101

32:1

13

Direcciones Reservadas

224.0.3/24 - 238.255/16: Para cualquier grupo de mbito mundial 239.255/16: Para grupos locales a una organizacin

Control de mbito
Arquitectura de Redes - Universidad de Murcia 14

Scoping
TTL Scoping
Consiste en limitar el alcance de un paquete en base al campo TTL del datagrama IP.

Administrative Scoping
Consiste en reservar determinados rangos de direcciones multicast para slo sean distribuidos internamente. Los routers multicast se encargarn de no distribuir los datagramas con esas direcciones como destinos.

Arquitectura de Redes - Universidad de Murcia

15

TTL Scoping

TTL 32

TTL 16

TTL 64 TTL >128


Arquitectura de Redes - Universidad de Murcia

UM RedIRIS Dante
16

Administrative Scoping

Univ. Murcia

Univ. Carlos III

RedIRIS

239.128.0.0/16

239.0.0.0/8

Arquitectura de Redes - Universidad de Murcia

17

Arquitectura General
Protocolos entre Hosts y Routers (IGMP)

Hosts

Qu ocurre si no todos los routers soportan Routers multicast?

Protocolos de Enrutamiento Multicast (PIM, DVMRP, BGMP,...)


Arquitectura de Redes - Universidad de Murcia 18

MBone
Backbone Multicast experimental de Internet Utilizado por multitud de aplicaciones de transmisin de audio y vdeo multidestino en tiempo real Red virtual construida sobre la Internet para soportar trfico multicast
Islas multicast unidas mediante tneles o bien con routing nativo (DVMRP)

Intil cuando todos los routers de Internet soporten multicast

Arquitectura de Redes - Universidad de Murcia

19

Tneles Multicast
Permiten la interconexin de islas multicast a travs de redes no multicast:
Red Multicast Red Multicast Red no Multicast

Tunel

Encapsulacin de IP sobre IP
Dir. IP multicast Dir. IP unicast Datos

Arquitectura de Redes - Universidad de Murcia

20

Multicast Tunneling
Multicast Router 2 desencapsula paquetes IP-inIP y lo difunde a la red local

Multicast Router 1 encapsula paquetes multicast para receptores fuera de la red Multicast mediante el uso Router 1 de paquetes unicast IP-in-IP .

Paquete de datos encapsulado

Multicast Router 2

UR1

UR2

Como hacer que el control de Unicast Routers mbito basado en TTL se ajuste al acuerdo general Senderante 1 Receiver la presencia de tneles?
Network 2

Network 1

Arquitectura de Redes - Universidad de Murcia

21

Control de mbito con Tneles


Cada tnel se configura con un valor llamado TTL A su vez, el datagrama multicast tiene un valor de TTL en la cabecera, que denominaremos TTLmcast Al enviar un datagrama por una interfaz correspondiente a un tnel
TTLmcast -= TTL Si TTLmcast <= 0, descartar datagrama

Por cada salto real, el TTL que se decrementa es el del paquete unicast, por lo que el reenvo unicast no afecta a los clculos

Arquitectura de Redes - Universidad de Murcia

22

Ejemplo de Control de mbito basado en TTL con Tneles


Nacional = 32 Local=16
Univ. 1 RedIRIS Red no Multicast

TTL=16

Univ. 2

Red no Multicast

Arquitectura de Redes - Universidad de Murcia

23

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

24

Contextualizacin
Modelo IP multicast
Protocolos entre Hosts y Routers (IGMP)

Hosts

Routers

Protocolos de Enrutamiento Multicast (PIM, DVMRP, MBGP,...)


Arquitectura de Redes - Universidad de Murcia 25

Internet Group Management Protocol (IGMP)


Tres versiones diferentes
IGMPv1
Operacin bsica con limitaciones

IGMPv2
Mejora los aspectos referentes al abandono de un grupo Genera cuestiones de interoperabilidad

IGMPv3
Aporta posibilidad de unirse slo a determinadas fuentes de un grupo multicast

Arquitectura de Redes - Universidad de Murcia

26

IGMPv1
Internet Group Management Protocol (RFC 1112): protocolo de comunicacin entre hosts y routers para la gestin de grupos multicast Mensajes IGMP encapsulados sobre IP (tipo 0x02 y TTL=1): IGMP Cab. IP Datos IGMP no es parte integral de IP Formato:
0 4 8 16

Mensaje IGMP Datagrama IP

31

Tipo 1 2

Mensaje query (consulta router) report (respuesta hosts)

Vers Tipo Reserv.

Checksum

Direccin clase D

Arquitectura de Redes - Universidad de Murcia

27

IGMPv1 - Unin al grupo


224.5.5.5 Host 1 Host 2 Host 3

Enva IGMP Report al grupo 224.5.5.5

Para unirse al grupo, el host enva un IGMP Report a la direccin IP Multicast a la que desea unirse de forma asncrona.
Arquitectura de Redes - Universidad de Murcia 28

IGMPv1 - General Queries


224.2.0.1 Host 1 224.2.0.1 Host 2 224.2.0.1 224.5.5.5 Host 3

Enva Report al grupo 224.2.0.1 Enva peridicamente IGMP Queries al grupo 224.0.0.1

Enva Report algrupo 224.5.5.5

El router, para determinar si siguen quedando miembros de un determinado grupo enva General Queries peridicamente a AllHosts
Arquitectura de Redes - Universidad de Murcia 29

IGMPv1 - Mantenimiento del grupo


Report a 224.2.0.1 224.2.0.1 suprimido Host 1 Report a 224.2.0.1 224.2.0.1 suprimido Host 2 224.2.0.1 224.5.5.5 Host 3

Enva Report al 224.2.0.1 Enva peridicamente IGMP Query al 224.0.0.1

Enva Report al 224.5.5.5

El router enva consultas peridicas (60 seg.) Slo responde un miembro por grupo, por qu?
host inicia un timer entre 0 y MRT (10 seg por defecto) cancela timer si recibe Report de otro host enva Report si el timer expira
Arquitectura de Redes - Universidad de Murcia 30

IGMPv1 - Abandonar grupo


Problema: Suelen pasar 3 minutos hasta que deja de inyectarse trfico Enva peridicamente innecesario IGMP Queries al grupo
224.0.0.1 Host 1 Host 2 Host 3

Hosts abandonan el grupo sin avisar Router sigue preguntando No se recibe ningn IGMP Report El grupo expira (a los 3 Query intervals)
Gen. Query MRT Latencia Leave Arquitectura de Redes - Universidad de Murcia 31 Gen. Query Gen. Query Gen. Query

IGMPv2
Definido en el RFC 2236 Aade nuevas funcionalidades
Group Specific Queries Leave Group Message Mecanismo de Querier Election Query-Interval Response Time

Adems, es compatible con IGMPv1

Arquitectura de Redes - Universidad de Murcia

32

Formato de paquetes IGMPv2


7 15 31

Type

MRT

Checksum

Group Address
Type:
0x11 = Membership Query 0x12 = Version 1 Membership Report 0x16 = Version 2 Membership Report 0x17 = Leave Group

MRT (Max Response Time)


Mximo tiempo sin enviar una respuesta en unidades de 1/10 segs (default=10 seg)

Group Address
Es el grupo multicast. (0.0.0.0) para General Queries

Arquitectura de Redes - Universidad de Murcia

33

IGMPv2 - Unin Inicial al grupo


155.54.1.10 Host 1 155.54.1.11 Host 2 155.54.1.12 224.5.5.5 Host 3

Enva IGMP Report al grupo 224.5.5.5

Para unirse al grupo, el host enva un IGMP Report a la direccin IP Multicast a la que desea unirse de forma asncrona(similar a IGMPv1)
Arquitectura de Redes - Universidad de Murcia 34

IGMPv2 - Querier Election


155.54.1.10 Host 1 155.54.1.11 Host 2 155.54.1.12 Host 3

IGMP Querier

Query

Query

A
155.54.1.1

B
155.54.1.2

IGMP Non-Querier

Inicialmente el router asume que es Querier El router con menor IP se erige como Querier Los otros routers quedan como non-Querier
Si no escuchan al Querier durante 2 General Query Interval (2 x 125 = 250 seg) se reinicia eleccin
Arquitectura de Redes - Universidad de Murcia 35

IGMPv2 - Mantenimiento del grupo


Report a 224.2.0.1 224.2.0.1 suprimido Host 1 Report a 224.2.0.1 224.2.0.1 suprimido Host 2 224.2.0.1 224.5.5.5 Host 3

Enva Report a 224.2.0.1

IGMPv2
Enva peridicamente IGMP Query a 224.0.0.1

Enva Report a 224.5.5.5

El router enva general queries peridicas Responde un miembro por grupo Los otros miembros evitan responder
Arquitectura de Redes - Universidad de Murcia 36

IGMPv2 - Abandonar grupo


Leave a 224.0.0.2 Host 1 224.5.5.5 Report a 224.5.5.5 Host 2 224.5.5.5 Host 3

IGMPv2

IGMP Group Specific Query a 224.5.5.5

El Host 2 enva un mensaje Leave a 224.0.0.2 (AllMcastRouters) El router enva un Group Specific Query a G Responde otro interesado G activo Los otros miembros evitaran responder
Arquitectura de Redes - Universidad de Murcia 37

IGMPv2 - Abandonar grupo


Leave a 224.0.0.2 Host 1 Host 2 224.5.5.5

Host 3

IGMPv2

IGMP Group Specific Query a 224.5.5.5

El Host 3 enva el mensaje Leave El router enva un Group Specific Query a G


MRT = 1 seg, expiracin ms rpida que en IGMPv1

Si no hay respuesta tras 2 intentos G no activo El grupo G expira


Arquitectura de Redes - Universidad de Murcia 38

Interoperabilidad IGMPv1-v2
v1 Report a 224.5.5.5 Host 1 Host 2 224.5.5.5

IGMPv2
Host 3

IGMPv1

IGMPv1 General Query a 224.0.0.1

Cuando el router implementa IGMPv1:


Los hosts deben enviar IGMPv1 Reports Los hosts podran no enviar IGMPv2 Leaves

Arquitectura de Redes - Universidad de Murcia

39

Interoperabilidad IGMPv1-v2
v1 Report a 224.5.5.5 Host 1 Host 2 224.5.5.5

IGMPv1
Host 3

IGMPv2

IGMPv1 General Query a 224.0.0.1

Cuando algn host usa IGMPv1:


El router activa un temporizador asociado a haber un host IGMPv1 para el grupo 224.5.5.5 Ignora todos los IGMPv2 Leaves para ese grupo hasta que el temporizador anterior expira

Arquitectura de Redes - Universidad de Murcia

40

Interoperabilidad IGMPv1-v2

Host 3 Host 1 Host 2

IGMPv2

IGMPv1

Cuando conviven routers IGMPv1-v2:


Hay que configurar el router IGMPv2 para que acte como IGMPv1

Arquitectura de Redes - Universidad de Murcia

41

IGMPv3
Actualmente RFC 3376 Permite hacer (S,G) Joins y Prunes
Llamado source filtering Requisito para soportar Source-Specific Multicast (SSM) Permite incluir o excluir fuentes especficas

Primeras implementaciones surgieron con


Linux 2.3.99 IOS 12.1 (3) T

Actualmente ampliamente soportado


Arquitectura de Redes - Universidad de Murcia 42

IGMPv3
IP Orig: 155.54.1.10 Grupo: 224.1.1.1 IP Orig: 163.117.1.10 Grupo: 224.1.1.1

R1

Router R3 puede podar para no recibir el trfico de la fuente 163.117.1.10


R3

R2

El host H1 quiere recibir el trfico dirigido a 224.1.1.1 de la fuente 155.54.1.10 y no de otra fuente

IGMPv3 Membership Report INC 224.1.1.1 155.54.1.10

H1 224.1.1.1

Arquitectura de Redes - Universidad de Murcia

43

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

46

Elementos del Routing Mcast


rboles de distribucin multicast Multicast Forwarding Tipos de algoritmos de routing multicast intradominio
Algoritmos modo dense Algoritmos modo sparse Algortimos hbridos

Arquitectura de Redes - Universidad de Murcia

47

rboles Multicast: Definiciones


Sea G=(V,E,w) un grafo que representa una red de comunicaciones, tal que V es el conjunto de nodos, E es el conjunto de enlaces y w:ER+ es la funcin de coste de cada enlace rbol multicast
Dado un conjunto SV de fuentes y un conjunto RVde receptores, un arbol mlticast es un subgrafo conexo T=(V,E) G, tal que
SV, RV, |E| = |V|-1

Coste de un rbol multicast


Dado un rbol multicast T se define su coste C(T) como C(T) = w(e) eE
Arquitectura de Redes - Universidad de Murcia 48

Ejemplo: S={A}, R={E,F}


Receptor 1

Fuente
7 B 3 6 5 C D 5 5 7 E G F 6

Notacin: (S, G) S = Fuente G = Grupo

9 A 8

Coste = wi = 8+5+6+5 = 24
Receptor 2

Arquitectura de Redes - Universidad de Murcia

49

rboles de Distribucin Multicast


rboles multicast de coste mnimo (Steiner)
Son los ms eficientes Muy complejos de calcular (NP-completo)

rboles de camino ms corto (SPT)


Unin de caminos ms cortos a cada destino

rboles compartidos (ST)


Existe un router central de encuentro entre emisores y receptores Unidireccionales o Bidireccionales

Arquitectura de Redes - Universidad de Murcia

50

Shortest Path Tree (SPT)


Fuente Notacin: (S, G) S = Fuente G = Grupo

Receptor 1 Arquitectura de Redes - Universidad de Murcia

Receptor 2 51

Shared Distribution Tree (ST)


Fuente 1 Notacin: (*, G) * = Cualquier fuente G = Grupo

D (Raz Compartida)

Fuente 2
F

Receptor 1

Receptor 2

Arquitectura de Redes - Universidad de Murcia

52

Comparativa de rboles de distribucin

Source Path Trees/Shortest Path Trees


Representan el camino ms corto hasta la fuente y son por lo tanto los ms ptimos en retardo. Sin embargo, requieren mantener mayor estado (memoria) por lo que son menos escalables. O(SxG)

Shared Trees
Son soluciones subptimas pero sin embargo slo requieren O(G) memoria por lo que son ms escalables.

Arquitectura de Redes - Universidad de Murcia

53

Ejemplo
Encontrar SPT y ST centrado en C
Receptor 1

Fuente
7 B 3 F 6

Notacin: (S, G) S = Fuente G = Grupo

6 Es alguno de estos rboles A G D 5 5 el de mnimo coste? 8 7 C 5 E

SPT = {AB,AC,BF,CE} Coste = wi = 9+8+7+5 = 29 ST = {AC,CD,DF,CE} Coste = wi = 8+5+1+5 = 24


Arquitectura de Redes - Universidad de Murcia Receptor 2

54

Minimum Steiner Tree (SMT)


Receptor 1

Fuente
7 B 3 6 5 C D 5 5 7 E G F 6

Notacin: (S, G) S = Fuente G = Grupo

9 A 8

Coste = wi = 9+3+6+5 = 23
Receptor 2

Arquitectura de Redes - Universidad de Murcia

55

Cmo se construyen los rboles de Forma Distribuda?


La construccin del rbol de distribucin es lo que diferencia unos protocolos de routing de otros PIM
Usa la tabla de routing unicast junto a los mensajes Join/Prune/Graft

DVMRP
Usa la tabla de routing multicast junto con un mecanismo llamado Poison-Reverse

MOSPF
Mecanismo basado en el estado de enlace

CBT
Tabla unicast ms mensajes Join/Prune/Graft
Arquitectura de Redes - Universidad de Murcia 56

Multicast Forwarding
Una vez el rbol est construido, hay que enviar los datagramas (multicast forwarding) El routing multicast funciona al revs que el routing unicast
El routing unicast se preocupa del destino del paquete El routing multicast se preocupa del origen del paquete

Por lo tanto, el routing multicast usa el llamado Reverse Path Forwarding (RPF)

Arquitectura de Redes - Universidad de Murcia

57

Reverse Path Forwarding


El router slo reenva datagramas recibidos en la interfaz que l usara para llegar a la fuente Para comprobarlo:
Chequea la tabla de rutas segn el protocolo de routing usado:
DVMRP usa una tabla de routing multicast PIM usa la tabla unicast... etc.

Si el datagrama lleg por el interfaz apropiado, la comprobacin de RPF es exitosa En caso contrario, el RPF check se considera fallido

Arquitectura de Redes - Universidad de Murcia

58

Forwarding basado en RPF


Una vez el rbol est construido, el router almacena la lista de interfaces de salida para el grupo G
Outgoing Interface List (OIL)

Si el RPF Check falla, el datagama se descarta Si RPF Check es exitoso y TTL > 0, se enva una copia del paquete cada una de las interfaces en el OIL Este algoritmo garantiza que la interfaz de entrada nunca est en la OIL

Arquitectura de Redes - Universidad de Murcia

59

Ejemplo de RPF Check


Paquete desde S0 151.10.3.21 S2 E0 Paquete desde 151.10.3.21 S0 S1 E0 S2

Tabla routing mcast Red Interfaz 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0

S1

Tabla routing mcast Red Interfaz 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0

Arquitectura de Redes - Universidad de Murcia

60

Multicast Forwarding-TTLs
Una interfaz puede configurarse con un TTL threshold Un datagrama se reenviar por un determinado interfaz si cumple las siguientes condiciones:
El datagrama ha pasado el RPF Check La interfaz est en el Outgoing Interface List El TTL del datagrama es mayor que el threshold de esa interfaz

Este mecanismo se emplea para hacer el TTL Scoping


Arquitectura de Redes - Universidad de Murcia 61

Tipos de algoritmos de routing multicast


Algoritmos de tipo Dense-Mode
Comportamiento de tipo inundacin y poda Funcionan mejor cuando hay mucha probabilidad de que haya receptores interesados

Algoritmos de tipo Sparse-Mode


Comportamiento de tipo explicit join Funcionan mejor cuando los receptores son escasos y se encuentran muy dispersos

Algoritmos hbridos
MOSPF inunda informacin de routing, no trfico multicast
Arquitectura de Redes - Universidad de Murcia 62

Algoritmos Dense-Mode
Asumen que va a haber mucha densidad de miembros para los grupos multicast
Filosofa: Enviar trfico a todos los posibles receptores y esperar a que avisen los que no estn interesados Las redes que no tienen miembros para ese grupo envan mensajes de Prune para podar esas ramas del rbol Hay un mecanismo de injerto (Graft) para volver a incorporar ramas al rbol con baja latencia Ventaja: Usa SPT y por lo tanto construye rboles ptimos Inconveniente: No escalable. Soft-state O(SxG)
Arquitectura de Redes - Universidad de Murcia 63

Algoritmos Sparse-Mode
Asume que los miembros del grupo estn muy dispersos en una gran regin
El trfico slo llega a los receptores cuando stos explcitamente lo solicitan Los Joins se propagan desde los receptores hasta el Core (CBT) o el Rendezvous Point (PIM) Dos tipos de Join (Slo PIM-SM)
(S,G) Join (*,G) Join

Ventaja: ms escalable y mejor aprovechamiento del ancho de banda Inconveniente: rboles no siempre ptimos
Arquitectura de Redes - Universidad de Murcia 64

Ejemplos de protocolos
Modo denso
DVMRP PIM-DM MOSPF

Modo disperso
PIM-SM CBT

Arquitectura de Redes - Universidad de Murcia

65

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

66

Resumen de DVMRP
RFC 1075 Funciona en modo denso
Inundacin y poda Mantiene una tabla de routing multicast usada para hacer los RPF checks

Shortest Path Trees Basado en vector de distancias


Similar a RIP Infinito=32 saltos Usa mscaras de subred en los anuncios de rutas Usa mecanismo de Poison-Reverse

Informacin de routing viaja en mensajes IGMP IP (Protocol 2) IGMP (tipo 0x13) Paquetes DVMRP
67

Arquitectura de Redes - Universidad de Murcia

Paquetes DVMRP
DVMRP Probes
Se usan para descubrir vecinos

DVMRP Reports
Se usan para el intercambio de rutas

DVMRP Prunes
Para podar ramas sin receptores

DVMRP Grafts
Para injertar ramas previamente podadas

DVMRP Graft Acks


Para asentir los mensajes de Graft

Arquitectura de Redes - Universidad de Murcia

68

Descubrimiento de vecinos en DVMRP


DVMRP1 Neighbor Probe de DVMRP1 Neighbor List = NULL

mrouted

155.54.1.1 Neighbor Probe Neighbor List = 155.54.1.2

Neighbor Probe Neighbor List = NULL

mrouted
DVMRP2 155.54.1.2

Neighbor Probe Neighbor List = 155.54.1.1

Todos los mensajes Neighbor Probe se transmiten por multicast al grupo 224.0.0.4 All-DVMRP Routers

Arquitectura de Redes - Universidad de Murcia

69

Intercambio de rutas DVMRP


Rutas DVMRP Red If Metr. 130.206.0.0/16 1 3 163.117.1.0/16 1 5

DVMRP1

155.54.1.1

mrouted
if0 if0 if1

if1

mrouted
DVMRP2 155.54.1.2

Estado inicial
Los routers an no han intercambiado rutas Cada router tiene dos interfaces if0 e if1

Rutas DVMRP Red If Metr. 130.206.0.0/16 1 6 192.121.1.0/16 1 4

Arquitectura de Redes - Universidad de Murcia

70

Intercambio de rutas DVMRP


Rutas DVMRP Red If Metr. 130.206.0.0/16 1 3 163.117.1.0/16 1 5
Route Report 130.206.0.0/16 M=3 163.117.1.0/16 M=5

DVMRP1

155.54.1.1

mrouted
if0 if0 if1

if1

Recibe R. Report y actualiza tabla Rutas DVMRP Red If Metr. 130.206.0.0/16 0 4 192.121.1.0/16 1 4 163.117.1.0/16 0 6

mrouted
DVMRP2 155.54.1.2

Si la ruta ya es conocida y la mtrica nueva es mejor se actualiza Si la ruta es nueva, se actualiza

Arquitectura de Redes - Universidad de Murcia

71

Intercambio de rutas DVMRP


Rutas DVMRP Red If Metr. 130.206.0.0/16 1 3 163.117.1.0/16 1 5
Route Report 130.206.0.0/16 M=36 192.121.1.0/16 M=4 163.117.1.0/16 M=38

DVMRP1

155.54.1.1

mrouted
if0 if0 if1

if1

Enva R. Report Rutas DVMRP Red If Metr. 130.206.0.0/16 0 4 192.121.1.0/16 1 4 163.117.1.0/16 0 6

mrouted
DVMRP2 155.54.1.2

Utiliza Poison Reverse (Metric = Metric +32) para indicar DVMRP2 usa al propio DVMRP1 para esas fuentes Recordar que = 32 en DVMRP

Arquitectura de Redes - Universidad de Murcia

72

Intercambio de rutas DVMRP


Rutas DVMRP Red If Metr. 130.206.0.0/16 1 3 163.117.1.0/16 1 5 192.121.1.0/16 0 5 if1

DVMRP1

155.54.1.1

mrouted
if0 if0

if1

Enva R. Report Rutas DVMRP Red If Metr. 130.206.0.0/16 0 4 192.121.1.0/16 1 4 163.117.1.0/16 0 6

mrouted
DVMRP2 155.54.1.2

DVMRP1 actualiza las rutas. En este caso slo necesita aadir la ltima entrada.

Arquitectura de Redes - Universidad de Murcia

73

Intercambio de rutas DVMRP


Rutas DVMRP Red If Metr. 130.206.0.0/16 1 3 163.117.1.0/16 1 5 192.121.1.0/16 0 5 if1
Route Report 130.206.0.0/16 M=3 192.121.1.0/16 M=37 163.117.1.0/16 M=5

DVMRP1

155.54.1.1

mrouted
if0 if0

if1

mrouted
DVMRP2 155.54.1.2

DVMRP1 vuelve a enviar las rutas actualizadas y de nuevo usando el Poison Reverse donde corresponda.

Rutas DVMRP Red If Metr. 130.206.0.0/16 0 4 192.121.1.0/16 1 4 163.117.1.0/16 0 6

Arquitectura de Redes - Universidad de Murcia

74

rboles de distribucin DVMRP


Fuente Unicast Route Report Poison Reverse

A A

B B F

E G

H
Receptor 1
Arquitectura de Redes - Universidad de Murcia

I
Receptor 2
75

rboles de distribucin DVMRP


Se forman usando la mejor mtrica DVMRP hasta la fuente. Para ello el router padre se fija en el Poison Reverse

Red Origen

A A
1 1 34

B B
1 34 2 35

F E
3 36 36

C
2 2

En caso de empate se elige el router con menor dir IP En nuestro ejemplo: IP(D)<IP(C)<IP(B)<IP(A)
Arquitectura de Redes - Universidad de Murcia 76

rboles de distribucin DVMRP


Fuente rbol de distribucin resultante

A A

B B F

E G

Arquitectura de Redes - Universidad de Murcia

77

rboles de distribucin DVMRP


5 4 1.Se construye un rbol para cada fuente 2. Seguimos suponiendo que IP(D)<IP(C)<IP(B)<IP(A)

A A
37 4 4 4 36

B B
3 2 34

F E
1 34

C
36

D
3 35

Fuente 2
Arquitectura de Redes - Universidad de Murcia 78

rboles de distribucin DVMRP


rbol resultante

A A

B B F

Fuente 2
Arquitectura de Redes - Universidad de Murcia 79

DVMRP Forwarding
Paquete desde S0 151.10.3.21 S1 mrouted S2 E0 Paquete desde 151.10.3.21 S0 S1
mrouted

Tabla routing mcast Red Red Interfaz S1 151.10.0.0/16 4 S0 198.14.32.0/24 3 E0 204.1.16.0/24 10

Tabla routing mcast Red Metric Interfaz 151.10.0.0/16 4 S1 198.14.32.0/24 3 S0 204.1.16.0/24 10 E0

S2

E0

Arquitectura de Redes - Universidad de Murcia

80

DVMRP Forwarding en redes de medio compartido


Red a anunciar

A
1 1

Para evitar duplicados, se elegir un Designated Forwarder (DF) entre B y C Se elige el de mejor mtrica a la red origen
En este caso, como ambos comparten red tendrn a misma mtrica. Tal y como vimos, en tal caso DVMRP elige el de direccin IP menor

B
2 2

Anuncio de rutas

DVMRP Pruning
Fuente(S) rbol de distrib. Trfico mcast Mensajes prune

A A

B B F

E G

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

82

DVMRP Pruning
Fuente Fuente(S) El router C no es el DF para la red del receptor. Luego asume que no tiene receptores interesados y enva un Prune (S,G) hacia B. IP(D)<IP(C)

A A

Prune (S,G)

B B

F D E G

Receptor 1 Receptor(G)

Arquitectura de Redes - Universidad de Murcia

83

DVMRP Pruning
Fuente(S) Como consecuencia del mensaje prune, el router B deja de hacer forwarding de los datagramas de S al grupo G.

A A

B B F

E G

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

84

DVMRP Pruning
Fuente(S) De nuevo F y G envan el mensaje Prune(S,G) para dejar de recibir trfico no deseado. Prune (S,G)

A A

B B

E
Prune (S,G)

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

85

DVMRP Pruning
Fuente(S) Ahora el router E deja de hacer forwarding de esos datagramas en el interfaz hacia F y G pero slo para la fuente S

A A

B B F

E G

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

86

DVMRP Pruning
Fuente(S) Ahora, como E tampoco tiene receptores interesados, vuelve a enviar el mensaje de pruning a su vecino hacia S

A A

B B F

D
Prune (S,G)

E G

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

87

DVMRP Pruning
Fuente(S) D hace la poda y ahora slo llega trfico donde es requerido. Notar que el rbol sigue estando establecido y el proceso de forwarding hace que slo llegue trafico a ciertas redes

A A

B B

F C D E G

Receptor(G)

Arquitectura de Redes - Universidad de Murcia

88

DVMRP Grafting
Fuente(S) Un nuevo receptor se une al grupo multicast desde la red del router G

A A

B B F

Graft

Receptor(G)

Receptor(G)
89

Arquitectura de Redes - Universidad de Murcia

DVMRP Grafting
Fuente(S) Como el estado est ya creado en todos los routers, E slo necesita enviar un Graft Ack a G y un Graft a su vecino hacia la fuente para restabler el rbol de distribucin.

A A

B B

F C D
Graft

Graft-Ack

Receptor(G)

Receptor(G)
90

Arquitectura de Redes - Universidad de Murcia

DVMRP Grafting
Fuente(S) Ahora D enva el Graft-Ack con lo que el rbol queda completamente restablecido sin tener que volver a calcular la tabla de routing.

A A

B B F

D
Graft-Ack

E G

Receptor(G)

Receptor(G)
91

Arquitectura de Redes - Universidad de Murcia

Resumen de PIM-DM
RFC 3973 (PIMv2 DM) Muy similar a DVMRP excepto en que no dispone de tablas de routing multicast ni de mensajes de routing Shortest Path Trees Tambin utiliza inundacin (Flood) y poda (Prune) Soporta tambin un mecanismo de injerto (Graft) Usa mensajes Assert para establecer el DF Los mensajes PIMv1 viajan en paquetes IGMP Los de PIMv2 sobre IP con protocolo 103
PIMv2 tiene algunas extensiones a los mensajes v1

Arquitectura de Redes - Universidad de Murcia

92

Mensajes PIM-DM
Hello Join/Prune Graft/Graft-Ack Assert

Arquitectura de Redes - Universidad de Murcia

93

Cabecera PIM
0
PIM Ver

34
Type

78
Reserved

15 16
Checksum

31

PIM Ver Version = 1 2 Type:


0 = Hello 1 = Register (slo PIM-SM) 2 = Register-Stop (slo PIM-SM) 3 = Join/Prune 4 = Bootstrap (slo PIM-SM) 5 = Assert 6 = Graft 7 = Graft-ACK 8 = Candidate RP Adv (slo PIM-SM) 9 = State refresh

Arquitectura de Redes - Universidad de Murcia

94

Funcionamiento de PIM-DM
Descubrimiento de vecinos Forwarding Pruning Grafting Mecanismo Assert Mantenimiento del estado

Arquitectura de Redes - Universidad de Murcia

95

Descubrimiento de vecinos en PIM


Router 2 PIM-DM 155.54.1.2 PIM Hello

PIM Hello

Router 1 PIM-DM 155.54.1.1

Todos los mensajes PIM Hello se transmiten por multicast al grupo 224.0.0.13 (AllPIMRouters) con TTL=1 cada 30 seg (por defecto). En PIM-DM, cualquier interfaz por la que hemos odo algn vecino se aade automticamente a la lista de interfaces de salida (oilist).

Arquitectura de Redes - Universidad de Murcia

96

Forwarding en PIM-DM

Paquetes Multicast (155.54.12.1,224.2.2.2) S0 S2 A S1

B Las interfaces del router se aaden a la lista de interfaces de salida (oilist) si:
Se escuch un vecino PIM en el interfaz. Algn host se ha unido al grupo multicast en esa interfaz. El router se ha configurado manualmente para que se una al grupo.

El funcionamiento del router consiste en inundar el trfico multicast por todas las interfaces que estn en la oilist
Arquitectura de Redes - Universidad de Murcia 97

Pruning en PIM-DM

Paquetes Multicast (155.54.12.1,224.2.2.2) S0 Prune (S,G) B 1. A inicialmente est inundando las interfaces de la oilist. 2. B enva el mensaje de PIM Prune (S,G) a A para dejar de recibir el trfico. 3. A poda la interfaz S2 para (S,G). S2 A S1

Arquitectura de Redes - Universidad de Murcia

98

Retardo al podar con PIM-DM en LANs


S0 A Prune (S,G) E0 B E1 E0 E0 C E1 Join (S,G) S1

Me esperar 3 seg por si an queda algn interesado

- El router B enva un Prune (S,G) porque no tiene interesados. - Cuando A recibe el Prune(S,G) de B, planifica la realizacin de la poda para dentro de 3 seg. As da tiempo a otros posibles interesados. - En este caso C tiene interesados, oye el Prune de B, y enva un Join para evitar que A pode (Prune Override). - Como A recibe el Join de C, cancela la poda que tena planificada. Problema: alto retardo de poda cuando hay muchas LAN en cascada.
Arquitectura de Redes - Universidad de Murcia 99

PIM-DM Grafting

Paquetes Multicast (155.54.12.1,224.2.2.2) S0 Graft (S,G) B Como el router B desea unirse despus de haber estado unido previamente, en lugar de enviar un Join, enva un Graft que permite restablecer el rbol de distribucin de un modo ms eficiente. Esto hace que A enve un Graft-Ack y restablezca el interfaz S2 a modo Forward/Dense.
Arquitectura de Redes - Universidad de Murcia 100

A S2

S1

Graft ACK

Mecanismo de Assert en PIM

A E0

S0

S0 E0

B Assert <dist,metric>

Assert <dist,metric>

El problema se detecta cuando un router recibe un datagrama (S,G) por un interfaz que l tiene en la OIList correspondiente en la tabla de forwarding. trfico duplicado en la LAN a travs de A y B. Solucin: Los routers implicados envan un mensaje PIM Assert
Todos comparan los valores de distancia administrativa y mtrica. Gana el router con la mejor tupla <distancia,mtrica>. En caso de empate en tupla, gana el router con la mayor direccin IP. Los routers que pierden podan esa interfaz. Arquitectura de Redes - Universidad de Murcia 101

Mantenimiento del estado en PIM-DM


El estado se mantiene en base al comportamiento inundacin y poda
Conforme se van recibiendo datagramas multicast, el temporizador de la entrada (S,G) de la tabla de forwarding se resetea a 3 minutos. Cuando, ese temporizador expira, la entrada se elimina de la tabla de forwarding.

El estado de poda expira cada 3 min. Esto causa que pasado ese tiempo se vuelva a inundar y podar.

Arquitectura de Redes - Universidad de Murcia

102

Repaso de PIM-DM
Fuente Unicast Datos Control

B G

F H

E Receptor 1
Arquitectura de Redes - Universidad de Murcia

I Receptor 2
103

Repaso de PIM-DM
Fuente Primero inundamos y creamos estado de forwarding en todos los enlaces. A B G C D F H E Receptor 1
Arquitectura de Redes - Universidad de Murcia

I Receptor 2
104

Repaso de PIM-DM
Fuente Prune al vecino que no pasa el RPF Check. A Prune C D F H E Receptor 1
Arquitectura de Redes - Universidad de Murcia

B G

I Receptor 2
105

Repaso de PIM-DM
Fuente C y D envan mensajes Assert para determinar el DR para esa LAN. C gana. A B G C Asserts H E Receptor 1
Arquitectura de Redes - Universidad de Murcia

I Receptor 2
106

Repaso de PIM-DM
Fuente I se poda del rbol. El Prune de E se ignora. G no poda porque H hace Join.

Prune G

D Prune E I

Join Override H

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
107

Repaso de PIM-DM
Fuente Nuevo receptor, I enva un Graft.

B G

D Graft E I

F H

Receptor 1 Receptor 3
Arquitectura de Redes - Universidad de Murcia

Receptor 2
108

Repaso de PIM-DM
Fuente

B G

F H

E Receptor 1

I Receptor 2 Receptor 3
109

Arquitectura de Redes - Universidad de Murcia

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

110

Idea General de PIM-SM


RFC 4601 Objetivo: evitar inundacin peridica de la red
Se elige un router que acta como punto de encuento (RP: Rendezvous Point) para el grupo multicast Las fuentes se registran en el RP Los receptores se unen hacia el RP

RP

Arquitectura de Redes - Universidad de Murcia

111

Resumen de PIM-SM
Modelo Explicit Join
Los receptores deben unirse al RP Los emisores se registran ante el RP El trfico fluir por el rbol compartido (ST, RPT) hacia los lugares donde explcitamente se hayan unido receptores Los routers hoja pueden unirse al rbol ms corto a la fuente (SPT) si el ratio de paquetes multicast se considera suficiente

El proceso de RPF Check depende del tipo de rbol


Para Shared Tree (RPT) se usa la direccin del RP Para el Shortest Path Tree (SPT) se usa la direccin de la fuente

Arquitectura de Redes - Universidad de Murcia

112

Resumen de PIM-SM
Slo puede elegirse un RP para un determinado grupo en un instante dado El RP puede configurarse estticamente o aprenderse dinmicamente con:
Auto-RP (Protocolo propietario de Cisco) PIMv2 Candidate RP Advertisements

Los datos se envan basndose en el estado (S,G) del SPT. Si este estado no existe entonces se usa el estado (*,G) del rbol compartido (RPT).

Arquitectura de Redes - Universidad de Murcia

113

Mensajes PIM-SM
Hello Join/Prune Graft/Graft-Ack Assert Register Register-Stop

Arquitectura de Redes - Universidad de Murcia

114

Funcionamiento de PIM-SM
Descubrimiento de vecinos Joining en PIM-SM Registering en PIM-SM SPT-Switchover en PIM-SM Pruning en PIM-SM Mantenimiento del estado en PIM-SM Forwarding en PIM-SM

Arquitectura de Redes - Universidad de Murcia

115

Descubrimiento de vecinos en PIM-SM


Router 2 PIM-SM 155.54.1.2 PIM Hello

Elegido DR

PIM Hello

Router 1 PIM-SM 155.54.1.1

Todos los mensajes PIM Hello se transmiten por multicast al grupo 224.0.0.13 (AllPIMRouters) con TTL=1 cada 30 seg (por defecto). Establecen relaciones de vecindad: slo se procesan mensajes PIM que lleguen de vecinos. En LANs se selecciona un router designado (DR). Si el DR expira, se elige un nuevo DR. Si hay una fuente en la LAN, slo el DR se registra en el rbol multicast Evitamos establecer caminos paralelos por los que enviara trfico duplicado Arquitectura de Redes - Universidad de Murcia 116

Joining en PIM-SM
RPT Los nodos hoja envan Joins (*,G) hacia el RP
Los Joins se envan salto a salto hacia el RP usando la tabla de rutas unicast Los Joins se envan al grupo multicast AllPIMRouters

Cada router en el camino va creando estado de forwarding (*,G)


Si no exista estado (*,G), se crea y se enva un Join en cascada de tipo (*,G) hacia el RP En caso contrario, ya hemos llegado al rbol compartido. Fin del proceso.

Arquitectura de Redes - Universidad de Murcia

117

Ejemplo PIM-SM
Fuente Enlace Datos Control

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
118

Ejemplo PIM-SM
Fuente
Receptor 1 se une al grupo G. C crea el estado (*, G), enva un Join (*, G) hacia el RP.

RP Join

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
119

Ejemplo PIM-SM
Fuente El RP crea el estado (*, G) en la interfaz del Join.

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
120

Registering en PIM-SM
Los emisores envan trfico multicast sin necesidad de unirse al grupo El DR local, enviar por unicast estos paquetes multicast hacia el RP
En concreto, el paquete multicast se encapsula dentro de un mensaje Register

Cuando el RP recibe los mensajes Register


Desencapsula el paquete multicast Lo enva por el rbol compartido Enva un (S,G) Join hacia el DR de la fuente para construir un SPT entre la fuente y el RP
Arquitectura de Redes - Universidad de Murcia 121

Registering en PIM-SM
Cuando el DR local del emisor recibe el (S,G) Join
El SPT entre la fuente y el RP ya est construido Empieza a enviar trfico por el SPT Pero temporalmente sigue transmitiendo con PIM Registers

Cuando el RP empieza a recibir trfico por el SPT enva un Register-Stop en unicast a ese router Cuando el DR local del emisor recibe el Register-Stop
Deja de encapsular trfico en mensajes Register El trfico ahora slo fluye por el SPT

Arquitectura de Redes - Universidad de Murcia

122

Ejemplo PIM-SM
Fuente La fuente empieza a enviar datos y A enva mensajes Register al RP.

PIM-Register

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
123

Ejemplo PIM-SM
Fuente El RP desencapsula los mensajes Register y enva los datos por el Shared Tree. Adems enva Join (S,G) hacia el DR de la fuente.
Join B RP D

Join A

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
124

Ejemplo PIM-SM
Fuente El RP enva un Register-Stop al DR de la fuente tan pronto como recibe los datos nativamente.

Register-Stop

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
125

SPT-Switchover en PIM-SM
Mecanismo para obtener rboles de distribucin mas eficientes Se establece un SPT-Threshold entre 0 e infinito
0 = Cambiar a un SPT inmediatamente Infinito = Nunca cambiar a un SPT

Si el trfico recibido en kbps de una determinada fuente S para un determinado grupo G supera el SPT-Threshold, entonces se enva un (S,G) Join
La ventaja es un rbol de distribucin ptimo respecto al camino ms corto El inconveniente es la reduccin de escalabilidad al tener que almacenar la tabla de forwarding ms entradas

Arquitectura de Redes - Universidad de Murcia

126

Ejemplo PIM-SM
Fuente C enva un Join (S, G) hacia la fuente para recibir el trfico por un rbol ms eficiente: el Shortest Path Tree (SPT).

RP

(S, G) Join
C E

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
129

Ejemplo PIM-SM
Fuente A crea estado (S,G) para enviar el trfico multicast a C. ste recibira el flujo por duplicado (SPT y RPT).

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
130

Pruning en PIM-SM
Se usa para frenar flujo innecesario de datos no requeridos
RPT Pruning SPT Pruning

Arquitectura de Redes - Universidad de Murcia

131

RPT Pruning
Cuando un flujo multicast deja de ser deseado, el host enva a su router local un IGMP Leave El router, al recibirlo, elimina la interfaz de la oilist correspondiente al grupo
Si la oilist para (*,G) se queda vaca, el router enva un (*,G) Prune a su vecino en el RPT Este proceso contina hasta llegar al RP o a algn otro router que tiene interfaces no podadas en la oilist

Arquitectura de Redes - Universidad de Murcia

132

SPT Pruning
Cuando un flujo multicast deja de ser deseado, el host enva a su router local un IGMP Leave El router, al recibirlo, elimina la interfaz de la oilist correspondiente al grupo
Si la oilist para (S,G) se queda vaca, el router enva un (S,G) Prune a su vecino en el RPT Este proceso contina hasta llegar al RP o a algn otro router que tiene interfaces no podadas en la oilist

Un router tambin enva un (S,G) Prune con el bit RP activo para podar en el RPT tras hacer switchover al SPT
Arquitectura de Redes - Universidad de Murcia 133

Ejemplo PIM-SM
Fuente Cuando C recibe los datos nativamente, enva un Prune (S,G) al RPT. A su vez, el RP borra la entrada (S,G) asociada y enva un Prune hacia el DR de la fuente.
RP D

(S, G) Prune
A B

(S, G) Prune - RP Bit


C E

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
134

Ejemplo PIM-SM
Fuente El receptor 1 slo recibe el flujo multicast por el SPT.

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
135

Mantenimiento del estado en PIM-SM


Los PIM Joins/Prunes se envan peridicamente a los vecinos
Los Joins refrescan el estado de forwading en los vecinos Los Prune refrescan el estado de pruning en los vecinos

Los paquetes multicast recibidos van inicializando los temporizadores asociados a las entradas (S,G)

Arquitectura de Redes - Universidad de Murcia

136

Forwarding en PIM-SM
Hacia RP (10.1.5.1) RPT (155.54.12.10,224.2.2.2) E0
Router 1 155.54.1.1 Router 2 155.54.1.2

SPT S1 (155.54.12.1,224.2.2.2)

S0 E0

Route E1 10.1.5.0/24 10.1.2.0/24 155.54.0.0/16

Iface S0 E0 S1

El RPF Check depende del rbol de distribucin


Shared Tree (RPT) se usa la direccin del RP Source Tree (SPT) se usa la direccin de Emisor

Arquitectura de Redes - Universidad de Murcia

137

Forwarding en PIM-SM
Hacia RP (10.1.5.1) RPT (155.54.12.10,224.2.2.2) E0
Router 1 155.54.1.1 Router 2 155.54.1.2

SPT S1 (155.54.12.1,224.2.2.2)

S0 E0 E1

Receptor A
(*,224.1.1.1)

Los paquetes se distribuyen por todas las interfaces que estn en la oilist Una intefaz se aade a la oilist en PIM-SM para un determinado grupo multicast cuando:
Un vecino PIM se une al grupo en esa interfaz Un host en ese interfaz se ha unido al grupo La interfaz se configur manualmente para unirse al grupo

Arquitectura de Redes - Universidad de Murcia

138

Ejemplo PIM-SM
Continuacin
Fuente El Receptor 2 se une. E crea el estado de forwarding (*,G) y enva un Join de tipo (*,G) hacia el RP.

RP

(*, G) Join
C E

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
139

Ejemplo PIM-SM
Continuacin
Fuente C aade el enlace hacia E a la oilist tanto para los datos de de (*, G) como para los de (S, G). A partir de este momento los datos ya le llegan a E.

RP

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
140

Ejemplo PIM-SM
Continuacin
Fuente Una nueva fuente empieza a emitir. D enva Registers, RP enva Joins. RP reenva los datos a los receptores mediante el rbol compartido.
Register A B RP D

Fuente 2

Receptor 1
Arquitectura de Redes - Universidad de Murcia

Receptor 2
141

Organizacin del tema


Introduccin a IP Multicast Direccionamiento y control de mbito Protocolos de gestin de grupos Encaminamiento Multicast
rboles multicast y multicast forwarding Protocolos en modo denso (DVMRP, PIM-DM) Protocolos en modo disperso (PIM-SM)

Encaminamiento multicast entre dominios

Arquitectura de Redes - Universidad de Murcia

142

Contextualizacin
Hemos estudiado diferentes esquemas de encaminamiento multicast (intra-dominio)
Modo denso: DVMRP, PIM-DM Modo disperso: PIM-SM

Cuestin: Es posible/deseable aplicar estos protocolos a nivel global de Internet?


SA 109 SA 207 SA 96

?
SA 217
Arquitectura de Redes - Universidad de Murcia

SA 76

143

Carencias para routing global


DVMRP y PIM-DM no sirven por su propio carcter Denso Otras soluciones como MOSPF requieren almacenar demasiado estado en los routers y enviar muchos LSA Protocolo en modo disperso como PIM-SM o CBT estn basados en la idea de un RP por grupo
un solo RP no escala a nivel global un ISP no quiere depender del RP de otro ISP

Arquitectura de Redes - Universidad de Murcia

144

PIM-SM/MBGP/MSDP
Solucin ms usada actualmente. En cada dominio o SA se usa cualquier protocolo de enrutamiento. Actualmente el ms usado PIM-SM. Con MBGP se intercambian informes sobre las redes a las que este SA puede llegar va multicast. Con MSDP se intercambia la informacin sobre los emisores entre SAs. SOLUCIN POCO ESCALABLE al aumentar #fuentes

Arquitectura de Redes - Universidad de Murcia

145

MBGP
Aclaraciones
BGP4+ y MBGP son lo mismo. No significa Multicast BGP!. Significa Multiprotocol extensions to BGP4, RFC 2858. No confundir MBGP con BGMP (Border Gateway Multicast Protocol, RFC 3913). MBGP no es especfico para multicast. Tambin puede usarse con otros protocolos como IPv6 o IPX. MBGP es capaz de interoperar con BGP4 y anteriores.

Arquitectura de Redes - Universidad de Murcia

146

MBGP
Nuevos atributos
MP_REACH_NLRI: Multiprotocol Reachable NLRI (Network Level Reachability Information)
Usado para anunciar a un peer una red alcanzable y el next hop a usar, de forma independiente del protocolo de red

MP_UNREACH_NLRI: Multiprotocol Unreachable NLRI


Usado para descartar determinadas rutas a destinos, de forma independiente del protocolo de red

En el contexto de multicast, usamos MBGP para


anunciar redes alcanzables va multicast indicar el next hop a utilizar en el RPF check

Arquitectura de Redes - Universidad de Murcia

147

MBGP
Funcionalidad
MBGP no crea estado, los rboles multicast se construyen usando PIM-SM Un mensaje MP_REACH_NLRI sirve para decir a nuestros peers: Tengo un camino para llegar a las fuentes multicast que haya en las redes que se indican en este mensaje Cuando a un router le llega un Join (*,G) o (S,G) para un grupo con fuentes multicast en otros dominios se usa la informacin proporcionada por MBGP para saber el next hop router al que tiene que enviar el Join para construir el rbol entre dominios que llegue a esa fuente Cmo saber si hay fuentes en otros dominios?

Arquitectura de Redes - Universidad de Murcia

148

MSDP
RFC 3618 Multicast Source Discovery Protocol No existe un RP raz. Cada dominio tiene el suyo.
No hace falta que varios dominios coadministren una nube tipo sparse
Identificar Cand-RPs Hacer el mapping entre grupo multicast y RP

Evitar dependencias de terceras partes

Arquitectura de Redes - Universidad de Murcia

149

MSDP
Funcionamiento
En cada dominio se configura alguno de los Cand-RP como MSDP agent Comunicacin con TCP entre MSDP agent y sus MSDP peers por el puerto 639 Cuando el MSDP agent detecta una nueva fuente enva un SA-message a todos sus MSDP peers accesibles directamente Inundacin de mensajes MSDP:
Los MSDP peers que reciben el mensaje hacen un RPF-check. Esto trata de evitar ciclos. Si pasa el RPF-check entonces hace un peer-RPF flooding
Enva mensaje a todos sus peers excepto del que lo recibi

Arquitectura de Redes - Universidad de Murcia

150

MSDP
Funcionamiento
Si en un dominio el MSDP peer tiene creado estado de forwarding para algn miembro del grupo en su dominio, enva un Join hacia la fuente anunciada en el SA-message. Si no, ignora el mensaje. Si el SA-message llevaba consigo datos y hay miembros interesados, el RP los encamina por el rbol de distribucin multicast. Una vez que los receptores reciben los datos pueden optar por pasarse al SPT segn define PIM-SM.

Arquitectura de Redes - Universidad de Murcia

151

MSDP
SA-message: Source Advertisement
Crtl info + Data Len Entry count RP Address Reserved Group Address Source Address Ctrl Info Len = Longitud de la informacin de control en el mensaje = 0 -> No hay datos encapsulados Data Len <> 0 -> distancia hasta el campo de tamao total del paquete IPv4 encapsulado SPrefix Len = Longitud de la mscara asociada a la Source Address, debe ser obligatoriamente 32
Arquitectura de Redes - Universidad de Murcia 152

Type=1

SPref Len

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Tenemos dos receptores en el AS1, que mandan IGMP report.


Arquitectura de Redes - Universidad de Murcia 153

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Routers mandan PIM Join (*,G) al RP local, que crea estado de forwarding en la red.
Arquitectura de Redes - Universidad de Murcia

154

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Fuente S enva trfico, su DR local enva un PIM-Register.


Arquitectura de Redes - Universidad de Murcia 155

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Como hay receptores locales, el RP se une a la fuente con un PIM-Join. Manda el trfico desencapsulado a los receptores. Anuncia la nueva fuente al MSDP peer.
Arquitectura de Redes - Universidad de Murcia

156

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

MSDP peer hace RPF check de la fuente que se anuncia en el mensaje SA. Al unirse los receptores se crea estado de forwarding en AS2 (igual en AS3).
Arquitectura de Redes - Universidad de Murcia

157

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Como el MSDP-SA pas el RPF check, el MSDP peer manda un Join al RP del AS1. MSDP peer del AS2 inunda el mensaje MSDP-SA al resto de sus MSDP peers.
Arquitectura de Redes - Universidad de Murcia 158

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

De nuevo el RP enva el Join al RP original del AS1, y se crea tambin el rbol entre AS2 y AS3.
Arquitectura de Redes - Universidad de Murcia

159

Ejemplo
PIM-SM/MBGP/MSDP
AS#1 R R RP/MSDP/ BR AS#2 RP/ MSDP BR R R

S BR RP/ MSDP BR

RP/ MSDP

R AS#4 AS#3

Igual que antes pero tras hacer el receptor de AS3 un SPT-switchover.


Arquitectura de Redes - Universidad de Murcia 160

Bibliografa
Bsica
Comer cap. 17 Williamson, Developing IP multicast networks Vol I, Cisco Press, 2000, cap. 1-3 y 5-7.

Complementaria
J. Crowcroft et. al. Internetworking multimedia, Morgan Kaufman, 1999 B. Cain, et. al. Internet Group Management Protocol, Version 3, IETF RFC 3376, Octubre 2002

Arquitectura de Redes - Universidad de Murcia

161

Verwandte Interessen