1. INTRODUZIONE

 

 

Il multicast è una modalità di trasmissione tra una o più sorgenti e molti ricevitori che consente un’elevata utilizzazione della banda disponibile.

Nella gestione delle reti vi sono due importanti parametri da tenere in conto e quantificare: il consumo di banda e il consumo delle risorse del nodo, in termini di memoria per le tabelle di instradamento, utilizzo della CPU dovuto all'elaborazione dei pacchetti, etc.. Come mostrato in Figura 1.1, il costo della capacità di trasmissione si è abbassato più lentamente di quello di elaborazione/memoria; è questa la motivazione della sempre maggiore attenzione che lo studio dei protocolli sta riservando al multicast. Infatti, esso consente un migliore utilizzo della rete che si traduce in un notevole risparmio economico.

 

 

Fig.1.1: costo di trasmissione e di elaborazione negli anni [8].

 

 

 

 

 

La crescita esponenziale delle reti di computer ha portato a seri problemi di congestione. Si pensi che statisticamente il 10% dei pacchetti viene perso a causa del sovraccarico delle code degli elementi di rete. Ad esempio, nell’ottobre del 1986, accaddero seri collassi dovuti a congestione: sul collegamento tra LBL e UC Berkeley (nodi linkati da due hops), si registrò un calo del throughput da 32 Kbps a 40 bps. Ne seguì una maggiore attenzione al congestion detection, avoidance e control [10], [11]. Il problema della congestione è amplificato nel caso di applicazioni multicast in quanto coinvolge un numero elevato di ricevitori, geograficamente distribuiti [20].

Un protocollo di trasporto non congestiona Internet ed è detto “buon cittadino della rete” se divide equamente la banda disponibile con un flusso TCP (Trasmission Control Protocol) concorrente; in tal caso esso è detto anche “TCP-friendly” o “TCP-like”. Il TCP viene utilizzato come riferimento in quanto esso è il protocollo di trasporto più diffuso in Internet.

Le comunicazioni satellitari hanno natura broadcast; ciò le rende particolarmente efficaci per le applicazioni multicast. Difatti, parecchie compagnie del settore delle telecomunicazioni hanno recentemente annunciato la volontà di costruire sistemi satellitari; questi forniranno servizi commerciali per trasmissioni dati a larga banda oltre a quelli tradizionali a banda stretta utilizzati per la trasmissione di voce.

In questa tesi saranno analizzate, tramite simulazione, le prestazioni di throughput di uno schema di controllo congestione multicast TCP-like in reti ibride, ovvero reti composite di tratti terrestri e tratti satellitari. In particolare, come schema di controllo di congestione multicast è stato utilizzato il PGMCC (Pragmatic General Multicast Congestion Control) [17], [18], che è uno schema single-rate basato sull’elezione di un rappresentativo del gruppo multicast.

Le simulazioni sono state effettuate col simulatore multiprotocollo NS-2, Network Simulator, utilizzando il FreeBSD, un sistema operativo Unix-like.

Nel lavoro di tesi è stato analizzato l’impatto dell’eterogeneità dei parametri delle reti ibride sulle prestazioni del PGMCC. Le prestazioni sono state valutate in termini di throughput medio al variare del numero dei ricevitori, della probabilità di perdita del tratto satellitare dovuta a link error e del tipo di satellite (casi LEO, MEO, GEO).

E’ stato, inoltre, valutato l’effetto dell’asimmetria che si verifica quando il path di ritorno terrestre ha una capacità minore di quello di andata. E’ questo il caso di un ricevitore che trasmette alla sorgente gli ACKs (ACKnowledgments) e i NAKs (Negative ACKnowledgments), attraverso un modem, nella PSTN (Public Switched Telephone Network) che lo collega all’Internet terrestre.

Il throughput diminuisce drammaticamente quando la capacità del path di ritorno è minore o uguale a 56 Kbps.

Risultati soddisfacenti sono stati trovati nelle analisi d’intra e inter-protocol fairness: il PGMCC è fair, rispettivamente in presenza di più sessioni dello stesso tipo e di flussi concorrenti TCP.

La tesi è strutturata in cinque capitoli. Nel secondo capitolo, s’introdurranno in modo sistematico i protocolli di trasporto per applicazioni multicast con particolare attenzione agli schemi di controllo di congestione, dandone la classificazione presente in letteratura. Si descriverà il PGM (Pragmatic General Multicast) [19], esponendone in dettaglio le procedure. Successivamente si esaminerà il PGMCC, illustrandone il controllo a finestra e l’elezione dell’acker, rappresentante del gruppo multicast. Inoltre si descriveranno qualitativamente le reti satellitari per poi individuare i problemi che il PGMCC incontrerà su di esse.

S’introdurrà l’NS, nel Capitolo 3, mettendone in luce i vantaggi che il progettista di protocolli ha con la sua utilizzazione. Si preciserà qual è stato l’ambiente di lavoro per effettuare le simulazioni, per poi spiegare alcune tecniche di modellizzazione effettuate e come monitorare le informazioni d’interesse durante l’esecuzione della simulazione.

Nel successivo capitolo saranno mostrati i risultati ottenuti dalle simulazioni sotto forma di grafici per renderli più velocemente interpretabili. Sarà valutato il throughput al variare del numero dei ricevitori, della probabilità di perdita dei pacchetti dovuta ad errore sui tratti satellitari. Poi se ne metterà in luce l’andamento al variare del RTT satellitare (Round Trip Time, tempo intercorrente tra l’invio di un pacchetto dati e la ricezione del rispettivo ACK, alla sorgente). Altro caso d’interesse sarà quello asimmetrico. Si analizzerà l’intra-protocol e inter-protocol fairness.

Infine, nell’ultimo capitolo, si trarranno le conclusioni del lavoro di tesi delineando ulteriori possibili investigazioni.