Você está na página 1de 5

1

I NTERNET GROUP MANAGEMENT PROTOCOL - IGMP



O IGMP um mecanismo para troca de informaes entre um dispositivo e o
roteador multicast mais prximo, permitindo determinar se um pacote multicast deve ser
enviado a uma rede especfica, sendo utilizado para entrar e sair de grupos multicast.
considerado uma extenso do ICMP, suas mensagens so encapsuladas nos datagramas
IP e sua verso 2 est descrita integralmente na RFC 2236. Neste estudo trataremos de
suas principais caractersticas.
Atualmente o IGMPse encontra na verso 2 e j existem implementaes da
verso 3 beta. Abordaremos as trs verses, enfatizando a verso 2 que a utilizada no
projeto.

IGMP V1
Todas as especificaes desta verso esto descritas na RFC 1112 que parte
integrante do Anexo 3. Abordaremos seu funcionamento bem como o formato das suas
mensagens.
As mensagens podem ser de dois tipos: pergunta por participao
Membership query ou relatrio de participao Membership report.
Quando alguma aplicao inicia um socket multicast a pilha de protocolos
TCP/IP do dispositivo envia, automaticamente, uma mensagem do tipo relatrio de
participao. Como esta mensagem enviada referente a um determinado grupo
multicast, indicando que deseja participar deste grupo, o dispositivo tambm determina
o endereo MAC deste grupo.
O roteador transmite, a cada 60 segundos e a todos os dispositivos da rede,
mensagens do tipo relatrio de participao a fim de verificar se existe pelo menos um
participante dentro da sub-rede, interessado em receber trfego do grupo. Uma vez que
o roteador no receba resposta ele envia 3 mensagens do tipo pergunta por participao,
em espaos de 60 segundos. Quando no recebe resposta essas 3 mensagens o
2
roteador determina o fim do trfego daquele grupo, para aquela sub-rede. As mensagens
do tipo relatrio de participao, quando originadas no roteador, so destinadas a todos
os dispositivos da rede, atravs do IP 224.0.0.1 e possuem valor de TTL igual a 1.
O pacote IGMPv1 possui 64 bits, com os campos de verso, tipo, checksum e
endereo do grupo multicast. Como pode ser visto na prxima Figura 13.


Figura 1: Formato da mensagem do IGMPv1, possui 8 bytes e os
campos de verso, tipo, verificao de erro e endereo do grupo
multicast.

IGMP V2
O IGMPv2 veio substituir a sua verso anterior e, atualmente, a verso
padro.
As mensagens podem ser de quatro tipos: pergunta por participao
Membership query, relatrio de participao para a verso 1 Membership report,
relatrio de participao para a verso 2 Membership report e sair do grupo Leave
group.
Seu funcionamento , basicamente, o mesmo da verso anterior. A principal
diferena existncia de um novo tipo de mensagem, o sair do grupo. Atravs desta
mensagem o dispositivo pode comunicar ao roteador multicast local que possui a
inteno de sair do grupo, que envia uma mensagem do tipo relatrio de participao
para aquele determinado grupo a fim de determinar se existe mais algum outro
dispositivo interessado em continuar recebendo o trfego daquele grupo. Se no existir
resposta em aproximadamente trs segundos o roteador para de encaminhar o trfego
para aquela interface.
A adio da mensagem do tipo sair do grupo reduziu, quando comparada com
a verso anterior, a latncia de sada de um grupo. Fazendo com que o trfego
desnecessrio e sem utilidade seja cessado muito antes.
Com o intuito de evitar trfego desnecessrio de mensagens do tipo relatrio
de participao duas tcnicas so utilizadas:
3
Quando um dispositivo recebe uma mensagem do tipo pergunta por
participao, antes de enviar um relatrio de participao inicializado
um contador para cada participao em grupo. Cada contador
configurado com uma escolha randmica de zero a D segundos.
Quando este tempo expira enviada a mensagem de relatrio de
participao para aquele grupo. Logo, as mensagens de relatrio de
participao so propagadas dentro de um intervalo de D segundos.
Quando uma mensagem de relatrio de participao enviada ela
possui como endereo de destino o IP do grupo a qual ela se refere e o
campo TTL tem valor igual a 1, com isso os outros participantes que
estejam na mesma rede verificam que j foi enviado o relatrio. Se um
dispositivo percebe que j foi enviada uma mensagem de relatrio para
o grupo ao qual ele pertence o seu contador automaticamente
paralisado no gerando a sua mensagem de relatrio. Usualmente
enviada como resposta apenas uma mensagem de relatrio para cada
grupo dentro de uma sub-rede.
A Figura 11 a seguir mostra o diagrama de tempo da operao do IGMP v2.


Figura 2: Diagrama de tempo na operao do IGMPv2.
4

O pacote IGMPv2 possui 64 bits, com os campos de tipo, tempo mximo de
espera para uma resposta, checksum e endereo do grupo multicast. Como pode ser
visto na prxima Figura 15.


Figura 3: Formato da mensagem IGMPv2, possui 8 bytes com os
campos de tipo, tempo mximo de espera para uma resposta,
verificao de erro e endereo do grupo multicast.

Os campos do pacote IGMPv2 possuem as seguintes informaes:
Tipo: especifica o tipo de mensagem, podendo assumir como valores:
0x11: especifica uma mensagem de pergunta por participao.
enviada pelo roteador multicast. Existem dois subtipos
Pergunta por Participao Comum: utilizada para
reconhecer quais grupos possuem membros em uma
determinada interface.
Pergunta por Participao a um Grupo Especfico:
utilizada para determinar se um grupo especfico possui
membros em uma dada interface.
0x16: Especifica uma mensagem de relatrio de
participao. enviada por um dispositivo com a finalidade
de sinalizar sua participao em um grupo especfico.
0x17: Especifica uma mensagem de sair do grupo.
enviada por um dispositivo multicast.
Tempo Mximo de Resposta: este campo utilizado em
mensagens de pergunta por participao. Especifica o
tempo mximo que um dispositivo espera at o envio do
relatrio correspondente. A variao deste valor permite ao
roteador multicast acertar a latncia de sada. Usa como
base o tempo entre o ltimo dispositivo deixando um grupo
5
e o tempo que o protocolo de roteamento notificado que
no existem mais membros.
Checksum: Contem o checksum com 16 bits. utilizado em
todos os tipos de mensagens.
Endereo de Grupo: Especifica um endereo vlido de um
grupo multicast. utilizado em mensagens do relatrio.



IGMP V3
Esta verso atualmente est em desenvolvimento, ser o prximo passo na
evoluo do IGMP. A partir desta verso os receptores de trfego multicast indicaro ao
roteador de qual grupo desejam receber trfego assim como de qual fonte desejam
receber este trfego multicast.
J possui implementaes nas verses mais atualizadas dos sistemas
operacionais do Windows, Macintosh e Unix. As especificaes atuais podem ser
encontradas sob forma de um esboo draft-ietf-idmr-igmp-v3-X no IETF.

OPERAES NOS ROTEADORES MULTICAST
Quando um dispositivo tenta participar de um grupo multicast, os roteadores
multicast recebem mensagens do tipo relatrio de participao e criam entradas na sua
base de dados para grupos locais. Esta base de dados armazena a participao em
grupos de suas redes diretamente conectadas. Cada entrada tem o formato [grupo, rede
diretamente conectada], indicando que aquela rede tem ao menos um participante do
grupo.
A informao contida na sua base de dados para grupos locais utilizada para
encaminhar os pacotes multicast. Quando o roteador recebe um pacote multicast, este
encaminhado as interfaces que contenham dispositivos pertencentes quele grupo.

Você também pode gostar