Title: DVMRP
1DVMRP
- Definido en RFC 1075 (Distance Vector Multicast
Routing Protocol), Nov 1988. - Actualizado (version 3) en draft-ietf-idmr-dvmrp-v
3 (Draft) Mar 1998. - Implementado en ambientes Unix mrouted (3.xx).
- Arboles de distribucion por emisor.
- Pertenencia implicita.
- Diseñado para grupos densos.
2DVMRP
- Uso de Reverse Path Multicast para construccion
de arboles de distribucion. - Uso de Reverse Path Forwarding en la fase de
reenvio. - Uso de tuneles con encapsulacion (IP en IP, GRE,
otras). - Ruteo propio, derivado del distance vector
unicast (RIP)
3PDUs DVMRP formato general
- Encapsuladas en IGMP (tipo 0x13).
- Precedence fild (encabezamiento IP) 0xC0
(Internetwork Control). - Header comun
- Code
- Probe (1) Descubrimiento de nodos adyacentes.
- Report (2) Intercambio de informacion de ruteo.
- Prune (7) Mantenimiento de los arboles de
distribucion. - Graft (8) Mantenimiento de los arboles de
distribucion. - Graft Ack (9) Mantenimiento de los arboles de
distribucion. - Ask Neighbors 2 (5) Info acerca de capacidades
de routers e interfaces. - Neighbors (6) Info acerca de capacidades de
routers e interfaces.
4DVMRP operación simplificada
Periodicamente 1.Intercambio de probes
(informacion entre pares de routers
adyacentes. 2. Intercambio de informacion de
ruteo (informacion propagada a todos los
routers) Un router conoce 1.Por que interfaz
debe arribar un paquete del emisor. 2.Por que
interfaces debe reenviar dicho paquete. 3.Si es
el designated forwarder en una red multiacceso
(si la interfaz hacia la red es una de las de
salida).
RE
R2
R1
R3
R4
R5
R6
R7
Red multiacceso
R8
R9
RE Router en la red origen del emisor Ri Otros
routers DVMRP
5DVMRP operación simplificada
Cuando el emisor produce un paquete multicast
destinado al grupo, se construye el arbol. Cada
router crea las entradas en la tabla de reenvio
multicast en funcion de la info de ruteo.
RE Router en la red origen del emisor Ri Otros
routers DVMRP
6DVMRP operación simplificada
R9 no esta interesado en informacion (S,G). Envia
un prune. El prune se propaga en direccion al
emisor. Los routers mantienen informacion acerca
de la interfaz podada. Pasado un tiempo, la
informacion de poda desaparecera (flooding
periodico).
RE
RE
R2
R1
R3
Prune
R4
R5
R6
Prune
R7
Red multiacceso
Prune
R8
R9
RE Router en la red origen del emisor Ri Otros
routers DVMRP
7DVMRP operación simplificada
En la red local de R8 (no visible) un host
solicita (IGMP) integrarse al grupo R8 envia
Graft R5 habilita la interfaz (no prune) R5
envia Ack R5 propaga graft
RE
RE
R2
R1
R3
3-Graft
R4
4-Ack Graft
R5
R6
1-Graft
R7
Red multiacceso
R8
2-Ack Graft
R9
RE Router en la red origen del emisor Ri Otros
routers DVMRP
8Neighbor Discovery (Descubrimiento de nodos
adyacentes). Probe
- Intercambiados periodicamente entre nodos
adyacentes. - Un router informa y es informado acerca de sus
nodos adyacentes en una interfaz. - Un router determina la condicion de leaf de la
red asociada a la interfaz. - Un router deduce las capacidades de los
adyacentes (version capabilities). - Un router monitorea el estado de sus adyacentes
(probes c/10 seg, timeout 35 segs) -
Capacidades Bit 0 Leaf Bit 1 Router procesa
pruning Bit 2 Router envia Generation Ids Bit 3
Router procesa requests Mtrace Bit 4 Router
procesa requests SNMP Bit 5 Router acepta
mascaras en prunes y grafts Bit 6 No usado Bit
7 No usado
9Neighbor Discovery (probe). Deteccion de arranque
de un router caido
- El router que detecta un adyacente con un
generation ID diferente al que tiene registrado - Supone que el router rearranco y actua de la sig.
manera - Envia inmediatamente su tabla de ruteo
- Elimina toda informacion de podas recibida del
router que rearranco
1 Datagram multicast de datos propagado por
R1 2 R2 no esta interesado, envia Prune 3 R2
cae y rearranca R1 tendra info de prune por
2 hs., no envia datagrams a R2. R2 perdio
su info de prune, no hara grafts
10Neighbor Discovery (probe)
- Un router no envia reportes poison hasta que no
se asegura que el otro lo reconoce (lo lista en
su probe). - Efectos de un timeout en la entrada de un router
adyacente - Colocar en estado hold-down todas las rutas
aprendidas del router adyacente. - Eliminar la s dependencias de ruteo del router
respecto del adyacente. - Eliminar todas las entradas en la MFC que tengan
a dicho router como upstream. - En el caso de que el router cuya entrada haya
producido el timeout sea el designated forwarder
para algun (as) red(es), se debe proceder a
seleccionar uno nuevo (para c/una). - Eliminar los grafts esperando ack de dicho ruter.
- Eliminar todas las dependencias downstream
referidas al router adyacente (para las que dicho
router envio un poison report). - Chequear las entradas MFC y eliminar las entradas
relacionadas con el router adyacente.
11Neighbor Discovery ejemplo
1 Router 202.2.2.1 envia probe, lista nula 2
Router 202.2.2.2 recibe probe y agrega a su lista
de adyacentes 202.2.2.1 3 Router 202.2.2.2 envia
probe lista 202.2.2.1 4 Router 202.2.2.1
recibe probe y agrega 202.2.2.2 a su lista de
adyacentes 5 Router 202.2.2.1 envia probe con
lista 202.2.2.2 Los probes son enviados a la
direcion 224.0.0.4 (All-DVMRP-Routers con TTL 1
12Vinculos multiacceso Designated Querier
Designated Querier El router con direccion IP
mas alta Eleccion del DQ Versiones
anteriores DVMRP Mecanismos propios Version
3 A cargo de IGMP (Debe utilizarse v2 o
posterior) Queries Emitidos solo por el
DQ Reports Procesados por todos los routers
13Vinculos multiacceso Designated Forwarder
- Designated Forwarder
- Objeto no producir reenvios innecesarios en la
red - local
- Condicion de DF sobre una interfaz (downstream)
y un - par (S,G)
- Inicialmente, un router se asume DF para todo par
en - todas las interfaces (downstream)
- Eleccion del DF Menor metrica desde el source /
- menor direccion IP
- Se reasume condicion de DF
- si se pierde conectividad con el DF
- si una interfaz upstream cambia su condicion