Qual é a diferença entre tráfego unicast, anycast, broadcast e multicast?

111

Eu nunca tive o privilégio de trabalhar em um ambiente que exigia roteamento complicado ou, caso exigisse, foi tratado antes de mim. Sempre usei configurações de roteamento estático muito simples e nunca precisei fazer nenhum roteamento de caminhos múltiplos - daí a minha confusão geral sobre esse assunto. Eu gostaria de entender melhor o multicasting e o anycasting.

  • Qual é a diferença entre tráfego unicast, anycast, broadcast e multicast?
  • Em que situações elas geralmente são usadas e por que (por exemplo, quais aplicativos usam qual método)?
  • Como você calcula quanto tráfego de transmissão é demais para um determinado segmento de rede ou domínio de transmissão?
  • Quais são as implicações de segurança de permitir tráfego de difusão e multicast?

fonte
1
Isso pode ajudá-lo com multicast. ixiacom.com/library/white_papers/display?skey=multicast
SpaceManSpiff

Respostas:

171

Simplificando:

------------------------------------------------------------
| TYPE      | ASSOCIATIONS     | SCOPE           | EXAMPLE |
------------------------------------------------------------
| Unicast   | 1 to 1           | Whole network   | HTTP    | 
------------------------------------------------------------
| Broadcast | 1 to Many        | Subnet          | ARP     |
------------------------------------------------------------
| Multicast | One/Many to Many | Defined horizon | SLP     |
------------------------------------------------------------
| Anycast   | Many to Few      | Whole network   | 6to4    |
------------------------------------------------------------

O unicast é usado quando dois nós da rede precisam conversar entre si. Isso é bem direto, então não vou gastar muito tempo nisso. O TCP, por definição, é um protocolo Unicast, exceto quando houver Anycast envolvido (mais sobre isso abaixo).

Quando você precisa que mais de dois nós vejam o tráfego, você tem opções.

Se todos os nós estiverem na mesma sub-rede, a transmissão se tornará uma solução viável. Todos os nós na sub-rede verão todo o tráfego. Não há estado de conexão semelhante ao TCP mantido. A transmissão é um recurso da camada 2 no protocolo Ethernet e também um recurso da camada 3 no IPv4.

O multicast é como uma transmissão que pode atravessar sub-redes, mas, ao contrário da transmissão, não toca em todos os nós. Os nós precisam se inscrever em um grupo multicast para receber informações. Os protocolos de difusão seletiva geralmente são protocolos UDP, pois, por definição, nenhum estado de conexão pode ser mantido. Os nós que transmitem dados para um grupo multicast não sabem quais nós estão recebendo. Por padrão, os roteadores da Internet não passam o tráfego Multicast. Para uso interno, porém, é perfeitamente permitido; portanto, "Horizonte definido" no gráfico acima. O multicast é um recurso da camada 3 do IPv4 e IPv6.

Para usar o anycast, você anuncia a mesma rede em vários pontos da Internet e depende de cálculos de caminho mais curto para canalizar clientes para seus vários locais. No que diz respeito aos próprios nós da rede, eles estão usando uma conexão unicast para conversar com os nós anycasted. Para saber mais sobre o Anycast, tente: O que é "anycast" e como é útil? . O Anycast também é um recurso da camada 3, mas é uma função de como a coalescência de rota acontece.


Exemplos

Alguns exemplos de como os métodos não Unicast são usados ​​na Internet real.

O Broadcast
ARP é um protocolo de broadcast e é usado pelas pilhas TCP / IP para determinar como enviar tráfego para outros nós na rede. Se o destino estiver na mesma sub-rede, o ARP será usado para descobrir o endereço MAC que vai para o endereço IP indicado. Esta é uma transmissão de nível 2 (Ethernet), para o endereço MAC reservado de FF: FF: FF: FF: FF: FF: FF.

Além disso, o protocolo de navegação de máquinas da Microsoft é famoso por difusão. Soluções alternativas como o WINS foram criadas para permitir a navegação entre sub-redes. Isso envolve uma transmissão de nível 3 (IP), que é um pacote IP com o endereço de destino listado como o endereço de transmissão da sub-rede (em 192.168.101.0/24, o endereço de transmissão seria 192.168.101.255).

O protocolo NTP permite um método de transmissão para anunciar fontes de tempo.

Multicast
Dentro de uma rede corporativa, o Multicast pode fornecer vídeo ao vivo para vários nós sem ter que ter uma largura de banda massiva por parte do servidor que está fornecendo o feed de vídeo. Dessa forma, você pode ter um servidor de vídeo alimentando um fluxo de 720p em apenas uma conexão de 100 Mb e ainda assim servir esse feed para 3000 clientes.

Quando a Novell se afastou do IPX e do IP, eles tiveram que escolher um protocolo de publicidade de serviço para substituir o protocolo SAP no IPX. No IPX, o Service Advertising Protocol, fez um anúncio em toda a rede toda vez que anunciava que um serviço estava disponível. Como o TCP / IP não possuía um protocolo de anúncio global, a Novell optou por usar um protocolo baseado em multicast: o Service Location Protocol. Novos servidores anunciam seus serviços no grupo de difusão seletiva SLP. Os clientes que procuram tipos específicos de serviços anunciam sua necessidade ao grupo multicast e ouvem respostas únicas.

As impressoras HP anunciam sua presença em um grupo multicast por padrão. Com as ferramentas certas, fica muito fácil aprender quais impressoras estão disponíveis na sua rede.

O protocolo NTP também permite um método multicast (IP 224.0.1.1) para anunciar fontes de tempo em áreas além de apenas uma sub-rede.

Anycast
Anycast é um pouco especial, já que as camadas Unicast estão sobre ela. O Anycast está anunciando a mesma rede em diferentes partes da rede, a fim de diminuir os saltos de rede necessários para chegar a essa rede.

O protocolo de transição IPto 6to4 usa Anycast. Os gateways 6to4 anunciam sua presença em um IP específico, 192.88.99.1. Os clientes que desejam usar um gateway 6to4 enviam tráfego para 192.88.99.1 e confiam na rede para entregar a solicitação de conexão a um roteador 6to4.

Os serviços NTP para hosts NTP especialmente populares podem muito bem ser transmitidos, mas não tenho provas disso. Não há nada no protocolo para evitá-lo.

Outros serviços usam o Anycast para melhorar a localidade dos dados para os usuários finais. O Google faz o Anycast com suas páginas de pesquisa em alguns lugares (e IP geográfico em outros). Os servidores DNS raiz usam o Anycast por razões semelhantes. O ServerFault em si pode ir até lá, eles têm datacenters em Nova York e Oregon, mas ainda não foram lá.


Preocupações com a rede

O tráfego de transmissão excessivo pode roubar todos os nós nessa sub-rede de largura de banda. Hoje em dia, isso é menos preocupante com as portas GigE full-duplex, mas nos dias de 10 Mb semidúplex, uma tempestade de transmissão poderia interromper a rede rapidamente. Essas redes half-duplex com um grande domínio de colisão em todos os nós eram especialmente vulneráveis ​​a tempestades de transmissão, e é por isso que os livros de rede, especialmente os mais antigos, dizem para ficar de olho no tráfego de transmissão. As redes comutadas / full-duplex são muito mais difíceis de interromper com uma tempestade de transmissão, mas ainda pode acontecer. A transmissão é necessária para o correto funcionamento das redes IP.

O multicast tem a mesma possibilidade de abuso. Se um nó no grupo multicast começar a enviar grandes quantidades de tráfego para esse grupo, todos os nós inscritos verão todo esse tráfego. Como na transmissão, o tráfego Mcast excessivo pode aumentar as possibilidades de colisões nessas conexões, quando isso for um problema.

O multicast é um recurso opcional do IPv4, mas necessário para o IPv6. A transmissão IPv4 é substituída pelo multicast no IPv6 (consulte também: Por que o IPv6 não pode enviar difusões? ). É frequentemente desativado em redes IPv4. Não por coincidência, a ativação do multicast é um dos muitos motivos pelos quais os engenheiros de rede estão desconfiados de mudar para o IPv6 antes que precisem fazer isso.

Calcular quanto tráfego é muito tráfego depende de algumas coisas

  • Half vs Full Duplex: as redes Half-duplex têm tolerâncias muito mais baixas para o tráfego bcast / mcast.
  • Velocidade das portas de rede: quanto mais rápida sua rede, menor será o problema. Nos dias 10Mb de Ethernet, de 5 a 10% do tráfego em uma porta poderia ser tráfego de transmissão, se não mais, mas no GigE menos de 1% (provavelmente muito menos) é mais provável.
  • Número de nós na rede: Quanto mais nós você tiver, mais inevitável será o tráfego de transmissão (ARP). Se você tiver transmitido protocolos específicos em uso, a navegação no Windows ou outras coisas, como pulsações de cluster, onde os problemas começarão a mudar.
  • Tecnologia de rede: a Ethernet com fio é rápida o suficiente para que, desde que você tenha equipamentos modernos, o bcast / mcast provavelmente não causará problemas. A rede sem fio, por outro lado, pode sofrer com tráfego de transmissão excessivo, pois é um meio compartilhado entre todos os nós e, portanto, em um único domínio de colisão.

No final, o tráfego Bcast e Mcast roubam portas de largura de banda do topo. Quando você começa a se preocupar, depende muito da sua rede individual e da tolerância ao desempenho variável. Em geral, as contagens de nós da rede não aumentaram tão rapidamente quanto as velocidades da rede; portanto, o número total de porcentagens de tráfego da transmissão diminuiu com o tempo.

Algumas redes desaprovam o Multicast por motivos específicos e outras nunca tiveram tempo para configurá-lo. Existem alguns protocolos multicast que podem revelar informações interessantes (SLP é uma delas) para qualquer pessoa que esteja ouvindo as coisas certas. Pessoalmente , não me importo com o tráfego multicast menor, pois o maior incômodo que já vi com ele são as capturas de rede poluídas quando estou fazendo uma análise de rede; e para isso existem filtros.

sysadmin1138
fonte
4
+1. As transmissões podem e ocorrem nas camadas 2 e 3. Uma solicitação ARP é uma transmissão da camada 2 enquanto uma consulta de nome NetBIOS é uma transmissão da camada 3.
joeqwerty
1
Uma resposta absolutamente fantástica. Eu teria +10 se pudesse. Gosto especialmente da sua discussão sobre o SLP, pois tive problemas relacionados ao mcast.
11

Aqui estão algumas informações básicas:

Unicast: tráfego Unicast é o tráfego destinado a um único host. Todos os outros hosts ignoram o tráfego unicast não destinado a eles próprios. Em um ambiente comutado, o tráfego unicast geralmente não é "ouvido" por nenhum host que não seja o host ao qual o tráfego se destina. Em um ambiente que usa hubs (shudder), todos os hosts "ouvem" o tráfego unicast destinado a todos os outros hosts, mas ignoram todo o tráfego não destinado a si mesmos.

Transmissão: Tráfego de transmissão é o tráfego enviado com a intenção de ser "ouvido" por todos os hosts em um segmento de rede específico. Exemplos de tráfego de transmissão seriam uma solicitação ARP, que é uma transmissão na camada física (endereço MAC FF-FF-FF-FF-FF-FF) ou uma consulta de nome NetBIOS, que é uma transmissão na camada de rede (aconteça o que acontecer para ser o endereço de transmissão para essa rede específica, como 64.28.42.63 para a rede 64.28.42.0/26).

Multicast: o tráfego multicast é o tráfego enviado com a intenção de ser "ouvido" por um grupo específico de hosts em um segmento de rede. Algum tráfego multicast pode ser considerado tráfego de difusão, como o tráfego para o endereço multicast 224.0.0.1, que é o tráfego multicast destinado a todos os hosts no mesmo segmento de rede. Outro exemplo de tráfego multicast seria o tráfego enviado para o endereço multicast 224.0.0.9, que é o que os roteadores RIP usam para enviar informações de roteamento para outros roteadores RIP no mesmo segmento de rede.

Vou deixar o Anycast para outra pessoa, porque realmente não sei muito sobre isso.

joeqwerty
fonte
Fiquei realmente feliz por ter sido atendida também. Também não sabia o que era anycast.
KCotreau
6

O Anycast não é um tipo de comunicação amplamente aceito no IPv4, mas está presente no IPv6.

Três tipos de comunicação no IPv4 são 1) Unicast, 2) Multicast 3) Broadcast.

1) Tipo de comunicação individual IPv4 Unicast . Um dispositivo de rede se comunica com outro dispositivo de rede. O endereço da camada 3 usado para Unicast é o endereço IPv4 de classe A, classe B e classe C. O endereço da camada 2 é um endereço MAC unicast.

Exemplo: navegue em um site, faça o download de arquivos usando FTP, conecte-se a outro dispositivo usando SSH (Secure Shell) etc.

2) Multicast IPv4 Tipo de comunicação um para muitos. Um dispositivo de rede envia um pacote de dados IPv4 e é entregue aos dispositivos interessados ​​nesse tráfego. O endereço da camada 3 usado para o multicast IPv4 é o endereço IPv4 da classe D (inicia de 224 a 239) O endereço da camada 2 para o multicast IPv4 começa com "01: 00: 5e".

Exemplo: IPTV, mensagens de OSPF Hello, mensagens EIGRP Hello, atualizações de rota RIPv2.

3) Tipo de comunicação One-to-All Broadcast IPv4 . Um dispositivo de rede envia um pacote de dados IPv4 e todos os dispositivos serão entregues nesse segmento de LAN. O problema com o tráfego de transmissão é que as transmissões perturbam todos os dispositivos na LAN e causam desperdício de largura de banda.

Exemplo: Mensagens de Descoberta DHCPv4

No IPv6, temos Unicast, Multicast e Anycast. O conceito de Unicast e Multicast é o mesmo no IPv4 e IPv6, exceto as alterações nos endereços da camada 3 do IPv6 usados ​​para difusão e multicast e o endereço da camada 2 usado para a difusão seletiva. O endereço da camada 2 usado para o tráfego multicast IPv6 começa em "33:33:" (no Ipv4, é "01: 00: 5e").

Anycast IPv6 Anycast O tipo de comunicação IPv6 Anycast é usado para identificar uma interface de um grupo de interfaces, que fornece o mesmo serviço, mas próximo ao cliente na distância de roteamento (podemos comparar a distância de roteamento semelhante à distância geográfica). Anycast é possível apenas com a ajuda de protocolos de roteamento.

Verifique o link abaixo para obter uma explicação mais clara sobre o IPv6 Anycast.

http://www.omnisecu.com/tcpip/ipv6/unicast-multicast-anycast-types-of-network-communication-in-ipv6.php

Exemplo, minha casa está localizada na Índia e desejo resolver o FQDN " www.serverfault.com " para um endereço IP. Considere que eu tenho três servidores DNS, um localizado nos EUA, outro no Canadá e outro na Índia, todos oferecendo o mesmo serviço. Melhor escolha é o servidor DNS da Índia, porque está localizado perto da minha casa. Receberei uma resposta mais rápida e causarei menos tráfego de rede se eu usar o serviço perto de minha casa. O Anycast pode encontrar o servidor mais próximo da minha casa e obter o serviço desse servidor.

Tweakit
fonte
0

Apenas um esclarecimento sobre anycast.

Anycast definitivamente não deve ser agrupado com os outros * elencos. No entanto, ele não se sobrepõe ao unicast porque é unicast. O termo é simplesmente usado para identificar que o mesmo IP pode existir em vários locais. A esse respeito, é um uso indevido cativante de "elenco". Mais ou menos como "WiFi" é um termo cativante baseado no termo "Hi-Fi", embora os dois não tenham nada a ver um com o outro.

Quando um roteador ouve o mesmo prefixo unicast de várias fontes, ele não sabe (nem se importa) se representa destinos diferentes (anycast) ou se é o mesmo destino acessível por caminhos diferentes.

ChePazzo
fonte