CAPITOLO 4 RISULTATI DELLE SIMULAZIONI

Documenti analoghi
Livello trasporto. Controllo del flusso e della congestione

Introduzione al Simulink

Controllo della congestione

CAPITOLO 3 MODELLIZZAZIONE DI XCP ATTRAVERSO SIMULINK E STATEFLOW

INTRODUZIONE A SIMULINK

Introduzione. Esercizio n 1. Metodo di Eulero Esplicito. Risolvere il problema ai valori iniziali: 3 2

CONTROLLI AUTOMATICI Ingegneria Meccatronica

Architetture di Internet esercizi livello di Trasporto

Trasformata discreta di Fourier diunasequenzafinita: algoritmifft

L Ambiente di Sviluppo SIMULINK

Capitolo 1 Esercitazioni condotte in aula con Star-CCM+

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK.

Matlab e Simulink per i sistemi di controllo

Fondamenti di Informatica

INTRODUZIONE A SIMULINK

METODI NUMERICI PER IL CONTROLLO

Fondamenti di di A utomatica Automatica Prof. Bruno Picasso Introduzione all all uso di di S imulink Simulink

Soluzione dell esercizio 2 (TCP) dell esame del 16 giugno 2015

Esercizi-Controllo di Flusso

Laboratori di FONDAMENTI DI RETI DI TELECOMUNICAZIONI

Simulink. Introduzione a Simulink Esempio sull analisi di sistemi dinamici lineari con il Control System Toolbox e Simulink v. file.m e.

Introduzione a Matlab e Simulink

Motivazioni: problema di analisi. Introduzione a Matlab e Simulink. Dove trovare altre informazioni? A cosa serve questa presentazione

Esercitazioni di Tecnologie per l Automazione. Introduzione a Matlab e Simulink

Come creare il BAS Test tramite l applicazione Training Center

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Tutorial per utilizzare il Registro Elettronico 1. Accesso al registro elettronico e visualizzazione argomenti di lezione

4. Personalizzazione della Legenda Colori

SIMULINK MATLAB E SIMULINK. Model-Based and System-Based Design MATLAB SIMULINK. Altri prodotti:

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

GeCoTi 2K. Release 4.0

Gestione Vaccinazioni Modulo SOLE

- 3 - NS CR I P T : un interfaccia g rafica per NS

- 3 - NSCRIPT: un interfaccia grafica per NS

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

Manuale Comsol Multiphysics v ) Aprire la tendina di RadioFrequency e scegliere ElectroMagneticWaves (emw) e poi freccina blu:

Introduzione a Simulink

Prenotazioni. Manuale d uso portale freschi.reginasrl.com. Ufficio EDP 04/10/2013

Distillazione frazionata a batch

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 3

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Video Scrittura (MS Word) Lezione 3 Formattazione e Stampa documenti

Le due principali tipologie di sorgenti di rumore nei circuiti elettronici sono il rumore termico e il rumore flicker.

CREAZIONE DI UNA CARTELLA

Università di Bergamo. Dipartimento di Ingegneria dell Informazione e Metodi Matematici. Laboratorio di Reti. Prof.

RISKNAT UTILIZZO DEL VISUALIZZATORE CARTOGRAFICO

Elenco comandi. Apre un progetto precedentemente salvato. Avvia il programma in memoria: la tartaruga si muove lentamente.

Reti di Comunicazione e Internet

Corso di Access. Prerequisiti. Modulo L2 A (Access) Le query

Navigazione web e utilizzo di internet. Coordinatore scientifico: Prof. Avv. Giuseppe Russo

- 8 - Multiplazione statistica di sorgenti a pacchetto bursty

1) (commutazione pacchetto, prodotto banda-ritardo) 2) (frammentazione, commutazione di pacchetto) 3) (Selective Repeat)

CONTROLLI AUTOMATICI Ingegneria Meccatronica. Prof. Cesare Fantuzzi. Cristian Secchi

LABORATORIO DI RETI. 03 Controllo a Finestra

Esercitazione 4. Dott.ssa Sabrina Pedrini

FONDAMENTI DI SEGNALI E TRASMISSIONE 2 Laboratorio

1. CALENDARI AFERESI

CONTROLLI AUTOMATICI e SISTEMI ELETTRICI LINEARI Ingegneria Meccatronica INTRODUZIONE Matlab (seconda parte) e SIMULINK

Laboratori di FONDAMENTI DI RETI DI TELECOMUNICAZIONI

Fondamenti di Informatica

CLASSE : V A E.T.A ALUNNO: Bovino Silvano

Corso di Laurea in Ingegneria Meccatronica PROGETTO DEL CONTROLLORE. CA 9 - LuogoDelleRadici

con λ -d(f(x,y))/d(y)=12.

Gestione del testo. Dreamweaver e il testo. Richiamare la pagina

Sistemi Informatici per il supporto alle decisioni Modulo 1. Database: concetti introduttivi

Parte II: Reti di calcolatori Lezione 14 (38)

Prova completa - Rete Internet (ing. Giovanni Neglia) Mercoledì 11 Luglio Cognome: Nome: Corso di laurea e anno: Matricola: Firma:

( e j2π ft 0.9 j) ( e j2π ft j)

SOLUZIONE della Prova TIPO B per:

ISTRUZIONI FUNZIONI OPERATORE

Laboratorio di Fondamenti di Reti di Telecomunicazioni

Esercizio 1. Ricavi 102,3 105,6 100,7 105,2 104,8 104,6 100,7 100,2 100,9 102,7 95,4 120,7

Zoom è una Pagina web multimedia che si crea accedendo al seguente menù: File > Nuova pagina web multimedia > Zoom (figura 1).

ANALISI DI SEGNALI TEMPO VARIANTI

CREAZIONE DI UNA CARTELLA

Laurea Specialistica

Laboratorio di Progettazione Elettronica Esercitazione 1

Capitolo IX. Convertitori di dati

MATLAB-SIMULINK. Simulink. Simulazione di un filtro passabasso RC. Ing. Alessandro Pisano.

GALLERY. Album immagini

SISTEMI DI CONTROLLO Ingegneria Meccanica e Ingegneria del Veicolo

- 4 - La multiplazione statistica nelle reti a pacchetto

MICROSOFT OFFICE POWERPOINT Come creare presentazioni interattive di documenti.

Architetture di Internet esercizi livello Applicazione

Politecnico di Milano Dipar0mento di Ele3ronica e Informazione

Lezione del 2 aprile 2019

Controlli Automatici - Parte A

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

Fondamenti di Reti di Telecomunicazioni Prof. Guido Maier III appello 4 settembre 2009

1. Introduzione. 2. Installazione di WinEMTFree. 3. Descrizione generale del programma

VIRTUAL REALITY TOOLBOX

Prova TIPO D per: ESERCIZIO 1.

Esercitazione Strumentazione virtuale

GECOS + Rendicontazione ore

Oscillazioni libere e risonanza di un circuito RLC-serie (Trattazione analitica del circuito RLC-serie)

Centro Ausili Tecnologici TUTORIAL CREAZIONE TABELLE DI COMUNICAZIONE CON PROGRAMMI NON SPECIFICI

Guida pratica all attivazione della componente applet per la firma digitale interna al portale VestaNET

Transcript:

CAPITOLO 4 RISULTATI DELLE SIMULAZIONI 4.1 Visualizzazione dei risultati Per la visualizzazione dei risultati è stato utilizzato il blocco Simulink chiamato To Workspace, reperibile dalla libreria di Simulink nella sezione Sinks: Fig. 4.1: sezione Sinks Tale blocco permette di plottare in Matlab l andamento di una particolare variabile. Per far ciò, è sufficiente porre in ingresso al blocco la variabile desiderata e impostare le seguenti opzioni del blocco cliccando due volte su esso: 59

Fig. 4.2: opzioni del blocco To Workspace Nella prima riga va inserito il nome della variabile. La seconda riga indica il numero massimo di punti che possono essere memorizzati per tracciare l andamento desiderato ed è stato impostato ad infinito per tutte le simulazioni. La decimazione è stata lasciata ad 1 e il Sample Time a -1 in modo da ereditare il passo di campionamento scelto per le simulazioni. Per poter visualizzare la variabile in funzione del tempo, sono state modificate alcune opzioni dal menu Simulation selezionando Configuration Parameters e cliccando su Data Import/Export ottenendo la seguente mascherina: 60

Fig. 4.3: impostazioni dei parametri Data Import/Export Come si può notare dalla Fig. 4.3, è stata selezionata l opzione Time in cui è stato definito il nome della variabile tempo come t. Per poter visualizzare l andamento della variabile, bisogna inserire, nella finestra dei comandi di Matab, l istruzione: plot(t,<nome_variabile>), Prima di far partire la simulazione, bisogna impostare altri parametri di configurazione accessibili con la stessa procedura su scritta, ma selezionando la voce Solver come segue: 61

Fig. 4.4: impostazioni dei parametri Solver Prima di tutto bisogna stabilire il tempo di inizio ed il tempo di fine della simulazione in maniera tale da avere l intervallo di simulazione desiderato. Nel nostro caso si è voluto un intervallo di simulazione pari a 300s e quindi il tempo di inizio (Start time) è zero mentre quello di fine (Stop time) è 300. La simulazione non dura in genere un tempo pari a quello inserito nella pagina Solver: la quantità di tempo necessario a compiere una simulazione dipende da molti fattori, inclusa la complessità del modello, lo step size del solver e la velocità del clock del computer. La simulazione dei modelli Simulink include l integrazione numerica di insiemi di equazioni differenziali ordinarie (ODEs). Simulink fornisce una serie di risolutori per la simulazione di tali equazioni. A causa della diversità del comportamento dinamico del sistema, alcuni risolutori possono essere più efficienti di altri nella risoluzione di particolari problemi. Si può scegliere tra risolutori a passo variabile o a passo fisso. I risolutori a passo variabile possono modificare la dimensione del loro passo durante la simulazione, mentre quelli a passo fisso mantengono sempre la stessa dimensione del passo. Effettuando diverse simulazioni, è risultato più efficiente, nel nostro caso, il risolutore a passo fisso ode4(runge-kutta). 62

4.2 Simulazioni a singola connessione Iniziamo con le simulazioni a singolo flusso, in cui l intervallo di simulazione è pari a 300s e i ritardi di propagazione sono stati impostati come: T fw=t fb =0. 1s RTT p =0. 2s Chiaramente RTTp è solo la somma dei due ritardi di propagazione, ma in realtà a questo si aggiunge il tempo di smaltimento della coda dato dal rapporto tra q t come visto nel d t capitolo precedente. Per impostare i ritardi basta cliccare due volte sul blocco del ritardo ed appare la seguente finestra: Fig. 4.5: impostazione del tempo del tempo di propagazione Inoltre la banda è stata impostata ad un valore costante pari a 1000 pacchetti/s, cioè 12Mbps, ipotizzando che la grandezza di un pacchetto sia di circa 1500 byte. Successivamente è stata impostata la capacità massima del buffer pari al prodotto tra il tempo totale di propagazione ( T fw T fb ) ed il valore della banda data. Grazie al comando plot(t,coda, b,t,cwnd, r ) è possibile visualizzare l andamento della coda e della congestion window rispettivamente con colore blu e rosso: 63

Fig. 4.6: andamento della cwnd e della coda con Tp=200ms Si nota che l andamento del livello di coda segue quello della congestion window. Visto che l RTT è variabile poiché dipende anche dal tempo di svuotamento della coda, si può avere un andamento più chiaro dal grafico dell input rate: Fig. 4.7: andamento dell input rate Dall andamento dell input rate, si nota che inizialmente si ha un incremento drastico tale da avere una sovraelongazione di 200 pacchetti/s per qualche frazione di secondo, e 64

successivamente, a circa 0.7s, l input rate si stabilizza intorno alla banda data e rimane costante per tutto il tempo della simulazione. Vediamo l andamento della banda utilizzata: Fig. 4.8: confronto tra la banda data e la banda utilizzata con Tp=200ms La banda utilizzata si sovrappone esattamente alla banda disponibile, il che vuol dire che si sfrutta totalmente la capacità del link. Chiaramente l overflow rate è nullo poiché non si supera il livello massimo della capacità del buffer pari a 200 pacchetti (banda * RTTp). Vediamo ora cosa accade se raddoppiamo il tempo di propagazione Tp. L input rate è il seguente: 65

Fig. 4.9: andamento dell input rate con Tp=400ms Si nota che si ha una sovraelongazione di 1000 pacchetti/s, molto più ampia rispetto a quella ottenuta con Tp=200ms. Inoltre la convergenza alla stabilità si ottiene dopo circa 2.3s contro ai 0.7s ottenuti nel caso precedente. Anche in questo caso non si ha overflow rate e la banda viene sfruttata totalmente. Fig. 4.10: confronto tra la banda data e la banda utilizzata con Tp=400ms 66

Aumentando il ritardo di propagazione a Tp=500ms si ottengono i seguenti grafici: Fig. 4.11: confronto tra la banda data e la banda utilizzata con Tp=500ms Fig. 4.12: andamento dell input rate con Tp=500ms 67

Fig. 4.13: andamento dell overflow rate della coda con Tp=500ms Fig. 4.14: andamento dell integrale dell overflow rate con Tp=500ms Dall andamento visto nei grafici, si nota che l andamento dell input rate raggiunge il regime dopo circa 65s. In questo intervallo di tempo si ha overflow rate poiché si supera il 68

livello massimo della capacità del buffer di 500 pacchetti, e si ottiene una perdita totale di circa 5400 pacchetti ed infine la banda utilizzata, nei primi 2s, è ancora zero. Passiamo ora al caso in cui la banda disponibile non è costante, ma variabile nel tempo. Si può attribuire, alla banda disponibile, l andamento desiderato grazie al blocco Simulink chiamato Signal Builder accessibile dalla libreria di Simulink alla voce Sources: Fig. 4.15: blocco Signal Builder In particolare si vuole vedere cosa succede nel caso in cui la banda abbia un decremento drastico e, successivamente, un incremento. L andamento della banda è stato così costruito: Figura 4.16: Costruzione del segnale che rappresenta l andamento della banda disponibile 69

Effettuando la simulazione con gli stessi parametri impostati inizialmente con Tp=200ms, si ottengono i seguenti risultati: Fig. 4.17: confronto tra banda variabile data e banda utilizzata con Tp=200ms Fig. 4.18: andamento della cwnd e della coda a banda variabile e Tp=200ms 70

Fig. 4.19: andamento dell input rate a banda variabile con Tp=200ms Dai grafici visti, si vede che l andamento della cwnd segue quello della coda, però l andamento dell input rate non reagisce molto velocemente, soprattutto quando si ha la seconda variazione della banda. In questo caso non si ottiene overflow poiché la capacità massima del buffer è pari al prodotto tra il massimo valore della banda e il massimo ritardo di propagazione per cui si ha 200 pacchetti, soglia che non viene superata. Portando il ritardo di propagazione a Tp=500ms, si ottengono i seguenti risultati: 71

Fig. 4.20: andamento dell input rate a banda variabile e Tp=500ms Fig. 4.21: andamento dell overflow rate a banda variabile e Tp=500ms 72

Fig. 4.22: andamento dell integrale dell overflow rate a banda variabile e Tp=500ms Si nota che l andamento dell input rate è ancora più instabile e, inoltre, si hanno anche delle perdite di pacchetti pari a 5400, nella prima parte dell andamento della banda, e di ulteriori 2000, nella seconda parte. Vediamo ora come si comporta il sistema utilizzando una banda sinusoidale con in aggiunta una leggera quantità di rumore gaussiano. In particolare si è utilizzato un blocco sommatore con tre ingressi i quali sono una costante posta a 1000 pacchetti/s, una funzione sinusoidale di ampiezza pari a 500 e un generatore di rumore gaussiano con varianza pari a 50, come in figura seguente: Fig. 4.23: costruzione della banda sinusoidale con l aggiunta di rumore gaussiano 73

Impostando inizialmente un ritardo di propagazione pari a Tp=200ms, si sono ottenuti i seguenti grafici: Fig. 4.24: confronto tra banda sinusoidale data e banda utilizzata con Tp=200ms Fig. 4.25: andamento della cwnd e della coda a banda sinusoidale e Tp=200ms 74

Fig. 4.26: andamento dell input rate a banda sinusoidale e Tp=200ms Dai grafici si nota che si ha un andamento dell input rate che non segue esattamente l andamento della banda ed inoltre essa non viene sfruttata al massimo come da Fig.4.24; non si ha overflow poiché il livello massimo della capacità del buffer, che in questo caso è 200 pacchetti (bandamax * RTTp_max). Vediamo ora cosa accade se il Tp=500ms e la banda data è uguale a quella vista precedentemente, cioè sinusoidale con rumore gaussiano. 75

Fig. 4.27: confronto tra banda sinusoidale data e banda utilizzata con Tp=500ms Fig. 4.28: andamento dell input rate a banda sinusoidale e Tp=500ms 76

Fig. 4.29: andamento della coda a banda sinusoidale e Tp=500ms Fig. 4.30: andamento dell overflow rate a banda sinusoidale e Tp=500ms 77

Fig. 4.31: andamento dell integrale dell overflow rate a banda sinusoidale e Tp=500ms Dai grafici su visti, si nota che l andamento dell input rate all inizio è più instabile, difatti si ha un elevato picco in partenza; inoltre il livello di coda è molto instabile tale da superare il livello massimo della capacità del buffer pari a 500 pacchetti (banda * RTTp) provocando una perdita totale di 9000 pacchetti. 4.2 Simulazioni a doppia connessione Vediamo ora le simulazioni effettuate nel caso in cui sono presenti due sorgenti. Si è utilizzato lo stesso risolutore utilizzato per la singola connessione, ode4(runge-kutta) con step size pari a 0.005. Come prima simulazione si è partiti utilizzando una banda costante di 1000 pacchetti/s e ritardi di propagazione pari a Tp1=200ms e Tp2=100ms, rispettivi al primo ed al secondo sender. I grafici ottenuti sono i seguenti: 78

Fig. 4.32: confronto tra banda data e banda utilizzata con Tp1=200ms e Tp2=100ms Fig. 4.33: andamento dell input rate di due flussi a banda costante con Tp1=200ms e Tp2=100ms 79

Fig. 4.34: andamento della coda a banda costante con Tp1=200ms e Tp2=100ms Si nota che il flusso che ha un maggior ritardo di propagazione ha un ampia sovraelongazione nei primi 15s circa, stabilizzandosi successivamente fino ad arrivare alla convergenza col secondo flusso a circa 33s (tempo molto più grande rispetto alla singola connessione) in cui viene sfruttata la stessa porzione di banda che è leggermente inferiore alla metà della banda data (lo si nota maggiormente in Fig. 4.32). Inoltre, l andamento della coda segue quello della cwnd relativa al primo flusso per i primi 4s, abbassandosi successivamente e non superando la capacità massima del buffer che in questo caso è pari a 200 pacchetti (banda*tpmax). Di conseguenza non si ha overflow. E possibile calcolare un indice di fairness detto Jain s Fairness Index [EECS 122] dato dalla formula: n x i 2 f x 1, x 2,...., x n = i=1 n n x i=1 => 0 f... 1 i2 dove xi è il goodput (pacchetti ricevuti dal receiver) dell i-esimo flusso, ed n è il numero di flussi. Se l indice è uguale ad 1 vuol dire che si ha un equa suddivisione di banda. In questo caso l indice è 0.99.Vediamo cosa accade se si raddoppiano entrambi i tempi di propagazione, cioè Tp1 = 400ms e Tp2 = 200ms : 80

Fig. 4.35: confronto tra banda data e banda utilizzata con Tp1=400ms e Tp2=200ms Fig. 4.36: andamento dell input rate di due flussi a banda costante con Tp1=400ms e Tp2=200ms 81

Fig. 4.37: andamento della coda a banda costante con Tp1=400ms e Tp2=200ms Fig. 4.38: andamento dell overflow rate a banda costante con Tp1=400ms e Tp2=200ms 82

Fig. 4.39: andamento dell integrale dell overflow rate a banda costante con Tp1=400ms e Tp2=200ms In questo caso si nota che la convergenza alla fairness dei due flussi si ottiene solo a circa 70s, cioè il doppio del tempo che si è ottenuto nel caso precedente. Inoltre il riempimento della coda supera la capacità massima del buffer (400 pacchetti) nei primi 7s e quindi si ha una perdita di circa 3300 pacchetti; il Jain s Fairness Index è 0.98. Trattiamo ora il caso in cui la banda è variabile, cioè ha delle brusche variazioni come visto nel caso della singola connessione; i tempi di propagazione sono rispettivamente Tp1 = 200ms e Tp2 = 100ms ottenendo i seguenti grafici: 83

Fig. 4.40: confronto tra banda data variabile e banda utilizzata con Tp1=200ms e Tp2=100ms Fig. 4.41: andamento delle cwnd e della coda a banda variabile con Tp1=200ms e Tp2=100ms 84

Fig. 4.42: andamento dell input rate dei due flussi a banda variabile con Tp1=200ms e Tp2=100ms Dagli andamenti su visti si nota che, nei punti in cui la banda ha le variazioni, si hanno delle irregolarità degli input rate (Fig. 4.42) e inoltre la coda ha dei picchi di riempimento non superando comunque il livello massimo della capacità del buffer. Infine la banda utilizzata non corrisponde esattamente alla banda data (Fig. 4.40), cioè non viene sfruttata a pieno la capacità del link e il Jain s Fairness Index è 0.99. Vediamo ora cosa accade portando i tempi di propagazione a Tp1 = 600ms e Tp2 = 300ms, utilizzando lo stesso andamento di banda appena visto. 85

Fig. 4.43: confronto tra banda variabile data e banda utilizzata con Tp1=600ms e Tp2=300ms Fig. 4.44: andamento delle cwnd e della coda a banda variabile con Tp1=600ms e Tp2=300ms 86

Fig. 4.45: andamento dell input rate dei due flussi a banda variabile con Tp1=600ms e Tp2=300ms Dai grafici si notano delle oscillazioni ancora più accentuate degli input rate (Fig. 4.45) e inoltre la coda ha dei picchi di riempimento molto più ampi rispetto al caso precedente non superando comunque il livello massimo della capacità del buffer. Infine la banda utilizzata si scosta maggiormente dalla banda data (Fig. 4.43), non sfruttando a pieno la capacità del link. Come nel caso precedente, il Jain s Fairness Index è 0.99. Ora vediamo il comportamento di XCP nel caso in cui la banda sia sinusoidale, come nel paragrafo precedente. Per prima sono stati impostati Tp1 = 200ms e Tp2 = 100ms ottenendo: 87

Fig. 4.46: confronto tra banda sinusoidale data e banda utilizzata con Tp1=200ms e Tp2=100ms Fig. 4.47: andamento della cwnd e della coda a banda sinusoidale con Tp1=200ms e Tp2=100ms 88

Fig. 4.48: andamento dell input rate a banda sinusoidale con Tp1=200ms e Tp2=100ms Dagli andamenti su visti, si nota che la banda utilizzata si scosta leggermente rispetto alla banda data e non si sfrutta il massimo della capacità (Fig. 4.46); la convergenza alla fairness si ottiene dopo circa 35s e la coda si riempie solo nei primi secondi seguendo il picco iniziale delle cwnd, andando poi a zero. Non si ha overflow poiché non si supera la capacità massima del buffer (200 pacchetti) ed anche in questo caso il Jain s Fairness Index è 0.99. Nel caso in cui i tempi di propagazione sono rispettivamente Tp1 = 600ms e Tp2 = 300ms, si ottiene: 89

Fig. 4.49: confronto tra banda sinusoidale data e banda utilizzata con Tp1=600ms e Tp2=300ms Fig. 4.50: andamento della cwnd e della coda a banda sinusoidale con Tp1=600ms e Tp2=300ms 90

Fig. 4.51: andamento dell input rate a banda sinusoidale con Tp1=600ms e Tp2=300ms Fig. 4.52: andamento dell overflow rate a banda sinusoidale con Tp1=600ms e Tp2=300ms 91

Fig. 4.53: andamento dell integrale dell overflow rate a banda sinusoidale con Tp1=600ms e Tp2=300ms Si nota che l andamento degli input rate sono molto irregolari nei primi 120s circa (Fig. 4.51) in cui si ottiene la fairness dei due flussi; la coda si riempie di circa 605 pacchetti per i primi 30s (Fig. 4.50) superando la soglia massima della capacità del buffer (600 pacchetti) e andando a zero a circa 55s. Di conseguenza si ha una perdita di 12700 pacchetti ed il Jain s Fairness Index scende a 0.95. 4.3 Simulazioni a tripla connessione Le ultime simulazioni effettuate riguardano il caso in cui sono presenti tre sender; anche in questo caso si è utilizzato lo stesso risolutore utilizzato precedentemente, cioè ode4(runge-kutta) con step size pari a 0.005. Come prima simulazione si è partiti utilizzando una banda costante di 1000 pacchetti/s e ritardi di propagazione pari a Tp1=100ms, Tp2=200ms Tp3=300ms, rispettivi al primo, al secondo e al terzo sender. I grafici ottenuti sono i seguenti: 92

Fig. 4.54: confronto tra banda data e banda utilizzata con Tp1=100ms e Tp2=200ms Tp3=300ms Fig. 4.55: andamento dell input rate di tre flussi a banda costante con Tp1=100ms, Tp2=200ms e Tp3=300ms 93

Fig. 4.56: andamento della coda a banda costante con Tp1=100ms, Tp2=200ms e Tp3=300ms Dagli andamenti su visti, si nota che la banda utilizzata è più bassa rispetto alla banda data (Fig. 4.54) e che la convergenza alla fairness degli input rate si ha dopo circa 48s (Fig. 4.55), maggiore rispetto al tempo della fairness ottenuto nella doppia connessione. La coda ha un picco di riempimento solo nei primi 3s (Fig.4.56) senza superare la capacità massima del buffer (300 pacchetti), andando poi a stabilizzarsi a zero. Inoltre il Jain s Fairness Index è 0.99. Raddoppiando i tempi di propagazione, Tp1=200ms, Tp2=400ms e Tp3=600ms, si ottengono i seguenti andamenti: 94

Fig. 4.57: confronto tra banda data e banda utilizzata con Tp1=200ms e Tp2=400ms Tp3=600ms Fig. 4.58: andamento dell input rate di tre flussi a banda costante con Tp1=200ms, Tp2=400ms e Tp3=600ms 95

Fig. 4.59: andamento della coda a banda costante con Tp1=200ms, Tp2=400ms e Tp3=600ms Fig. 4.60: andamento dell overflow rate a banda costante con Tp1=200ms, Tp2=400ms e Tp3=600ms 96

Fig. 4.61: andamento dell integrale dell overflow rate a banda costante con Tp1=200ms, Tp2=400ms e Tp3=600ms Dalla figura si nota che il tempo di convergenza alla fairness relativo agli input rate raddoppia (Fig.4.58) ed inoltre si ha una perdita di circa 260 pacchetti, dato dal fatto che il livello massimo di riempimento della coda (600 pacchetti) viene superato per circa 2 secondi. Infine la banda utilizzata ha una maggiore instabilità nei primi 50s circa, cosa che prima avveniva per 25s circa ed il Jain s Fairness Index è 0.98. Verranno ora mostrate le simulazioni ottenute inserendo la banda variabile vista nel caso della singola e doppia connessione, partendo da Tp1=100ms, Tp2=200ms e Tp3=300ms: 97

Fig. 4.62: confronto tra banda data variabile e banda utilizzata con Tp1=100ms, Tp2=200ms e Tp3=300ms Fig. 4.63: andamento delle cwnd e della coda a banda variabile con Tp1=100ms, Tp2=200ms e Tp3=300ms 98

Fig. 4.64: andamento dell input rate dei due flussi a banda variabile con Tp1=100ms, Tp2=200ms e Tp3=300ms Dai grafici appena visti, si nota che la banda utilizzata è ancora più bassa rispetto a quella vista per la doppia connessione (Fig. 4.62); inoltre in corrispondenza delle variazioni di banda si hanno delle irregolarità più accentuate degli input rate (Fig.4.64) e dei picchi di riempimento di coda (Fig.4.63) che comunque non supera la capacità massima del buffer (300 pacchetti). Infine il Jain s Fairness Index è 0.99. Raddoppiando i tempi di propagazione, Tp1=200ms, Tp2=400ms e Tp3=600ms, si ottengono i seguenti risultati: 99

Fig. 4.65: confronto tra banda data variabile e banda utilizzata con Tp1=200ms, Tp2=400ms e Tp3=600ms Fig. 4.66: andamento delle cwnd e della coda a banda variabile con Tp1=200ms, Tp2=400ms e Tp3=600ms 100

Fig. 4.67: andamento dell input rate dei due flussi a banda variabile con Tp1=200ms, Tp2=400ms e Tp3=600ms Come ci si poteva aspettare, i tempi di convergenza alla fairness degli input rate sono raddoppiati ed inoltre si hanno maggiori instabilità nei punti di variazione della banda (Fig.4.67) con una crescita del riempimento della coda che comunque non supera il livello massimo della capacità del buffer (600 pacchetti); anche in questo caso il Jain s Fairness Index è 0.99. Per concludere verranno mostrate le simulazioni ottenute utilizzando una banda sinusoidale con l aggiunta di rumore gaussiano, come visto per la singola e la doppia connessione, partendo con Tp1=100ms, Tp2=200ms e Tp3=300ms: 101

Fig. 4.68: confronto tra banda sinusoidale data e banda utilizzata con Tp1=100ms, Tp2=200ms e Tp3=300ms Fig. 4.69: andamento della cwnd e della coda a banda sinusoidale con Tp1=100ms, Tp2=200ms e Tp3=300ms 102

Fig. 4.70: andamento dell input rate a banda sinusoidale con Tp1=100ms, Tp2=200ms e Tp3=300ms Come appena visto, la banda utilizzata è inferiore rispetto a quella data (Fig. 4.68); il tempo di convergenza alla fairness degli input rate è di circa 48s (Fig. 4.70), maggiore rispetto alla doppia connessione. La coda ha un riempimento brusco nei primi secondi (Fig. 4.69) senza, però, superare la capacità massima del buffer (300 pacchetti). Infine il Jain s Fairness Index si mantiene a 0.99. Vediamo ora cosa accade raddoppiando i tempi di propagazione, cioè Tp1=200ms, Tp2=400ms e Tp3=600ms, mantenendo lo stesso andamento di banda: 103

Fig. 4.71: confronto tra banda sinusoidale data e banda utilizzata con Tp1=200ms, Tp2=400ms e Tp3=600ms Fig. 4.72: andamento della cwnd e della coda a banda sinusoidale con Tp1=200ms, Tp2=400ms e Tp3=600ms 104

Fig. 4.73: andamento dell input rate a banda sinusoidale con Tp1=200ms, Tp2=400ms e Tp3=600ms Fig. 4.74: andamento dell overflow rate a banda sinusoidale con Tp1=200ms, Tp2=400ms e Tp3=600ms 105

Fig. 4.75: andamento dell integrale dell overflow rate a banda sinusoidale con Tp1=200ms, Tp2=400ms e Tp3=600ms Dagli ultimi andamenti visti, la banda utilizzata si discosta maggiormente da quella data soprattutto nei primi 50s (Fig. 4.71); inoltre, come ci si poteva aspettare, il tempo di convergenza alla fairness degli input rate è circa il doppio rispetto a quello ottenuto nel caso precedente (Fig. 4.73), cioè è di circa 90s. Infine si ha un riempimento della coda che nei primi secondi supera la capacità massima del buffer (Fig. 4.72) portando ad una perdita di poco più di 200 pacchetti (Fig. 4.75); il Jain s Fairness Index è 0.98. 106