reti di calcolatori 2 a.a. 2006/2007 rete ed instradamento alberto polzonetti...

43
RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti [email protected]

Upload: aroldo-mazzei

Post on 01-May-2015

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

RETI di CALCOLATORI 2 A.A. 2006/2007Rete ed Instradamento

Alberto [email protected]

Page 2: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

2Alberto Polzonetti

Reti di calcolatori 2

Protocolli di InstradamentoProtocolli di Instradamento

la loro funzione è di determinare il percorso seguito

da un datagramma dalla sorgente alla destinazione

I protocolli di instradamento di Internet incorporano

molti dei principi che abbiamo imparato

precedentemente :

gli approcci “stato dei link” (Link State LS) e

“vettore delle distanze” (Distance Vector DV)

sono punti fondamentali per l’instradamento

nell’Internet attuale.

Page 3: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

3Alberto Polzonetti

Reti di calcolatori 2

Algoritmi DV e LSAlgoritmi DV e LS

Algoritmo DV Ciascun nodo dialoga solo con i vicini direttamente connessi

informandoli sulle stime a costo minimo da se stesso a tutti i nodi ( che conosce) della rete

Ciascun nodo mantiene un vettore delle distanze minime da ogni altro nodo consentendo di selezionare il router successivo ( next hop)

Algoritmo LS Ciascun nodo dialoga con tutti gli altri nodi via broadcast, ma

comunica loro solo i costi dei collegamenti direttamente connessi.

Si sviluppa in quattro passi :1. Creazione da parte di ciascun nodo di un pacchetto con lo stato dei

collegamenti diretti del nodo2. Inondazione (flooding)3. Sviluppo dell’albero con i percorsi più brevi (Dijkstra)4. Calcolo della tabella di instradamento

Page 4: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

4Alberto Polzonetti

Reti di calcolatori 2

Problemi relativi al modello adottatoProblemi relativi al modello adottato

A. Scala. All’aumentare del numero dei router, l’overhead (carico

aggiuntivo) dell’esecuzione dei calcoli, dell’immagazzinamento e della comunicazione delle informazioni della tabella di instradamento diventa proibitivo.

B. Autonomia amministrativa. una società desidera far funzionare i suoi router a suo

piacere (per esempio, adottare un algoritmo di instradamento a sua scelta)

“nascondere” aspetti dell’organizzazione della rete interna all’esterno”.

Page 5: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

5Alberto Polzonetti

Reti di calcolatori 2

Instradamento gerarchicoInstradamento gerarchico

aggregazione di router in regioni o sistemi autonomi (AS, Autonomous Systems).

I router all’interno dello stesso AS avranno tutti lo stesso algoritmo di instradamento (per esempio, un algoritmo LS o DV) e si scambieranno informazioni tra loro

L’algoritmo di instradamento che funziona all’interno di un sistema autonomo è detto protocollo di instradamento intra-sistema autonomo

Sarà necessario, naturalmente, collegare gli AS tra loro, e quindi uno o più dei router in un AS dovrà avere il compito aggiuntivo di essere responsabile di instradare i pacchetti alla destinazione esterna all’AS: questi router sono detti router gateway.

L’algoritmo di instradamento che i gateway usano per l’indirizzamento fra i diversi AS è conosciuto come protocollo di instradamento inter-sistema autonomo (inter-autonomous system routing protocol).

Page 6: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

6Alberto Polzonetti

Reti di calcolatori 2

SCENARIOSCENARIO

In essa ci sono tre AS di instradamento, A, B e C. Il sistema autonomo A possiede quattro router, A.a, A.b, A.c e A.d, in cui funziona il protocollo di instradamento intra-AS adottato all’interno del sistema autonomo A. Questi quattro router hanno informazioni complete sui percorsi di instradamento all’interno del sistema autonomo A. In modo analogo, i sistemi autonomi B a C hanno tre e due router, rispettivamente.

I protocolli di instradamento intra-AS che funzionano all’interno di A, B e C non necessariamente sono gli stessi

I router gateway sono A.a, A.c, B.a e C.b. Oltre a far funzionare i protocolli di instradamento intra-AS insieme agli altri router dei loro AS, questi quattro fanno funzionare tra loro un protocollo di instradamento inter-AS.

Il router gateway A.c deve far funzionare sia un protocollo di instradamento intra-AS con i suoi vicini A.b e A.d, sia un protocollo inter-AS con il router gateway B.a. Si noti che le voci nella tabella di inoltro del router A.c sono derivate da entrambi i protocolli intra- e inter-AS.

Page 7: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

7Alberto Polzonetti

Reti di calcolatori 2

Instradamento in InternetInstradamento in Internet

Protocolli di instradamento intra sistemi autonomi

(PROTOCOLLI per GATEWAY INTERNI - IGP)

RIP – Routing Information Protocol

OSPF – Open Short Path First

Protocolli di instradamento inter sistemi autonomi

(PROTOCOLLI per GATEWAY ESTERNI – EGP)

BGP – Border Gateway Protocol

Page 8: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

8Alberto Polzonetti

Reti di calcolatori 2

RIP – Routing Information ProtocolRIP – Routing Information Protocol

Protocollo distance vector Usa il conteggio degli hop come metrica di costo Il massimo costo di un percorso è fissato a 15 Le tabelle di instradamento vengono scambiate

ogni 30 secondi (messaggio di replica RIP) Se un router non ha notizie da un vicino almeno

una volta ogni 180 secondi, il vicino è considerato morto

I messaggi di replica RIP sono trasportati da UDP (porta 520)

Page 9: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

9Alberto Polzonetti

Reti di calcolatori 2

Come funzionano gli avvisi RIPCome funzionano gli avvisi RIP

Un router riceve un messaggio RIP dal router C

Rete2 4Rete3 8Rete6 4Rete8 3Rete9 5

Tutti gli hop count del messaggio vengono incrementati di 1

Rete2 5Rete3 9Rete6 5Rete8 4Rete9 6

Rete1 7 ARete2 2 CRete6 8 FRete8 4 ERete9 4 F

Vecchia tabella di

instradamento

Algoritmo di

aggiornamento

Rete1 7 A

Rete6 5 C

Rete8 4 E

Rete2 5 C

Rete3 9 C

Rete9 4 F

Nuova tabella di instradamento

RETE1 nessuna novità non cambia

RETE2 ci sono nuovi hop e si cambiaRETE3 nuovo router si aggiungeRETE6 hop successivo differente,

meno salti, si cambiaRETE8 hop successivo differente, stessi salti, non si cambiaRETE9 hop successivo differente, più salti, non si cambia

Page 10: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

10Alberto Polzonetti

Reti di calcolatori 2

OSPF – Open Short Path First OSPF – Open Short Path First (componenti)(componenti)

Hello: ogni nodo deve riconoscere l'esistenza delle adiacenze (messaggio ai propri vicini nel quale annuncia se stesso)

Link State (Packet): tabella contenente le coppie link-costo per ogni nodo adiacente

Flooding: meccanismo che permette la diffusione in "broadcast" dei LS a tutta la rete;

Algoritmo di Dijkstra o Shortest Path First (SPF): algoritmo che permette di ricavare la tabella di routing

Bringing up Adiacencies: meccanismo per sincronizzare i database di macchine adiacenti

Page 11: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

11Alberto Polzonetti

Reti di calcolatori 2

Miglioramenti incorporati in OSPFMiglioramenti incorporati in OSPF

Sicurezza. Tutti gli scambi fra router OSPF (per esempio,

aggiornamenti dello stato dei link) sono autenticati.

Percorsi multipli con lo stesso costo. Quando diversi percorsi

verso una destinazione hanno lo stesso costo, l’OSPF permette che

siano usati più percorsi

Supporto integrato per instradamento unicast e multicast. L’

OSPF multicast fornisce una semplice estensione all’OSPF per

fornire l’instradamento multicast

Supporto della gerarchia all’interno del dominio di un

singolo router. possibilità di strutturare gerarchicamente un

sistema autonomo configurandolo in aree

Page 12: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

12Alberto Polzonetti

Reti di calcolatori 2

Struttura gerarchica di un AS con OSPFStruttura gerarchica di un AS con OSPF

Un sistema autonomo OSPF può essere configurato in “aree”. Ciascuna area ha il suo algoritmo di instradamento OSPF basato sullo stato dei link, con ciascun router nell’area che trasmette il suo stato dei link a tutti i router di quell’area. I dettagli interni di un’area restano quindi invisibili al suo esterno. L’instradamento intra-area coinvolge solo quei router che giacciono all’interno della stessa area.

Dentro ciascuna area, uno o più router di bordo area (area border router) sono responsabili dell’instradamento dei pacchetti verso l’esterno.

Esattamente un’area OSPF nell’AS è configurata per essere l’area backbone (dorsale). Il ruolo principale dell’area backbone è di instradare il traffico fra le altre aree nell’AS. La backbone contiene sempre tutti i router di bordo area delle diverse aree dell’ AS e può contenere anche dei router non di bordo area.

L’instradamento inter-area entro l’AS richiede che il pacchetto sia instradato prima verso un router di bordo area (instradamento intra-area), poi che venga instradato attraverso la backbone al router di bordo area che si trova nell’area di destinazione, e da qui verso la sua destinazione finale.

Page 13: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

13Alberto Polzonetti

Reti di calcolatori 2

Schema di una rete OSPFSchema di una rete OSPF

Router interni. Questi router sono in un’ area diversa dalla backbone ed eseguono solo l’instradamento intra-AS.

Router di bordo area. Questi router appartengono sia a un’area sia alla backbone

Router della backbone (router non di bordo area). Questi router eseguono l’instradamento entro la backbone ma non sono router di bordo area. All’interno di un’area non backbone, i router interni apprendono dell’esistenza delle rotte verso altre aree dalle informazioni trasmesse entro l’area dai suoi router backbone

Router di confine (boundary router). Un router di confine scambia le informazioni di instradamento con router appartenenti ad altri sistemi autonomi. Questo router può, per esempio, usare BGP per compire l’instradamento inter-AS. È attraverso questo tipo di router di confine che gli altri router apprendono i percorsi verso reti esterne.

Page 14: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

14Alberto Polzonetti

Reti di calcolatori 2

BGP – Border Gateway Protocol :usoBGP – Border Gateway Protocol :uso

Ottenere informazioni sulla raggiungibilità delle sottoreti da parte di sistemi confinanti

Propagare queste informazioni a tutti i router interni Determinare i percorsi sulla base delle informazioni

ricevute e delle politiche del sistema autonomo

Page 15: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

15Alberto Polzonetti

Reti di calcolatori 2

Sessioni BGPSessioni BGP

Lo scambio di informazioni avviene su connessioni TCP punto-punto ( porta 179)

I router a capo della connessione sono chiamati peer BGP e la connessione è chiamata sessione BGP

Sessione BGP esterna e sessione BGP interna

Page 16: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

16Alberto Polzonetti

Reti di calcolatori 2

BGP – Border Gateway Protocol : caratteristiche (I)BGP – Border Gateway Protocol : caratteristiche (I)

Protocollo path vector Router BGP confinanti si scambiano informazioni

dettagliate tra i percorsi (lista degli AS sul percorso verso una destinazione)

Come nel protocollo generico vettore delle distanze (distance vector) BGP è un protocollo distribuito,

i router BGP comunicano solo con quei router BGP ai quali sono direttamente attaccati.

L’informazione globale sui percorsi verso destinazioni remote si propaga in modo da-AS-ad-AS attraverso lo scambio di informazione di instradamento BGP tra coppie di pari BGP direttamente connessi

Page 17: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

17Alberto Polzonetti

Reti di calcolatori 2 BGP – Border Gateway Protocol : caratteristiche BGP – Border Gateway Protocol : caratteristiche

(II)(II)

Instrada verso reti piuttosto che verso host Una volta che un datagram raggiunge la rete di

destinazione, per instradare il datagram verso la destinazione finale sarà utilizzato il sistema di instradamento intra-AS di quella rete

Un annuncio consiste in un indirizzo di rete di destinazione in forma CIDR (per esempio, 128.119.40/24)

Un sistema autonomo è identificato da un numero di sistema autonomo assegnato dall’ICANN

Attributi associati a quel percorso AS-PATH Lista di tutti gli AS su cui è passato l’annuncio NEXT-HOP Identità del prossimo router sul percorso

Page 18: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

18Alberto Polzonetti

Reti di calcolatori 2

BGP – Border Gateway Protocol : attività BGP – Border Gateway Protocol : attività (I)(I)

1. Ricezione e filtraggio di annunci sui percorsi da parte di vicini direttamente attaccati.

Un pari BGP che annuncia un percorso verso un AS di destinazione promette che se un AS confinante gli rilancerà un datagram destinato a quell’AS di destinazione, esso sarà in grado di inoltrare quel datagram lungo un percorso verso quella destinazione

un router BGP ignorerà gli annunci che contengono il proprio numero di AS nell’AS-PATH, dato che quel percorso darebbe luogo a un loop di instradamento, se usato.

Poiché viene specificato l’intero percorso verso l’AS, un amministratore di rete può esercitare un notevole controllo sull’instradamento seguito dai datagram.

Page 19: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

19Alberto Polzonetti

Reti di calcolatori 2

BGP – Border Gateway Protocol : attività BGP – Border Gateway Protocol : attività (II)(II)

2. Selezione del percorso. Un router BGP può ricevere diversi annunci sui percorsi verso lo

stesso AS di destinazione, e deve scegliere quale percorso usare tra quelli annunciati.

BGP fa una distinzione chiara tra meccanismo di instradamento e politica di instradamento.

In particolare, BGP non specifica come un AS deve scegliere un percorso tra quelli annunciati. Questa è una decisione politica che viene lasciata all’amministratore di rete dell’AS

In assenza di preferenze locali, il percorso selezionato è spesso il più breve percorso di AS (cioè, quello che attraversa il minor numero di AS nel percorso verso la destinazione).

3. Invio di annunci sui percorsi ai vicini. Così come un router BGP riceverà annunci sui percorsi dai suoi

vicini, anche lui annuncerà percorsi ai suoi vicini.

Page 20: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

20Alberto Polzonetti

Reti di calcolatori 2

1. B conosce da A che ha un percorso AW

2. B installa il percorso BAW sulla sua base di informazione

3. B annuncia il suo percorso al proprio cliente X

4. Deve annunciarlo anche a C ?

Uno scenario BGP Uno scenario BGP politiche di politiche di instradamentoinstradamento

QUALUNQUE TRAFFICO CHE ATTRAVERSA LA DORSALE DI UN ISP DEVE AVERE UNA SORGENTE O UNA DESTINAZIONE IN UNA RETE CLIENTE DI QUELL’ISP

Page 21: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

21Alberto Polzonetti

Reti di calcolatori 2

perché si usano diversi protocolli intra e inter AS ?perché si usano diversi protocolli intra e inter AS ?

A. POLITICA

B. SCALA

C. PRESTAZIONI

Page 22: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

22Alberto Polzonetti

Reti di calcolatori 2

Instradamento Broadcast : unicast a N vieInstradamento Broadcast : unicast a N vie

Dati N nodi destinazione il nodo origine prepara N copie del pacchetto e le invia in unicast alle N destinazioni

Semplice ma inefficiente Se il nodo origine è connesso alla

rete tramite un singolo collegamento questo sarà attraversato da N copie dello stesso pacchetto

Si ammette implicitamente che i destinatari del broadcasting siano noti : necessari altri meccanismi di protocollo e necessità di computazione aggiuntiva

Page 23: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

23Alberto Polzonetti

Reti di calcolatori 2

Flooding incontrollatoFlooding incontrollato

Il nodo origine invia una copia del pacchetto a tutti i vicini

Quando un nodo riceve un pacchetto lo duplica e lo invia a sua volta ai propri vicini ad eccezione di quello da cui lo ha ricevuto

Se il grafo è connesso questo schema alla fine farà pervenire una copia del pacchetto a tutti i nodi

Difetto fatale tempesta di brodcast ( broadcast storm)

Page 24: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

24Alberto Polzonetti

Reti di calcolatori 2

Flooding controllato con numero di Flooding controllato con numero di sequenzasequenza

Ciascun nodo origine pone il proprio indirizzo ed

un numero di sequenza di broadcasting nei

pacchetti prima di inviarli ai suoi vicini

Ciascun nodo mantiene una lista di indirizzi e di

origine per ogni pacchetto broadcast ricevuto,

duplicato ed inoltrato

Quando un nodo ne riceve uno controlla la lista,

ed in caso affermativo lo elimina

Page 25: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

25Alberto Polzonetti

Reti di calcolatori 2 Flooding controllato: Inoltro su percorso inverso Flooding controllato: Inoltro su percorso inverso

(reverse Path Forwarding)(reverse Path Forwarding)

Router riceve un pacchetto broadcast con indirizzo sorgente

Il pacchetto è stato ricevuto dal link di minor costo all’indietro verso il server ? SI: Trasmissione sui link di

uscita ad eccezione del link dove ha ricevuto il pacchetto

NO: pacchetto scartato Il nodo ha solo bisogno di

conoscere tra i link adiacenti quale è quello di percorso minimo verso la sorgente

Page 26: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

26Alberto Polzonetti

Reti di calcolatori 2

Albero di coperturaAlbero di copertura

Un albero di copertura di un grafo G=(V,E) è un grafo G’=(V,E’) in cui E’ è un sottoinsieme di E che contiene tutti i nodi e non contiene i cicli.

Se i pacchetti fossero inoltrati lungo l’albero di copertura(lungo i lati) ogni nodo riceverebbe solo una copia del pacchetto broadcast

Page 27: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

27Alberto Polzonetti

Reti di calcolatori 2

Broadcast con albero di coperturaBroadcast con albero di copertura

Page 28: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

28Alberto Polzonetti

Reti di calcolatori 2 Determinazione dell’albero di copertura : Determinazione dell’albero di copertura :

approccio basato sul centroapproccio basato sul centro

Si definisce un nodo centrale (nucleo)

Utilizzando l’instradamento unicast i nodi inoltrano

al nodo centrale il loro messaggio di adesione

Il percorso si arresta quando il messaggio incontra

un noto che ha già aderito oppure il nucleo

Questo percorso viene considerato come un

innesto nell’albero di copertura

Page 29: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

29Alberto Polzonetti

Reti di calcolatori 2

Costruzione di un albero di coperturaCostruzione di un albero di copertura

Page 30: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

30Alberto Polzonetti

Reti di calcolatori 2

MULTICASTINGMULTICASTING

Un numero sempre maggiore di applicazioni di rete richiedono la spedizione di pacchetti da uno o più sender a un gruppo di receiver.

la trasmissione dell’aggiornamento di un software dal suo sviluppatore agli utenti che richiedono l’aggiornamento

il trasferimento di audio, video e testi per lettura diretta a un gruppo distribuito di partecipanti alla lettura

una riunione aziendale o una teleconferenza condivisa tra molti partecipanti distribuiti

Per ciascuna di queste applicazioni, un’astrazione molto utile è la nozione di multicast: l’invio di un pacchetto da un sender a molti receiver con una singola operazione di spedizione.

Page 31: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

31Alberto Polzonetti

Reti di calcolatori 2

Approccio MULTICAST da uno a tuttiApproccio MULTICAST da uno a tutti

Page 32: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

32Alberto Polzonetti

Reti di calcolatori 2

Approccio MULTICAST : livello applicativoApproccio MULTICAST : livello applicativo

Page 33: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

33Alberto Polzonetti

Reti di calcolatori 2

Approccio MULTICAST : esplicitoApproccio MULTICAST : esplicito

Page 34: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

34Alberto Polzonetti

Reti di calcolatori 2

Considerazioni generaliConsiderazioni generali

Il terzo approccio rende più efficiente l’uso della larghezza di banda della rete, in quanto solo una singola copia di un datagram attraverserà un link. D’altra parte, allo strato di rete è richiesto un supporto considerevole per implementare uno strato di rete “consapevole del multicast”.

Il multicast a livello applicativo può essere più efficiente dell’unicast da-uno-a-tutti ma richiede una quantità significativa di infrastrutture per installare e mantenere l’architettura di distribuzione a livello applicativo.

Con la comunicazione multicast, ci troviamo ad affrontare due problemi che sono molto più complessi rispetto al caso dell’unicast:

come identificare i receiver di un datagram multicast come indirizzare un datagram spedito a questi

receiver.

Page 35: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

35Alberto Polzonetti

Reti di calcolatori 2 Come identificare i receiver di un datagram Come identificare i receiver di un datagram

multicastmulticast

un datagram multicast è indirizzato usando l’indirizzo per via indiretta

Vale a dire, si impiega un singolo identificatore per il gruppo di receiver, e una copia del datagram che è indirizzato al gruppo usando questo singolo identificatore è spedita a tutti i receiver multicast associati al gruppo.

il singolo identificatore che rappresenta un gruppo di receiver è un indirizzo multicast di classe D.

Al gruppo di receiver associati con l’indirizzo di classe D ci si riferisce come al gruppo multicast (multicast group).

Page 36: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

36Alberto Polzonetti

Reti di calcolatori 2

Protocollo IGMP : caratteristica principaleProtocollo IGMP : caratteristica principale

Internet Group Management Protocol opera tra un host ed il router ad esso direttamente

collegato

Page 37: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

37Alberto Polzonetti

Reti di calcolatori 2

Funzioni di IGMPFunzioni di IGMP

L’IGMP costituisce il mezzo per un host di informare il router a esso collegato che un’applicazione che funziona nell’host vuole unirsi a uno specifico gruppo multicast.

IGMP non è un protocollo che opera fra tutti gli host che sono riuniti in un gruppo multicast,

Per coordinare i router multicast è richiesto un altro protocollo all’interno di Internet, così che i datagram multicast possano essere instradati alle loro destinazioni finali. (algoritmi di instradamento multicast dello strato di rete).

Il multicast dello strato di rete in Internet consiste allora di due componenti complementari: l’ IGMP e i protocolli di instradamento multicast.

Page 38: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

38Alberto Polzonetti

Reti di calcolatori 2

Messaggi IGMPMessaggi IGMP

Membership query (dal router) inviato attraverso un router a tutti gli host su

un’interfaccia collegata per determinare il set di tutti i gruppi multicast a cui sono uniti gli host su quella interfaccia.

Membership_report (dall’host) Gli host rispondono a un messaggio membersbip_query

con un messaggio IGMP membership_report (rapporto affiliazioni).

I messaggi membership-report possono anche essere generati da un host quando un’ applicazione si unisce per la prima volta a un gruppo multicast, senza aspettare un messaggio membership query dal router.

leave_group (dall’host)

Page 39: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

39Alberto Polzonetti

Reti di calcolatori 2

Instradamento multicast : scenarioInstradamento multicast : scenario

L’obiettivo dell’instradamento multicast è di trovare un albero di link che colleghi tutti i router cui sono attaccati gli host che appartengono al gruppo multicast. I pacchetti multicast saranno allora instradati attraverso questo albero dal sender a tutti gli host appartenenti all’albero multicast. Naturalmente, l’albero può contenere router che non hanno collegati host appartenenti al gruppo multicast

Page 40: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

40Alberto Polzonetti

Reti di calcolatori 2 Instradamento multicast che usa un albero Instradamento multicast che usa un albero

condiviso dal gruppocondiviso dal gruppo

Si usa un approccio centralizzato definendo un nodo centrale come punto di rendezvous o nucleo

Tutti i router cui sono collegati host multicast aderiscono al nucleo con messaggi unicast

Il percorso seguito definisce il ramo dell’albero

Page 41: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

41Alberto Polzonetti

Reti di calcolatori 2 Instradamento multicast che usa un albero basato Instradamento multicast che usa un albero basato

sulla sorgentesulla sorgente

Mentre gli algoritmi per l’instradamento multicast visti

prima costruiscono un albero di instradamento

singolo, condiviso, che è usato per instradare i

pacchetti da tutti i sender, la seconda ampia classe di

algoritmi per l’instradamento multicast costruisce un

albero di instradamento multicast per ciascuna

sorgente nel gruppo

In pratica si usa è l’algoritmo di inoltro basato sul

percorso inverso (RPF, Reverse Path Forwarding) con

nodo origine il nodo sorgente multicast

Page 42: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

42Alberto Polzonetti

Reti di calcolatori 2

RPF con potaturaRPF con potatura

Il router D inoltrerà messaggi multicast a tutti i router a valle anche se questi non appartengono a nessun gruppo multicast.

Un router multicast che riceve pacchetti multicast e che non ha host attaccati che appartengono a quel gruppo invierà un messaggio di potatura al router che sta a monte.

Se un router riceve un messaggio di potatura da ciascuno dei suoi router a valle, inoltrerà anch’esso un messaggio di potatura verso il router a monte.

Page 43: RETI di CALCOLATORI 2 A.A. 2006/2007 Rete ed Instradamento Alberto Polzonetti alberto.polzonetti@unicam.it

43Alberto Polzonetti

Reti di calcolatori 2

Instradamento Multicast in Internet (1)Instradamento Multicast in Internet (1)

protocollo di instradamento multicast distance vector (DVMRP, Distance Vector Multicast Routing Protocol)

Alberi basati sulla sorgente con RPF e potatura usa un algoritmo distance vector che permette a ciascun

router di calcolare il link in uscita (hop successivo) che si trova sul suo percorso più breve all’indietro verso qualsiasi possibile sorgente.

Questa informazione è quindi usata nell’algoritmo RPF In aggiunta al calcolo delle informazioni sull’hop

successivo, calcola anche un elenco di router a valle per scopi di potatura.