1: Alguém pode me dizer como uma máquina "se registra" com o roteador para dizer que quer fazer parte de um grupo de multicast?
Isso é feito com o protocolo de gerenciamento de grupos da Internet ( IGMPv1 , IGMPv2 e IGMPv3 ) para IPv4 e Descoberta de Ouvinte de Multicast ( MLDv1 e MLDv2 ) . Em geral, o roteador de multidifusão consulta os nós na rede local e os nós locais relatam em quais grupos de multidifusão eles estão interessados.
2: Como um host pode encontrar um grupo de multicast apropriado para eles? (por exemplo, o Grupo 1 de multidifusão é VOIP, o # 2 é o arquivo xfer. Como o servidor descobre qual IP é necessário)
Isso depende. Alguns protocolos possuem grupos multicast bem conhecidos. Consulte o Registro de espaço de endereço de multicast IPv4 e IPv6 Multicast Address Space Registry na IANA. Outros grupos multicast são comunicados usando algum outro protocolo, URLs, arquivos de configuração, etc.
3: Como uma máquina sai de um grupo?
Ao usar as versões mais antigas do IGMP e do MLD, o roteador saberá que um cliente não está mais interessado em um grupo de multicast quando o cliente parar de enviar o relatório que está interessado. Haverá um tempo limite e, quando nenhum cliente da rede estiver interessado em um determinado grupo multicast, o roteador deixará de encaminhar os pacotes multicast para esse grupo. As versões mais recentes do IGMP e do MLD também oferecem ao cliente a opção de informar explicitamente ao roteador que ele deseja sair do grupo. O roteador consulta o restante da rede local e, se não houver mais ouvintes, ele será interrompido.
Bônus
Em pacotes ethernet multicast são enviados para determinados endereços MAC multicast. A entrega de pacotes para esses endereços depende de quais endereços MAC o adaptador ethernet está escutando. Então, para receber tráfego multicast, o cliente calcula qual endereço MAC ouvir, configura o adaptador ethernet e depois deixa o roteador saber qual tráfego multicast ele deseja.
A parte mais difícil no multicast é como encaminhar o tráfego multicast entre os roteadores. O risco aqui é que os roteadores iniciem o encaminhamento do mesmo tráfego multicast entre si, criando um loop. Existem vários protocolos que podem ser usados para isso. Os mais comuns são PIM-DM (Modo Denso) , PIM-SM (modo escasso) e PIM-SSM (Multicast específico da fonte) .