Relatore: Chiar.mo Prof. Ing. Saverio MASCOLO Correlatore: Dott. Ing. Luca DECICCO ANNO ACCADEMICO...
-
Upload
melchiorre-miele -
Category
Documents
-
view
215 -
download
0
Transcript of Relatore: Chiar.mo Prof. Ing. Saverio MASCOLO Correlatore: Dott. Ing. Luca DECICCO ANNO ACCADEMICO...
Relatore:Chiar.mo Prof. Ing. Saverio MASCOLO
Correlatore:Dott. Ing. Luca DECICCO
ANNO ACCADEMICO 2004/2005
POLITECNICO DI BARII Facoltà di Ingegneria
Corso di Laurea in Ingegneria delle Telecomunicazioni
Tesi di Laurea
MODELLO FLUIDO DELL’ “EXPLICIT CONTROL PROTOCOL” UTILIZZANDO SIMULINK/STATEFLOW
Laureando:Laureando:
Giuseppe BRUSCELLAGiuseppe BRUSCELLA
Obiettivi:Obiettivi:
Analisi del protocollo XCP (eXplicit Control Analisi del protocollo XCP (eXplicit Control Protocol)Protocol)
Modellazione dell’algoritmo di controllo XCP Modellazione dell’algoritmo di controllo XCP
Osservazione degli andamenti delle variabili Osservazione degli andamenti delle variabili del sistemadel sistema
Verifica di instabilità al crescere del ritardoVerifica di instabilità al crescere del ritardo
Cos’è XCP?Cos’è XCP? E’ un protocollo di controllo di congestione delle reti E’ un protocollo di controllo di congestione delle reti
internet ideato da Dina Katabi nel 2003 internet ideato da Dina Katabi nel 2003
Si basa su un meccanismo di retroazione Si basa su un meccanismo di retroazione
E’ window-based e best effortE’ window-based e best effort
La rete informa esplicitamente lo stato di congestione La rete informa esplicitamente lo stato di congestione al sender il quale modifica proporzionalmente la sua al sender il quale modifica proporzionalmente la sua congestion window (cwnd)congestion window (cwnd)
Ruolo importante assunto dal routerRuolo importante assunto dal router
La strutturaLa struttura Nuovo livello protocollare di 20 bytes tra IP header e TCP Nuovo livello protocollare di 20 bytes tra IP header e TCP
headerheader
Livello del protocollo successivo
Grandezza del pacchetto Versione XCP Formato
Round trip time
cwnd
RTT
Throughput desiderato dal sender
Valore del Delta_Th
ricevuto dal receiver
Congestion header
Separazione tra controllo di efficienza e controllo di fairnessSeparazione tra controllo di efficienza e controllo di fairness
Idea di base:
Utilizzazione elevata; Piccole code;Poche perdite;
Allocazione di banda imparziale
Come avviene la separazione dei Come avviene la separazione dei controlloricontrollori
Controllo di efficienza:Controllo di efficienza:utilizza una politica MIMD in utilizza una politica MIMD in cui si incrementa/decrementa il rate del traffico cui si incrementa/decrementa il rate del traffico proporzionalmente alla banda disponibileproporzionalmente alla banda disponibile
Controllo di fairness:Controllo di fairness:utilizza una politica AIMD in utilizza una politica AIMD in cui si incrementa linearmente e si decrementa in cui si incrementa linearmente e si decrementa in maniera drasticamaniera drastica
Funzionalità di XCPFunzionalità di XCP
Feedback
Round Trip Time
Congestion Window
Congestion Header
Feedback
Round Trip Time
Congestion Window
Feedback = + 0.1 packet
Funzionalità XCPFunzionalità XCP
Feedback = + 0.1 packet
Round Trip Time
Congestion Window
Feedback = - 0.3 packet
FunzionalitàFunzionalità
Congestion Window = Congestion Window + Feedback
I routers calcolano il feedback che verrà distribuito dal controllore di
fairness proporzionalmente al throughput dei vari flussi
I routers calcolano il feedback che verrà distribuito dal controllore di
fairness proporzionalmente al throughput dei vari flussi
XCP completa ECN (Explicit Congestion Notification)
Come avviene il calcolo del feedback Come avviene il calcolo del feedback da parte del router XCPda parte del router XCP
Controllore di EfficienzaControllore di Efficienza Controllore di Controllore di FairnessFairness
Obiettivo: Ripartire Φ su ogni pacchetto per raggiungere la fairnessOsserva lo stato del flusso tramite la Congestion Header Algoritmo:Se Φ > 0 Ripartire Φ in maniera omogenea sui flussiSe Φ < 0 Ripartire Φ proporzionalmente al throughput di ogni flusso
MIMD AIMD
Obiettivo: massimizzare l’utilizzo del link
Si basa solo su traffico aggregato
Algoritmo:L’allocazione del feedback dipende da ΦΦ ~ Banda Disponibile Φ ~ -Livello di Accodamento
ΦΦ = = d davgavg Spare - Spare - Queue Queue
Modellazione dell’algoritmo XCPModellazione dell’algoritmo XCP Per la modellazione è stato utilizzato il software Per la modellazione è stato utilizzato il software
Matlab con gli applicativi Simulik e StateflowMatlab con gli applicativi Simulik e Stateflow
Modelli realizzati:Modelli realizzati:
Singola Singola connessionconnessionee
Doppia Doppia connessionconnessionee
Tripla Tripla connessionconnessionee
Schema a singola connessioneSchema a singola connessione
0
0,min
tqB
tqBtutd
Schema a singola connessioneSchema a singola connessione
tdtuCtqtdtu
tdtuCtqCtqto
0
Doppia e Tripla connessioneDoppia e Tripla connessione
Simulazioni singola connessione(1)Simulazioni singola connessione(1) Banda data costanteBanda data costante
Rtt=200ms Rtt=500ms
Con RTT=500ms si hanno perdite di circa 5400 pacchetti Con RTT=500ms si hanno perdite di circa 5400 pacchetti Andamento a regime dopo più di 60sAndamento a regime dopo più di 60s
Simulzioni singola connessione(2)Simulzioni singola connessione(2) Banda data variabileBanda data variabile
Rtt=200ms
Rtt=500ms
Perdite totali di circa 7400 Perdite totali di circa 7400 pacchettipacchetti
Simulazioni doppia connessioneSimulazioni doppia connessione Banda costanteBanda costante Banda variabileBanda variabile
RTT1=200ms
RTT2=100ms
RTT1=400ms
RTT2=200ms
Perdita di 3300 pacchetti
RTT1=200ms
RTT2=100ms
RTT1=600ms
RTT2=300ms
Oscillazioni più accentuate
Simulazioni tripla connessioneSimulazioni tripla connessione Banda costanteBanda costante Banda variabileBanda variabile
RTT3=300ms
RTT2=200ms
RTT1=100ms
RTT3=600ms
RTT2=400ms
RTT1=200ms
Perdita di 260 pacchetti
RTT3=300ms
RTT2=200ms
RTT1=100ms
RTT3=600ms
RTT2=400ms
RTT1=200ms
Oscillazioni molto accentuate
ConclusioniConclusioni
Sono state effettuate diverse Sono state effettuate diverse simulazioni variando banda e ritardi simulazioni variando banda e ritardi di propagazionedi propagazione
All’aumentare del ritardo crescono le All’aumentare del ritardo crescono le instabilità del sistema instabilità del sistema
Aumentando il numero di flussi il Aumentando il numero di flussi il sistema va a regime più lentamentesistema va a regime più lentamente
L’ instabilità porta a perdite di L’ instabilità porta a perdite di pacchetti più accentuatepacchetti più accentuate