IP Multicast Conceitos Estrutura da Apresentação Unicast X Multicast Características Estrutura Endereçamento Modelo de Serviço IGMP RPF Protocolos de Roteamento Características Principais Protocolos Intradomínio Principais Protocolos Entredomínio Unicast X Multicast Unicast Host Multicast Host Unicast X Multicast 1 Características RFC 1112 Cada grupo é identificado por um endereço classe D Membros de um grupo podem estar em qualquer lugar da internet Membros podem entrar e sair dos grupos indicando isto aos roteadores Roteadores utilizam protocolos de roteamento multicast para gerenciar os grupos Características 3 Endereçamento Os grupos utilizam a classe D Endereços reservados 224.0.0.0 até 239.255.255.255 224.0.0.0 até 224.0.0.255 para a IANA 239.0.0.0 até 239.255.255.255 para utilização em domínios privados de multicast Endereços livres Características 224.0.1.0 até 238.255.255.255 233.0.0.0 utilizado por AS 4 Endereçamento para Camada 2 O endereço IP é utilizado para compor o endereço da camada 2: 32 Bits 23 Bits 239.255.0.1 01-00-5e-7f-00-01 24 Bits 24 Bits 48 Bits Protocolos de Roteamento figura 1 Endereço para um AS Exemplo AS rederio: 2715 A 9B 0xA9B 10 155 233.10.155.0/24 Endereçamento figura 2 Modelo de Serviço Protocolos Host-to-Router Hosts Roteadores Protocolos de Roteamento Multicast Modelo de Serviço 5 Internet Group Management Protocol—IGMP IGMP Hosts informam aos roteadores a que grupos pertencem Roteadores perguntam a que grupos pertencem os hosts diretamente conectados Host envia mensagem informando que não participa mais de um grupo 6 IGMP—Participando de um Grupo Entrando Confirmando Deixando oGrupo Grupo emum um Grupo 224.1.1.1 X Evitado 224.1.1.1 H2 H1 Report 224.1.1.1 224.1.1.1 X Leave to Evitado Report 224.0.0.2 Group Specific Query Query to 224.1.1.1 Host envia Leave para 224.0.0.2 •• Roteador envia Queries periódicos para 224.0.0.1 ••Um Router envia query específico para 224.1.1.1 Host envia IGMP Report participar do grupo membro do grupo porpara subnet responde Não recebe IGMPevitam Reportos em ~3 segundos •• Outros membros Reports • Expira o tempo do Grupo 224.1.1.1 IGMP figura 30 Reverse Path Forwarding—RPF RPF O roteador propaga o pacote multicast por todas as interfaces menos a de origem 7 RPF - Funcionamento Pacote Multicast da fonte 198.14.32.10 RPF Check indica sucesso! S0 S1 E0 E1 Unicast Route Table Network Intf Metric 151.10.0.0/16 E1 4 198.14.32.0/24 S0 3 204.1.16.0/24 E0 11 Pacote chega através da interface correta! RPF figura 6 RPF - Funcionamento Pacote Multicast da fonte 151.10.3.21 RPF Check indica erro! S0 S1 E0 E1 Unicast Route Table Network Intf Metric 151.10.0.0/16 E1 4 198.14.32.0/24 S0 3 204.1.16.0/24 E0 11 Pacote chega através da interface errada! RPF figura 5 Protocolos de Roteamento Árvores de Distribuição Source tree –Utiliza mais memória (S x G), contudo percorre caminhos otimizados, minimizando o atraso Shared tree –Utiliza menos memória (G), contudo percorre caminhos não otimizados, podendo introduzir atraso Protocolos PIM, MBGP, MSDP Protocolos de Roteamento 8 Source Distribution Tree or Shortest Path Source Notation: (S, G) S = Source G = Group A B D C Receiver 1 Protocolos de Roteamento F E Receiver 2 figura 7 Shared Distribution Tree Source 1 Notation: (*, G) * = All Sources G = Group Source 2 A B D (Shared Root) F C Receiver 1 Protocolos de Roteamento E Receiver 2 figura 8 Protocolos de Roteamento Modelos de protocolos Dense-mode Procedimento com broadcast e prune Sparse-mode Protocolos de Roteamento Procedimento com join explícito 9 Protocolos de Roteamento Protocolos Pressupõe dense-mode a existência densa de grupos Ramificação excluída não recebe os dados DVMRP—Distance Vector Multicast Routing Protocol Dense-mode PIM—Protocol Independent Multicast Protocolos de Roteamento 10 Protocolos de Roteamento Protocolos Sparse-mode Pressupõe a existência esparsa de grupos Utiliza source ou shared distribution trees Procedimento com join explícito Join se propaga do receptor até a fonte ou Rendezvous Point (Sparse mode PIM) ou Core (Core Based Tree) Protocolos de Roteamento 11 Protocol Independent Multicasting– Dense Mode – PIM-DM Procedimento de broadcast e prune é ideal para grupos densamente espalhados Source trees são criadas sob demanda, baseadas em RPF PIM-DM 12 Exemplo PIM Dense Mode Source A B G C D F H E I Receiver 1 Protocolos de Roteamento Receiver 2 figura 9 Exemplo PIM Dense Mode Source Initial Flood of Data and Creation of State A B G C D F H E I Receiver 1 Protocolos de Roteamento Receiver 2 figura 10 Exemplo PIM Dense Mode Source Prune to Non-RPF Neighbor A B G Prune C D F H E I Receiver 1 Protocolos de Roteamento Receiver 2 figura 11 Exemplo PIM Dense Mode Source C and D Assert to Determine Forwarder for the LAN, C Wins A B G C D F Asserts H E I Receiver 1 Protocolos de Roteamento Receiver 2 figura 12 Exemplo PIM Dense Mode Source I Gets Pruned E’s Prune is Ignored G’s Prune is Overridden A Prune B G C D F H Prune E I Receiver 1 Protocolos de Roteamento Join Override Receiver 2 figura 13 Exemplo PIM Dense Mode Source New Receiver, I Sends Graft A B G C D F H Graft E I Receiver 1 Receiver 2 Receiver 3 Protocolos de Roteamento figura 14 Exemplo PIM Dense Mode Source A B G C D F H E I Receiver 1 Receiver 2 Receiver 3 Protocolos de Roteamento figura 15 Protocol Independent Multicasting– Sparse Mode – PIM-SM Modelo de join explícito Receptores são unidos aos Rendezvous Point (RP) Fontes são registradas nos RP Os dados fluem pela shared tree se encaminhado apenas para os lugares que os requisitaram Checagem do RPF para a shared tree utiliza os RP Checagem do RPF para a source tree utiliza a fonte PIM-SM 13 Exemplo PIM Sparse Mode Source A B C E Receiver 1 Protocolos de Roteamento D RP figura 16 Receiver 2 Exemplo PIM Sparse Mode Receiver 1 Joins Group G C Creates (*, G) State, Sends (*, G) Join to the RP Source A B D RP Join C E Receiver 1 Protocolos de Roteamento figura 17 Receiver 2 Exemplo PIM Sparse Mode RP Creates (*, G) State Source A B C E Receiver 1 Protocolos de Roteamento D RP figura 18 Receiver 2 Exemplo PIM Sparse Mode Source Sends Data A Sends Registers to the RP Source Register A B C E Receiver 1 Protocolos de Roteamento D RP figura 19 Receiver 2 Exemplo PIM Sparse Mode RP de-encapsulates Registers Forwards Data Down the Shared Tree Sends Joins Towards the Source Source Join A Join B C E Receiver 1 Protocolos de Roteamento D RP figura 20 Receiver 2 Exemplo PIM Sparse Mode RP Sends Register-Stop Once Data Arrives Natively Source Register-Stop A B C E Receiver 1 Protocolos de Roteamento D RP figura 21 Receiver 2 Exemplo PIM Sparse Mode C Sends (S, G) Joins to Join the Shortest Path (SPT) Tree Source A B D RP (S, G) Join C E Receiver 1 Protocolos de Roteamento figura 22 Receiver 2 Exemplo PIM Sparse Mode When C Receives Data Natively, It Sends Prunes Up the RP tree for the Source. RP Deletes (S, G) OIF and Sends Prune Towards the Source Source (S, G) Prune A B D RP (S, G) RP Bit Prune C E Receiver 1 Protocolos de Roteamento figura 23 Receiver 2 Exemplo PIM Sparse Mode New Receiver 2 Joins E Creates State and Sends (*, G) Join Source A B D RP (*, G) Join C E Receiver 1 Protocolos de Roteamento figura 24 Receiver 2 Exemplo PIM Sparse Mode C Adds Link Towards E to the OIF List of Both (*, G) and (S, G) Data from Source Arrives at E Source A B C E Receiver 1 Protocolos de Roteamento D RP figura 25 Receiver 2 Exemplo PIM Sparse Mode New Source Starts Sending D Sends Registers, RP Sends Joins RP Forwards Data to Receivers through Shared Tree Source Register A B C E Receiver 1 Protocolos de Roteamento D RP figura 26 Receiver 2 Source 2 Multicast Source Discovery Protocol—MSDP Comunicação entre domínios PIM-SM Anuncia fontes e grupos, através de SA Paridade entre roteadores MSDP MSDP 14 Mensagem de Registro Comunicação via MSDP MSDP Mensagem SA RP RP Source Receiver Domínio A Protocolos de Roteamento Domínio B figura 27 Multiprotocol Border Gateway Protocol—MBGP RFC 2283 Não propaga informação sobre o estado do Multicast MBGP Necessita do PIM para compor as árvores de distribuição Tabela diferenciadas Unicast/Multicast 15 Utilização Vídeo conferência Vídeo sob-demanda Ensino à distância Treinamento TV e Radio Dados em tempo real White board Utilização 16 Rede Rio Multicast CBPF MSDP UFRJ Source X RP DR RP Source Y PIM-SM RedeRio MBGP CGMP DR IGMP PIM-SM DR PUC FioCruz Multicast Entre-Domínios Multicast da Instituição Estações (hosts-to-routers): IGMP Roteadores (Multicast Forwarding Protocol): PIM Sparse Mode Rede Rio Multicast 17 Roteamento Multicast entre domínios MBGP MSDP with PIM-SM Multicast Source Discovery Conclusão Dimimui processamento Otimiza os enlaces Permite aplicações distribuídas Existência de pacotes descartados e duplicados Não evita congestionamentos Ausência de gerenciamento Conclusão 18 Otimização da utilização da rede Multicast Unicast 0.8 Exemplo: Streaming de Audio Todos os clientes recebendo os mesmos 8Kbps de audio 0.6 Trafego em Mbps 0.4 0.2 0 1 20 40 60 # Clientes Conclusão figura 28 80 100 Otimização da utilização da rede 5000 Multicast Unicast 1000 100 0 1000 2000 3000 Número de horas para completar uma transferência de arquivo com 100 MB Conclusão figura 29 Bibliografia IP Multicast Initiative – http://www.ipmulticast.com IBM RedBooks – http://www.redbooks.ibm.com/ SprintLink Multicast – http://www.sprintlink.net/multicast/ Multicast Services Cisco – http://www.cisco.com/warp/public/732/Tech/multicast/ Soluções Multicasting na Internet – http://penta.ufrgs.br/rc952/trab2/hl_intro.html