Aluno: Giancarlo Panizzutti Lima
Índice:
Definição
Formação de Grupos
O Mbone
Protocolos Confiáveis
Aplicações para Multicast
1.Definição:
O multicast é um recurso para transmitir pacotes a
mais de um endereço ao mesmo tempo, que se diferencia
do broadcast comum por transmitir somente para hosts
determinados ao invés de para todos os hosts do
segmento, recebendo também o nome de 'broadcast
seletivo'. Outra vantagem do multicast é que ele pode ser
usado em toda uma WAN, empregando o mínimo de banda.
O IP multicast usa um tipo diferente de endereço, o IP
Classe D:
Este endereço, que é concedido a um grupo, não a um único host,
pode ser permanente ou temporário. Um endereço multicast pode ser
usado apenas como endereço de destino, nunca podendo aparecer como
endereço de origem.
Como aplicações mais comuns, encontram-se transmissões um-para-vários,
como eventos de multimídia e tranferência de arquivos, ou
vários-para-vários, como conferências e jogos em rede.
Um endereço multicast fica reservado para o evento por um período
de tempo pré-determinado no momento da criação, sendo liberado quando o
período de transmissão do evento se encerra. Um endereço pode ser
concedido para cada mídia utilizada na transmissão do evento
(áudio, vídeo, etc.) ou um endereço utiliza várias portas, uma
para cada tipo de mídia.
Existem três categorias de serviços do multicast, cada uma com suas
próprias exigências e limites.
aplicação |
requerida |
||
mensagens |
|||
não necessário |
Colaborativa: Aplicações como conferências e jogos em rede.
Fluxo de mensagens: Noticiários e relatórios de bolsa de valores.
Dados: FTPs e sites de distribuição de software.
Entre os sistemas operacionais que possuem atualizações para o uso do multicast,
encontram-se o Solaris 2.x e o SunOS 4.x, da SUN, e o Linux.
2.Formação de um grupo multicast:
Assim que um endereço é reservado para um evento, é necessário o anúncio
deste evento para os hosts interessados no recebimento do mesmo.
Para isto, são utilizadas as ferramentas de anúncio de sessão,
responsáveis por criar e anunciar uma sessão de multicast.
Esta mesma ferramenta é utilizada pelos receptores, recebendo anúncios
de todos os eventos que estão sendo transmitidos
no momento, identificado-os por seus nomes, e fornecendo informações
sobre eles, apresentando uma descrição do evento, o período da
transmissão, os meios de mídia utilizados pelo evento e os endereços
e portas reservados para cada um destes.
Os hosts juntam-se a um grupo através do protocolo IGMP (Internet
Group Management Protocol), participando do IP multicast como
um dos três níveis de status:
Host não pode enviar nem receber IP Multicast | |
Host pode enviar, mas não receber IP Multicast | |
Host pode enviar e receber IP Multicast |
Os datagramas multicast são distribuídos através dos Gateways Multicast,
cuja função é mapear os datagramas multicast para os endereços físicos dos hosts
interessados e manter o controle de qual host pertence a qual grupo.
Um evento é anunciado para todos os hosts do segmento (o endereço 224.0.0.1) pelo
router multicast, e os interessados devem responder de acordo.
Versão do protocolo | |
Query enviada pelo gateway = 1; Response enviada pelo host = 2 |
|
Em Query = 0; em Response, o endereço do grupo multicast. |
Uma vez que um host encontra-se pertencendo a um grupo, ele precisa manter-se no mesmo.
O gateway passa a perguntar para cada host o status de membro periodicamente. Se
a resposta for não, a entrada da tabela de membros do gateway onde aquele host
aparece é deletada.
Existem outros protocolos usados para a criação de grupos, como o
SAP (Session Announcement Protocol) e o SDP (Session Description Protocol),
utilizados em conjunto; o primeiro envia um fluxo de mensagens em um
endereço multicast conhecido para anunciar o conteúdo de uma sessão para
os interessados; o segundo faz a descrição completa dos conteúdos
anunciados.
A exclusão de um host de um grupo multicast pode ser automática, ao
fim do download de um programa, por exemplo, ou não, com o usuário
determinando sua estadia no grupo, sempre avisando o router de sua
permanência no grupo.
3.O MBone:
O MBone, ou Multicast Backbone, é uma rede virtual que compartilha
o mesmo meio físico da Internet, usando um sistema paralelo de roteadores
que suportam multicast. Estes roteadores são geralmente estações de trabalho
com o kernel modificado e várias conexões de rede.
Enlaces virtuais ponto-a-ponto entre os roteadores multicast são
feitos utilizando-se o que é chamado de túnel multicast.
Essa 'canalização' trata-se de um encapsulamento de uma mensagem
multicast em uma mensagem unicast, fazendo com que um pacote
multicast seja tratado como um pacote normal
por um roteador que não suporta multicast.
O MBone possui uma topologia conjunta em malha e em árvore. Ao centro, entre
os maiores provedores de serviços da Internet, as conexões formam
uma topologia em malha entre ligações principais e enlaces reserva.
Nas extremidades, a topologia é geralmente em árvore.
Os roteadores multicast precisam descobrir sua própria topologia
por diferir da topologia normal da Internet. Para isto, são utilizadas
versões dos protocolos normais de roteamento, como o DVSMP
(Distance Vector Multicasting Routing) e o MOSPF
(Multicast Open Shortest Path First).
Um protocolo de entrega de pacotes faz-se necessário para repassar os
datagramas multicast para os membros do grupo, do mesmo modo como em
unicast é usado o TCP. Em multicast, o utilizado é o RTP (Real-Time Transport
Protocol), cujo tempo de entrega é quase real (que não é percebido pelo
receptor, apesar deste protocolo se utilizar de um buffer para sincronizar e colocar na
sequência certa os pacotes de voz), mas a entrega não é totalmente confiável.
4.Protocolos Confiáveis:
Quando se lida com confiabilidade, lida-se também com o fluxo
upstream no recebimento de acknowledgment/negative acknowledgments
(ACK/NAK). Como no multicast o número de receptores se multiplica,
isso passa a ser um problema. Existem várias maneiras de se abordar o
problema dos ACK/NAKs excessivos, como será visto nos protocolos a seguir.
RMTP - Reliable Multicast Tranport Protocol
Neste protocolo, a confirmação de recebimento dos dados não é repassada
diretamente ao host que transmitiu os dados. Existem roteadores ligados
aos roteadores multicast chamados de designated receivers (DRs), cuja
função é agrupar todas as mensagens de confirmação e enviar apenas uma
mensagem para o nível superior via unicast. Os DRs também bufferizam
todas as transmissões e estão capacitados a retransmitir os dados
necessários, se disponíveis. Se não, ele envia o pedido a outro DR
situado em um nível superior.
SRM - Scalable Reliable Multicast
Neste protocolo, mensagens de status dos membros do grupo são mandadas
periodicamente para todos os outros membros. Isso é feito porque qualquer
receptor está apto a fazer uma retransmissão de dados perdidos para um
membro do mesmo grupo, porque qualquer dado transmitido é bufferizado.
Geralmente o reparo é feito 'localmente', ou seja, pelo vizinho mais
próximo.
PGM - Pretty Good Multicast
PGM utliza o conceito de 'janela deslizante'; se um NAK chega após a
janela ter se 'movido', o dado simplesmente não se encontra mais
disponível.
MFTP - Multicast File Transfer Protocol
Este protocolo divide os dados a serem transportados em blocos, estes
formados por vários pacotes. Os NAKs são enviados apenas para os pacotes
não recebidos. Como este protocolo dispensa o real-time, o receptor espera
até o transmissor começar a enviar os blocos novamente, do princípio; os
pacotes já recebidos são simplesmente descartados. E o transmissor
irá repetir a transmissão quantas vezes forem necessárias, ou seja,
até não chegar mais nenhum NAK.
Outros métodos:
Existem outros métodos para reduzir o tráfego de dados retransmitidos:
O método chamado erasure correction reduz a quantidade de reparos
que precisam ser reenviados se os pacotes perdidos forem diferentes
para cada host. Por exemplo, se 16 hosts perderam 16 pacotes diferentes,
será mais proveitoso o reenvio de apenas um grupo de pacotes com as
partes perdidas por cada host em vez de reenviar todos os dados
originais para todos os hosts.
A técnica bulk feedback simula o TCP, reduzindo a taxa de
transmissão em caso do transmissor receber um número excessivo
de NAKs.
Outra proposta seria pedir ajuda aos roteadores, que, por conhecerem
a topologia da rede multicast, podem redirecionar o pedido ao
retransmissor capaz de fazer o reparo, fazendo assim que a retransmissão
dos dados aconteça apenas na mesma subnet do host que perdeu a
transmissão original.
5.Aplicações para Multicast:
Entre os programas mais populares para uso multicast de áudio e vídeo
estão o Visual Audio Tool (vat), o Network Video (nv), o Network Voice
Terminal (nevot), e o INRIA Videoconferencing System (ivs), todos
eles Freeware.
Os produtos para videoconferência mais conhecidos são o WhiteBoarding (wb),
que consiste de uma tela na qual podem ser incorporados desenhos, textos,
etc., sendo atualizados instantaneamente para os outros membros do grupo.
Também são conhecidos os semelhantes Picture Window, da Silicon
Graphics, e o ShowMe da Sun Microsystems.