03.01 IP Multicast Introdução



Documentos relacionados
Sumário. Protocolos em Redes de Dados- Aula 12 -MOSPFDifuso Inter-Domnio (MSDP, MBGP e BGMP) p.4. Optimização na procura por difusão MOSPF

Conectando à malha multicast da RNP

Arquitetura TCP/IP. Parte IX Multicast (IGMP e roteamento) Fabrízzio Alphonsus A. M. N. Soares

A camada de rede do modelo OSI

** Distance Vector - Trabalha com a métrica de Salto(HOP),. O protocolo que implementa o Distance Vector é o RIP.!

Arquitectura de Redes

Redes de Distribuição de Conteúdos Enunciado do Trabalho Prático

Introdução Introduç ão Rede Rede TCP/IP Roteame Rotea nto nto CIDR

ADDRESS RESOLUTION PROTOCOL. Thiago de Almeida Correia

Consulte a exposição. Qual declaração descreve corretamente como R1 irá determinar o melhor caminho para R2?

Arquitectura de Redes

IGMP - Internet Group Management Protocol

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

Encaminhamento IP. Entrega Directa e Indirecta de Datagramas Tabela de Encaminhamento

Módulo 8 Ethernet Switching

Redes de Computadores Grupo de Redes de Computadores

Redes de Computadores 3ª Colecção Exercícios diversos 16 de Dezembro de 2005 Spanning Tree, Protocolo IP, Encaminhamento em redes IP e Cam.

Roteamento na Internet

Prof. Samuel Henrique Bucke Brito

Relatório do 2º Guião Laboratorial de Avaliação: Encaminhamento de pacotes. Licenciatura: ETI Turma : ETC1 Grupo : rd2_t3_02 Data: 30/10/2009

Redes e Serviços Internet (5388)

Comunicação de Dados

Packet Tracer 4.0: Overview Session. Conceitos e práticas

Curso: Redes II (Heterogênea e Convergente) Tema da Aula: Características Roteamento

Protocolos em Redes de Dados. Enquadramento histórico. Modo de funcionamento FEC. Antecedentes IP Switching Tag Switching. Exemplo de.

Aula 08 MPLS FCUL. Protocolos em Redes de Dados. Luís Rodrigues. Enquadramento. Modo de funcionamento. Antecedentes MPLS.

BC-0506: Comunicação e Redes Aula 04: Roteamento

Tecnologia de Redes de Computadores - aula 5

Redes de Computadores

Tabela de roteamento

Administração de Redes 2014/15. Encaminhamento estático Princípios do encaminhamento dinâmico

M3 Redes de computadores avançado (36 horas - 48 TL)

Entendendo como funciona o NAT

CONFIGURAÇÃO DE ROTEADORES CISCO. Prof. Dr. Kelvin Lopes Dias Msc. Eng. Diego dos Passos Silva

Exercícios de Revisão Edgard Jamhour. Quarto Bimestre: IPv6 e Mecanismos de Transiçao

Aula-17 Interconexão de Redes IP (Internet Protocol) Prof. Dr. S. Motoyama

Teleprocessamento e Redes (MAB-510) Gabarito da Segunda Lista de Exercícios 01/2010

Redes de Computadores. Trabalho de Laboratório Nº2

Aula 20. Roteamento em Redes de Dados. Eytan Modiano MIT

Arquitetura de Rede de Computadores

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

Entendendo o IPv6 (I)

Roteamento Unicast e Multicast. Profa. Priscila Solís Barreto

INTRODUÇÃO ÀS REDES DE COMPUTADORES

Máscaras de sub-rede. Fórmula

A camada de rede. A camada de rede. A camada de rede. 4.1 Introdução. 4.2 O que há dentro de um roteador

Arquitetura TCP/IP. Parte III Endereçamento IP e roteamento. Fabrízzio Alphonsus A. M. N. Soares

A Internet e o TCP/IP

CURSO AVANÇADO DE BGP DESIGN COM ROTEADORES CISCO

Multiprotocol Label Switching. Protocolos em Redes de Dados- Aula 08 -MPLS p.4. Motivação: desempenho. Enquadramento histórico

Redes TCP/IP. Prof. M.Sc. Alexandre Fraga de Araújo. INSTITUTO FEDERAL DO ESPÍRITO SANTO Campus Cachoeiro de Itapemirim

FICHA INFORMATIVA E DE TRABALHO MÓDULO REDE LOCAL INSTALAÇÃO

Introdução Ligação direta Ligação direta Default

Capítulo 10 - Conceitos Básicos de Roteamento e de Sub-redes. Associação dos Instrutores NetAcademy - Julho de Página

ADMINISTRAÇÃO DE REDES DE COMPUTADORES UALG/FCT/DEEI 2005/2006

Interconexão de Redes Parte 3. Prof. Dr. S. Motoyama

Arquitetura TCP/IP. Parte IV Mapeamento de endereços IP em endereços físicos (ARP) Fabrízzio Alphonsus A. M. N. Soares

Interconexão de redes locais. Repetidores. Pontes (Bridges) Hubs. Pontes (Bridges) Pontes (Bridges) Existência de diferentes padrões de rede

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

Endereçamento IP. Rede 2 Roteador 2 1

FormaçãoIPv6-Maputo. Endereçamento Maputo 26 de Agosto de 2008 Carlos Friaças e Pedro Lorga

PRIMEIRA LISTA DE EXERCÍCIOS CAR. 48 Hosts Link C 6 Hosts

Redes de Computadores II INF-3A

Plano de endereçamento IPv6 da RCTS

Sistemas Distribuídos

Fundamentos à Redes de Computadores. Prof. Victor Guimarães

Laboratório - Visualização das tabelas de roteamento do host

Redes de Computadores

Redes de Computadores. Protocolo IP

Comunicação de Dados IV. Gabarito da Lista de Exercícios 2

Redes e Conectividade

Fundamentos de Redes de Computadores. Elementos de Redes Locais

O endereço IP (v4) é um número de 32 bits com 4 conjuntos de 8 bits (4x8=32). A estes conjuntos de 4 bits dá-se o nome de octeto.

TUDO SOBRE ENDEREÇOS IP

Protocolos de Roteamento Multicast

O Protocolo IP (2) Prof. José Gonçalves Pereira Filho Departamento de Informática

Comunicação Multicast

GESTÃO DE SISTEMAS E REDES YNAMIC HOST CONFIGURATION PROTOCOL

Endereçamento IP, Sub-redes e Roteamento

Aula 03 Regras de Segmentação e Switches

Encaminhamento em redes instáveis. Localização de nós em redes Peer-to-Peer Napster Gnutella Chord

Modelo em Camadas Arquitetura TCP/IP/Ethernet. Edgard Jamhour

Protocolos em Redes de Dados Ficha de Laboratório Número 4 BGP

Protocolos básicos de LANs IP (primeiro trabalho laboratorial)

Visão geral sobre encaminhamento

Sumário INTRODUÇÃO... 4 PROTOCOLO ARP...5 ARP - ADDRESS RESOLUTION PROTOCOL...5 FUNCIONAMENTO DO PROTOCOLO ARP...5 CACHE ARP... 6

Redes de Comunicações Capítulo 6.1

Módulo 9 Conjunto de Protocolos TCP/IP e endereçamento IP

Arquitectura de Redes

Serviço de datagrama não confiável Endereçamento hierárquico. Facilidade de fragmentação e remontagem de pacotes

Capítulo 11: NAT para IPv4

Transcrição:

03.01 IP Multicast Introdução Fonte: Cisco RDC/ISEL-DEETC-SRT 1

Introdução Porquê Multicast? Quando se envia os mesmos dados a múltiplos receptores Melhor utilização da largura de banda disponível Menor processamento host/router Os endereços dos receptores é desconhecido à origem Aplicações Conferências áudio/vídeo Anúncios de serviços/descoberta de recursos Distribuição de stock Ex.: IPTV, Shoutcast, VLC RDC/ISEL-DEETC-SRT 2

Unicast/Multicast Host Unicast Router Host Multicast Router RDC/ISEL-DEETC-SRT 3

IP Multicast Service Model RFC 1112 Cada grupo Multicast é identificado por um endereço pretencente à classe D Membros do grupo podem estar em qualquer ponto da Internet Os membros juntam-se e abandonam do grupo e indicam isto aos seus routers Emissores e receptores são distintos Os emissores não precisam de se juntar ao grupo Os routers escutam em todos os endereços de multicast e usam protocolos de encaminhamento multicast para gerir os grupos RDC/ISEL-DEETC-SRT 4

IP Multicast Service Model (Cont.) Endereços de grupo Endereços classes D 3 bits de maior peso activos (224.0.0.0) Desde o 224.0.0.0 até 239.255.255.255 Well known addresses atribuídos pela IANA Uso reservado: 224.0.0.0 até 224.0.0.255 224.0.0.1 todos os hosts que suportem multicast na subrede 224.0.0.2 todos os routers na subrete Endereços de uso dinâmico Global scope: 224.0.1.0-238.255.255.255 Limited scope: 239.0.0.0-239.255.255.255 Site-local scope: 239.253.0.0/16 Organization-local scope: 239.192.0.0/14 RDC/ISEL-DEETC-SRT 5

IP Multicast Service Model (Cont.) Mapear endereços IP em endereços multicast da data link RFC 1112 define o OUI 0x01005e Os 23-bits de menor peso do endereço IP 23 bits do endereço IEEE (eg. 224.2.2.2 01005e.020202) Usado pela Ethernet RDC/ISEL-DEETC-SRT 6

IP Multicast Service Model (Cont.) Protocolos Host-to-Router (IGMP) Hosts Routers Multicast Routing Protocols (PIM) RDC/ISEL-DEETC-SRT 7

Internet Group Management Protocol IGMP Define a forma como os hosts indicam aos routers sobre qual o grupo de multicast que pretendem receber Os routers solicitam os grupos aos hosts directamente ligados O RFC 1112 especifica a primeira versão do IGMP O IGMP v2 e o IGMP v3 introduzem melhorias 0940_03F8_c1 NW97_US_106 RDC/ISEL-DEETC-SRT 8 8

Reverse Path Forwarding Um router encaminha um datagrama multicast se for recebido na interface usada para enviar datagramas unicast até à origem Unicast Receiver B C Source A F D E Multicast RDC/ISEL-DEETC-SRT 9

Reverse Path Forwarding Se a verificação de RPF tiver sucesso o datagrama é encaminhado Se falhar, o datagrama é descartado Quando um datagrama é encaminhado, é enviado através das interfaces listadas na lista de interfaces de saída O pacote nunca é encaminhado de volta pela interface RPF RDC/ISEL-DEETC-SRT 10

Características Source Shortest Path ou Source Distribution Tree Notação: (S, G) S = Source G = Group A B D F Receiver 1 C Receiver 2 E RDC/ISEL-DEETC-SRT 11

Características (2) Shared Distribution Tree Source 1 Notação: (*, G) * = All Sources G = Group A B D (Shared Root) F Source 2 C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 12

Características (3) Distribution trees Source tree Usa mais memória O(S x G) mas obtêm-se caminhos óptimos desde a origem até a todos os receptores, minimiza o atraso Shared tree Usa menos memória O(G) mas pode-se obter caminhos sub óptimos da origem até a todos os receptores, pode introduzir atraso extra Protocolos PIM, DVMRP, MOSPF, CBT RDC/ISEL-DEETC-SRT 13

Características (4) Tipos de protocolos multicast Dense-mode Comportamento de broadcast e prune Semelhante ao envio de uma emissão de rádio Sparse-mode Comportamento de entrada nos grupos explícita Semelhante ao pay-per-view RDC/ISEL-DEETC-SRT 14

Características (5) Protocolos dense-mode Assume uma filiação de grupo densa Os ramos que são pruned não recebem dados Podem ser grafted mais tarde para reduzir a latência do join DVMRP Distance Vector Multicast Routing Protocol Dense-mode PIM Protocol Independent Multicast RDC/ISEL-DEETC-SRT 15

Características (6) Protocolos sparse-mode Assume que os membros de um grupo estão espalhados ao longo de uma região grande Usa source ou shared distribution trees Entrada no grupo explícita assume que ninguém quer o pacote a não ser que o peça As mensagens de join são propagadas do receptor para a origem ou para os Rendezvous Points (PIM em modo sparse mode) ou para o Core (Core Based Tree) RDC/ISEL-DEETC-SRT 16

DVMRP Broadcast and prune As source trees são criadas a pedido baseadas nas regras RPF Usa a sua própria tabela de encaminhamento Ex., uso de poison reverse Muitas implementações mrouted, Bay, Cisco RFC 1075 Apareceu o draft da v3 mas caiu em desuso RDC/ISEL-DEETC-SRT 17

PIM Dense Mode Broadcast and prune ideal para grupos densos As source trees são criadas a pedido baseando-se na regra de RPF Se a origem fica inactiva a árvore é eliminada Problemas em escalar RFC3973 RDC/ISEL-DEETC-SRT 18

PIM Dense Mode Os ramos que não têm interesse nos dados são pruned Os grafts server para alguém se juntar a uma source tree já existente Usa asserts para determinar quem vai ser o forwarder para uma LAN no caso de existirem múltiplos routers a ligar a árvore a essa rede Apaga todos as ligações ponto a ponto que não sejam RPF Limita os prunes nas ligações ponto a ponto que sejam RPF RDC/ISEL-DEETC-SRT 19

Exemplo PIM-DM Source Link Data Control A B G C D F H E I Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 20

Exemplo PIM-DM (2) Source Initial Flood of Data and Creation of State A B G C D F H E I Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 21

Exemplo PIM-DM (3) Source Prune to Non-RPF Neighbor A B Prune G C D F H E I Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 22

Exemplo PIM-DM (4) Source C and D Assert to Determine Forwarder for the LAN, C Wins A B G C Asserts D F H E I Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 23

Exemplo PIM-DM (5) Source I Gets Pruned E s Prune is Ignored G s Prune is Overridden A B Prune G C D F Join Override Prune H E I Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 24

Exemplo PIM-DM (6) Source New Receiver, I Sends Graft A B G C D F Graft H E I Receiver 1 Receiver 3 Receiver 2 RDC/ISEL-DEETC-SRT 25

Exemplo PIM-DM (7) Source A B G C D F H E I Receiver 1 Receiver 3 Receiver 2 RDC/ISEL-DEETC-SRT 26

PIM Sparse Mode Modelo de entrada em grupo (join) explícita Os joins dos receptores são enviados para o Rendezvous Point (RP) Os emissores registam-se no RP Os dados fluem pela shared tree e viajam apenas para redes onde os dados da origem são necessários Os routers mais próximos dos utilizadores podem-se juntar à source tree se enviarem joins em direcção à origem As verificações de RPF para a shared tree usam o RP As verificações de RPF para a source tree usam a origem RDC/ISEL-DEETC-SRT 27

PIM Sparse Mode Apenas um RP é escolhido para um grupo O RP é configurado estaticamente ou dinamicamente (Auto-RP, anúncios PIM v2 candidate RP) Os dados são encaminhados baseando-se no source state (S, G) Se existir, senão é baseado no shared state (*, G) RFC 4601, actualizado no RFC 5059 RDC/ISEL-DEETC-SRT 28

Exemplo PIM-SM Source Link Data Control A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 29

Exemplo PIM-SM (2) Source Receiver 1 Joins Group G C Creates (*, G) State, Sends (*, G) Join to the RP A B RP D Join C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 30

Exemplo PIM-SM (3) Source RP Creates (*, G) State A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 31

Exemplo PIM-SM (4) Source Source Sends Data A Sends Registers to the RP Register A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 32

Exemplo PIM-SM (5) Source RP de-encapsulates Registers Forwards Data Down the Shared Tree Sends Joins Towards the Source Join Join A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 33

Exemplo PIM-SM (6) Source RP Sends Register-Stop Once Data Arrives Natively Register-Stop A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 34

Exemplo PIM-SM (7) Source C Sends (S, G) Joins to Join the Shortest Path (SPT) Tree A B RP D (S, G) Join C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 35

Exemplo PIM-SM (8) Source 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 (S, G) Prune A B RP D (S, G) RP Bit Prune C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 36

Exemplo PIM-SM (9) Source New Receiver 2 Joins E Creates State and Sends (*, G) Join A B RP D (*, G) Join C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 37

Exemplo PIM-SM (10) Source C Adds Link Towards E to the OIF List of Both (*, G) and (S, G) Data from Source Arrives at E A B RP D C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 38

Exemplo PIM-SM (11) Source New Source Starts Sending D Sends Registers, RP Sends Joins RP Forwards Data to Receivers through Shared Tree Register A B RP D Source 2 C E Receiver 1 Receiver 2 RDC/ISEL-DEETC-SRT 39

Inter-domain Multicast Routing RDC/ISEL-DEETC-SRT 40

Introdução Multicast em larga escala Ponto de vista de um operador Não queremos os mesmos dados a atravessar as ligações múltiplas vezes poupar largura de banda Queremos entrar e sair dos grupos dinamicamente sem notificar todas as origens pay-per-view Queremos descobrir um recurso mas não sabemos quem o está a fornecer Reduzir a latência inicial para os subscritores de um grupo RDC/ISEL-DEETC-SRT 41

Modelo de um host Deve ser o mais simples possível Quanto enviar dados, não é preciso fazer mais nada Mapear o endereço da camada de rede com o de data link Os routers é que descobrem onde estão os receptores Quando receber dados, precisa de: Indicar aos router qual o grupo que está interessado (via IGMP) Configurar a placa de rede para receber os endereços MAC correspondentes ao grupo Multicast Os hosts podem ser emissores e/ou receptores de um determinado grupo RDC/ISEL-DEETC-SRT 42

Modelo de um host (1) Questões termos de arquitectura e protocolos Múltiplos endereços IP de grupo mapeiam num único endereço físico É preciso filtragem na camada IP Os hosts ao juntarem-se a um grupo recebem tráfego de todas as origens a enviar para esse grupo Idealmente os hosts podiam indicar de que origem pretendem receber (IGMPv3) É fácil filtrar as origens mas é difícil filtrar os destinos RDC/ISEL-DEETC-SRT 43

Modelo de um router Como os hosts podem enviar a qualquer altura para qualquer grupo, os routers têm de estar preparados para receber dados em todos os endereços de grupo de nível 2 E saber quando encaminhar ou descartar os pacotes Que estado é que um router tem de manter? Interfaces que levam aos receptores (OIF Outgoing Interface) Origens dos dados quando usar uma source distribution tree Apagar o estado dependendo no protocolo de routing multicast (e.g. Dense Mode) RDC/ISEL-DEETC-SRT 44

Conceitos de distribuição de dados Os routers precisam de manter o estado para entregar dados para baixo numa árvore de distribuição Source trees O router mantém o estado (S,G) para que os pacotes possam fluir da origem para todos os receptores Shared trees O router mantém o estado (*,G) para que os pacotes fluam da raiz da árvore para todos os receptores Como é que a árvore é criada? On demand, em resposta à chegada de dados Protocolos dense-mode (PIM-DM e DVMRP) MOSPF Controlo explícito Protocolos sparse-mode (PIM-SM e CBT) RDC/ISEL-DEETC-SRT 45

Conceitos de distribuição de dados (1) Construir a árvore requer conhecimento sobre onde estão os membros Enviar um flood de dados para encontrar onde é que os membros não estão (protocolos dense-mode) Enviar informação sobre a pertença a um grupo (MOSPF), e construir a árvore conforme os dados chegam Enviar joins explícitos e manter o estado dos joins (protocolos sparsemode) RDC/ISEL-DEETC-SRT 46

Conceitos de distribuição de dados (2) A construção de source trees requer conhecimento da localização das fontes Em protocolos dense mode, aprende-se quando os dados chegam (a cada nível da árvore) Em protocolos sparse-mode, aprende-se quando os dados chegam à shared tree (nos routers folha apenas) Ignorar baseando-se no encaminhamento vs direcção do RP Tomar atenção se o encaminhamento for feito para a source tree Para construir uma shared tree é preciso saber onde o core (RP) está Pode ser aprendido dinamicamente através do protocolo de routing (Auto- RP, PIMv2) Pode ser configurado nos routers Pode usar um serviço de directoria RDC/ISEL-DEETC-SRT 47

Conceitos de distribuição de dados (3) Source trees fazem sentido para: Emissões de rádio Aplicações com poucas fontes para muitos destinos Aplicações que precisem de um alto débito e baixo atraso Controlos de acesso por fonte As shared trees fazem sentido para: Muitas fontes de baixo débito Aplicações que não precisam de um atraso baixo Politica consistente e controlo de acesso através dos participantes num grupo Onde a maior parte das source trees se sobrepõe sobre o ponto de vista de topologia com uma shared tree RDC/ISEL-DEETC-SRT 48

Obstáculos à implementação não técnicos Como cobrar pelo serviço É o serviço que corre sobre multicast? Ou é o transporte? Cobra-se por fonte/origem, destino ou ambos? Como controlar o acesso Deverão ser as fontes limitadas em débito? Deverão ser os destinos ter um débito limitado? Problemas de segurança DoS Escutas mais simples uma vez que os receptores são desconhecidos RDC/ISEL-DEETC-SRT 49

Obstáculos à implementação técnicos O estado das source trees é um problema se o multicast se tornar popular O estado dos grupos é um outro problema quando o multicast crescer 10000 grupos com apenas 3 membros na Internet inteira Os ISPs não querem depender dos RPs dos competidores Ligamos as shared trees? Temos uma única shared tree ao longo dos domínios? Usamos as source trees apenas para grupos inter-domain? A topologia de rede para tráfego unicast pode ser diferente da de multicast ao longo dos domínios Devido a restrições físicas/topológicas Devido a políticas É preciso um protocolo de encaminhamento inter-domain que distinga políticas unicast vs multicast RDC/ISEL-DEETC-SRT 50

Como controlar o estado da tabela de encaminhamento na rede? Problema fundamental de descobrir a filiação de grupos Flood and Prune DVMRP PIM-DM Broadcast Membership MOSPF DWRs Rendezvous Mechanism PIM-SM BGMP RDC/ISEL-DEETC-SRT 51

Mecanismos de Rendezvous Porque não usar PIM-SM? Onde pôr a raiz da shared tree (RP) Problemas dos operadores em ter RPs de outros Se usarmos o PIM-SM Os mapeamentos de grupos-rp têm de ser distribuídos pela Internet Quatro possibilidades para distribuir o mapeamento grupo-rp Multi-level RP Clusters anycast MSDP Directory service RDC/ISEL-DEETC-SRT 52

Multi-level RP Ideia: ligar as shared tress hierarquicamente Os RPs de Nível-0 estão dentro dos domínios Propagam os joins de routers abaixo para um RP Nível-1 que pode estar noutro domínio As árvores de Nível-0 ficam ligadas através de RPs Nível-1 Se existirem múltiplos RPs de Nível-1, iterar até aos RPs de Nível-2 Problemas Requer mudanças no protocolo PIM Se não localizarmos o RP de Nível-0 na fronteira, os routers PIM intermédios podem pensar que existe dois RPs para o grupo Ainda tem o problema dos outros operadores, existe pelo menos um nó na raiz da hierarquia Os dados têm de fluir até ao RP de mais alto nível RDC/ISEL-DEETC-SRT 53

Clusters anycast Ideia: ligar as shared trees em clusters Partilha de recursos entre ISPs Cada RP em cada domínio é um router de fronteira Construir clusters de RPs nos pontos de interligação (ou em nuvens em dense-mode) A alocação de grupos é por cluster, não por utilizador ou domínio O router de fronteira mais próxima é usado como um RP Os routers dentro de um domínio vão usar o RP do domínio Desde que tenhamos um RP para o grupo num ponto de interligação Se não, vamos usar o RP mais próximo do ponto de interligação (pode ser um RP noutro domínio) RDC/ISEL-DEETC-SRT 54

MSDP Multicast Source Discovery Protocol Ideia: ligar os domínios entre eles Multicast Source Discovery Protocol Em vez de ligar árvores, ligamos as fontes conhecidas a todas as árvores Um RP num domínio tem uma sessão de peering MSDP com um RP noutro domínio Funciona sobre TCP Mensagens Source Active (SA) indicam fontes activas num domínio A topologia lógica é construída apenas para distribuir mensagens SA RDC/ISEL-DEETC-SRT 55

MSDP Como funciona A origem fica activa num domínio PIM-SM Os seus pacotes são registados pelo PIM no RP do domínio O RP envia mensagens SA para os seus peers MSDP Esses peers encaminham o SA para os outros peers upstream Se um peer noutro domínio tem clientes para o grupo no qual a fonte está enviar, junta-se à fonte (modelo Flood-and-Join) Não existe uma shared tree ao longo dos domínios Cada domínio pode depender unicamente no seu RP Não é preciso guardar estado dos SA em cada peer MSDP Pode-se fazer cache do estado dos SA para acelerar a latência dos joins RDC/ISEL-DEETC-SRT 56

Serviços de directoria Ideia: permitir uma única shared tree ao longo dos domínios, ou usar uma source tree apenas a) Uma única shared tree ao longo dos domínios Colocar o RP no domínio do cliente Localização óptima do RP caso o domínio tenha uma fonte multicast ou cliente activo Politica para RP é consistente com a política de domínio para os prefixos unicast Usar a directoria para encontrar o endereço do RP para um determinado grupo RDC/ISEL-DEETC-SRT 57

Serviços de directoria (1) Exemplo O cliente que quer receber envia reports IGMP para o 224.1.1.1 O router do primeiro salto resolve para 1.1.1.224.pim-routers.mcast.net É devolvido o endereço IP do RP O router de primeiro salto envia um Join de PIM em direcção ao RP Todos os routers obtêm endereços dos RP através de DNS Quando o DNS dinâmico estiver em produção será mais fácil alterar os registos A Todos os routers obtêm os endereços dos RP através de DNS Entretanto usa-se endereços de loopback nos routers e move-se este pelo domínio RDC/ISEL-DEETC-SRT 58

Serviços de directoria (2) b) Evitar utilizar as shared trees Construir source trees PIM-SM ao longo dos domínios Colocar múltiplos registos A no DNS para descrever as fontes para o grupo 1.0.2.224.sources.pim-routers.mcast.net IN CNAME dino-ss20 IN CNAME jmeylor-sun dino-ss20 IN A 171.69.58.81 jmeylor-sun IN A 171.69.127.178 RDC/ISEL-DEETC-SRT 59

Soluções normalizadas Escalar o routing e a atribuição de grupos pode ser atingida utilizando o BGMP/MASC Border Gateway Multicast Protocol Multicast Address-Set Claim Usar o BGP4+ (MBGP) para lidar com a distribuição de endereços multicast em paralelo com unicast, permite que as topologias sejam diferentes entre si. RDC/ISEL-DEETC-SRT 60

BGMP (Border Gateway Multicast Protocol) Usar um protocolo parecido com o PIM entre domínios ( BGP para multicast ) O BGMP constrói uma shared tree de domínios para um grupo Para que possamos usar um mecanismo de rendezvous ao nível do domínio A shared tree é bidireccional A raiz da shared tree dos domínios está no domínio de raiz Corre em routers que são fronteira para um domínio de routing multicast Funciona sobre TCP tal como o BGP Joins e prunes atravessam os domínios Pode construir source trees unidireccionais MIGP indica à fronteira sobre as filiações em grupos RFC 3913 RDC/ISEL-DEETC-SRT 61

MASC (Multicast Address Set Claim) Como é que alguém determina o domínio de raiz para um dado grupo? Prefixos de grupo são temporariamente emprestados a domínios Alocados pelo ISP que em troca os recebeu do seu fornecedor de upstream Pedidos para alocação de grupos resolve os problemas de colisões Alocações de grupos são anunciadas ao longo dos domínios É necessário alguém que agregue as alocações de grupos Multicast Address Allocation Servers Tradeoff entre a agregação e o pedido antecipado de endereços de grupos As alocações de prefixos de grupo não são atribuídas a domínios são emprestadas As aplicações têm de ser alteradas RFC 2909 RDC/ISEL-DEETC-SRT 62

BGP4+ (MBGP) Extensões multi-protocolo para o BGP4 RFC 4760 MBGP permite a construção de uma RIB unicast e uma RIB multicast com apenas um protocolo Pode usar a topologia de peering existente ou uma nova (multicast) MBGP transporta prefixos unicast de fontes de multicast RDC/ISEL-DEETC-SRT 63

MBGP Cenário 1 Uma única interligação para operadores para peering multicast Cada ISP administra o seu RP na interligação Tanto o RP como todos os border routers correm MBGP A interligação corre PIM-DM Cada operador corre PIM-SM internamente RDC/ISEL-DEETC-SRT 64

MBGP Cenário 2 Múltiplos pontos de interligação entre operadores Os operadores podem fazer peering de multicast para os grupos desde que os seus RPs respectivos estejam colocados na mesma interligação Senão usam MSDP para que as fontes que os RPs conhecem numa determinada ligação possam indicar a outros RPs onde fazerem o join RDC/ISEL-DEETC-SRT 65