universidade tecnológica federal do paraná

Propaganda
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
DEPARTAMENTO ACADÊMICO DE ELETRÔNICA
CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS DE TELECOMUNICAÇÕES
BRUNO WALLACE DE FREITAS FRANCA
EDILSON JORGE DOS SANTOS JUNIOR
RODRIGO FERREIRA BRITTO
ANÁLISE DE TRÁFEGO E SIMULAÇÃO DE REDES MULTICAST
TRABALHO DE CONCLUSÃO DE CURSO
CURITIBA
2013
BRUNO WALLACE DE FREITAS FRANCA
EDILSON JORGE DOS SANTOS JUNIOR
RODRIGO FERREIRA BRITTO
ANÁLISE DE TRÁFEGO E SIMULAÇÃO DE REDES MULTICAST
Trabalho de Conclusão de Curso de graduação,
apresentado à disciplina de Trabalho de
Diplomação, do Curso Superior de Tecnologia
em Sistemas de Telecomunicações do
Departamento Acadêmico de Eletrônica –
DAELN – da Universidade Tecnológica Federal
do Paraná – UTFPR, como requisito parcial para
obtenção do título de Tecnólogo.
Orientador: Prof. Dr. Kleber Kendy Horikawa
Nabas
CURITIBA
2013
BRUNO WALLACE DE FREITAS FRANCA
EDILSON JORGE DOS SANTOS JUNIOR
RODRIGO FERREIRA BRITTO
ANÁLISE DE TRÁFEGO E SIMULAÇÃO DE REDES MULTICAST
Este trabalho de conclusão de curso foi apresentado no dia 28 de Novembro de 2012, como
requisito parcial para obtenção do título de Tecnólogo em Sistemas de Telecomunicações,
outorgado pela Universidade Tecnológica Federal do Paraná. O(s) aluno(s) foi(ram)
arguídos(s) pela Banca Examinadora composta pelos professores abaixo assinados. Após
deliberação, a Banca Examinadora considerou o trabalho aprovado
______________________________
Prof. Luís Carlos Vieira
Coordenador de Curso
Departamento Acadêmico de Eletrônica
______________________________
Prof. Sérgio Moribe
Responsável pela Atividade de Trabalho de Conclusão de Curso
Departamento Acadêmico de Eletrônica
BANCA EXAMINADORA
______________________________
Prof. Me. Lincoln Herbert Teixeira
______________________________
Prof. Dr. Kleber Kendy Horikawa Nabas
Orientador
______________________________
Prof. Mauricio L. S. Ramos
A Folha de Aprovação assinada encontra-se na Coordenação do Curso
RESUMO
FRANCA, Bruno Wallace de Freitas; JUNIOR, Edilson Jorge dos Santos; BRITTO, Rodrigo
Ferreira. Análise de Tráfego e Simulação de Redes Multicast. 2012. 89 f. Trabalho de
Conclusão de Curso – Curso Superior de Tecnologia em Sistemas de Telecomunicações,
Universidade Tecnológica Federal do Paraná. Curitiba, 2013.
Este trabalho tem por objetivo descrever os principais conceitos sobre transmissão via IP
Multicast. Além de um estudo detalhado sobre a história, vantagens e principais
características da utilização do Multicast, foram propostos e desenvolvidos experimentos, a
fim de avaliar na prática a otimização da utilização de banda numa rede local e WAN (Wide
Area Network) usando roteamento Multicast. Há uma exposição de conceitos teóricos
fundamentais para a implantação e a correta configuração de todos os segmentos da rede. Os
experimentos foram montados com equipamentos de rede reais, onde foi possível a
verificação na prática de todos os conceitos estudados na teoria.
Palavras-chaves: Multicast. IGMP. PIM.
ABSTRACT
FRANCA, Bruno Wallace de Freitas; JUNIOR, Edilson Jorge dos Santos; BRITTO, Rodrigo
Ferreira. Traffic Analysis and Simulation of Multicast Networks. 2012. 89 f. Trabalho de
Conclusão de Curso – Curso Superior de Tecnologia em Sistemas de Telecomunicações,
Universidade Tecnológica Federal do Paraná. Curitiba, 2013.
This paper aims to describe the main concepts of multicast transmission. In addition to a
detailed study on the history, main features and advantages of the use of multicast, were
proposed and developed test scenarios in order to assess in practice the optimization of
bandwidth usage on a LAN(Local Area Network) and WAN(Wide Area Network) using
multicast routing. There is an exposition of theoretical concepts fundamental to the correct
deployment and configuration of all network’s segments. The scenarios were set up using real
network equipments, where it was possible to verify in practice all the concepts studied in
theory.
Keywords: Multicast. IGMP. PIM.
LISTA DE FIGURAS
Figura 1 - Transmissão Unicast ................................................................................................ 16
Figura 2 - Transmissão Broadcast ............................................................................................ 17
Figura 3 - Unicast x Multicast .................................................................................................. 18
Figura 4 - Transmissão Multicast ............................................................................................. 19
Figura 5 - Intervalo de Endereços............................................................................................. 22
Figura 6 - Endereço IP Multicast .............................................................................................. 23
Figura 7 - Mapeamento endereço nível 2 e 3 ........................................................................... 24
Figura 8 - Roteador enviando Membership Query. .................................................................. 27
Figura 9 - Hosts enviando Membership Report ....................................................................... 27
Figura 10 - IGMP encapsulado no IP ....................................................................................... 28
Figura 11 - Diagrama IGMP ..................................................................................................... 29
Figura 12 - Diagrama IGMPv2................................................................................................. 31
Figura 13 - IGMPv3 filtrando origem de pacote ...................................................................... 32
Figura 14 - Rede com MVR ..................................................................................................... 35
Figura 15 – SourceTree ............................................................................................................ 40
Figura 16 - Shared Tree ............................................................................................................ 41
Figura 17 - Comparação RPT e STP ........................................................................................ 42
Figura 18- Datagrama DVMRP ................................................................................................ 45
Figura 19 - Encaminhamento com DVMRP ............................................................................ 46
Figura 20 - Encaminhamento Unicast ...................................................................................... 47
Figura 21 - Encaminhamento via MOSPF ............................................................................... 50
Figura 22 - Encaminhamento com PIM-DM em poda no router R4 ........................................ 52
Figura 23 - Encaminhamento com PIM-DM ............................................................................ 52
Figura 24 - Entrada de um novo host com PIM-SM ................................................................ 53
Figura 25 - Entrada de uma Fonte e encaminhamento PIM-SM .............................................. 54
Figura 26 - Encaminhamento PIM-SM pelo método da árvore mais curta .............................. 55
Figura 27 - VM do Zabbix........................................................................................................ 57
Figura 28 - Zabbix tela do console ........................................................................................... 58
Figura 29 - Zabbix interface Web............................................................................................. 58
Figura 30 - Configurações Zabbix ............................................................................................ 59
Figura 31 - Zabbix gerando gráficos a partir de pacotes SNMP .............................................. 60
Figura 32 - Roteador Cisco ....................................................................................................... 60
Figura 33 - Switch 3COM ........................................................................................................ 61
Figura 34 - Experimento ........................................................................................................... 61
Figura 35 - Pacotes capturados antes dos testes ....................................................................... 65
Figura 36 - Endereços Físicos .................................................................................................. 66
Figura 37 - Mapeamento de endereço para Multicast .............................................................. 67
Figura 38 - Grupos IGMP no Roteador .................................................................................... 67
Figura 39 - Ocupação da banda em Unicast ............................................................................. 68
Figura 40 - Ocupação da banda em Broadcast. ........................................................................ 68
Figura 41 - Ocupação da banda em multicast. ......................................................................... 69
Figura 42 - Pacotes IGMP capturados no WireShrk durante o teste Multicast ........................ 70
Figura 43 - Grupos criados no roteador(Destacado em vermelho o grupo criado) .................. 70
Figura 44 - Captura após IGMP Snooping habilitado .............................................................. 71
Figura 45 - IGMP Snooping no Switch .................................................................................... 71
Figura 46 - Gráfico comparativo dos 3 tipos de transmissão ................................................... 72
Figura 47 - Foto do experimento em funcionamento ............................................................... 73
Figura 48 - Roteador Cisco ....................................................................................................... 74
Figura 49 - Switch 3COM ........................................................................................................ 74
Figura 50 - Experimento montado ............................................................................................ 75
Figura 51 - Ocupação da banda em Unicast banda de 2Mbps – Pico 2Mbps ......................... 82
Figura 52 - Ocupação da banda em Multicast banda 2 Mbps – Pico 1,5Mbps ....................... 83
Figura 53 - Ocupação da banda em Unicast banda de 8Mbps – Pico 4,5Mbps ...................... 84
LISTA DE TABELAS
Tabela 1 - Tabela Comparativa dos 3 tipos de Transmissão .................................................... 72
Tabela 2 - Tabela comparativa da ocupação dos links durante os experimentos ..................... 85
LISTA DE QUADROS
Quadro 1 - Principais endereços Multicast ............................................................................... 23
Quadro 2 - IPs Utilizados ......................................................................................................... 62
Quadro 3 - IPs Utilizados - Experimento 2 .............................................................................. 75
LISTA DE SIGLAS
ARP
AS
CPU
DARPA
DIFFSERV
DR
DVMRP
EIGRP
FTP
HTTP
IANA
ICMP
IETF
IGMP
IGRP
IP
IPTV
IPv6
LAN
MAC
Mbps
MOSPF
MPLS
MRTG
MVR
OSPF
PIM
PIM-DM
PIM-SM
QoS
RFC
RIP
RP
RPT
RSVP
SMTP
SNMP
SSM
TCP
TOS
TRPB
Address Resolution Protocol
Autonomous System
Central Processing Unit
Defense Advanced Research Projects Agency
Differentiated Services
Designatede Router
Distance Vector Multicast Routing Protocol
Enhanced Interior Gateway Routing Protocol
File Tranfer Protocol
HyperText Transfer Protocol
Internet Assigned Numbers Authority
Internet Control Message Protocol
Internet Engineering Task Force
Internet Group Management Protocol
Interior Gateway Routing Protocol
Internet Protocol
Internet Protocol Television
Internet Protocol versão 6
Local Area Network
Media Access Control
Mega Bits per Second
Multicast extensions to Open Shortest Path First
Multi protocol Label Switching
Multi Router Traffic Grapher
Multicast VLAN Registration
Open Shortest Path First
Protocol Independent Multicast
Protocol Independent Multicast - Dense Mode
Protocol Independent Multicast - Sparse Mode
Quality of Service
Request for Comments
Routing Information Protocol
Rendezvous Point
Rendezvous Point Tree
Resource reSerVation Protocol
Simple Mail Transfer Protocol
Simple Network Management Protocol
Source-Specific Multicast
Protocol-Independent Multicast
Type of Service
Truncated Reverse Path Broadcasting
TTL
UDP
UNIX
VLAN
VLC
WAN
Time to Live
User Datagram Protocol
Universal Interactive executive
Virtual LAN
VideoLAN (software)
Wide Area Network
SUMÁRIO
1
INTRODUÇÃO ............................................................................................................... 13
1.1 PROBLEMA..................................................................................................................................... 13
1.2 OBJETIVOS ..................................................................................................................................... 14
1.2.1 Objetivo Geral ............................................................................................................................. 14
1.2.2 Objetivos Específicos .................................................................................................................. 14
2
REFERENCIAL TEÓRICO .......................................................................................... 15
2.1 MULTICAST EM REDES DE COMPUTADORES ............................................................................... 15
2.1.1 Unicast ........................................................................................................................................ 15
2.1.2 Broadcast .................................................................................................................................... 16
2.1.3 Multicast ..................................................................................................................................... 17
2.2 VANTAGENS E DESVANTAGENS .................................................................................................... 19
2.2.1 Vantagens ................................................................................................................................... 20
2.2.2 Desvantagens .............................................................................................................................. 21
3
ENDEREÇAMENTO IP ................................................................................................ 22
3.1 ENDEREÇAMENTO MULTICAST NIVEL 3 ........................................................................................ 23
3.2 ENDEREÇAMENTO MULTICAST NIVEL 2 ....................................................................................... 24
4
MROUTER ..................................................................................................................... 25
5
IGMP (Internet Group Management Protocol) ........................................................... 26
5.1 ESTRUTURA DO QUADRO .............................................................................................................. 28
5.2 IGMPv1 .......................................................................................................................................... 29
5.3 IGMPv2 ......................................................................................................................................... 30
5.4 IGMPv3 ......................................................................................................................................... 31
5.5 IGMP SNOOPING .......................................................................................................................... 32
6.
MBONE ........................................................................................................................... 37
6.1 HISTÓRIA........................................................................................................................................ 37
6.2 IP MULTICASTING .......................................................................................................................... 38
6.3 LIMITAÇÕES E FUTURO DO MBONE. ............................................................................................. 38
7.
ÁRVORES DE DISTRIBUIÇÃO .................................................................................. 40
7.1 SOURCE TREE (Shortest Path Trees) .............................................................................................. 40
7.2 SHARED TREE (Rendezvous Point Trees)........................................................................................ 41
7.3 COMPARAÇÃO ENTRE OS TIPOS DE ÁRVORES .............................................................................. 42
8.
PROTOCOLOS DE ROTEAMENTO MULTICAST. ................................................ 43
8.1 DVMRP (Distance Vector Multicast Routing Protocol).................................................................. 43
8.2 MOSPF (Multicast Open Shortest Path First) ................................................................................ 47
8.3 PROTOCOL INDEPENDENT MULTICAST (PIM) ............................................................................... 51
8.3.1 PIM-DM (Protocol Independent Multicast – Dense Mode) ........................................................ 51
8.3.2 PIM-SM (Protocol Independent Multicast – Sparse Mode)........................................................ 53
9.
EXPERIMENTOS........................................................................................................... 56
9.1 ZABBIX ........................................................................................................................................... 56
9.2 EXPERIMENTO 1 – MULTICAST EM UMA REDE LAN ..................................................................... 60
9.2.1 Recursos Utilizados ..................................................................................................................... 60
9.2.2 Configuração Switch ................................................................................................................... 62
9.2.3 Configuração Roteador ............................................................................................................... 63
9.2.4 Avaliando Pacotes IGMP na Rede ............................................................................................... 65
9.2.5 Transmissão Unicast ................................................................................................................... 67
9.2.6 Transmissão Broadcast ............................................................................................................... 68
9.2.7 Transmissão Multicast ................................................................................................................ 69
9.2.8 Comparação Final dos 3 Tipos de Transmissão. ......................................................................... 72
9.3 EXPERIMENTO 2 – MULTICAST EM REDES DISTINTAS................................................................... 73
9.3.1 Recursos Utilizados ..................................................................................................................... 73
9.3.2 Configuração Switch. .................................................................................................................. 75
9.3.3 Configuração Roteador A. ........................................................................................................... 76
9.3.4 Configuração Roteador B ............................................................................................................ 79
9.3.5 Transmissão Ponto-a-Ponto – Banda 2Mbps.............................................................................. 81
9.3.6 Transmissão Multicast – Banda 2 Mbps ..................................................................................... 82
9.3.7 Transmissão Ponto-a-Ponto – Banda 8 Mbps ............................................................................. 83
9.3.8 Comparação Final dos 3 tipos de Transmissão. .......................................................................... 84
10. CONCLUSÃO ................................................................................................................. 86
11. REFERÊNCIAS .............................................................................................................. 87
13
1
INTRODUÇÃO
A maior parte do tráfego da Internet é através do Unicast, ou seja, um transmissor
envia os pacotes de acordo com a quantidade de solicitações e destinos. Por muito tempo este
tipo de transmissão pareceu ser suficiente para a Internet, porém com aumento da rede
mundial de computadores, também aumentou o tráfego multimídia sob demanda. Assim a
transmissão unicast tornou-se insuficiente, principalmente na internet. Com o broadcast, os
pacotes são enviados para este endereço e assim todas as estações na mesma rede recebem,
contudo o broadcast não utiliza a banda da maneira mais eficiente.
Com a necessidade de criar um método de transmissão que permitisse o roteamento
para diversas redes e que somente as estações de interesse recebessem os pacotes enviados,
foi criado o Multicast, que atende esta necessidade apresentando melhor desempenho nas
transmissões multimídia.
O Multicast está entre o Unicast e o Broadcast, e tem como característica enviar os
pacotes onde os destinatários são um grupo específico, e apenas este grupo recebe o tráfego.
No geral as aplicações que trabalham com multicast são chamadas de “Aplicações Multicast”
ou “aplicações Multiponto” (MARQUES; CARNEIRO, 2011).
1.1
PROBLEMA
As redes de computadores com o passar do tempo se tornaram cada vez mais amplas e
complexas devido ao crescimento da Internet e de soluções possíveis para a mesma. A
ocupação de largura de banda é um dos grandes problemas gerados devido a essa expansão.
Tradicionalmente, quando alguém precisava transmitir uma mesma informação para
vários destinos, a fonte teria de emitir para a rede, uma cópia separada para cada destino. Se a
fonte fosse um stream (fluxo) de vídeo, a enviar a mil utilizadores simultaneamente, isto
significaria que o emissor teria que criar mil cópias desse mesmo stream e enviá-lo mil vezes
para a rede. Isto pressupõe um enorme esforço por parte do servidor/emissor e uma utilização
claramente ineficiente da rede.
14
1.2
OBJETIVOS
1.2.1 Objetivo Geral
Montar experimentos com equipamentos reais, que comprovem na prática a eficiência
da utilização da tecnologia Multicast.
1.2.2 Objetivos Específicos

Realizar estudo sobre os conceitos de Multicast;

Avaliar vantagens e desvantagens da utilização do IP (Internet Protocol) Multicast;

Definir equipamentos a serem utilizados nos experimentos;

Instalar software ZABBIX;

Pesquisa e instalação de firmware que suporte Multicast em roteadores;

Analisar os protocolos de roteamento DVMRP, MOSPF e PIM;

Instalar softwares que suportem tráfego Multicast (VLC – VideoLAN);
15
2
REFERENCIAL TEÓRICO
As aplicações multimídia têm, em sua maioria, a característica de possuir vários
participantes simultâneos, ou seja, existem um emissor e vários receptores, ou ainda, vários
emissores para vários receptores. Uma forma simples de implementar estes sistemas é manter
uma conexão para cada par emissor/receptor. Fica óbvio, porém, a ineficiência do sistema,
uma vez que cada mensagem a ser transmitida, deverá ser replicada pelo emissor para cada
um de seus receptores. Com o crescimento da necessidade de uma forma de comunicação que
atingisse vários destinatários de maneira eficiente, surgiu o conceito de multicast. Este pode
ser explicado como: forma de comunicação onde, através de uma única operação de
transmissão, resulta no envio simultâneo para vários destinatários.
2.1
MULTICAST EM REDES DE COMPUTADORES
Em redes ethernet existem 3 formas de entrega de uma mensagem a um destino:
unicast, multicast e broadcast. No unicast, a comunicação é 1:1, ou seja, um endereço origem
e um destino. No multicast, é 1:n, e no broadcast é 1:todos. O endereçamento multicast
permite enviar pacotes IP para um grupo determinado de usuários que previamente se
cadastraram neste grupo. Cada grupo é identificado por um IP classe D, ou seja, entre
224.0.0.0 até 239.255.255.255. Para entrar, sair e se manter em grupos multicast, as estações
utilizam o protocolo IGMP (Internet Group Management Protocol), que será analisado
posteriormente (ROESLER, 2001).
2.1.1 Unicast
A Microsoft descreve o Unicast como o reencaminhamento de tráfego destinado a
uma única localização.
O encaminhamento unicast é o reencaminhamento de tráfego destinado a uma única
localização num conjunto de redes a partir de um anfitrião de origem para um
16
anfitrião de destino, através da utilização de routers. Um conjunto de redes tem pelo
menos duas redes ligadas por routers. Um router é um sistema intermédio de
camada de rede utilizado para ligar redes com base num protocolo comum de
camada de rede, tal como o TCP/IP. Uma rede é uma porção da infraestrutura de
trabalho de rede (prevendo repetições, concentradores, e pontes/parâmetros de
camadaº2) que se encontra ligada por routers e associada ao mesmo endereço de
camada de rede conhecido por endereço de rede ou ID de rede (MICROSOFT,
2012).
Um quadro é enviado de um host e endereçado a um destino específico. Na
transmissão unicast, há apenas um remetente e um receptor. Este tipo de transmissão é a
forma predominante em redes locais e na Internet. Entre os exemplos de protocolos que usam
transmissões unicast estão <HTTP (Hyper Text Transfer Protocol), SMTP (Simple Mail
Transfer Protocol), FTP (File Transfer Protocol) e Telnet (MICROSOFT, 2012).
A figura 1 exemplifica a transmissão Unicast.
Figura 1 - Transmissão Unicast
Fonte: Autoria Própria
2.1.2 Broadcast
Um quadro é enviado de um endereço para todos os outros endereços situados na
mesma rede. Nesse caso, há apenas um remetente, mas as informações são enviadas para
todos os receptores conectados. A transmissão de broadcast é essencial durante o envio da
mesma mensagem para todos os dispositivos na rede local. Um exemplo de transmissão de
broadcast é a consulta de resolução de endereço que o protocolo de resolução de endereços
ARP (Address Resolution Protocol) envia para todos os computadores em uma rede local
(ROESLER, 2001).
A figura 2 exemplifica a transmissão Unicast.
17
Figura 2 - Transmissão Broadcast
Fonte: Autoria Própria
2.1.3 Multicast
O multicast é uma nova forma de transmitir vídeo sobre demanda. Todos os roteadores
na rede trabalham de uma forma mais inteligente. Fazem com que os pacotes de vídeo que
saem de uma fonte cheguem até um destino que agora ao invés de um único usuário passa a
ser um grupo de usuários cadastrados.
Em um senário de uma rede WAN semelhante a uma árvore bem ramificada, o grupo
pode ser composto por usuários espalhados em subredes diferentes. E isto é possível por
causa do encaminhamento dos pacotes que faz com que o vídeo chegue igualmente para todo
o grupo sem exigir muito dos recursos do servidor. Diferentemente do unicast, o multicast
quando transmite para mais de um receptor faz a fonte emissora transmitir o vídeo uma única
vez. Os roteadores fazem a replicação dos pacotes conforme o necessário em cada nó da rede
e todos os pacotes são entregues para todos os usuários do grupo.
Também diferentemente do Broadcast, o multicast não transmitirá o vídeo ao mesmo
tempo para todos os hosts da subrede, incluindo os que não querem receber e Tambem se
limitando apenas a rede local. Agora apenas os usuários que pertencem ao grupo multicast
recebem os pacotes. Os outros nem percebem a transmissão (ROESLER,2001).
No geral o multicast exige um pouco mais dos roteadores mas garantem os mesmos
padrões de qualidade do unicast ocupando menos a banda de transmissão nos "galhos da
árvore". Como descreve Roesler na citação a seguir:
Referente à qualidade de serviço (QoS), uma transmissão multicast é tratada da
mesma forma que unicast, ou seja, possui as mesmas características de “melhor
esforço” do IP unicast, sofrendo as mesmas políticas de controle de acesso e
conformação de tráfego.Como a transmissão multicast possui o mesmo cabeçalho IP
do unicast, os métodos de garantia de qualidade de serviço são os mesmos, e ambos
18
podem usar DIFFSERV (Diferentiated Services), RSVP (Resource reServation
Protocols), MPLS (Multi Protocol Label Switching), e assim por diante (ROESLER,
2001, p.1).
A figura a seguir mostra uma comparação entre multicast e unicast em um ambiente
com três switches ligados através de um roteador que suporta multicast. No caso, a aplicação
que roda no transmissor (vídeo, por exemplo) está habilitada para gerar tráfego multicast na
rede, e também tráfego unicast para cada cliente que solicita. As duas situações são mostradas
na Figura 3.
Figura 3 - Unicast x Multicast
Fonte: Autoria Própria
Multicast é a transmissão de um datagrama IP para um "grupo", ou seja, um conjunto
de zero ou mais hosts identificados por um único endereço IP de destino. Um datagrama
multicast é entregue a todos os membros do seu grupo de destino igualmente como aos
datagramas unicast, ou seja, o datagrama não é garantido a chegar intacto a todos os membros
do grupo ou na mesma ordem em relação a outros datagramas.
A quantidade de membros de um grupo é dinâmica, ou seja, hosts podem participar e
deixar os grupos a qualquer momento. Não existe nenhuma restrição na localização ou
número de membros de um grupo. O host pode ser membro de um ou mais grupos ao mesmo
tempo. Um host não precisa ser membro de um grupo para enviar datagramas a ele.
19
Um grupo de hosts pode ser transiente ou permanentes. Um grupo permanente tem um
endereço IP fixo atribuído a ele. Este é o endereço do grupo e não dos membros, em qualquer
momento um grupo permanente pode ter qualquer número de membros, até mesmo zero. Os
endereços multicast que não são reservados para grupos permanentes, estão disponíveis para
atribuições dinâmicas para grupos transientes que existem somente quando possuem
membros.
O roteamento de datagramas multicast é tratado por “roteadores multicast” que podem
coexistir ou não com os gateways internet. Um host transmite um datagrama IP que chega
imediatamente a todos os membros do grupo, se o datagrama possui um TTL(Time to Live)
maior que 1, o roteador multicast da rede local assume a responsabilidade de encaminhá-lo
para todas as outras redes que possuem membros de destino, assim os próximos roteadores
assumem a responsabilidade de entregar os datagramas multicast a todos os membros do
grupo (ROESLER, 2001).
A figura 4 exemplifica a transmissão Unicast.
Figura 4 - Transmissão Multicast
Fonte: Autoria Própria
2.2
VANTAGENS E DESVANTAGENS
A tecnologia multicast oferece vantagens significativas para o sucesso de algumas
aplicações avançadas.
A partir do que já foi apresentado, segue abaixo vantagens e
desvantagens no uso da tecnologia.
20
2.2.1 Vantagens
●
Maior eficiência: Controla o tráfego da rede e reduz as cargas de processamento da
CPU (Central Processing Unit) e Servidores;
●
Melhor Desempenho: elimina a redundância de tráfego;
●
Menos recursos, largura de banda e poder de processamento dos hosts será necessário;
●
Entrega quase simultânea está assegurada: Um único pacote é enviado
simultaneamente para a rede;
●
Base para ampla gama de novas aplicações que não eram possíveis no passado
(teleconferências, TV, rádio, ensino à distância, treinamentos, vídeo sob demanda).
●
Suporte a aplicações distribuídas: A tecnologia multicast é diretamente voltada para
aplicações distribuídas. Aplicações multimídia como aprendizagem a distância e
videoconferência podem ser utilizadas na rede de forma dimensionável e eficiente.
O uso inteligente dos recursos da rede evita replicação desnecessária de fluxos. Com
isso, não há geração de tráfego indevido nos enlaces, o que ajuda a reduzir
congestionamentos e, portanto, a aumentar o desempenho global da rede.
A tecnologia multicast é diretamente voltada para aplicações distribuídas. Aplicações
multimídia como aprendizagem a distância e videoconferência podem ser utilizadas na rede
de forma dimensionável e eficiente.
O custo dos recursos da rede é reduzido através de economia de banda passante nos
enlaces e da economia de processamento em servidores e equipamentos da rede. Novas
aplicações e serviços podem ser implantados, sem requerer renovação de recursos da rede.
O uso eficiente da rede e a redução da carga em fontes de tráfego permitem que
serviços e aplicações sejam acessíveis por um grande número de participantes. Logo,
serviços que rodam sobre multicast podem ser facilmente dimensionados, distribuindo
pacotes tanto a poucos como a muitos receptores.
A economia de recursos da rede associada à redução de carga nas aplicações e
servidores torna a rede menos suscetível a congestionamentos e, portanto, mais disponível
para uso (MULTIREDE, 2011).
21
2.2.2 Desvantagens
Foram apresentadas diversas vantagens em relação ao uso do Multicast. Existem
também algumas desvantagens. A principal delas está relacionada ao fato da entrega ser
baseado em UDP (User Datagram Protocol).
Segue abaixo as desvantagens pelas características do UDP:
●
Entrega baseada em melhor esforço: quedas podem ser esperadas. Aplicações
multicast não devem esperar dados confiáveis como os baseados em TCP
(Transmission Control Protocol) .
●
Não evita congestionamento: A falta de janelas TCP e do mecanismo "slow-start"
pode resultar em um congestionamento na rede, pois o roteador pode ficar sem
espaço de buffer ou aplicar alguma política de descartar pacotes. Se possível,
aplicações multicast devem tentar detectar e evitar condições de congestionamento.
●
Duplicatas: Algumas aplicações multicast podem gerar pacotes duplicados
ocasionalmente.
●
Entrega desordenada de pacotes: Mudanças na topologia da rede podem afetar a
ordem de entrega dos pacotes.
No geral pode-se perceber que confiabilidade é um ponto a ser ter cuidado na
transmissão de tráfego Multicast. Segurança é outra questão que não foi suficientemente
resolvida no passado com o desenvolvimento da tecnologia.
Soluções adequadas para as questões acima podem abrir grandes oportunidades para
diversas aplicações comerciais, como por exemplo, entrega de dados financeiros
(MULTIREDE, 2011).
22
3
ENDEREÇAMENTO IP
O endereço IP, na versão 4 do IP (IPv4), é um número de 32 bits oficialmente escrito
com quatro octetos (Bytes) representados no formato decimal como, por exemplo,
"192.168.1.3". A primeira parte do endereço identifica uma rede específica na internet, a
segunda parte identifica um host dentro dessa rede. Devemos notar que um endereço IP não
identifica uma máquina individual, mas uma conexão à internet. Assim, um gateway
conectando à n redes tem n endereços IP diferentes, um para cada conexão.
Os endereços IP podem ser usados tanto para nos referir a redes quanto a um host
individual. Por convenção, um endereço de rede tem o campo identificador de host com todos
os bits iguais a 0 (zero). Podemos também nos referir a todos os hosts de uma rede através de
um endereço por difusão, quando, por convenção, o campo identificador de host deve ter
todos os bits iguais a 1 (um). Um endereço com todos os 32 bits iguais a 1 é considerado um
endereço por difusão para a rede do host origem do datagrama. O endereço 127.0.0.1 é
reservado para teste (loopback) e comunicação entre processos da mesma máquina. O IP
utiliza três classes diferentes de endereços. A definição de tipo de classes de endereços devese ao fato do tamanho das redes que compõem a internet variarem muito, indo desde redes
locais de computadores de pequeno porte, até redes públicas interligando milhares de hosts.
Existe outra versão do IP, a versão 6 que utiliza um número de 128 bits. Com isso dá
para utilizar 25616 endereços diferentes.
O endereço de uma rede (não confundir com endereço IP) designa uma rede, e deve
ser composto pelo seu endereço (cujo último octeto tem o valor zero) e respectiva máscara de
rede (ROESLER, 2001).
A figura 5 mostra o quadro com as classes de endereço IP e seus intervalos de
endereçamento.
Classe A
Classe B
Classe C
Classe D
0
10
110
1110
netID (7bits)
hostID (24 bits)
netID (14bits)
hostID (16 bits)
netID (21bits)
hostID (8 bits)
netID (7bits)
Figura 5 - Intervalo de Endereços
Fonte: Autoria própria
0.0.0.0 até 127.255.255.255
128.0.0.0 até 191.255.255.255
192.0.0.0 até 223.255.255.255
224.0.0.0 até 239.255.255.255
23
3.1
ENDEREÇAMENTO MULTICAST NIVEL 3
O multicast utiliza a classe D de endereçamento da Internet, ou seja, de 224.0.0.0 a
239.255.255.255. A diferença no cabeçalho IP de um pacote unicast e um multicast é apenas
o endereço. A classe D permite até 28 bits (268 milhões de endereços), como mostra a
figura6.
1
1
1
0
Grupo Multicast (28 bits)
Figura 6 - Endereço IP Multicast
Fonte: Autoria Própria
Existem alguns endereços multicast reservados pelo IANA (Internet Assigned
Numbers Authority), como o 224.0.0.0, que é a base, e não deve ser usado. Já os endereços de
224.0.0.1 a 224.0.0.255 são reservados para protocolos de roteamento, como, por exemplo,
“todos os sistemas na subrede” (224.0.0.1), “todos os roteadores nesta subrede” (224.0.0.2),
“todos roteadores DVMRP” (224.0.0.4), “todos roteadores MOSPF” (224.0.0.6). Veremos
mais a diante esses IPs quando abordarmos a utilização de cada um.
Outros são reservados para determinadas aplicações, como o “IETF1-áudio”
(224.0.1.11) e o IETF1-vídeo (224.0.1.12). O conjunto de endereços de 239.0.0.0 a
239.255.255.255 é reservado para uso local, podendo ser usado em intranets.
O quadro 1 mostra os principais intervalos de endereçamento Multicast IPv4. Vale
salientar que existem mais intervalos definidos pela IANA (ROESLER, 2001).
Intervalo de Endereçamento
Descrição
224.0.0.0 - 239.255.255.255
Intervalo total para Multicast (244.0.0.0/8)
224.0.0.0 - 224.0.0.255
Intervalo reservado para controle Multicast e escopo Local
224.0.1.0 - 224.0.1.255
224.1.0.0 - 224.1.255.255
224.0.2.0 - 224.0.255.255, 224.3.0.0 224.4.255.255 e 233.252.0.0-233.255.255.255
Intervalo conhecido como Internetwork Control Block, utilizado para o tráfego que deve
ser encaminhado através da Internet pública, como NTP e MDHCPDISCOVER
Spanning Tree Multicast Group
Endereços atriubuidos pela IANA para AD-HOC( Bloco I, II e III).
224.0.1.0 - 238.255.255.255
Intervalo escopo global
239.0.0.0 - 239.255.255.255
Intervalo reservado para uso Local
Quadro 1 - Principais endereços Multicast
Fonte: Autoria Própria
24
3.2
ENDEREÇAMENTO MULTICAST NIVEL 2
Dentro de uma rede local, existe um conjunto de endereços MAC (Media Access
Control), destinado ao multicast. Assim, o protocolo de nível 2 e, conseqüentemente, o host
do cliente, sabe se a mensagem é destinada a ele ou não.
Esse conjunto de números foi reservado pelo IANA, e compreende todos os endereços
de 01-00-5E-00-00-00 a 01-00-5E-7F-FF-FF (somente 23 bits, comparado aos 28 do endereço
multicast). Existe um processo de mapeamento entre o IP multicast e o Ethernet multicast,
que é simplesmente substituir os 23 bits menos significativos do Ethernet pelos 23 bits menos
significativos do IP. Assim, quando uma estação cliente se cadastra em determinado grupo
multicast, automaticamente o driver da placa de rede passa a receber mensagens MAC com
endereçamento correto (ROESLER, 2001).
A figura 7 exemplifica a como o endereço IP(nível 3) é convertido para o endereço de
multicast.
Figura 7 - Mapeamento endereço nível 2 e 3
Fonte: ROESLER (2009, p. 4)
A maioria dos switches Ethernet atuais, quando recebem um número MAC multicast,
tratam como se fosse endereço broadcast, ou seja, enviam para todas suas portas. Assim,
qualquer cliente cadastrado no grupo vai receber o pacote e jogar para o nível de cima, e
qualquer cliente não cadastrado vai receber o pacote e ignorá-lo. Existem alguns switches que
já entendem IGMP Snooping, e são úteis para minimizar o tráfego desnecessário em redes
nível 2, mas isso é um tópico que será abordado mais a diante (ROESLER, 2001).
25
4
MROUTER
Um Mrouter, ou roteador multicast, é um programa de roteador que faz a distinção
entre os pacotes multicast e unicast e determina como devem ser distribuídos ao longo da
Internet Multicast (às vezes conhecido como o Multicast Backbone ou MBone que será visto
posteriormente). Usando um algoritmo apropriado, um mrouter diz a um dispositivo de
comutação o que fazer com o pacote multicast.
Mrouters compõem atualmente “ilhas” no MBone separados por roteadores unicast.
Assim, um mrouter pode disfarçar pacotes multicast para que eles possam atravessar
roteadores unicast. Isto é feito fazendo com que cada pacote multicast pareça um pacote
unicast, o endereço de destino é o mrouter seguinte. Este processo é chamado de IP tunneling.
Os dois principais modelos de roteamento multicast que mrouters usam para distribuir
pacotes são dense-mode routing e sparse-mode routing. O protocolo utilizado é determinado
pela largura de banda disponível e da distribuição de usuários finais através da rede. Se a rede
tiver muitos usuários finais e bastante largura de banda, dense-mode routing é usado. No
entanto, se a largura de banda é limitada e os usuários são mal distribuídos, é usado o sparsemode routing.
Sem um mrouter em algum ponto da rede, não é possível termos o Multicast
funcionando adequadamente (GALIANO, 2011).
26
5
IGMP (Internet Group Management Protocol)
O IGMP é o principal protocolo de multicast. É ele o responsável por gerenciar os
grupos e todas as mensagens referentes à ações multicast na rede. É um protocolo que
trabalha entre o roteador e os hosts.
Através do IGMP um host envia um relatório ao roteador mais próximo dizendo que
deseja fazer parte de um determinado grupo multicast, essa solicitação é chamada de
Membership Report. Esta mensagem também é usada para sinalizar que o host ainda pertence
ao grupo e tem interesse em continuar recebendo o tráfego especifico. Mensagens do tipo
Membership Report são enviadas ao endereço do grupo.
Os roteadores também enviam mensagens na rede, essas são chamadas de Membership
Query, e têm por finalidade determinar quais os grupos("host groups") têm membros nas suas
redes diretamente conectadas.
Em outras palavras essas mensagens são nada mais que interrogações para que os roteadores
saibam quais hosts pertencentes às suas redes fazem parte de algum grupo multicast, ou ainda
se existem grupos nas suas redes, visto que os grupos podem estar vazios, caso não haja mais
nenhum host associado a ele. Quando o roteador envia essa mensagem o destino no cabeçalho
do pacote é o endereço 224.0.0.1.
Estas mensagens Membership Query, são periodicamente transmitidas na rede. Caso
haja algum host em algum grupo ou algum interessado em receber a informação de um fluxo
multicast, este host responde com uma Membership Report informando para o roteador qual
grupo multicast ele pertence, visto que cada host pode participar de mais de um grupo.
Vale salientar que para evitar o congestionamento de mensagens Membership Report,
cada estação espera um tempo aleatório para dar a resposta. Antes de um host enviá-la, ele
“olha” para o meio de transmissão para ver os relatórios que já foram enviados ao roteador,
caso algum host do seu grupo já tenha enviado a Membership Report, o seu tempo de espera
expira e cancela o envio. Assim assegura-se que o roteador receberá apenas uma Report de
cada grupo, evitando congestionamento desnecessário na rede.
De acordo com os relatórios recebidos, os roteadores sabem como determinar o
tráfego multicast que deve ser encaminhado para cada grupo.
27
Ns figures 8 e 9 é possível ver um exemplo de roteador enviando a mensagem de
Query para a rede e a resposta de Report pelos host(apenas uma resposta por grupo) (DIG,
2012).
MROUTER
Grupo 1
Membership Query
244.0.0.1
Grupo 1
Grupo 2
Grupo 2
Grupo 1
Figura 8 - Roteador enviando Membership Query.
Fonte: Autoria Própria
MROUTER
Grupo 1
Membership Report
Grupo 1
Membership Report
Grupo 2
Grupo 2
Membership Report
Grupo 1
Membership Report
Grupo 2
Grupo 1
Grupo 2
Figura 9 - Hosts enviando Membership Report
Fonte: Autoria Própria
Membership Report
Grupo 1
Grupo 1
28
Quando o software da aplicação multimídia pede ao software de rede da estação (host)
para esta se juntar a um grupo multicast, uma mensagem IGMP é enviada ao router mais
próximo (se o host não for já um membro do grupo). Ao mesmo tempo, o endereço multicast
de classe D do grupo ao qual se junta é mapeado como um endereço de baixo nível e a
interface da rede é programada para aceitar pacotes para esse endereço.
Por exemplo, se uma estação passa a integrar um grupo num interface Ethernet, os 23
bits mais baixos do endereço de classe D são mapeados aos 23 bits mais baixos do endereço
Ethernet. Devido a esta filtragem de endereços multicast por hardware, um router não
necessita manter uma lista detalhada das estações que pertencem a cada endereço de grupo,
mas apenas esse membro, pelo menos, do grupo, está presente na sub-rede à qual se encontra
vinculado (DIG, 2012).
5.1
ESTRUTURA DO QUADRO
Como o ICMP(Internet Control Message Protocol), as mensagens IGMP são
encapsuladas e enviadas em datagramas IP no Payload. Já o mapeamento de endereços IP
para endereços de rede local é considerado como responsabilidade dos módulos de rede local.
A figura 10 exemplifica o encapsulamento:
Figura 10 - IGMP encapsulado no IP
Fonte: Autoria Própria
O protocolo IGMP apresenta 3 versões. A seguir será comentado cada um deles.
29
5.2
IGMPv1
A versão 1 apresentava fraquezas, principalmente quanto a latência elevada associada
com o término de sessões multicast. Depois do último membro de um grupo multicast numa
sub-rede ter abandonado o grupo, os outros routers não eram imediatamente notificados para
deter a propagação de tráfego para o grupo. Esta demora era causada pelo IGMPv1, esperando
até que várias interrogações indicassem que não restavam membros na sub-rede, de um grupo
em particular. Assim, indesejavelmente, tráfego desnecessário era encaminhado para a subrede. O custo deste envio inútil podia ser elevado, particularmente num segmento da Internet
com largura de banda restrita. Abaixo é mostrada a estrutura da primeira versão (DIG, 2012).
Na tabela abaixo esta a estrutura do quadro da versão 1.
0
4
Version Type
7
15
Unused
Group Addres
23
31
Checksum
Figura 11 - Diagrama IGMP
Fonte: Autoria Própria
Os campos são:

Version: É colocada a versão do protocolo (existem 3 versões)

Type: Tipo de mensagem que esta sendo transmitida

Host Membership Query

Host Membership Report

Unused: Campo não utilizado, zerado quando enviado e ignorado quando recebido.

Checksum: Algoritmo de verificação de integridade da mensagem IGMP.

Group Address: Este campo depende do conteúdo do campo type.
Quando a mensagem é do tipo 1(Membership Query), esse campo é zerado quando
enviado e zerado quando recebido.
Quando a mensagem é do tipo 2(Membership Report), esse campo contém o endereço
do grupo sendo reportado, ou que o host deseja participar (DIG, 2012).
30
5.3
IGMPv2
IGMP versão 2 funciona basicamente da mesma maneira que a versão 1. A principal
diferença é que há uma mensagem de sair do grupo (leave group). Com esta mensagem os
hosts podem comunicar aos roteadores locais que pretendem deixar um grupo e assim não
receber aquele tráfego.
É uma importante mudança, pois depois do último membro de um grupo multicast
numa sub-rede ter abandonado o grupo, os outros roteadores não eram imediatamente
notificados que não havia mais nenhum host naquele grupo.
Esta demora era causada pelo IGMPv1 esperando até que várias mensagens
indicassem que não restavam membros na sub-rede, de um grupo em particular. O custo deste
envio inútil era a principal desvantagem do IGMPv1.
Por esse motivo a adição da mensagem sair em grupo IGMP versão 2 reduz a latência
deixada em relação ao IGMP versão 1, tráfego indesejado e desnecessário pode ser
interrompido mais cedo.
Outra característica que apresenta formas de reduzir o overhead do protocolo são as
mensagens de interrogação dirigidas a grupos específicos (Group Specific Query Message) ,
ou seja permitem ao roteador interrogar grupos específicos nas redes onde estão diretamente
vinculados em vez de serem forçados a interrogar todos os grupos indiscriminadamente. Em
outras palavras, quando o roteador recebe uma mensagem de leave, ele envia uma Group
Specific Query Message para o grupo especifico deste host que solicitou sair, caso ele não
receba nenhuma resposta deste grupo, o roteador sabe que não existem mais indivíduos
interessados no tráfego, assim o router notifica outros routers para cessarem o
encaminhamento de tráfego para a sub-rede dirigido ao grupo.
Com relação ao diagrama do pacote, não apresenta grandes diferenças em relação à
primeira versão, as mudanças são dentro dos campos com as melhorias já citadas(Leave group
e Group-Specific Query) (DIG, 2012).
A figura 12 mostra a estrutura do quadro IGMPv2.
31
0
7
Type
15
23
31
Max. Resp. Time
Checksum
Group Addres
Figura 12 - Diagrama IGMPv2
Fonte: Autoria Própria
No campo TYPE pode existir 4 tipos de mensagens IGMP:

0x11= Host Membership Query;
General Query
Group-Specif Query

0x12=Version 1 Membership Report( Usado para compatibilidade com a versão 1);

0x16=Version 2 Membership Report( Usado para versão 2);

0x17=Leave Group;
O campo Max Resp. Time corresponde ao máximo tempo antes de um host mandar
uma Report na rede (DIG, 2012).
5.4
IGMPv3
A versão 3 do IGMP vai mais longe na redução do overhead. A largura de banda será
conservada pela mensagem Group-Source Report que permitirá às estações receber tráfego de
fontes específicas de um grupo multicast. Nas versões anteriores do IGMP, o tráfego de todas
as fontes tinha de ser encaminhado para uma sub-rede mesmo se as estações estivessem
apenas interessadas em receber tráfego de fontes específicas. As mensagens Leave-Group
apresentadas em primeira instância pela versão 2 foram também aperfeiçoadas para permitir
às estações largar um grupo inteiro ou para especificar a fonte a que queriam renunciar.
Resumidamente no IGMPv3 o usuário tem 2 opções: receber pacotes de apenas um
endereço específico (conhecido como SSM, Source-Specific Multicast), ou receber pacotes de
todos, exceto de um endereço específico.
32
Emissor 1 (1.1.1.1)
Grupo 1 (224.1.1.1)
Emissor 2 (2.2.2.2)
Grupo 1 (224.1.1.1)
O receptor quer
receber do Emissor 1,
mas não do Emissor 2.
Com o IGMPv3 ele
pode eliminar uma
fonte especifica(no
caso Emissor 2)
IGMPv3:
Join 1.1.1.1, 224.1.1.1
Leave 2.2.2.2, 224.1.1.1
Receptor membro do
Grupo 1
Figura 13 - IGMPv3 filtrando origem de pacote
Fonte: Autoria Própria
A figura 13 exemplifica o funcionamento da filtragem de pacotes. Temos o cenário
com dois servidores (Emissor 1 e Emissor 2) enviando tráfego para o Grupo 1. O receptor
quer entrar no grupo 1 e receber o tráfego do Emissor 1, mas não do Emissor 2. Utilizando o
IGMPv3 ele pode eliminar uma origem.
Pelos métodos acima mencionados, os roteadores multicast estão habilitados a manter,
por interface, uma tabela atualizada contendo os grupos cujo tráfego tem interesse, após a
recepção de pacotes multicast, os roteadores sabem para que interfaces os pacotes devem ser
encaminhados.
Levando-se em conta que as versões mais recentes do IGMP podem reduzir o tráfego
desnecessário, otimizando a utilização deste protocolo, deve ser favorecida a escolha de sua
utilização em detrimento das anteriores quando possível (DIG, 2012).
5.5
IGMP SNOOPING
Numa rede baseada em switch(Layer2), todo tráfego multicast recebido é mandado
para todo o domínio de broadcast. Isto pode prejudicar muito o desempenho da rede, pois
33
consome banda desnecessária da rede, principalmente se existirem muitos servidores
mandando tráfego para a rede.
A função básica do IGMP Snooping é restringir o tráfego multicast em uma rede
baseada em switch. Com o IGMP Snooping, o switch “ouve” os relatórios de IGMP entre o
roteador e os hosts ligados a ele, assim consegue mapear quais portas devem ser liberadas
para cada tráfego multicast que estiver sendo enviado à rede e bloqueando as outras portas
para estes pacotes, montando assim uma tabela semelhante à ARP. Quando ele “ouve”
mensagem de leave, imediatamente ele remove a porta do host que enviou a mensagem da
lista que deseja receber o tráfego.
Quando um host manda uma requisição para entrar em um grupo, o switch intercepta a
mensagem de IGMP Membership Report e cria uma entrada para trafego multicast desse
grupo na porta onde está o host, depois envia uma mensagem para todas as portas do roteador,
assim o roteador atualiza sua tabela de roteamento.
Quando um segundo ou terceiro host quer participar do mesmo grupo, o switch
novamente intercepta a mensagem de IGMP Membership Report, mas não envia a todas as
portas do roteador, ele encaminha relatórios IGMP para as portas do roteador, usando
relatórios Proxy. Como os routers enviam em intervalos de 60 segundos relatórios para saber
se ainda existem membros nos grupos, quando essa mensagem é recebida no switch, o
segundo host ou os outros que solicitaram participação no grupo, começam a receber o tráfego
desejado.
Se um dos hosts que esta recebendo o fluxo multicast deseja deixar o grupo, o switch
envia uma mensagem para todos do grupo da porta de onde recebeu a mensagem de leave.
Caso ele não receba mais nenhuma requisição de leave, ele bloqueia para o tráfego apenas a
porta que enviou a solicitação, sendo assim ele não encaminha a mensagem para o router. Se
outro host envia solicitação para deixar o grupo, o processo se repete. Quando não tiver mais
nenhum membro no grupo, o switch captura a mensagem de leave do primeiro host que
entrou no grupo e envia para todas as portas do roteador e remove a entrada de sua tabela
(DIAS, 2002).
34
5.5.1 MVR (MULTICAST VLAN REGISTRATION)
Por padrão em uma rede Layer 2, um fluxo multicast recebido em uma VLAN (Virtual
Local Área Network) nunca é distribuído às interfaces externas(outras VLANs). Se os hosts
em várias VLANs distintas desejam receber um mesmo fluxo multicast, uma cópia separada
do fluxo multicast é distribuído para cada VLAN que está solicitando.
Com isso mais uma vez caímos no problema de largura de banda desnecessária sendo
consumida, visto que o mesmo tráfego está sendo enviado várias vezes para cada VLAN.
O MVR(Multicast VLAN Registration), é a resposta para esse problema. A idéia
principal é o conceito de uma VLAN fonte de multicast, ou seja, os hosts de diferentes
VLANs interessados no fluxo multicast, compartilham o mesmo tráfego através do MVR,
mas sem mudar suas VLANs de origem.
Em outras palavras uma única VLAN multicast pode ser compartilhada na rede
enquanto os hosts permanecem em VLANs separadas.
Um serviço que tira muito proveito do MVR é o IPTV (Internet Protocol Television) ,
onde vários assinantes podem solicitar assistir um canal através da rede, assim estes estarão
dividindo o mesmo fluxo, visto que todos estarão recebendo o tráfego da VLAN/Fonte.
O MVR é compatível com o IGMPv2, sendo assim através do mensagens de join e
leave do IGMP a porta de um assinante(host) pode requisitar participação em um grupo ou
deixar ele. Como é um protocolo de camada 2 ele pode rodar paralelamente com o IGMP
Snooping. Quando os 2 estão ativos na mesma rede, o MVR controla a entrada e saída apenas
em grupos que estão configurados sob o próprio MVR. Entrada e saída de todos os outros
grupos não configurados serão gerenciadas pelo IGMP Snooping.
Como citado acima, os grupos multicast devem ser associados ao MVR, assim o
switch aloca os grupos na sua tabela de encaminhamento. Através de interceptações de
mensagens IGMP ele modifica a tabela incluindo ou removendo os assinantes do grupo
receptor da VLAN/Fonte, mesmo eles estando em VLANs diferentes. Este comportamento de
encaminhamento seletivo permite o tráfego ser passado entre diferentes VLANs e isolando o
fluxo dessas diferentes VLANs garantindo mais banda e segurança (CISCO SYSTEM, 2011).
Na figura 14 um exemplo de um segmento de rede com MVR.
35
Receptor
Origem
.1
Fa0/0
.7
Fa0/2
Router1
Rede:10.200.10.0/24
Vlan:17
.7
Fa0/1
Switch1
.2
Fa0/0
Router2
Rede:10.200.20.0/24
Vlan:27
Figura 14 - Rede com MVR
Fonte:Autoria Própria
No exemplo, uma rede rodando PIM no Modo-Denso, o Router1 é a fonte multicast e
o Router2 o receptor. Usando um IP 235.1.1.1 para o grupo multicast em questão, o MVR é
configurado no Switch1 com a VLAN17 sendo a VLAN/Fonte para os assinantes da Vlan 27
pertencentes ao grupo.
Segue abaixo como ficaria a configuração nos roteadores:
Router1
Router1# interface FastEthernet0/0
Router1# ip Address 10.200.10.1 255.255.255.0
Router1# ip pim dense-mode
Router2
Router2# interface FastEthernet0/0
Router2# ip Address 10.200.10.2 255.255.255.0
Router2# ip pim dense-mode
Como mostrado, o MVR não participa da configuração de camada 3, ele deve ser
configurado e roda em camada 2. Segue abaixo como seria a configuração no Switch.
Switch1
Switch1# no ip multicast-routing distributed
Switch1#!
Switch1#mvr vlan 17
Switch1#mvr mode dynamic
36
Switch1#mvr group 235.1.1.1
Switch1# mvr
Switch1# !
Switch1# interface FastEthernet0/1
Switch1#switchport access vlan 17
Switch1# switchport mode access
Switch1#mvr type source
Switch1#mvr vlan 17 group 235.1.1.1
Switch1# !
Switch1# interface FastEthernet0/2
Switch1#switchport access vlan 27
Switch1# switchport mode access
Switch1# mvr type receiver
Switch1# mvr vlan 17 group 235.1.1.1
Switch1# !
Switch1#interface Vlan17
Switch1#ip Address 10.200.10.7 255.255.255.0
Switch1#ip pim dense-mode
Switch1#!
Switch1#interface Vlan27
Switch1#ip Address 10.200.20.7 255.255.255.0
Switch1#ip pim dense-mode
Como mostrado na configuração Switch1, a VLAN/Fonte é associada ao grupo
multicast e suas portas são configuradas para saber em quais portas o tráfego da VLAN pode
ser encaminhado. Pode-se perceber também que as portas do switch devem ter IPs
pertencentes à rede que está conectada e estas devem estar habilitadas para rodar o protocolo
de roteamento, no caso o PIM Dense-Mode (CISCO SYSTEM, 2011).
37
6.
MBONE
6.1
HISTÓRIA
O Mbone, ou Multicast Backbone, teve sua origem de uma pesquisa conjunta entre a
Universidade da Califórnia do Sul, Instituto de Tecnologia de Massachussetts, Centro de
pesquisa Xerox Palo Alto, Laboratório nacional Lawrence Berkeley e outras unidades
patrocinadas pela Agencia de Defesa de pesquisa avançada dos EUA.
Em 1990 esta comunidade criou uma extensa rede de pesquisa chamada DARPA
(Defense Advanced Research Projects Agency), consistindo de estações de trabalho UNIX
(Universal Interactive Executive) servindo com roteadores interconectados via links T1.
Inicialmente no projeto, a comunidade desenvolveu uma versão preliminar do IP Multicast
sobre rede. Esta foi a primeira oportunidade de experimentar o multicast em larga escala.
O próximo passo importante ocorreu quando a comunidade DARTNet desenvolveu
várias aplicações real-time usando IP Multicast para estudar os problemas em grupos de
conferencia sobre redes comutadas por pacotes. As reuniões semanais da DARTNet começam
a gerar interesse na expansão da infra-estrutura Multicast além dos limites de laboratório.
Entretanto os fabricantes de roteadores não suportavam o trafico Multicast, porem os
designers do IP Multicast tinha habilitado os roteadores Multicast a encaminhar pacotes e
trocas mensagens de rotas sobre links virtuais.
A habilidade de construir subredes Multicast usando túneis tornou-se um ambicioso
experimento em Março de 1992, 32 sites Multicast isolados cobriam 4 países que foram
configurados com uma grande rede virtual Multicast, a qual foi usada para transmitir a "23ª
Internet Engineering Task Force Meeting". Esta interligação virtual usada para juntas as subredes Multicast foi chamada de "Multicast Backbone". Apesar de varias dificuldades técnicas
o experimento foi um sucesso. Em Março de 1997, foram inclusas 3.400 redes Multicast ao
mesmo tempo. Em poucos anos, o MBone de uma pequena pesquisa tornou-se uma infraestrutura de comunicação usada em grande escala (GALIANO, 2011).
38
6.2
IP MULTICASTING
Do ponto de vista da rede, o Multicast simplesmente executa operações que resultam
em cópias de dados entregues a vários receptores, esta pode ser implementada de duas formas:
 Transmissor usa uma conexão de transporte Unicast para cada receptor, ou seja, a
mensagem é duplicada no transmissor e enviada individualmente a cada receptor.
 Transmissor envia um único datagrama, e cada roteador se torna responsável a enviar
a seus receptores, melhorando assim o consumo de banda na rede.
O IP Multicast já esta mudando a forma das empresas fazerem negócios. Através do IP
Multicast na internet, aplicações corriqueiras a empresas, como videoconferências, podem
tomar escala global facilmente (STARDUST, 1999).
6.3
LIMITAÇÕES E FUTURO DO MBONE.
Desde que o Mbone cresceu, este tem sofrido uma série de problemas, que vem
ocorrendo com constante freqüência.

Escalabilidade: A mais importante razão para isto é a dificuldade de crescimento da
gerencia das topologias virtuais flexíveis. Como o MBone cresceu, seu tamanho tornose um problema, em termos de igualdade de rotas e erros de configuração. Grandes, as
redes são inerentemente instáveis. Em picos, o Mbone tem quase 10.000 roteadores.

Gerenciamento: Como o MBone cresce randomicamente, tornou-se difícil de
gerencias. O MBone não possui um gerenciamento central, a maioria das tarefas foram
manipuladas por site. A maioria da coordenação ocorre através da lista de discussão
MBone. Dois tipos de ineficiências comumente são observados:

Gerenciamento de Túnel (Topologia Virtual): O MBone é caracterizado como um
conjunto de ilhas multicast conectadas por túneis. O objetivo tem sido conectar estas
ilhas da maneira mais eficiente, mas constantemente túneis abaixo do ideal têm sido
criados.

Gestão de políticas entre domínios: Limites de domínio são outra fonte de problemas
ao tentar gerenciar uma topologia plana. O modelo na Internet de hoje é estabelecer
AS’s (Autonomous System) limites entre os domínios da Internet. AS’s são
39
comumente geridos ou detidos por diferentes organizações. Entidades em um AS são
tipicamente não confiáveis por entidades em outro AS. Como resultado, o intercâmbio
de encaminhamento de informações através das AS’s fronteiras, é tratado com muito
cuidado.
O primeiro dos problemas é a complexidade e instabilidade das grandes topologias
flexíveis. O segundo problema é que não existe nenhum mecanismo para construir uma
topologia hierárquica de roteamento Multicast. Na tentativa de resolver estes dois problemas
criou-se a primeira tentativa de implantar o inter domínio multicast.
O Interdomain multicast evoluiu a partir da necessidade de fornecer escalabilidade e
hierarquiabilidade, em toda a internet multicast. Protocolos que fornecem a funcionalidade
necessária têm sido desenvolvidos, mas a tecnologia é relativamente imatura. Estes protocolos
estão sendo consideradas pelo IETF e, simultaneamente, sendo avaliado por meio da
implantação extensiva (STARDUST, 1999).
40
7.
ÁRVORES DE DISTRIBUIÇÃO
Roteadores criam árvores de distribuição que permitem controlar o caminho do tráfego
multicast. Existem dois tipos básicos: Source Tree e Shared Tree (FRANCISCO, 2000).
7.1
SOURCE TREE (Shortest Path Trees)
Utiliza mais memória por parte dos roteadores (S, G), onde S(Source) é o IP da fonte e
G (Group) é o endereço do grupo (existe uma árvore para cada par S , G).
Embora utilize mais memória o método Source Tree percorre caminhos otimizados,
minimizando atraso na entrega dos pacotes. A raiz da árvore é a origem do tráfego, onde se
calcula um Spanning Tree até os receptores. Essa árvore usa o menor caminho para atingir o
destino (também conhecida como Shortest Path Tree ou simplesmente STP).
O caminho escolhido por uma rede é exemplificado na figura 15, onde temos o
emissor enviado os pacotes para a rede. O STP escolhe o caminho mais curto (FRANCISCO,
2000).
Emissor Grupo
Receptor
Figura 15 – SourceTree
Fonte: Autoria Própria
Receptor
41
7.2
SHARED TREE (Rendezvous Point Trees)
Ao contrário do Source Tree as Shared Tree utiliza menos memória(G), contudo
percorre caminhos não otimizados podendo introduzir atrasos na entrega dos pacotes.
Estas árvores também são conhecidas como Rendezvous Point Trees ou simplesmente
RPT. Sua árvore de encaminhamento multicast tem como ponto central ou raiz, o roteador
Rendezvous Point(RP). O RP sempre é o ponto principal da rede, mas nem sempre essa é a
melhor maneira de se utilizar a banda disponível. Sendo assim, as árvores podem estar
configuradas para possibilitar, após o estabelecimento do fluxo de dados multicast, uma
otimização para a uma Shortest Path Trees (DIG: Enterprise Campus Topology, 2012).
A figura 16 mostra a mesma rede usada para a exemplificação do source tree, mas
com a shared tree o tráfego necessita passar pelo RP da rede, assim nem sempre utiliza o
caminho mais curto (FRANCISCO, 2000).
Emissor Grupo
RP
Receptor
Figura 16 - Shared Tree
Fonte: autoria Própria
Receptor
42
7.3
COMPARAÇÃO ENTRE OS TIPOS DE ÁRVORES
Source Trees e Shares Trees não apresentam situações de loop, mas cada uma tem
suas vantagens e desvantagens.
As Source Trees tem a vantagem de criar um caminho melhor para alcançar os
destinos, isto garante uma baixa latência para o roteamento dos pacotes na rede.
No entanto, os roteadores devem manter informações sobre o caminho para cada
fonte. Logo, em uma rede grande torna-se um problema devido ao consumo dos recursos do
roteador.
As Shared Trees mantêm poucas informações de estado em cada roteador que é uma
ótima vantagem, porém com ela temos a existência de caminhos não otimizados. Isso pode
gerar atrasos e má utilização dos recursos da rede.
A figura 17 mostra a comparação das duas árvores (FRANCISCO, 2000).
RP
RPT
STP
EMISSOR
Figura 17 - Comparação RPT e STP
Fonte: Autoria Própria.
RECEPTOR
43
8.
PROTOCOLOS DE ROTEAMENTO MULTICAST.
Antes de estudarmos os protocolos de roteamento que trabalham com transporte de
datagramas multicast. Devemos ter em mente que a palavra multicast surgiu de um conceito
criado pela necessidade da otimização da estrutura TCP/IP atual para suportar trafego
multimídia em diversos nodos da rede sem obstruir por congestionamento os locais que são
desnecessários. Porem quando este conceito surgiu, à rede TCP/IP já estava implantada e já
havia toda a estrutura da internet criada. Tentar adequar todos os protocolos para suportar ao
mesmo tempo multicast era inviável. Então a solução foi criar protocolos que operam em
conjunto com o roteamento normal. Todo o roteamento multicast é feito via software porem
operando de uma forma dependente de outros protocolos de roteamento normal. Existe o
roteamento com os protocolos mais conhecidos como RIP, OSPF (Open Shortest Path First),
EIGRP (Enhanced Interior Gateway Routing Protocol), e acima destes vem o roteamento
multicast com os protocolos que veremos. Portanto devemos ter sempre em mente esta
separação e operacionalmente configurar os dois níveis de roteamento porque eles trabalham
independentemente. Isto ocorre porque os protocolos de roteamento multicast precisão que
toda a árvore de enlaces esteja previamente montada para poder funcionar adequadamente.
O roteamento multicast consistem em enviarmos uma única mensagem do servidor, e
está, seja replicada apenas quando for necessária para diminuir o consumo de banda. A
mensagem só pode ser duplicada em regiões adequadas para garantir a entrega dos pacotes
aos hosts sem que ocorra uma multiplicação excessiva.
Outra questão é que como tudo surgiu através da necessidade foi necessária uma
solução rápida. Vários desenvolvedores ao redor do mundo tentaram resolver este problema.
A primeira solução definitivamente implementada foi o protocolo DVMRP (Distance Vector
Multicast Routing Protocol) ao qual veremos agora (ARMSTRONG, 1992).
8.1
DVMRP (Distance Vector Multicast Routing Protocol)
Este protocolo como o nome já diz é um protocolo que toma como fator decisivo para
criação da rota, a distância do vetor. Todos os protocolos que utilizam este método. Calculam
a menor distância à rede remota para definição do melhor caminho. Cada vez que um pacote
44
passa por um router chamamos este fenômeno de hop (salto). Tudo o que os roteadores têm a
fazer é determinar o menor número de hops até o destino. Alguns dos protocolos que
pertencem a esta classe (Distance Vector) são o RIP e o IGRP (FILIPPETTI, 2009).
Um detalhe é que mesmo que o IGRP (Interior Gateway Routing Protocol) trabalhe
levando em conta também a largura de banda e a métrica default e não apenas a contagem de
saltos, ele é classificado como distance vector por considerar primeiramente a quantidade de
hops e depois outros fatores decisivos para critério de desempate (FILIPPETTI, 2009).
O funcionamento deste processo só é permitido porque os roteadores vizinhos estão
sempre mandando tabelas de roteamento. Estas tabelas são misturadas as próprias tabelas
armazenadas internamente ao roteador para formar um mapa completo da rede. É um
processo chamado de routing by rumour porque os roteadores apenas aceitam e anexam as
informações sem nenhuma verificação. No entanto um destino pode ter mais de um único
caminho com o mesmo número de saltos. Neste caso o RIP (Routing Information Protocol)
por trabalhar apenas levando em conta a contagem de hops ao se deparar com este tipo de
situação executará um processo chamado round-robin load balance e distribuirá a carga de
pacotes alternadamente entre os dois ou mais caminhos encontrados, podendo realizar este
processo com até seis links simultaneamente. Mas no caso do DVMRP será escolhido o
caminho do roteador que tiver o menor endereço IP (WAITZMAN, 1988).
Por curiosidade na mesma situação o IGRP ainda levantará a largura de banda e a
métrica para tomar a decisão adequada ao invés de dividir os pacotes balanceadamente entre
os caminhos concorrentes.
No nosso caso o DVMRP será mais semelhante ao RIP pelo fato do DVMRP ter sido
criado com base na implantação do protocolo RIP, mas com esta pequena diferença em casos
de iguais caminhos. O DVMRP nada mais é do que uma adaptação do RIP para operar em
multicast. Mas lembrando de que o DVMRP não fará o roteamento de pacotes normais,
apenas os de multicast, portanto é necessário implantar um roteamento normal junto ao
DVMRP. E para este caso, especificamente, devemos utilizar o RIP para construção da árvore
devido ao fato do DVMRP ter sido feito com base no RIP. Sem a utilização do protocolo RIP
os routers não podem construir sua árvore interna com a tipologia da rede.
O funcionamento do DVMRP é muito simples. Ele basicamente transforma a
solicitação de envio de datagramas multicast em unicast e então repassa. O protocolo combina
o funcionamento do RIP com o algoritmo Truncated Reverse Path Broadcasting (TRPB).
Que faz um mapeamento dos hosts pertencentes a um grupo multicast e então direciona os
pacotes para os mesmos. Caso exista uma rede onde nenhum host pertence a um grupo
45
multicast e ele é o único Mrouter ele cancela o envio de multicast para aquela determinada
sub-rede. Para reestabelecer a transmissão caso entre um host em um local onde a transmissão
foi cancelada é rapidamente enviada uma mensagem de Graft e então a transmissão é
reestabelecida.
O DVMRP permite a criação de túneis que servem para estabelecer a comunicação
multicast entre dois mrouters interligados por um roteador comum que não possui nenhuma
configuração de multicast.
Também foi acrescentado ao protocolo o conceito de TTL (time-to-live) para evitar
que os pacotes muito antigos e fora do tempo de exibição fiquem propagando na rede. Assim
os pacotes com o TTL muito altos são descartados.
A troca de datagramas de roteamento é feita com a utilização do protocolo IGMP, em
uma pequena porção de cabeçalho IGMP de comprimento fixo, e outra porção composta por
um fluxo de dados codificados (WAITZMAN, 1988).
A figura 18 mostra o datagrama DVMRP.
4
8
16
24
32
Version
Type
Sub-Type
Checksum
DVMRP Data stream
Figura 18- Datagrama DVMRP
Fonte: Autoria Própria.
Em version, a versão será sempre “1”. Em Type, o tipo para DVMRP é “3”. O subtipo
pode ser:
Response. A mensagem fornece rotas para um destino. valor 1;
Request. A mensagem solicita rotas para um destino. valor 2;
Non-membership report. A mensagem fornece relatórios de não membros;
Non-membership cancellation. A mensagem serve para o cancelamento de prévios
relatórios de não membros;
O Checksum é um stream resultante de uma soma da mensagem inteira excluindo o
cabeçalho IP. No momento da computação o checksum é zerado.
O resto da mensagem DVMRP é um fluxo de dados etiquetados (Tagged Data). O
motivo da utilização da Tagged Data é propiciar extensibilidade ao código. Graças a isso é
46
possível criar comandos novos a partir de novas tags, e também reduzir a quantidade de
mensagens redundantes.
Os elementos do fluxo, como comandos de cancelamento, são múltiplos de 16 bits
para ajustar adequadamente o pacote. Os comandos são como um código numérico de oito
bits.
Todo o mapeamento de hosts e grupos com sessões abertas é feito através da junção
desses pacotes quando os mesmo se referem a uma nova estrutura encontrada na rede. Cada
vez que ocorre uma alteração é enviada uma tabela com a árvore atual da rede. E este
processo pode ocupar certa banda de transmissão.
Na figura 18, podemos ver um exemplo de transmissão onde cada seta azul representa
um pacote sendo transmitido. Basicamente é transmitido um pacote para cada host. Exceto
para os hosts ligados a switch que está conectada em R3. Neste caso apenas um pacote foi
transmitido e a switch multiplicou para todos os hosts interessados. Isto ocorre porque no caso
deste exemplo a switch está com o IGMP configurado. Então o router R3 encaminhou um
único pacote para o grupo multicast. O switch conhecendo todos os hosts interessados
pertencentes ao grupo fez a distribuição correta.
Se caso não existisse host pertencente a um grupo multicast em R4, a transmissão seria
cancelada em R4 e só seria restabelecida após a mensagem de graft no momento em que um
host entrasse no grupo (WAITZMAN, 1988).
R1
R2
DVMRP
R3
R4
Multicast
Conexões
Figura 19 - Encaminhamento com DVMRP
Fonte: Autoria Própria.
47
Se este mesmo laboratório fosse realizado com uma transmissão unicast (exemplo na
Figura 20) e não estivesse configurado o IGMP no switch a banda seria ainda maior como
podemos ver na figura 19. O único ganho obtido com relação aos dois exemplos (figura 18 e
figura 19) se deu através do switch por causa do IGMP. Se tivéssemos uma rede onde muitos
hosts estivessem ligados a switch com IGMP teríamos até certo ganho.
R1
R2
R3
UNICAST
R4
Unicast
Conexões
Figura 20 - Encaminhamento Unicast
Fonte: Autoria Própria.
Com estas informações podemos deduzir antecipadamente que o DVMRP atende a
necessidade de controle de tráfego em demanda para grupos específicos, mas não reduz
significativamente o consumo de banda em redes grandes, apenas na banda do servidor. A
necessidade de um protocolo que atendesse ao crescimento do tráfego em demanda de vídeo
continuou e então surgiram outros protocolos mais eficientes como veremos a seguir
(WAITZMAN, 1988).
8.2
MOSPF (Multicast Open Shortest Path First)
Um grande avanço se deu na história do multicast com o surgimento do MOSPF que
foi concebido através de uma extensão do tradicional protocolo OSPF. Como o OSPF não é
proprietário e a maior parte dos equipamentos suporta este protocolo, o MOSPF ganhou uma
boa aceitação e comprovou sua eficiência com relação à implementação multicast citada
anteriormente. Em uma estrutura Mbone rodando DVMRP podemos ter sistemas autônomos
48
rodando MOSPF sem problema nenhum por que o MOSPF é compatível com o DVMRP e tal
compatibilidade facilita muito a sua implantação.
A forma de operação do MOSPF é muito semelhante ao OSPF tradicional por ser a
expansão do mesmo. Uma curiosidade é que o OSPF utiliza o conceito de multicast para
trafegar seus datagramas de controle e informar atualizações na rede como apresentado por
Marco Fillippetti.
Esse protocolo já foi criado tendo-se em vista redes de grande porte. Ele não
trabalha com propagação via broadcast, mas via multicast, ou seja, apenas routers
que estejam rodando esse protocolo receberão as atualizações necessárias. Uma
interface que não esteja rodando OSPF conectada a ela não receberá as mensagens
de atualização via multicast. (FILIPPETTI, 2009, p. 268).
Os pacotes OSPF são transmitidos apenas aos roteadores que estão configurados para
operar com este protocolo. Neste caso já podemos ver uma vantagem com relação ao
protocolo anterior. No caso do DVMRP nós tínhamos uma situação onde cada alteração da
rede (saída ou entrada de um host, alteração na tipologia ou em uma rota) provocava a
circulação de tabelas contendo uma relação estrutural completa para todas as sub-redes
conhecidas, gastando a banda e fazendo com que pacotes de controle percorressem locais
desnecessários. Sem contarmos ainda que o aumento da rede faz estas tabelas ficarem
proporcionalmente mais pesadas para serem transmitidas.
Outro avanço do MOSPF é que ele também passará a enviar apenas as alterações
ocorridas e não mais a tabela completa a cada mudança. E agora os pacotes de controle não
são mais enviados para todas as sub-redes e sim apenas para os locais de interesse.
A grande diferença é que o MOSPF não trabalha com o conceito de hops. Agora a
tomada de decisão é feita levando em consideração o custo do meio. Isto ocorre porque é
atribuído um valor de métrica a cada conexão. O roteador localiza todos os caminhos e
escolhe onde a soma de todas as métricas for menor. Parece simples, mas nem sempre o
melhor caminho é o mais curto. Podem ocorrer situações onde a banda pode compensar o
tempo gasto na replicação dos pacotes. Isto também ajuda muito nas regiões onde a banda é
mais estreita porque o tráfego multimídia será desviado e passará a ser suportado para atender
apenas os host conectados aquele nó com mais qualidade. Por essas e outras características é
que descreveremos melhor as principais propriedades do encaminhamento de pacotes MOSPF
(MOY, 1994).
O encaminhamento dos pacotes multicast depende da fonte emissora e do destino
multicast. Este roteamento é chamado Fonte/Destino (Source/Destination) e trabalha em
49
contraste com os algoritmos unicast (Ex. RIP, OSPF e EIGRP) que roteiam com base
exclusivamente no destino. Com isto os pacotes sempre percorrem o melhor caminho.
Os pacotes enviados entre a fonte e o destino devem percorrer o caminho com o menor
custo. O custo pode ser expresso, por exemplo, pelo delay na transmissão. E então o pacote
percorrerá o caminho com o menor delay. A métrica pode ser configurada de acordo com a
preferência. Mas de qualquer forma, um valor de métrica é atribuído a cada interface de saída
do roteador e representará o seu custo.
O MOSPF toma a maior vantagem possível de caminhos comuns entre a fonte e o
destino. Algumas vezes os hosts de um grupo estão muito espalhados na rede e faz com que
os pacotes precisem ser replicados varias vezes. A idéia é tentar baixar o número de
replicações em alguns nós, por isso o MOSPF replica os pacotes o mínimo possível em casos
específicos.
Para um dado datagrama, todos os routers montam uma árvore shortest-path idêntica.
Existe apenas um caminho entre a fonte e o destino (que pode ser um membro de um grupo
particular). E ao contrário dos protocolos unicast, não há provisão de custo idêntico para
múltiplos caminhos.
Em cada hop os pacotes multimídia são enviados como links de dados multicast
diretamente. Existem duas exceções. Primeira, em redes não broadcast, que não suportam
serviços de link de dados multicast/broadcast, e então os datagramas são encaminhados para
o MOSPF vizinho. Segunda, Os roteadores MOSPF podem ser configurados para encaminhar
os datagramas como links de dados unicast em redes específicas para evitar a Replicação
excessiva em certas situações anômalas.
O encaminhamento de pacotes é um mecanismo baseado no conteúdo de um cache de
dados. Este cache de dados é chamado de cache de encaminhamento e existe uma entrada
separada para cada combinação de fonte/destino. A entrada serve para indicar ao nó vizinho
de onde o pacote pode ter vindo (Upstream Node) e para onde deve ser encaminhado
(Downstream Interfaces).
O cache de encaminhamento é formado por dois componentes. O primeiro
componente é chamado de tabela do grupo local e é construído pelo protocolo IGMP. O
segundo é chamado de árvore do caminho mais curto do datagrama. Esta árvore é enraizada
na fonte emissora do datagrama e habilita sua entrega às redes distantes.
Os datagramas são marcados com a sua classificação de Type of Service (TOS), que
podem variar em cinco valores mutuamente exclusivos: minimize delay; maximize
throughput; maximize reliability; minimize monitary cost e normal service. O caminho do
50
pacote no MOSPF pode variar de acordo com a classificação TOS utilizada. Por exemplo, um
tráfego multicast sensitivo ao delay (retardo) pode seguir rotas diferentes de uma aplicação
multicast de alto throughput (vazão). A classificação TOS no protocolo MOSPF é, como no
OSPF, opcional, e roteadores que a suportam podem ser misturados livremente como os que
não a suportam.
A tabela do grupo local mantém o controle da participação no grupo nas redes
diretamente ligadas ao roteador. Cada entrada da tabela do grupo local é um par que indica
qual das redes locais tem um ou mais membros conectados ao IP de um grupo multicast
formando uma árvore. Isto ajuda o roteador a decidir para qual rede local encaminhar o pacote
e assim garantir que o mesmo foi entregue completamente a todos os membros de um grupo
multicast.
Quando existem caminhos comuns na arvore, o MOSPF elimina a necessidade de
transmitir vários pacotes (uma para cada host semelhante ao unicast). Por tanto, apenas uma
pacote passa e quando chaga em um nó ele é multiplicado para ser entregue a um host ou
reencaminhado a outro router. Esta técnica é uma das principais redutoras do consumo da
banda seguindo a filosofia do multicast. Podemos visualizar melhor na figura 21,
considerando que a métrica entre R1 e R2 somada à métrica entre R2 e R3 seja mais favorável
do que entre R1 e R4. Podemos notar o enorme ganho na rede inteira (MOY, 1994).
R1
R2
MOSPF
R3
R4
Multicast
Conexões
Figura 21 - Encaminhamento via MOSPF
Fonte: Autoria Própria.
O único problema de se implantar um sistema com MOSPF é que ele depende do
protocolo OSPF. E caso a rede possua vários setores com protocolos diferentes (RIP, IGRP,
EIGRP) ele não será tão eficiente (MOY, 1994).
51
8.3
PROTOCOL INDEPENDENT MULTICAST (PIM)
Ainda no início da década de 90 surgiram protocolos independentes que juntos
formaram uma família denominada coletivamente por Protocol Independent Multicast (PIM,
RFC5384). Este nome foi atribuído porque agora estes protocolos passaram a ser totalmente
independente dos protocolos unicast. Nas situações antigas se implantássemos uma rede com
MOSPF, seriamos obrigados a configurar também o OSPF normal para auxiliar com a
construção da tabela de roteamento. Agora, com a utilização do PIM este problema acabou. O
PIM utiliza a tabela de roteamento existente no roteador sem se importar com a forma com
que ela foi elaborada. Se for usando RIP, IGRP, OSPF, EIGRP ou qualquer outro, funcionará
normalmente. A implantação, por tanto, ficou muito mais fácil (ADAMS, 2005).
8.3.1 PIM-DM (Protocol Independent Multicast – Dense Mode)
Das famílias PIM existentes, as mais conhecidas e implantadas são a PIM-DM (PIM
Dense-Mode, RFC 3973) e a PIM-SM (PIM Sparse-Mode). Apesar de serem protocolos
independentes cada um possui características diferentes. No caso do PIM-DM, A forma de
trabalhar é muito semelhante ao DVMRP. Os pacotes são enviados igualmente para todos os
routers e segmentos da rede de forma unicast.
Este protocolo não é muito eficiente em grandes redes pelos mesmos motivos do
DVMRP. No entanto algumas diferenças foram feitas e deixaram o PIM-DM um pouco
melhor. Uma delas foi a utilização do RPF para prevenir loops devido a replicação excessiva
dos pacotes.
Outra diferença principal é que a transmissão pode ser podada nos locais onde não
existirem membros de um grupo multicast. Essa poda possui uma vida útil que quando
expirada a transmissão é restabelecida para aquele local. Este processo pode ser reiniciado
várias vezes. Quando ocorre um estado de poda, também chamado em inglês por Prune-State,
este estado é associado a um par (S, G) e quando um usuário entra em um grupo G no mesmo
momento, é feito um “enxerto” e os pacotes passam a ser encaminhados da fonte S para o
usuário do grupo G. transformando o ramo podado em um ramo de encaminhamento
(ADAMS, 2005).
52
Podemos ver um exemplo com o mesmo laboratório feito anteriormente na figura 21.
Vamos considerar que neste caso nenhum host pertence a um grupo no routers R4. Portanto
ele está em estado de poda (figura 22). Caso entre um host em R4. Automaticamente é feito
um enxerto e os pacotes passam a ser reencaminhados como mostra a figura 23 (ADAMS,
2005).
Pruned-state
R1
R2
PIM-DM
R3
R4
Figura 22 - Encaminhamento com PIM-DM em poda no router R4
Fonte: Autoria Própria.
Reencaminhamento
R1
R2
PIM-DM
R3
R4
Reencaminhamento
Multicast
Conexões
Figura 23 - Encaminhamento com PIM-DM
Fonte: Autoria Própria.
53
8.3.2 PIM-SM (Protocol Independent Multicast – Sparse Mode)
O protocolo PIM Sparse-mode foi construído para operar em redes muito dispersas.
Uma grande diferença para os protocolos de modo denso é que agora os roteadores devem
manifestar interesse em receber o tráfego multicast. Nos outros protocolos citados
anteriormente era considerado que todos os roteadores do mapa deveriam receber o tráfego a
menos que fosse enviada uma mensagem de desligamento.
Outra diferença é que agora foi introduzido o conceito de “ponto de encontro” ou
Rendavous-Point (RP). Em cada domínio existe um conjunto de roteadores atuando como
RP’s, mas cada grupo deve ter um único RP para não gerar conflito.
Todos os hosts devem estar configurados com um roteador designado (DRDesignatede Router) é um roteador com o maior numero IP da sub-rede. Quando alguém
entra em um grupo enviando uma solicitação IGMP ao DR, o DR começa a buscar o RP
daquele grupo. Esta busca é feita utilizando um espalhamento determinístico sobre todos os
RP’s pertencentes ao domínio. Depois de encontrado o RP, o DR envia uma solicitação de
inclusão ao RP do grupo (Figura 24). O RP passará então a enviar os pacotes multicast
referentes ao grupo para o DR que por sua vez entregará à sub-rede que contiver o host que
acabou de entrar no grupo (FEANER, 2006).
R1
H1
R2
PIM JOIN
PIM JOIN
RP = Rendavous Point
DR = Designated Router
Sentido da solicitação
RP
Figura 24 - Entrada de um novo host com PIM-SM
Fonte: Autoria Própria.
DR
H2
54
Quando um servidor inicia a transmissão multicast para um grupo, o DR do servidor
encapsula o primeiro pacote em um pacote de registro PIM-SM chamado de PIM-Register e
envia ao RP diretamente por unicast. Ao receber esta mensagem o RP devolve um PIM-Join
ao DR do servidor. Feito isso os roteadores intermediários adicionam em sua tabela de
replicação multicast o par (S, G) facilitando o envio dos próximos pacotes multimídia direto
para o RP. É interessante notar que depois que a fonte começa a mandar os pacotes
multimídia para o RP, estes pacotes são encaminhados de forma unicast e só depois que
chegam ao RP é que são enviados para os hosts de forma multicast. Como mostra a figura 25.
R1
RP = Rendavous Point
DR = Designated Router
PIM-Join
PIM-Register
Pacotes Unicast
Pacotes Multicast
RP
R2
DR
Figura 25 - Entrada de uma Fonte e encaminhamento PIM-SM
Fonte: Autoria Própria.
Este processo parece ser capaz de resolver a maior parte dos problemas de tráfego.
Mas em grandes redes também podemos ter muitos usuários conectados. Fazendo com que o
router RP fique sobrecarregado de multiplicar pacotes e controlar tudo sozinho. Então o PIM
além de trabalhar com a árvore RP também pode trabalhar ao mesmo tempo com a árvore do
caminho mais curto para tentar desviar o tráfego. A utilização da árvore do caminho mais
curto pode ser aplicada separadamente.
Quando a arvore do menor caminho é encontrada, o roteador pode mandar uma
mensagem de desligamento para o RP e continuar apenas a mandar as mensagens pelo
caminho mais curto. Como mostra na figura 26, temos uma situação onde o host H1 passou a
receber tráfego multimídia pelo caminho mais curto. E se caso o host H2 saísse da
transmissão, seria enviada uma mensagem de desligamento para o RP e os pacotes passariam
a ser enviados diretamente pelo caminho mais curto até o host H1 (FEANER, 2006).
55
R1
R2
H1
H2
RP = Rendavous Point
DR = Designated Router
Pacotes Multicast
RP
DR
Figura 26 - Encaminhamento PIM-SM pelo método da árvore mais curta
Fonte: Autoria Própria.
56
9.
EXPERIMENTOS
Para ter contato com a tecnologia multicast, foram propostos experimentos, com
intuído de possibilitar um melhor entendimento e avaliação do funcionamento desse tipo de
transmissão.
Num primeiro momento foram propostos cenários virtuais, fazendo-se uso de
simuladores de rede para emular a rede rodando multicast. O software escolhido havia sido o
GNS3. Ao decorrer do desenvolvimento do trabalho, houve a possibilidade de realizar os
testes com equipamentos reais. Sendo assim todos os cenários aqui propostos foram
desenvolvidos em equipamentos de rede reais (roteadores, switches, computadores e cabos).
9.1
ZABBIX
Ao decorrer do trabalho, vários softwares foram testados para serem usado como
padrão para avaliar o tráfego e construir gráficos de ocupação de banda nas redes propostas.
Dentre eles estavam o MRTG (Multi Router Traffic Grapher), CACTI, ZABBIX. Escolhemos
o Zabbix devido a sua facilidade de instalação e operação.
O Zabbix é um software que monitora diversos parâmetros de uma rede como a
integridade e desempenho dos servidores. Oferece excelentes relatórios e
visualização de dados de recursos com base nos dados armazenados. Usa um
mecanismo de notificação flexível que permite aos usuários configurar um e-mail
com alertas para qualquer evento, o que permite uma reação rápida para os
problemas de uma rede de dados ou até mesmo de um servidor.
Corretamente configurado, o Zabbix pode desempenhar um papel importante no
controle da infraestrutura de TI. Isto é igualmente verdade para as pequenas
organizações com alguns servidores e para grandes empresas com um grande
número de servidores (DRIEMEYER, 2012).
Para o nosso ambiente fizemos o download do Zabbix na forma de Appliance sobre a
plataforma em Linux, ou seja, um único arquivo que quando importado em algum aplicativo
gerenciador de máquinas virtuais (VMware Workstation), cria uma VM com o sistema
operacional Linux, e junto ao SO uma versão pré-instalada e pré configurada do Zabbix,
sendo necessários apenas alguns ajustes de configuração para o funcionamento do servidor.
Na figura 27 a VM do Zabbix criada no VMware Worstation após importação.
57
Figura 27 - VM do Zabbix
Fonte: Autoria própria
Depois de importada, a VM funciona igual a um servidor físico. As configurações do
zabbix foram feitas de duas maneiras: através da tela de console do Linux, como mostra na
figura 28 e através da interface web como mostra na figura 29.
58
Figura 28 - Zabbix tela do console
Fonte: Autoria própria
Figura 29 - Zabbix interface Web
Fonte: Autoria própria
Nosso experimento foi todo configurado para trabalhar através do SNMP (Simple
Network Management Protocol), para isto necessitamos efetuar as configurações no Zabbix
59
para que este pudesse ser capaz de receber e verificar todo tipo de evento SNMP. As
configurações foram feitas basicamente como mostra a figura 30.
Figura 30 - Configurações Zabbix
Fonte: Autoria própria
Após os eventos SNMP terem sido recebidos, estes são interpretados e armazenados.
Com o acumulo destes eventos os gráficos podem ser gerados para posterior analise, como na
Figura 31
60
Figura 31 - Zabbix gerando gráficos a partir de pacotes SNMP
Fonte: Autoria própria
9.2
EXPERIMENTO 1 – MULTICAST EM UMA REDE LAN
9.2.1 Recursos Utilizados
Figura 32 - Roteador Cisco
Fonte: (CERTIFICATION KITS, 2012)
1x – Roteador Cisco 1751V;
Versão do firmware: Version 12.2(1r)XE1, RELEASE SOFTWARE (fc1)
61
Figura 33 - Switch 3COM
Fonte: (ZDTRONIC, 2012)
1x – Switch 3Com 4500 SuperStack 3
Versão do firmware: 3Com OS V3.03.02s168p15
Foi montado o experimento de uma rede local conforme a Figura 34. A partir deste foi
feita a transmissão de um stream de vídeo nos modos ponto-a-ponto, broadcast e multicast,
assim foi possível comparar a utilização de banda na interface do servidor do vídeo.
Router A
Switch A
Servidor
Stream
PC1
PC2
PC3
Figura 34 - Experimento
Fonte: Autoria Própria
Todas as configurações foram feitas a partir da VLAN 90, e os IPs foram distribuídos
conforme a tabela 2.
62
Equipamento
IP
Mascara
GW
Interface
Router A
90.90.90.254
255.255.255.0
N/A
FastEthernet0/0
Switch A
90.90.90.253
255.255.255.0
90.90.90.254
Ethernet1/0/24
Servidor Stream
90.90.90.2
255.255.255.0
90.90.90.254
Ethernet1/0/2
PC 1
90.90.90.1
255.255.255.0
90.90.90.254
Ethernet1/0/1
PC 2
90.90.90.3
255.255.255.0
90.90.90.254
Ethernet1/0/3
PC 3
90.90.90.4
255.255.255.0
90.90.90.254
Ethernet1/0/4
Quadro 2 - IPs Utilizados
Fonte: Autoria Própria
9.2.2
Configuração Switch
#vlan 90
#
interface Vlan-interface90
ip Address 90.90.90.253 255.255.255.0
#
#
interface Ethernet1/0/1
port access vlan 90
#
interface Ethernet1/0/2
port access vlan 90
#
interface Ethernet1/0/3
port access vlan 90
#
interface Ethernet1/0/4
port access vlan 90
#
63
interface Ethernet1/0/24
port link-type trunk
port trunk permit vlan all
#
#
ip route-static 0.0.0.0 0.0.0.0 90.90.90.254 preference 60
#
9.2.3
Configuração Roteador
hostname TCC_UTFPR
!
ip multicast-routing
!
interface FastEthernet0/0.90
description *** VLAN 90 TCC ***
encapsulation dot1Q 90
ip Address 90.90.90.254 255.255.255.0
!
snmp-server community public RO
snmp-server trap-source FastEthernet0/0.90
snmp-server source-interface informs FastEthernet0/0.90
snmp-server enable traps snmp authentication linkdown linkup coldstart warmstart
snmp-server enable traps vrrp
snmp-server enable traps ds1
snmp-server enable traps eigrp
snmp-server enable traps tty
snmp-server enable traps xgcp
snmp-server enable traps aaa_server
snmp-server enable traps isdn call-information
snmp-server enable traps isdn layer2
snmp-server enable traps isdn chan-not-avail
64
snmp-server enable traps isdn ietf
snmp-server enable traps icsudsu
snmp-server enable traps hsrp
snmp-server enable traps config
snmp-server enable traps entity
snmp-server enable traps cpu threshold
snmp-server enable traps config-copy
snmp-server enable traps flash insertion removal
snmp-server enable traps frame-relay
snmp-server enable traps frame-relay subif
snmp-server enable traps ospf state-change
snmp-server enable traps ospf errors
snmp-server enable traps ospf retransmit
snmp-server enable traps ospf lsa
snmp-server enable traps ospf cisco-specific state-change nssa-trans-change
snmp-server enable traps ospf cisco-specific state-change shamlink interface-old
snmp-server enable traps ospf cisco-specific state-change shamlink neighbor
snmp-server enable traps ospf cisco-specific errors
snmp-server enable traps ospf cisco-specific retransmit
snmp-server enable traps ospf cisco-specific lsa
snmp-server enable traps syslog
snmp-server enable traps cnpd
snmp-server enable traps rtr
snmp-server enable traps atm subif
snmp-server enable traps pim neighbor-change rp-mapping-change invalid-pim-message
snmp-server enable traps ipmulticast
snmp-server enable traps mvpn
snmp-server enable traps msdp
snmp-server enable traps rsvp
snmp-server enable traps pppoe
snmp-server enable traps l2tun session
snmp-server enable traps bgp
snmp-server enable traps ipmobile
snmp-server enable traps dial
65
snmp-server enable traps dsp card-status
snmp-server enable traps event-manager
snmp-server enable traps voice poor-qov
snmp-server enable traps voice fallback
snmp-server enable traps dnis
snmp-server host 90.90.90.1 public
Foi necessário habilitar o serviço SNMP no roteador para conseguirmos capturar os
pacotes da sua interface e assim gerar os gráficos de ocupação.
9.2.4
Avaliando Pacotes IGMP na Rede
Utilizamos o PC3(90.90.90.4) com o Wireshark para coletar os pacotes IGMP que
estavam trafegando na rede durante todos os testes.
Em 2 minutos de coleta, foram capturados pacotes de IGMP como o Membership
Query(224.0.0.1) enviado pelo router em intervalos de 1 minuto conforme figura 35.
Figura 35 - Pacotes capturados antes dos testes
66
Fonte: Autoria Própria
Também foram capturados os pacotes de LLMNR - Link-Local Multicast Name
Resolution (224.0.0.252), protocolo de resolução de nomes similar ao DNS. Este protocolo já
resolve endereços em IPv6, diferentemente do NETBIOS que só resolve IPv4.
Com o
LLMNR o próprio host resolve os nomes numa rede sem DNS, utilizando a porta UDP 5355
com um endereço IPv6 especifico, já o NETBIOS usa broadcast. O LLMNR já vem nos
seguintes sistemas operacionais Win Vista, Win 7 e Win Server 2008.
Outro pacote capturado foi o SSDP – Simple Service Discovery Protocol
(239.255.255.250), protocolo este utilizado para descoberta de serviços na rede como UPnP
(Universal Plug enad Play).
A partir dessa rápida coleta já percebemos que pacotes multicast trafegam em nossa
rede a partir de serviços já definidos pelos próprios softwares e Sistemas Operacionais
instalados em nossas máquinas.
Com o comando show arp – a a partir da mesma máquina, podemos verificar os
endereços IPs da rede e seus respectivos MACs, conforme figura 36.
Figura 36 - Endereços Físicos
Fonte: Autoria Própria
Nos endereços multicast o mapeamento do MAC é montado a partir do prefixo
multicast (01-00-5E) mais os 23 bits menos significativos do IP, como já explicado
anteriormente. Na figura 37 é mostrado um exemplo do mapeamento, foi utilizado o endereço
239.255.255.250 (SSDP) para este exemplo.
67
Endereço nivel 3
HEXA
Binario
239
255
255
250
EF
FF
FF
FA
1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0
5 bits
23 menos significativos
perdidos
HEXA
01
00
5E
7F
FF
FA
Binário
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0
Endereço multicast nivel 2
01
00
94
127
255
250
Figura 37 - Mapeamento de endereço para Multicast
Fonte: Autoria Prórpia
Avaliando no roteador temos apenas alguns IPs de Multicast na sua tabela de
roteamento conforme figura 38.
Figura 38 - Grupos IGMP no Roteador
Fonte: Autoria Própria
9.2.5
Transmissão Unicast
Para esse experimento foram criados 3 streams de vídeo a partir da máquina
servidora(90.90.90.2). Cada stream teve como endereço de destino o IP de um host da rede
(PC1, PC2 e PC3).
Monitorando a interface ethernet do servidor por cerca de 20 minutos, tivemos um
pico de 4,45 Mbps (Mega Bits per Second) e uma média de 2,5 Mbps durante o intervalo de
teste. A figura 39 mostra a coleta neste intervalo.
68
Figura 39 - Ocupação da banda em Unicast
Fonte: Autoria Própria
9.2.6
Transmissão Broadcast
Para esse experimento foi criado um único stream de vídeo a partir da máquina
servidora (90.90.90.2), com o IP de destino 90.90.90.255(broadcast da rede).
Monitorando a interface ethernet do servidor por cerca de 20 minutos, tivemos um
pico de 1,2 Mbps e uma média de 0,6 Mbps durante o intervalo de teste.
A figura 40 mostra a coleta neste intervalo.
Figura 40 - Ocupação da banda em Broadcast.
Fonte: Autoria Própria
69
9.2.7
Transmissão Multicast
Para esse experimento foi criado um único stream de vídeo a partir da máquina
servidora(90.90.90.2), com o IP de destino 239.100.100.100(endereço do intervalo de IPs
Multicast). Vale salientar que iniciamos o sTreeam com o IGMP Snooping desabilitado no
switch.
Monitorando a interface ethernet do servidor por cerca de 20 minutos, tivemos um
pico de 1,65 Mbps e uma média de 1 Mbps durante o intervalo de teste.
A figura 41 mostra a coleta neste intervalo.
Figura 41 - Ocupação da banda em multicast.
Fonte: Autoria Própria
Na figura 42 é possivel ver no wireshark os hosts requisitando entrada no grupo
multicast do IP 239.100.100.100, ou seja as mensagens de join. Conseguimos ver todos
requisitando entrada no grupo pois o IGMP Snooping não está habilitado, sendo assim as
mensagens IGMP são tratadas como broadcast pelo switch.
70
Figura 42 - Pacotes IGMP capturados no WireShrk durante o teste Multicast
Fonte: Autoria Própria
Verificado na figura 43 o grupo multicast criado no roteador.
Figura 43 - Grupos criados no roteador(Destacado em vermelho o grupo criado)
Fonte: Autoria Própria
Após alguns minutos de teste foi habilitado o IGMP globalmente no switch com o
comando igmp-snooping enable e individualmente em cada vlan com o mesmo comando.
Na figura 44 a partir do intervalo número 132 foi habilitado o IGMP Snooping.
Percebe-se em vermelho que quando o router envia a mensagem de query, o host que está
capturando os pacotes no wireshark consegue ver as mensagens IGMP dos outros hosts da
rede. A partir do intervalo número 133 o IGMP Snooping foi habilitado, assim quando o
router envia a mensagem de query, apenas a resposta da própria interface é mostrada, ou seja,
com o IGMP Snooping os hosts não ficam recebendo tráfego desnecessário de outros pontos
da rede. Pode-se perceber esse comportamento destacado em verde na imagem.
71
Figura 44 - Captura após IGMP Snooping habilitado
Fonte: Autoria própria
Na figura 45 é mostrado o Grupo Multicast criado no switch quando igmp snooping
está habilitado.
Figura 45 - IGMP Snooping no Switch
Fonte: Autoria Própria
72
9.2.8
Comparação Final dos 3 Tipos de Transmissão.
A tabela 3 e a figura 46 comparam a ocupação na porta do servidor nos três tipos de
transmissão.
Tabela 1 - Tabela Comparativa dos 3 tipos de Transmissão
Tipo de Transmissão
Ocupação Média (Mbps)
Pico (Mbps)
Ponto-a-Ponto
2,5
4,45
Broadcast
0,6
1,2
Multicast
1
1,65
Fonte: Autoria Própria
Figura 46 - Gráfico comparativo dos 3 tipos de transmissão
Fonte: Autoria Própria
Podemos ver claramente a eficiencia do Broadcast e Multicast em comparação com a
tranmissão Ponto-a-Ponto. Se levarmos em conta que tinhamos apenas três hosts requisitando
o video já percebemos uma grande difereça na ocupação.
A diferença seria muito maior se tivessemos centenas de hosts requisitando o mesmo
stream.
Pudemos concluir que numa rede local a transmissão broadcast e multicast tiveram
numeros bem próximos, mas devemos salientar que tivemos uma qualidade de imagem e
73
sincronismo muito superior quando transmitimos em Multicas se comparado com o
broadcast.
Se somarmos a eficiencia da utilização do IGMP Snooping na rede, demostramos uma
eficiencia melhor que a do broadcast em relação a pacotes que estão trafegando entre os
hosts.
Na figura 47 é mostrado o cenário fisico do experimento.
Figura 47 - Foto do experimento em funcionamento
Fonte: Autoria Própria
9.3
EXPERIMENTO 2 – MULTICAST EM REDES DISTINTAS
9.3.1 Recursos Utilizados
Equipamentos Utilizados:
74
Figura 48 - Roteador Cisco
Fonte: (CERTIFICATION KITS, 2012)
2x – Roteador Cisco 1751V;
Versão do firmware: Version 12.2(1r)XE1, RELEASE SOFTWARE (fc1)
Figura 49 - Switch 3COM
Fonte: (ZDTRONIC, 2012)
1x – Switch 3Com 4500 SuperStack 3
Versão do firmware: 3Com OS V3.03.02s168p15
Foi montado o experimento com duas redes locais separadas por 2 roteadores
conforme a Figura 50. A partir deste foi testado a transmissão de um stream de vídeo nos
modos ponto-a-ponto e multicast, assim foi possível comparar a utilização de banda na
interface do servidor do vídeo. Foi testada a transmissão do vídeo fazendo uma limitação de
banda entre os roteadores para avaliar se o multicast poderia realmente ser uma solução para
alta ocupação do link. A tabela 4 mostra os IPs usados.
75
PC1 - 30.1.1.1 /24
MROUTER
MROUTER
Fa0/0: 10.1.1.254 /24
Fonte – 10.1.1.1 /24
Fa0/0: 30.1.1.254 /24
Router B
Se0/1: 20.1.1.2 /30
Router A
Se0/1: 20.1.1.1 /30
SW – 30.1.1.253
PC2 - 30.1.1.2 /24
PC3 - 30.1.1.3 /24
Figura 50 - Experimento montado
Fonte: Autoria Própria
Equipamento
IP
Mascara
GW
Interface
20.1.1.1
255.255.255.252
N/A
Serial
10.1.1.254
255.255.255.0
N/A
FastEthernet0/0
Servidor Stream
10.1.1.1
255.255.255.0
10.1.1.254
ligado do router
Equipamento
IP
Mascara
GW
Interface
20.1.1.2
255.255.255.252
N/A
Serial
30.1.1.254
255.255.255.0
N/A
FastEthernet0/0
Switch
30.1.1.253
255.255.255.0
30.1.1.254
Ethernet1/0/24
PC 1
30.1.1.1
255.255.255.0
30.1.1.254
Ethernet1/0/1
PC 2
30.1.1.2
255.255.255.0
30.1.1.254
Ethernet1/0/2
PC 3
30.1.1.3
255.255.255.0
30.1.1.254
Ethernet1/0/3
Router A
Router B
Quadro 3 - IPs Utilizados - Experimento 2
Fonte: Autoria Própria
9.3.2 Configuração Switch.
#vlan 90
interface Vlan-interface90
76
ip Address 90.90.90.253 255.255.255.0
#
interface Ethernet1/0/1
port access vlan 90
#
interface Ethernet1/0/2
port access vlan 90
#
interface Ethernet1/0/3
port access vlan 90
#
interface Ethernet1/0/4
port access vlan 90
#
interface Ethernet1/0/24
port link-type trunk
port trunk permit vlan all
#
ip route-static 0.0.0.0 0.0.0.0 90.90.90.254 preference 60
#
9.3.3 Configuração Roteador A.
hostname Router_A
!
boot-start-marker
boot-end-marker
!
enable secret 5 $1$kicc$VHruPIgAcwi02zEH6aBvk/
!
no aaa new-model
ip cef
77
!
ip multicast-routin
!
interface Ethernet0
no ip Address
shutdown
half-duplex
!
interface FastEthernet0
ip Address 10.1.1.254 255.255.255.0
ip pim dr-priority 42949672
ip pim sparse-mode
speed auto
!
interface Serial0
ip Address 20.1.1.1 255.255.255.252
ip pim dr-priority 4294967
ip pim sparse-mode
encapsulation ppp
ip ospf network broadcast
!
router ospf 1
log-adjacency-changes
network 10.1.1.0 0.0.0.255 area 0
network 20.1.1.0 0.0.0.3 area 0
!
ip forward-protocol nd
!
no ip <http server
no ip <http secure-server
ip pim rp-Address 10.1.1.254
ip pim autorp listener
ip pim send-rp-announce Serial0 scope 32
ip pim send-rp-announce FastEthernet0 scope 32
78
ip pim register-source Serial0
!
snmp-server community public RO
snmp-server enable traps snmp authentication linkdown linkup coldstart warmstart
snmp-server enable traps vrrp
snmp-server enable traps ds1
snmp-server enable traps tty
snmp-server enable traps eigrp
snmp-server enable traps flash insertion removal
snmp-server enable traps icsudsu
snmp-server enable traps isdn call-information
snmp-server enable traps isdn layer2
snmp-server enable traps isdn chan-not-avail
snmp-server enable traps isdn ietf
snmp-server enable traps aaa_server
snmp-server enable traps atm subif
snmp-server enable traps bstun
snmp-server enable traps cnpd
snmp-server enable traps config-copy
snmp-server enable traps config
snmp-server enable traps dlsw
snmp-server enable traps entity
snmp-server enable traps event-manager
snmp-server enable traps frame-relay
snmp-server enable traps frame-relay subif
snmp-server enable traps hsrp
snmp-server enable traps ipmobile
snmp-server enable traps ipmulticast
snmp-server enable traps msdp
snmp-server enable traps mvpn
snmp-server enable traps ospf state-change
snmp-server enable traps ospf errors
snmp-server enable traps ospf retransmit
snmp-server enable traps ospf lsa
79
snmp-server enable traps ospf cisco-specific state-change nssa-trans-change
snmp-server enable traps ospf cisco-specific state-change shamlink interface-old
snmp-server enable traps ospf cisco-specific state-change shamlink neighbor
snmp-server enable traps ospf cisco-specific errors
snmp-server enable traps ospf cisco-specific retransmit
snmp-server enable traps ospf cisco-specific lsa
snmp-server enable traps pim neighbor-change rp-mapping-change invalid-pim-messa
ge
snmp-server enable traps pppoe
snmp-server enable traps cpu threshold
snmp-server enable traps rsvp
snmp-server enable traps rtr
snmp-server enable traps stun
snmp-server enable traps syslog
snmp-server enable traps l2tun session
snmp-server host 10.1.1.2 public
!
control-plane
!
!
line con 0
line aux 0
line vty 0 4
no login
!
end!
9.3.4 Configuração Roteador B
hostname Router_B
!
boot-start-marker
80
boot-end-marker
!
enable secret 5 $1$f1HV$9pDS/z4NJScY6gfunfVEr1
!
no aaa new-model
!
resource policy
!
memory-size iomem 15
mmi polling-interval 60
no mmi auto-configure
no mmi pvc
mmi snmp-timeout 180
!
ip cef
ip multicast-routing
!
interface FastEthernet0/0
description ***INTERFACE LOCAL B***
ip Address 30.1.1.254 255.255.255.0
ip pim sparse-mode
speed auto
!
interface Serial0/0
ip Address 20.1.1.2 255.255.255.252
ip pim sparse-mode
encapsulation ppp
ip ospf network broadcast
clock rate 2000000
!
router ospf 1
log-adjacency-changes
redistribute connected
network 20.1.1.0 0.0.0.3 area 0
81
network 30.1.1.0 0.0.0.255 area 0
!
router bgp 1
no synchronization
bgp log-neighbor-changes
no auto-summary
!
no ip <http server
!
ip pim rp-Address 10.1.1.254
ip pim autorp listener
ip pim send-rp-announce Serial0/0 scope 32
ip pim send-rp-announce FastEthernet0/0 scope 32
!
!control-plane
!
line con 0
line aux 0
line vty 0 4
no login
!
end
Novamente foi necessário habilitar o servidor SNMP no roteador A para
conseguirmos capturar os pacotes da sua interface e avaliar a banda utilizada entre os links.
9.3.5 Transmissão Ponto-a-Ponto – Banda 2Mbps
Para esse experimento assim como no experimento1 (LAN), foram criados 3 streams
de vídeo a partir da máquina servidora(10.1.1.1). Cada stream teve como endereço de destino
o IP de um host da rede 30.1.1.0/24, forçando assim o roteamento multicast entre o RouteA e
Router B.
82
Neste experimento a banda foi limitada entre os roteadores (interfaces Seriais) em 2
Mbps. Monitorando a interface Serial do RouterA por cerca de 20 minutos, foi obtido o pico
de 2 Mbps durante todo o intervalo do experimento, ou seja, foi utilizado todo o recurso do
link. Foi observado que a qualidade do vídeo nos receptores foi muito ruim. Apresentou uma
quantidade muito alta de macroblocos na imagem e muito atraso entre som e imagem.
Figura 51 - Ocupação da banda em Unicast banda de 2Mbps – Pico 2Mbps
Fonte: Autoria Própria
Destacado em vermelho na figura 51 o tempo do teste. Foi observado que toda a banda
do link estava sendo usada.
9.3.6 Transmissão Multicast – Banda 2 Mbps
Para esse experimento foi criado um único stream de vídeo a partir da máquina
servidora(10.10.10.1), com o IP de destino 239.100.100.100(endereço do intervalo de IPs
Multicast).
Monitorando a interface Serial do RouterA por cerca de 20 minutos, tivemos o pico de
aproximadamente 1.5 Mbps durante todo o intervalo de teste, ou seja, para este caso o
Multicast otimizou a utilização do link que ainda tinha cerca de 500 kbps livres.
Além da melhora na utilização da banda foi percebida uma ótima qualidade de som,
imagem e sincronismo nos streams em cada host da rede que estava recebendo o tráfego.
83
Figura 52 - Ocupação da banda em Multicast banda 2 Mbps – Pico 1,5Mbps
Fonte: Autoria Própria
Destacado em vermelho na figura 52 o tempo do teste. Foi observado melhora na
utilização da banda.
9.3.7 Transmissão Ponto-a-Ponto – Banda 8 Mbps
Para esse experimento aumentamos a banda do link entre os roteadores para 8 Mbps
com o comando clock rate 8000000, na interface Serial do RouterA.
Foram criados novamente 3 streams
de vídeo a partir da máquina
servidora(10.1.1.1). Cada stream teve como endereço de destino o IP de um host da rede
30.1.1.0/24, forçando assim o roteamento multicast entre o RouteA e Router B.
Monitorando a interface Serial do Router A por cerca de 20 minutos, tivemos o pico
de aproximadamente 4,5 Mbps durante todo o intervalo de teste, ou seja, no primeiro teste
tivemos aproximadamente 2,5 Mbps de banda reprimida(4,5 – 2), devido a limitação do link.
84
Figura 53 - Ocupação da banda em Unicast banda de 8Mbps – Pico 4,5Mbps
Fonte:Autoria Própria
Destacado em vermelho na figura 53 o tempo do teste.
9.3.8 Comparação Final dos 3 tipos de Transmissão.
Ao final deste experimento ficou muito claro a eficiência que o Multicast pode trazer
para uma rede, melhorando significativamente a utilização de banda entre 2 links.
Pode-se perceber que a soma do tráfego dos 3 streams de vídeos era de
aproximadamente 4,5 Mbps, uma banda muito maior do que a estabelecia inicialmente entre
os 2 roteadores (2 Mbps). Neste caso a transmissão via Multicast seria uma ótima alternativa
para realizar a entrega, principalmente quando diversos usuários tem um link compartilhado
com baixa capacidade.
Novamente se levarmos em conta que tinhamos apenas três hosts requisitando o video
em um link de 2 Mbps, a banda não foi suficiente para a demanda, se tivessemos centenas de
hosts requisitando o mesmo stream, a qualidade seria infinitamente pior do que a já
apresentada.
Podemos concluir que a transmissão multicast seria uma solução bastante apropriada,
visto que indenpendente do numero de usuários requisitando o video, a banda utilizada seria
de apenas 1,5 Mbps. Valores são comparados na tabela 5.
85
Tabela 2 - Tabela comparativa da ocupação dos links durante os experimentos
Tipo de Transmissão
Banda do Link (Mbps)
Ponto-a-Ponto
Multicast
Ponto-a-Ponto
Fonte: Autoria Própria
Pico (Mbps)
Ocupação do Link(%)
2
2
100
2
1,5
75
8
4,5
56,25
86
10.
CONCLUSÃO
Através deste estudo foi possível familiarizar-se com uma nova tecnologia de
transmissão de dados que não constava na ementa do curso e vem sendo cada vez mais
utilizada no mercado de telecomunicações. Hoje vemos nas empresas o crescimento da
utilização do multicast principalmente quando falamos sobre serviço de IPTV, que é um
assunto cada vez mais comum quando se trata de novos serviços nas operadoras (TV ao vivo,
Radio no Desktop, ensino a distancia, treinamentos, videoconferência, entrega de dados em
tempo real, transferência de arquivos, transmissões corporativas e vídeo sobre demanda).
A partir dos experimentos propostos, foi possível ter um contato direto com a
implantação, operação e gerenciamento de uma rede trabalhando com os serviços utilizandose do multicast. Com estes foi possível avaliar na prática toda a eficiência apresentada na
teoria que este modo de transmissão pode proporcionar.
Com a conclusão dos experimentos ficaram muito claras as melhorias dos serviços
rodando a partir do multicast, tanto avaliando a rede que teve seus recursos melhor utilizados
quanto para o usuário final, que teve uma melhor qualidade de áudio, vídeo e sincronismo
recebido.
Mesmo com todas as vantagens, é importante ressaltar que algumas desvantagens
podem ser significantes quando se está planejando uma readequação em uma rede para
suportar o Multicast. A primeira delas é que todos os equipamentos devem ter firmwares com
versões que suportem o multicast, caso contrário será necessário um melhor estudo sobre
métodos de tunelamento para possibilitar o envio de forma adequada. Outra desvantagem é
que a tecnologia trabalha com pacotes UDP, ou seja, a entrega é baseada em melhor esforço,
sendo assim a confiabilidade na entrega pode deixar a desejar assim como a questão da
segurança.
Todas as desvantagens citadas acima abrem um leque de possibilidades para estudos e
desenvolvimentos de melhorias futuras nesse ramo.
Ao fim deste trabalho foram adquiridos os conhecimentos necessários para o
planejamento de uma solução que atenda a necessidade de alto tráfego em uma rede com certa
limitação de banda, bem como a adequação de uma rede existente para suportar a esta nova
tecnologia.
87
11.
REFERÊNCIAS
ADAMS, A. Request for Comments: 3973. Disponível em:
<http://tools.ietf.org/rfc/rfc3973.txt>. Acesso em: 28 jul. 2012.
An Introduction to IP Multicast. Disponível em:
<http://ganges.cs.tcd.ie/undergrad/4ba2/multicast/>. Acesso em: 9 mar. 2012.
ARMSTRONG, FREIER. Multicast Transport Protocol. Disponível em:
<http://datatracker.ietf.org/doc/rfc1301/>. Acesso em: 30 jul. 2012.
CERTIFICATIONS KITS. Disponível em:
<http://www.certificationkits.com/images/17212.jpg>. Acesso em: 24 ago. 2012.
Cisco Systems, Multicast VLAN Registration (MVR) on a Catalyst 3750 Sample
Configuration. Disponível em:
<http://www.cisco.com/en/US/products/hw/switches/ps5023/products_configuration_example
09186a008076c6e0.shtml>. Acesso em: 25 jul. 2012.
DIG: Enterprise Campus Topology. IP Multicast Technology Overview. Disponível em:
<http://www.cisco.com/en/US/docs/ios/solutions_docs/ip_multicast/White_papers/mcst_ovr.h
tml. Acesso em: 9 mar. 2012.
DRIEMEYER, Marco. Guia de Instalação do Zabbix 1.8.x no CentOS 6. Disponível em:
<https://docs.plenatech.com.br/linux/zabbix_centos>. Acesso em: 20 mar. 2012.
DIAS, Beethovem Zanella. Projeto Multicast. Disponível em:
<http://mesonpi.cat.cbpf.br/mcast>. Acesso em: 13 jul. 2012.
FEANER, BILL. Protocol Independent Multicast - Sparse Mode (PIM-SM). Disponível
em: <http://www.rfc-editor.org/rfc/rfc4601.txt>. Acesso em: 25 abr. 2012.
FILIPPETTI, Marco Aurélio. CCNA 4.1 Guia Completo de Estudo. 1.ed. Florianópolis:
Visual Books, 2008.
FRANCISCO, Antonio João Ferreira. MULTICAST. Disponível em:
<http://www.ime.usp.br/~ajoaoff/mac499/monografia/multicast.html>.
Acesso em: 23 set. 2011.
88
GALIANO, Herbert Luna. Soluções Multicasting na Internet. Disponível em:
<http://penta2.ufrgs.br/rc952/trab2/hl_intro.html>. Acesso em 05 set. 2011.
GASPARY, Luciano Paschoal . Multicast Tutorial. Disponível em:
<http://penta.ufrgs.br/redes296/multicast/tutorial.html>. Acesso em: 03 set. 2011.
GROSSMANN, Jeremy; EROMENKO Alexey. What is GNS3?. Disponível em:
<http://www.gns3.net/ >. Acesso em: 10 set. 2011.
HENRIQUE, Julio. Monitoração de tráfego com MRTG. Disponível em:
<http://www.vivaolinux.com.br/artigo/Monitoracao-de-trafego-com-MRTG>.
Acesso em: 17 set. 2011.
KIM, Hyung. VLC media player. 2010, Disponível em: <http://www.videolan.org/vlc>.
Acesso em: 17 set. 2011.
LIN, David. IP MULTICAST. Disponível em:
<http://www.cisco.com/en/US/products/ps6552/products_ios_technology_home.htm>.
Acesso em: 03 set. 2011.
MARQUES, Vera; CARNEIRO, Jorge. Multicast. Disponível em:
<http://www.ipg.pt/user/~sduarte/rc/trabalhos/Multicast/Multicast.htm#Autores%20%C
2%A0 >.
Acesso em: 10 set. 2011
MICROSOFT. DESCRIÇÃO GERAL DO ENCAMINHAMENTO UNICAST. Disponível
em <http://technet.microsoft.com/pt-pt/library/cc786079(v=ws.10).aspx>. Acesso em: 20
mar. 2012.
MOY, J. Request for Comments: 1584. 1994. Disponível em:
<http://tools.ietf.org/rfc/rfc1584.txt>. Acesso em: 28 jul. 2012
MULTIREDE , MCAST-BKIP: Multicast em Backbones IP. São Paulo, 2011
ROESLER , Valter. Transmissão Multicast versão resumida. 2001. 15f. Tese Universidade do vale do Rio do Sinos Unisinos, São Leopoldo, 2001.
89
STARDUST. MCAST2000 - A Survey of the History of Internet Multicast. California:
Campbell, 1999.
TANENBAUM, Andrew S. Redes de computadores. 4. ed. Rio de Janeiro: Campus, 2003.
WAITZMAN, D; PARTRIDGE, C. Request For Comments: 1075. 1988
Disponível em: <http://www.ietf.org/rfc/rfc1075.txt>. Acesso em: 21 jul. 2012.
WILLIAMSON, Beau. Developing IP Multicast Networks – Cisco Press Publications.
2003
ZDTRONIK. Disponível em:
<http://www.zdtronic.com/images/3CR17561-91.jpg>. Acesso em: 24 ago. 2012
Download