Download - Vínculos multiacceso: Assert
![Page 1: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/1.jpg)
IP Multicast 1999 - [email protected]
1
Vínculos multiacceso: Assert
• Objetivo: Resolver para una entrada en una interfaz multiacceso, el router encargado del reenvío de datagrams multicast
• Formato de frame:
• Objetivo: Resolver para una entrada en una interfaz multiacceso, el router encargado del reenvío de datagrams multicast
• Formato de frame:
Vers.PIM(4)
Tipo(4)
Reservado(8)
Checksum(16)
Dirección codificada de Grupo(variable)
Dirección codificada Unicast del origen(variable)
Preferencia Métrica(31)
R(1)
Métrica(32)
•Dirección de grupo: La del grupo asociado al assert.
•Dirección origen: Dirección del emisor asociado al assert.
•Preferencia métrica: Valor de preferencia asociado al protocolo de ruteo unicast utilizado para determinar métrica.
•Métrica: Al origen. Determinada por el protocolo de ruteo utilizado.
•R: Indica si se refiere a un árbol específico (0) o al compartido (1).
![Page 2: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/2.jpg)
IP Multicast 1999 - [email protected]
2
Vínculos multiacceso: Envío de Assert
• El envío de asserts debe estar limitado por la implementación.
• Al recibirse un datagram multicast por una oif (I) multiacceso de una entrada ( (S,G), (*,G) o (*,*,RP) ).
– Cálculo de métrica (todos unos si no existe ruta al origen).
– Determinación de bit R (Si entrada resultante es (*,G) ).
• Al recibirse un assert por una oif multiacceso.
– Si el router gana la comparación de métricas y se convierte en DF.
• El envío de asserts debe estar limitado por la implementación.
• Al recibirse un datagram multicast por una oif (I) multiacceso de una entrada ( (S,G), (*,G) o (*,*,RP) ).
– Cálculo de métrica (todos unos si no existe ruta al origen).
– Determinación de bit R (Si entrada resultante es (*,G) ).
• Al recibirse un assert por una oif multiacceso.
– Si el router gana la comparación de métricas y se convierte en DF.
![Page 3: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/3.jpg)
IP Multicast 1999 - [email protected]
3
Vínculos multiacceso: Recepción de AssertRecepción a través de una oif:
• Determinar si el router es parte del árbol de distribución
– Bit R = 1, buscar entradas activas (*,G) o (*,*,RP)
– Bit R = 0, buscar entradas activas (S,G), (*,G) o (*,*,RP)
• Determinar si el router está enviando por la interfaz involucrada (oif)
– Comprobar si la interfaz de arribo del assert está en la lista de oifs de la entrada
• Creación de la entrada específica si es necesario
– Creación de una entrada (*,G) si la entrada hallada fue (*,*,RP)
– Creación de una entrada (S,G)RPT=1 si la entrada hallada fue (*,*,RP) o (*,G) y el assert tiene bit R=0
• Evaluación de la métrica recibida
• Acción a tomar
– Router gana (métrica menor)
• Enviar assert por la interfaz, con métrica propia y bit R
– Router pierde
• Eliminar interfaz del conjunto de oifs para la entrada
• Eliminar interfaz de entradas menos específicas si corresponde
Recepción a través de una oif:
• Determinar si el router es parte del árbol de distribución
– Bit R = 1, buscar entradas activas (*,G) o (*,*,RP)
– Bit R = 0, buscar entradas activas (S,G), (*,G) o (*,*,RP)
• Determinar si el router está enviando por la interfaz involucrada (oif)
– Comprobar si la interfaz de arribo del assert está en la lista de oifs de la entrada
• Creación de la entrada específica si es necesario
– Creación de una entrada (*,G) si la entrada hallada fue (*,*,RP)
– Creación de una entrada (S,G)RPT=1 si la entrada hallada fue (*,*,RP) o (*,G) y el assert tiene bit R=0
• Evaluación de la métrica recibida
• Acción a tomar
– Router gana (métrica menor)
• Enviar assert por la interfaz, con métrica propia y bit R
– Router pierde
• Eliminar interfaz del conjunto de oifs para la entrada
• Eliminar interfaz de entradas menos específicas si corresponde
![Page 4: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/4.jpg)
IP Multicast 1999 - [email protected]
4
Vínculos multiacceso: Recepción de AssertRecepción a través de la iif de una entrada:
• Determinar si el router es parte del árbol de distribución
– Bit R = 1, buscar entradas activas (*,G) o (*,*,RP)
– Bit R = 0, buscar entradas activas (S,G)
• Determinar si el router está recibiendo a través de la interfaz involucrada (iif)
– Comprobar si la interfaz de arribo del assert es la iif de la entrada
• Determinar si el emisor del assert es el DF
• Acción a tomar
– Si el emisor es el DF
• Enviar los J/P al DF al emisor del assert en lugar de al anterior router.
• Si cambió el RPF para la entrada, enviar J/P inmediatamente.
• Iniciar assert timer para realizar chequeo RPF unicast.
Recepción a través de la iif de una entrada:
• Determinar si el router es parte del árbol de distribución
– Bit R = 1, buscar entradas activas (*,G) o (*,*,RP)
– Bit R = 0, buscar entradas activas (S,G)
• Determinar si el router está recibiendo a través de la interfaz involucrada (iif)
– Comprobar si la interfaz de arribo del assert es la iif de la entrada
• Determinar si el emisor del assert es el DF
• Acción a tomar
– Si el emisor es el DF
• Enviar los J/P al DF al emisor del assert en lugar de al anterior router.
• Si cambió el RPF para la entrada, enviar J/P inmediatamente.
• Iniciar assert timer para realizar chequeo RPF unicast.
![Page 5: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/5.jpg)
IP Multicast 1999 - [email protected]
5
Envío de datos encapsulados al RP
• Inicialmente un DR encapsula los datagrams multicast y envía al RP
• El RP puede crear un árbol por emisor para el DR.
• En ciertas condiciones, el RP solicita al DR que deje de enviar encapsulado (Register-Stop):
– Recibe Register del DR.
– Ha iniciado un árbol por emisor y ha comenzado a recibir datos por él.
– No tiene downstreams para el grupo.
• Al recibir el Register-Stop, un DR:
– Inicia un timer (S,G), (Register-Supression-Timer); a su fin, vuelve a encapsular al DR.
– Finaliza el envío de datos encapsulados al RP (sólo envía por el árbol especifico si lo hay).
• Inicialmente un DR encapsula los datagrams multicast y envía al RP
• El RP puede crear un árbol por emisor para el DR.
• En ciertas condiciones, el RP solicita al DR que deje de enviar encapsulado (Register-Stop):
– Recibe Register del DR.
– Ha iniciado un árbol por emisor y ha comenzado a recibir datos por él.
– No tiene downstreams para el grupo.
• Al recibir el Register-Stop, un DR:
– Inicia un timer (S,G), (Register-Supression-Timer); a su fin, vuelve a encapsular al DR.
– Finaliza el envío de datos encapsulados al RP (sólo envía por el árbol especifico si lo hay).
![Page 6: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/6.jpg)
IP Multicast 1999 - [email protected]
6
PIM-SM: Register
• Utilizado para enviar datagrams multicast encapsulados al DR
• Formato:
– B: indica si es enviado por un PMBR o por un DR.
– N: indica si el datagram encapsulado es un probe.
• Utilizado para enviar datagrams multicast encapsulados al DR
• Formato:
– B: indica si es enviado por un PMBR o por un DR.
– N: indica si el datagram encapsulado es un probe.
Vers.PIM(4)
Tipo(4)
Reservado(8)
Checksum(16)
Reservado(30)
Paquete de datos Multicast encapsulado(variable)
B(1)
N(1)
![Page 7: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/7.jpg)
IP Multicast 1999 - [email protected]
7
PIM-SM: Register-Stop
• El RP indica al DR que no envía datos encapsulados para un grupo y un emisor determinados.
• Formato:
– Dirección de grupo: El grupo para el cual no se debe encapsular.
– Dirección origen: El emisor para el que no se debe encapsular (todos ceros indica todos los emisores del grupo)
• El RP indica al DR que no envía datos encapsulados para un grupo y un emisor determinados.
• Formato:
– Dirección de grupo: El grupo para el cual no se debe encapsular.
– Dirección origen: El emisor para el que no se debe encapsular (todos ceros indica todos los emisores del grupo)
Vers.PIM(4)
Tipo(4)
Reservado(8)
Checksum(16)
Dirección de grupo codificada(variable)
Dirección (unicast) origen (S) codificada(variable)
![Page 8: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/8.jpg)
IP Multicast 1999 - [email protected]
8
PIM-SM: Dominios, interoperabilidad
• Dominio:
– Conjunto de routers que operan PIM
– Configurados para operar dentro de límites comunes
– Conectado a otros dominios por PMBR
– Conjunto común de RPs, con mapping común (procedimiento de bootstrap)
• Entradas (*,*,RP):
– Representan todos los grupos asociados al RP
– Un datagram (S,G) hará matching con (*,*,RP) si
• No existe entrada (S,G) ni (*,G)
• G está asociado a RP
• PMBR:
– Router que opera PIM y otro protocolo multicast
– Deben enviar al otro dominio todos los datagrams multicast generados internamente (caso de interoperación con protocolos modo denso - DVMRP)
– Deben propagar dentro del dominio los datagrams generados en otros dominios
• Dominio:
– Conjunto de routers que operan PIM
– Configurados para operar dentro de límites comunes
– Conectado a otros dominios por PMBR
– Conjunto común de RPs, con mapping común (procedimiento de bootstrap)
• Entradas (*,*,RP):
– Representan todos los grupos asociados al RP
– Un datagram (S,G) hará matching con (*,*,RP) si
• No existe entrada (S,G) ni (*,G)
• G está asociado a RP
• PMBR:
– Router que opera PIM y otro protocolo multicast
– Deben enviar al otro dominio todos los datagrams multicast generados internamente (caso de interoperación con protocolos modo denso - DVMRP)
– Deben propagar dentro del dominio los datagrams generados en otros dominios
![Page 9: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/9.jpg)
IP Multicast 1999 - [email protected]
9
PIM-SM:Interoperabilidad Difusión de datagrams generados internamente a otros dominios•Un router PMBR inicializa estado para todos los RPs del dominio (*,*,RP)•Envían J/P a los RP (crea árboles de distribución).•Al arribar los datagrams al PMBR, se procesan de acuero al protocolo correspondiente (DVMRP, etc).
R4 R3
R2S1
RP1(G1,G2)
R5 R6
RP2(G3,G4) R8
Unicast a RP
PMBR
R6
PMBR
PMBR
(*,*,RP1)
(*,*,RP1)(*,*,RP1)
(*,*,RP1)
(*,*,RP1)
(S1,G1)
DOMINIO PIM-SM
DOMINIO DVMRP
DOMINIO PIM-SM
S2
Unicast a RP
(S2,G2)
Difusión datagrams
Difusión datagrams
![Page 10: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/10.jpg)
IP Multicast 1999 - [email protected]
10
PIM-SM:Interoperabilidad Difusión de datagrams generados en otros dominiosUn PMBR encapsula y envía Register al RP correspondiente (B=1).El RP almacena para le entrada la dirección del PMBR.Si se recibe un Register de otro PMBR, el RP responde enviando Register-Stop.RP1: Entrada (S1,G1): PMBR=PMBR1
R4 R3
R2S1
RP1(G1,G2)
R5 R6
RP2(G3,G4) R8
Unicast a RP
PMBR1
R6
PMBR
PMBR2
(S1,G1)
DOMINIO PIM-SM
DOMINIO DVMRP
DOMINIO PIM-SM
S2
Unicast a RP
(S1,G1)
S1
Register-Stop
(S1,G1)
![Page 11: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/11.jpg)
IP Multicast 1999 - [email protected]
11
PIM-SM: Encapsulación, detalles
Recepción en un DR de un dg. Multicast desde un host directamente conectado:
• Creación/Modificación de entradas
– No existe entrada (S,G)
• Existe mapping (G en un RP)
• El DR no es RP para G
– Creación de entrada (S,G):
• oif-list: nula o copiada de (*,G) o (*,*,RP) si existen
• interfaz de arribo del datagram excluida de oif-list
• Envío de un J/P (S,G) (RTP=1) si existe entrada (*,G) o (*,*,RP)
• Register-Supression-Timer de la entrada: off
– Existe entrada (S,G)
• Reactivar el timer para vigencia de la entrada.
• Envío de datos
– Si Register-Supression-Timer en off, encapsular paquete y enviar al RP
– Si oif-list de (S,G) no nula, reenviar por las interfaces de salida
Recepción en un DR de un dg. Multicast desde un host directamente conectado:
• Creación/Modificación de entradas
– No existe entrada (S,G)
• Existe mapping (G en un RP)
• El DR no es RP para G
– Creación de entrada (S,G):
• oif-list: nula o copiada de (*,G) o (*,*,RP) si existen
• interfaz de arribo del datagram excluida de oif-list
• Envío de un J/P (S,G) (RTP=1) si existe entrada (*,G) o (*,*,RP)
• Register-Supression-Timer de la entrada: off
– Existe entrada (S,G)
• Reactivar el timer para vigencia de la entrada.
• Envío de datos
– Si Register-Supression-Timer en off, encapsular paquete y enviar al RP
– Si oif-list de (S,G) no nula, reenviar por las interfaces de salida
![Page 12: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/12.jpg)
IP Multicast 1999 - [email protected]
12
PIM-SM: Recepción de Registers
Recepción en un RP de un dg. Multicast encapsulado en un Register:
• Existe entrada (S,G) con SPT=0 y paquete no nulo:
– Enviar paquete
– Dejar SPT = 0
• Existe entrada (S,G) con SPT=1 y paquete no nulo:
– Descartar paquete
– Enviar Register-Stop
• No existe (S,G) pero existe (*,G) y paquete no nulo:
– Enviar el paquete
• No existe (S,G) ni (*,G) pero sí (*,*,RP) y paquete no nulo:
– Se crea entrada (S,G) o (*,G) copiando oiflist de (*,*,RP)
– Se envía el paquete
• No existe entrada
– Se descarta el paquete
– Se envía Register-Stop
Recepción en un RP de un dg. Multicast encapsulado en un Register:
• Existe entrada (S,G) con SPT=0 y paquete no nulo:
– Enviar paquete
– Dejar SPT = 0
• Existe entrada (S,G) con SPT=1 y paquete no nulo:
– Descartar paquete
– Enviar Register-Stop
• No existe (S,G) pero existe (*,G) y paquete no nulo:
– Enviar el paquete
• No existe (S,G) ni (*,G) pero sí (*,*,RP) y paquete no nulo:
– Se crea entrada (S,G) o (*,G) copiando oiflist de (*,*,RP)
– Se envía el paquete
• No existe entrada
– Se descarta el paquete
– Se envía Register-Stop
![Page 13: Vínculos multiacceso: Assert](https://reader036.vdocuments.co/reader036/viewer/2022083008/56814641550346895db34ba5/html5/thumbnails/13.jpg)
IP Multicast 1999 - [email protected]
13
PIM-SM: Recepción de Registers
Recepción en un RP de un dg. Multicast encapsulado en un Register:
• Register con Border Bit = 1
– Existe entrada (*,G) o (*,*,RP) y no existe entrada (S,G)
• Crear entrada (S,G) con
– dirección de PMBR = Dirección origen Register y SPT = 0
• Enviar Join a S
• Enviar datagram según oiflist
– Existe entrada (S,G) con SPT = 0 y dirección PMBR coincide
• Reenviar datagram
– Existe entrada (S,G) con SPT = 1 o dirección PMBR no coincide
• Descartar datagram
• Enviar Register-Stop al PMBR que emitió el Register
Recepción en un RP de un dg. Multicast encapsulado en un Register:
• Register con Border Bit = 1
– Existe entrada (*,G) o (*,*,RP) y no existe entrada (S,G)
• Crear entrada (S,G) con
– dirección de PMBR = Dirección origen Register y SPT = 0
• Enviar Join a S
• Enviar datagram según oiflist
– Existe entrada (S,G) con SPT = 0 y dirección PMBR coincide
• Reenviar datagram
– Existe entrada (S,G) con SPT = 1 o dirección PMBR no coincide
• Descartar datagram
• Enviar Register-Stop al PMBR que emitió el Register