IP Multicast Routing. Silvano GAI Fulvio RISSO.

Documenti analoghi
Cenni sull architettura protocollare TCP/IP

Multicast e IGMP. Pietro Nicoletti

IP Multicast. Mario Baldi staff.polito.it/mario.baldi. Silvano Gai Nota di Copyright. Comunicazioni di gruppo

Esercizi di Addressing. Fulvio Risso Guido Marchetto

Codifica dei numeri interi positivi e negativi

Metro VLAN Switch e standard 802.1ad

Interconnessione di reti IP

IL CABLAGGIO STRUTTURATO DI CATEGORIA 6

Progettazione di reti locali con switch di livello 3

Internet and Intranet Access

Codifica dei segnali audio

Tecniche di compressione senza perdita

IP Multicast Routing. Silvano Gai Mario Baldi staff.polito.it/mario.baldi. Nota di Copyright. Multicast Backbone

IP Multicast Routing. Silvano GAI Fulvio RISSO.

RETI INTERNET MULTIMEDIALI. Multicast

Progettazione delle dorsali in fibra ottica

FONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Compressione audio

Progettazione di reti locali basate su switch - Switched LAN

Introduzione alla programmazione strutturata

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica

Linguaggio C Struct e union

IP Multicast Routing. Silvano GAI Fulvio RISSO.

SUBNETTING E SUPERNETTING

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Le Reti Informatiche

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Input/output in C e in C++

Concetti fondamentali. Indirizzamento. Multicast su LAN. Multicast su Internet. RTP/RTCP su multicast IP. Ostacoli all'utilizzo del multicast

INDIRIZZI IP SUBNETTING

RETI DI CALCOLATORI. Domande di riepilogo Quarta Esercitazione. Quali sono le differenze tra Bridge, Router e Gateway?

Configurazione delle interfacce di rete

III - 2. Il Livello Rete. Corso di RETI DI CALCOLATORI (9 CFU) a.a II anno / II semestre. Il Livello Rete.

Il collegamento delle reti aziendali: DHCP, DSL, PPPoE

Subnetting con maschere DIFFERENTI nella stessa sottorete (Variable Lenght Subnet Mask)

Esercizio Trasferimento File e Multicast

Introduzione. Il routing permette la comunicazione tra due nodi differenti anche se non sono collegati direttamente

ICMP. Internet Control Message Protocol. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it

Installazione e Configurazione del servizio DHCP. Orazio Battaglia

Prova 2-8 Luglio 2016

ARP e RARP. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it Fulvio RISSO

Memoria cache, interrupt e DMA

Indice. Prefazione XIII

Indirizzi IP, Classi, Subnetting, NAT

I protocolli di routing dell architettura TCP/IP

Strato di rete (parte 2) Autoconfigurazione Protocollo DHCP

Instradamento in IPv4

TCP/IP: summary. Lorenzo Cavallaro, Andrea Lanzi

Routing. Forwarding e routing

RETI DI CALCOLATORI II

Parte II - Reti di Calcolatori ed Internet IL LIVELLO RETE

Transcript:

IP Multicast Routing Silvano GAI Fulvio RISSO http://staff.polito.it/fulvio.risso/ 1

Nota di Copyright Questo insieme di trasparenze (detto nel seguito slides) è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio, musica e testo) sono di proprietà degli autori indicati a pag. 1. Le slides possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero dell Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di lucro. In tal caso non è richiesta alcuna autorizzazione. Ogni altra utilizzazione o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su supporti magnetici, su reti di calcolatori e stampate) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte degli autori. L informazione contenuta in queste slides è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza preavviso. Gli autori non assumono alcuna responsabilità per il contenuto di queste slides (ivi incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento dell informazione). In ogni caso non può essere dichiarata conformità all informazione contenuta in queste slides. In ogni caso questa nota di copyright non deve mai essere rimossa e deve essere riportata anche in utilizzi parziali. 2

Cos è il Multicast Possibilità di trasmettere la medesima informazione a più utenti finali senza essere costretti ad indirizzare questi ultimi singolarmente e senza avere, quindi, la necessità di duplicare per ciascuno di essi l'informazione da diffondere Multicast e la multimedialità non sono la stessa cosa, ma sono due concetti estremamente correlati quando si entra nell'ambito delle comunicazioni Es. servizi di videoconferenza 3

IP e il multicasting Trasmissione di pacchetti IP multicast Non c è alcuna differenza rispetto a pacchetti unicast Gli host non hanno quindi alcun problema a trasmettere dati multicast Il multicast è visto semplicemente come un indirizzo IP un po diverso Recapito a destinazione dei pacchetti IP Multicast Il recapito di pacchetti multicast a destinazione è un problema decisamente diverso da quello dei pacchetti unicast Unicast: il routing è fisso, i protocolli devono semplicemente riportare che un certo host H è localizzato in una certa zona della rete Internet Multicast: il protocollo deve individuare dove sono localizzati tutti gli hosts che vogliono ricevere quella trasmissione e trasmettere il flusso solo sulle reti interessate 4

Host Group Concetto nuovo, alla base del multicasting Ogni singolo host può aderire ad un host group e poi abbandonarlo Host Extensions for IP Multicasting, RFC1112 Ogni host group è contraddistinto da un indirizzo IP di classe D La trasmissione dei dati avviene inviando dei pacchetti con questo IPdest Ogni rete deve capire se, al suo interno, esistono degli host che hanno intenzione di ricevere i pacchetti destinati a questo host group Sono strutture dinamiche La composizione di un host group non è nè fissa nè limitata e varia nel tempo 5

Tipi di Host Group Permanente Ha un indirizzo ben noto e assegnato a priori Esiste sempre, anche se non esistono membri al suo interno Ad esempio gli indirizzi di multicast utilizzati da alcuni protocolli di routing (es. RIP o OSPF) per il loro funzionamento Temporaneo Esiste solo finché qualcuno ne fa parte Non esistono limitazioni di sorta Si può entrare e uscire dai gruppi a propri piacimento Non ci sono limiti sul numero di gruppi a cui è possibile appartenere contemporaneamente Viene rilasciato nel momento in cui il gruppo non ha più alcun membro, ed è disponibile alla creazione di un nuovo host-group 6

IP e il multicasting I Multicast Router (mrouter) instradano i pacchetti multicast La funzionalità di multicast router è integrata su un normale router IP Spesso è necessario abilitarla con un comando apposito Un mrouter ha un algoritmo di forwarding diverso per i pacchetti multicast rispetto a quelli unicast Un datagram inviato in multicast verrà consegnato a tutti i membri dell'host group di destinazione con il "miglior sforzo possibile", esattamente come accade per i pacchetti unicast. Pertanto sul datagram inviato in multicast non sono garantiti né il tempo né l'ordine di consegna 7

Indirizzi multicast Indirizzi di classe D Gli indirizzi che identificano un host group sono detti indirizzi di classe D iniziano con 1110 Nella notazione standard di Internet gli indirizzi multicast sono compresi nell'intervallo: 224.0.0.0-239.255.255.255 8

Indirizzi multicast Alcuni casi particolari L'indirizzo 224.0.0.0 non viene assegnato a nessun gruppo 224.0.0.1 è il gruppo permanente composto da tutti gli host Questo indirizzo viene utilizzato dagli mrouter per inviare messaggi di controllo agli host direttamente connessi su una data rete locale I messaggi destinati a questo gruppo non vengono mai inviati al di fuori della rete locale In caso contrario sarebbe una banalità intasare Internet Non esiste l'indirizzo globale di tutti gli host connessi ad Internet 224.0.0.4: indirizzo di tutti gli mrouter 9

Multicast sulle LAN Sulle LAN il multicast di livello 3 è realizzato tramite il multicast di livello MAC Si ottimizza il processo di ricezione, perché il multicast MAC è filtrato direttamente dall hardware della scheda Il pacchetto multicast IP è passato ai livelli superiori solo se la scheda lo riconosce come un pacchetto di un gruppo multicast riconosciuto Mapping degli indirizzi Sono disponibili i 23 bit meno significativi dell indirizzo MAC Lo spazio di indirizzamento IP dedicato al multicast è invece esteso su 28 bit (prefisso 1110) I 23 bit meno significativi dell'indirizzo IP vengono mappati negli omologhi bit dell'indirizzo multicast MAC corrispondente 10

Mapping IP MAC Ad un indirizzo MAC corrispondono 2 5 indirizzi IP Alcuni host riceveranno dei pacchetti IP che non sono destinati a loro; questi pacchetti vengono scartati a livello IP e non a livello MAC, aumentando l overhead sull host Per evitare il problema: fare attenzione all'assegnazione degli indirizzi multicast Bit che possono dare origine a collisione sull indirizzo MAC 1110 x 27 x 26 x 25 x 24 x 23 x 22 x 21 x 20 x 19 x 18 x 17 x 16... x 0 Multicast IP address... 11 01-00-5E 0x 22 x 21 x 20 x 19 x 18 x 17 x 16... x 0 Multicast MAC address for IP Indirizzi MAC riservati dall IEEE per IP multicast: 01-00-5E-00-00-00-01-00-5E-7F-FF-FF (indirizzi Global Group)

Configurazione delle NIC card Bisogna abilitare o disabilitare la ricezione di indirizzi multicast sulla scheda di rete I driver della scheda di rete devono permettere due nuove funzioni JoinHostGroup (address, interface) LeaveHostGroup (address, interface) 12

Componenti fondamentali del multicast Trasmissione dati gli host trasmettono i dati ad un indirizzo particolare (multicast) Determinazione dell esistenza di ricevitori di un certo gruppo multicast su un particolare segmento di LAN Nel caso non esistano ricevitori, non è il caso di inoltrare quei pacchetti sulla LAN Propagazione dell esistenza e della localizzazione dei ricevitori Il routing multicast deve tenere traccia della localizzazione dei vari ricevitori, creando un albero coprente in modo da minimizzare i costi e recapitare i pacchetti a tutti Le reti che non hanno ricevitori vengono tagliate (prune) 13

IGMP Internet Group Management Protocol È il protocollo per la gestione e lo scambio delle informazioni di controllo tra gli host e gli mrouter Scopo primario: permettere agli mrouter di mantenere sempre aggiornate al loro interno le tabelle che associano ad ogni rete locale gli host group presenti sulla rete stessa In realtà IGMP può essere utilizzato anche per lo scambio delle informazioni di controllo tra gli mrouter IGMP deve necessariamente essere abilitato su tutti gli host che vogliono ricevere, oltre che inviare, pacchetti multicast La versione attuale dell'igmp è la numero 2 esistono installazioni della 1 la numero 0 è obsoleta I messaggi IGMP vengono spediti in multicast per tutti gli host sulla LAN e sono incapsulati in un datagram IP con campoprotocoltype uguale a 2 14

Il pacchetto IGMP Version Type Unused Checksum Group Address Type 1 = Host Membership Query: inviate dal multicast router verso gli host, per tenere aggiornata la lista degli host group attivi sulla LAN 2 = Host Membership Report: inviate dall'host in risposta alle query del router Group Address Viene impostato a zero nelle query generali per scoprire quali gruppi operano sulla LAN Nei report contiene l'indirizzo dell'host group a cui appartiene un host 15

Il protocollo IGMP (1) I multicast router inviano periodicamente query per scoprire quali host group sono attivi su una LAN Le query sono indirizzate (a livello IP) al gruppo di tutti gli host (224.0.0.1) e hanno TTL=1 Un pacchetto con TTL = 1 non esce dalla LAN Un multicast router è abilitato, di default, a ricevere tutti i gruppi multicast 16

Il protocollo IGMP (2) Gli host rispondono alle query generando dei report, con cui segnalano al multicast router tutti gli host group a cui appartengono La risposta avviene utilizzando il gruppo multicast di appartenenza In particolare, gli host rispondono inviando un report per ciascun host group a cui sono iscritti Il router abilitato invia periodicamente dei messaggi di query Se dopo un certo numero di tentativi non riceve alcun report per quel determinato gruppo, assume che non ci siano più membri Se un host ha appena aderito ad un gruppo multicast deve inviare immediatamente un report affinché sia in grado il prima possibile di ricevere i pacchetti indirizzati a quel gruppo 17

IGMP: Tecniche di ottimizzazione I messaggi di report possono intasare la rete. Per ovviare a ciò: Quando un host riceve una query avvia un timer per ciascun gruppo a cui appartiene: ogni timer viene fatto partire da un valore casuale scelto tra 0 e D secondi; allo scadere del timer si genera il report relativo. Oltre ad utilizzare i timer, ogni host resta in ascolto e se sente un report con un indirizzo multicast corrispondente ad uno dei suoi, non genera un altra risposta per quel multicast group È indifferente, per un router, sapere che sulla LAN ci sono 2 piuttosto che N receivers per quel gruppo 18

IGMP v. 2 (1) Arricchisce la versione 1, mantentendo la compatibilità con gli host che hanno tale versione Aggiunte Specifica la modalità con cui si elegge il designated router viene scelto quello con indirizzo IP più basso sull'interfaccia considerata In IGMP v.1 questa procedura viene demandata al protocollo di routing protocolli differenti potrebbero implementare tecniche di elezione del designated router differenti ed incompatibili tra loro, provocando la presenza di più designated router sulla stessa sottorete Messaggio Group-Specific Query Permette ad un router multicast di interrogare un ben specifico gruppo invece che tutti i gruppi presenti sulla LAN 19

IGMP v. 2 (2) Aggiunte Messaggio Leave-Group Accelera le operazioni di eliminazione di un gruppo da una LAN Inviato al gruppo All-Routers da un host che intende lasciare un certo gruppo multicast, specificando l'indirizzo del gruppo che si vuole abbandonare Quando il router riceve un messaggio di questo tipo inizia ad inviare una serie di Group-Specific Query verso quel particolare gruppo di destinazione e se continua a non ricevere risposta elimina la entry relativa al gruppo sull'interfaccia interessata Velocizza le operazioni di pruning di alberi multicast inutili 20

IGMP v. 3 Sostanzialmente aggiunge due nuovi comandi Inclusion Group-Source Report ed Exclusion Group-Source Report Un host può specificare da quale sorgente vuole o non vuole ricevere traffico multicast destinato ad un certo gruppo Se ci sono più sorgenti attive che inviano pacchetti ad un determinato gruppo, gli host possono scegliere di ricevere i pacchetti provenienti solo da una di queste sorgenti Si tratta di un mezzo per risparmiare banda, in quanto questa informazione può essere sfruttata dai router per potare ulteriori ramificazioni degli alberi di distribuzione 21

Multicast Router MULTICAST ROUTER Host Membership Report Host Membership Query HOST HOST HOST HOST 22

Protocolli di Instradamento (1) I protocolli di instradamento per pacchetti multicast gestiscono alberi di distribuzione multicast da una sorgente verso le destinazioni attive Originariamente sono stati definiti solo protocolli intradomain Da qualche tempo c è maggiore enfasi sui protocolli inter-domain Ci si è accorti che un protocollo classico, intra-domain, non scala su Internet Il multicast è ancora un problema insoluto Ad una distanza di più di 10 anni rispetto alle proposte originarie (Deering), non esiste ancora il multicast su scala geografica 23

Protocolli di Instradamento (2) I protocolli intra-domain utilizzati sono DVMRP (Distance Vector Multicast Routing Protocol) basato sui distance-vector MOSPF (Multicast OSPF) è un protocollo di tipo link-state PIM (Protocol Independent Multicast) Il protocollo inter-domain proposto è BGMP (Border Gateway Multicast Protocol) 24