Qualità di Servizio (QoS) in Internet

Documenti analoghi
Qualità di Servizio (QoS) in Internet

INFOCOM Dept. Qualità di Servizio (QoS) in Internet

Call Admission Controll (CAC)

E02 ESERCIZI SU MODI DI TRASFERIMENTO

Sub-Optimal Measurement-Based CAC Algorithm

- 7 - Tecniche di filtraggio del traffico

ATM Asynchronous Transfer Mode

Il processo di migrazione delle tecnologie IP nei sistemi della Difesa

Architetture per la QoS in Internet

Marco Listanti. Esercitazione 7 DIET

Tappe evolutive della rete Internet

Differentiated Service

Reti di Telecomunicazioni 1

Università di Genova Facoltà di Ingegneria

Livello Trasporto Protocolli TCP e UDP

Architettura per multimedia

Un semplice commutatore a pacchetto

Controllo di congestione

Internet Protocol Versione 4: aspetti generali

Configurazione delle interfacce di rete

Reti di calcolatori. Lezione del 17 giugno 2004

Qualità di Servizio nelle Reti di Telecomunicazione

1. i limiti di p che garantiscono un funzionamento stabile del sistema ;

Università di Genova Facoltà di Ingegneria. Integrated Services Differentiated Services. dist. IP-QoS

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Mercoledì 20 Luglio 2005

- 5 - Controllo a finestra

RETI INTERNET MULTIMEDIALI

Marco Listanti. Indirizzamento IP. DIET Dept. Telecomunicazioni (Canale 2) - Prof. Marco Listanti - A.A. 2016/2017

Fondamenti di Reti di Telecomunicazioni Prof. Guido Maier IV appello 8 febbraio 2010

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

QoS a livello Network

UNIVERSITA DEGLI STUDI DI BERGAMO

ICMP. (Internet Control Message Protocol) Cosa è l ICMP? Messaggi di ICMP. Applicazioni di ICMP: ULP, Ping, Traceroute, Path MTU discovery

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Livello Trasporto. Liv. Applic. Liv. Transport. Transport Entity. Liv. Network. Trasporto

Il livello Network del TCP/IP. Il protocollo IP (versione 4)

Motivazioni. Misurare il comportamento di IP and TCP su un nodo di accesso. Il software: TStat. Il software: TStat. Tstat design.

Prova in itinere - Rete Internet (ing. Giovanni Neglia) Mercoledì 23 Maggio 2007, ore 15.00

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

Tecniche di commutazione Ing. Greco Polito Silvana

RETI DI TELECOMUNICAZIONE

Capitolo 11. Conclusioni

4 - Il livello di trasporto

Il livello trasporto: Introduzione e protocollo UDP

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

Multiplazione. Prof. Silvana Greco Polito

Internet (- working). Le basi.

Instradamento per servizi di tipo circuito virtuale. Dr. S. Greco Polito,

Architetture di router IP

Prova completa - Rete Internet (ing. Giovanni Neglia) Lunedì 25 Giugno 2007

Livello di trasporto: meccanismi trasferimento dati affidabile, TCP

Antonio Cianfrani. Standard Access Control List (ACL)

Introduzione (parte III)

Il protocollo IP (Internet Protocol)

Reti di Calcolatori in Tecnologia IP

Reti di Calcolatori IL LIVELLO RETE

Il livello trasporto: Introduzione e protocollo UDP

Ritardi di Trasferimento Addendum #2

RETI DI TELECOMUNICAZIONE

TCP/IP. Principali caratteristiche

Titolo della presentazione

RETI INTERNET MULTIMEDIALI. Internet Quality of Service

TCP/IP: una breve introduzione

Reti locali. Protocolli di accesso per reti locali

Quesito 1 Si desidera determinare il numero di operatori al servizio di un centralino privato per telefonia. Le specifiche di questa determinazione

Architetture di router IP

Università degli Studi di Bergamo

Introduzione alle Reti di Telecomunicazione

Protocolli di Comunicazione

Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni. Esercitazioni del corso di. Telecomunicazioni


TCP/IP: una breve introduzione

SERVIZI DI TRASFERIMENTO DELL INFORMAZIONE

3 Caratteristiche del servizio

Reti di Calcolatori 1

(parte 2) DHCP e NAT

Protocolli ARP e RARP

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Transmission Control Protocol

1. Supponendo che il canale trasmissivo sia esente da errori, si determini il throughput di S1.

' $ Teoria del traffico & % 1

IP Internet Protocol

Livello di trasporto: meccanismi trasferimento dati affidabile

Standard: OSi vs TCP/IP. Il livello di trasporto. TCP e UDP. TCP: Transmission Control Protocol. TCP: funzionalità

SPECIFICHE RADIO A.1 INTRODUZIONE

RETI A COMMUTAZIONE DI PACCHETTO. Caratteristiche e principi di funzionamento

1. Che cos è un sistema multiprogrammato? Si può realizzare la multiprogrammazione

Il livello trasporto Protocolli TCP e UDP

Problemi legati alla sicurezza e soluzioni

Transmission Control Protocol (TCP) Andrea Detti

Elementi di Informatica e Programmazione

Lezione n.8 LPR- Informatica Applicata

Funzioni di una rete di TLC Segnalazione Commutazione Trasmissione Gestione. Funzioni. Funzioni. Segalazione d utente.

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Il modello TCP/IP. Sommario

Reti di Telecomunicazione Lezione 2

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

Il protocollo IP A.A. 2005/2006. Walter Cerroni

Esercizi su: Ritardi di trasferimento Commutazione Sorgenti di Traffico

LABORATORIO DI RETI. 02 La Multiplazione Statistica nelle Reti a Paccchetto

Transcript:

Marco Listanti Qualità di Servizio (QoS) in Internet

QoS in IP: Aspetti Generali (1) Servizio di trasferimento di Internet punto-punto p connectionless best effort Non adatto alle applicazioni real time throughput non garantito ritardo variabile non limitato perdite di pacchetti dovute a congestione

QoS in IP: Aspetti Generali (2) Il concetto di QoS si riferisce alle prestazioni che devono essere assicurate dalla rete ad un particolare flusso informativo La QoS può essere definita in modo Assoluto Relativo definizione dei valori che devono essere rispettati da un insieme di parametri prestazionali (es. ritardo massimo, probabilità di perdita di pacchetti, ecc) definizione delle modalità di trattamento di una classe di traffico rispetto alle altre (es. livello di priorità di servizio, livello di priorità di scarto, ecc.) Service Level Agreement (SLA) L insieme dei parametri (assoluti o relativi) e delle regole che devono essere seguite che devono essere garantiti per raggiungere un determinato livello di QoS Definisce il rapporto tra utente e fornitore di servizio Può richiedere interazioni tra utente e rete (es. CAC)

QoS in IP: Aspetti Generali (3) Una rete è in grado di soddisfare un fissato livello ll di QoS secondo due modalità Overprovisioning Le risorse di rete sono dimensionate in modo che, anche nelle condizioni peggiori, il carico sia inferiore alla soglia minima m necessaria a soddisfare gli SLA concordati con gli utenti (nessuna interazione tra utenti e rete) Connection Admission Control (CAC) Il traffico è controllato preventivamente (interazione tra utenti e rete) Un flusso sarà accettato solo se le risorse di rete saranno sufficienti a garantire gli SLA concordati con gli utenti Se un flusso è accettato, viene virtualmente allocata una porzione di banda e di buffer (resource allocation)

QoS in IP: Aspetti Generali (4) La QoS può essere garantita per flusso, per connessione, per chiamata per aggregati (o classi) di flussi Una classe o aggregato di traffico comprende un insieme di flussi aventi requisiti simili di QoS In una rete IPv4 un flusso è definito dalla 5-pla Source IP address Destination IP address Protocol Header IP Source port number Destination port number Header protocollo di trasporto (TCP/UDP)

QoS in IP: Aspetti Generali (5) Esempio pacchetto IP & TCP 0 4 8 12 16 20 24 28 31 Vers HLEN Service Type Total Length Header Identification Flag + Fragment Offset IP (20 byte) Header TCP (20 byte) Time To Live Protocol Header Checksum Source Port Number HLEN Res Flag Source IP Address Destination i IP Address Sequence Number ACK Number Destination Port Number Window Checksum Data........ Data Urgent Pointers

QoS in IP: Aspetti Generali (6) Per-flow QoS Politica di QoS orientata al trattamento dei singoli flussi Prestazioni i ottimali ai singoli flussi, efficienza i di utilizzazione i delle risorse di rete ottimale Elevata complessità dovuta ai protocolli di segnalazione e alla necessità di monitorare i singoli flussi in rete Bassa scalabilità Aggregate traffic QoS Politica di QoS orientata al trattamento di aggregati di flussi Efficienza non ottimale Complessità minore Maggiore scalabilità l

Connection Admission Control (CAC) (1) All atto dell instaurazione di un flusso, la rete deve rispondere alla seguente domanda La rete è in grado di trattare il flusso entrante in modo da soddisfare i vincoli posti dai parametri di QoS richiesti (throughput, ritardo, jitter, probabilità di perdita) e, contemporaneamente, per tutti i flussi già instaurati? Per rispondere alla domanda precedente la rete deve essere modellata come un sistema di servizio di cui devono essere note le prestazioni in funzione del suo stato Modello analitico della rete Relazione tra i parametri di QoS e stato della rete Il flusso entrante rappresenta una potenziale perturbazione allo stato corrente del sistema Modello analitico del traffico entrante

Connection Admission Control (CAC) (2) Formulazione generale del problema S: stato della rete [T]: vettore dei parametri statistici dei flussi di traffico presenti nel sistema rete [Q]: vettore dei parametri di QoS richiesti dai flussi di traffico [P]: vettore dei parametri prestazionali garantiti dalla rete Si ha P F S, T Lo stato S è ammissibile se [P] soddisfa, flusso per flusso, i parametri del vettore [Q], ovvero P Q Supponiamo che sia presentata una richiesta di instaurazione di un ulteriore flusso f, caratterizzato da un insieme di parametri t* e da un insieme q* di parametri di QoS

Connection Admission Control (CAC) (3) Il lflusso fd deve essere considerato come una potenziale perturbazione dello stato del sistema rete S*: potenziale nuovo stato della rete (compreso il flusso f) [T*]: vettore dei parametri statistici dei flussi di traffico (compreso t*) [Q*]: vettore dei parametri di QoS richiesti dai flussi di traffico (compreso q*) [P*]: vettore dei parametri prestazionali garantiti dalla rete nello stato S* Si ha P * F S *, T * Lo stato S* è ammissibile se [P*] soddisfa, flusso per flusso, i parametri del vettore [Q*] P * Q * Se lo stato S* è ammissibile la rete soddisfa i parametri q* del nuovo flusso e, contemporaneamente, tutti i parametri [Q] di tutti i flussi già instaurati Se S* è ammissibile ibil il flusso f può essere instaurato, t altrimenti ti deve essere rifiutato

Esempio: Router IP (1) Modello (estremamente) semplificato Traffico entrante C Flusso da instaurare f L interfaccia i del router è modellata come un buffer a servente singolo Buffer a capacità infinita B = Capacità del servente C bit/s Modello traffico entrante Processo poissoniano con media pacchetti/s Lunghezza dei pacchetti distribuita esponenzialmente con media L bit Tempo medio di servizio L/C bit/s Modello flusso f Processo poissoniano con media f pacchetti/s Lunghezza dei pacchetti distribuita esponenzialmente con media L bit Modello a coda M/M/1/

Esempio: Router IP (2) Nel caso di coda M/M/1/, lo stato del sistema è completamente rappresentato dal carico ρ sul link di uscita Supponendo che la QoS sia caratterizzata dal parametro ritardo medio D, la rete deve rispondere alla seguente domanda L interfaccia del router è in grado di trattare i pacchetti del nuovo flusso f in modo da garantire per tutti i flussi un ritardo medio non superiore a D f? Relazione tra il ritardo medio e lo stato di rete L D 0 C 1 = L/C carico offerto al sistema ( 1) 0

Esempio: Router IP (3) Se il nuovo flusso fosse accettato, il valor medio del traffico sarebbe = 0 + f D Flusso rifiutato Il nuovo valore di carico sarebbe = 0 + f L/C Regola di accettazione D D f Flusso accettato max max = 1-L/CD f Bandwidth allocation In caso di assegnazione, al flusso f viene assegnata una risorsa virtuale (banda) di valore uguale a f L (bit/s) D D 0 L/C 0 1 Regione di accettazione max

Esempio: Router IP (4) Osservazioni i Abbiamo modellato un router come un buffer infinito I router sono molto più complessi I buffer non sono mai infiniti Abbiamo utilizzato traffici poissoniani I traffici i reali non sono mai poissoniani i i Abbiamo modellato la lunghezza dei pacchetti come distribuita in modo esponenziale negativo La lunghezza dei pacchetti IP ha una distribuzione completamente diversa Abbiamo usato come parametro di QoS il ritardo medio di attraversamento di una coda Il ritardo medio non è un parametro di QoS significativo In situazioni reali, il problema dell admission control e della bandwidth dth allocation on è molto complesso

Esempio di overprovisioning (1) Le risorse di rete devono essere dimensionate in modo che, nelle condizioni peggiori, il carico sia inferiore alla soglia minima necessaria a soddisfare gli SLA concordati con gli utenti Supponiamo anche in questo caso che la QoS sia caratterizzata t dal parametro ritardo medio, e che questo debba essere non superiore a D f Considerando le stesse ipotesi del caso precedente, questo vincolo corrisponde ad avere un utilizzazione dell interfaccia del router inferiore a max Occorre conoscere il profilo di traffico e dimensionare i l interfaccia del router in modo che sia sempre max

Esempio Overprovisioning (2/3) Caso peggiore di traffico Traffico di picco = C max = 6.43 Gbit/s Tratto da: http://ginsdr.dir.garr.it/

Esempio di overprovisioning (3/3) Poiché deve essere max ed il valore massimo di traffico è C max =6.43 Gbit/s La capacità C dell interfaccia del router deve essere tale che C max C max Nel caso in cui max =0.6, si ha C 10.72 Gbit/s In questo caso non si limita il traffico in ingresso, ma si sovradimensiona la risorsa di rete Costo maggiore Difficoltà di aggiornamento Necessità di previsioni accurate del traffico

Confronto CAC - Overprovisioning Criterio CAC Overprovisioning Modalità di realizzazione Controllo preventivo di accettazione dei flussi Dimensionamento di rete Regola di allocazione Si Nessuna Ipotesi Requisiti di applicabilità Disponibilità di modelli di traffico e di rete Traffico d utente e comportamento della rete conformi alle ipotesi Disponibilità del profilo di traffico Traffico reale inferiore al profilo ipotizzato Parametri QoS Garantiti Garantiti Parametri prestazionali addizionali Robustezza al variare del traffico Probabilità di rifiuto di un flusso Aumento della probabilità di rifiuto QOS costante Nessuno Peggioramento del livello di QoS Costo di implementazione Minore Maggiore

Procedure di QoS

Procedure di QoS Le funzioni che sono necessarie per offrire ad un flusso uno specifico livello di QoS sono p Definizione delle caratteristiche statistiche dei flussi di traffico e dei requisiti di QoS Definizione del modello di rete Definizione delle relazioni che legano i parametri di QoS ai parametri del traffico entrante Definizione i i della politica di Shaping (sagomatura) Definizione della politica di Policing (monitoraggio)

Caratterizzazione del traffico I parametri caratteristici di un flusso (o di un aggregato g di flussi) sono definiti nei seguenti due insiemi di parametri TSpec (Transmission Specification) Contiene i parametri caratteristici del modello statistico del flusso RSpec (Request Specification) Contiene i parametri di QoS richiesti dal flusso

Contratto di Traffico (1) L utente comunica alla rete i parametri di QoS (Rspec) le caratteristiche statistiche del flusso di pacchetti (TSpec) Il flusso verrà accettato dalla rete se è in grado di soddisfare i parametri di QoS richiesti dall utente (Connection Admission Control) In caso di accettazione, al flusso vengono virtualmente assegnate le risorse di rete (banda, buffer) necessari al soddisfacimento dei requisiti di QoS (Resource Allocation)

Contratto di Traffico (2) La rete fissa delle regole di conformità per stabilire bl se il traffico di un flusso è conforme al profilo dichiarato dall utente Verifica dei TSpec La rete effettua la funzione di Policing i Effettua il monitoraggio dei parametri statistici del traffico emesso dall utente nell ambito del flusso Verifica la conformità dei parametri statistici misurati con quelli dichiarati dall utente nel Tspec Se viene rivelata una non conformità mette in atto misure di limitazione del traffico emesso dall utente (scarto di pacchetti, marking, ecc.)

Contratto di Traffico (3) Un utente, al fine di assicurare che il traffico emesso nell ambito di un flusso sia conforme al profilo definito nel Tspec, può eseguire delle funzioni di sagomatura del traffico Traffic Shaping I principi precedenti configurano l esistenza di un contratto di traffico tra utente e rete Traffic Contract

Connection Admission Control (CAC)

Connection Admission Control (CAC) (1) Definizione ITU-T Rec. I.371 Insieme delle azioni intraprese da una rete durante la fase di set-up di una connessione (flusso, canale virtuale, ecc.) (o durante una fase di ri- negoziazione di una connessione) allo scopo di stabilire se la richiesta di connessione (o la richiesta di ri-allocazione) possa essere accettata Lo scopo della procedura di CAC è quello di assicurare che sul cammino (path) tra sorgente/i e destinazione/i seguito dal flusso attraverso la rete sia assegnata al flusso su ogni link del path una porzione della capacità del link (Bandwidth Assignment) sia assegnata al flusso in ogni router compreso nel path una porzione di buffer (Buffer Assignment) La quantità di banda e di buffer allocata ad un flusso dipende dai requisiti di QoS associati al flusso

Connection Admission Control (CAC) (2) Una richiesta di instaurazione di una connessione (flusso) è accettata se su tutti i link del path è possibile allocare una capacità (Bandwidth Assignment) in modo che siano soddisfatti i requisiti di QoS del flusso che si deve instaurare continuano ad essere soddisfatti i requisiti di QoS di tutti i flussi già instaurati su tutti i router del path è possibile allocare la quantità una quantità di buffer (Buffer Assignment) in modo che siano soddisfatti i requisiti di QoS del flusso che si deve instaurare continuano ad essere soddisfatti i requisiti di QoS di tutti i flussi già instaurati

Connection Admission Control (CAC) (3) Bandwidth Assignment deterministica (allocazione deterministica) Allocazione per un flusso di una quantità di banda maggiore o uguale a al bit rate massimo (Peak Bit Rate) dal flusso stesso Soddisfacimento deterministico degli obiettivi di QoS Bassa utilizzazione della capacità di rete Bandwidth Assignment statistica (allocazione statistica) Allocazione per un flusso di una quantità di banda compresa tra il bit rate massimo e quello medio del flusso Soddisfacimento statistico degli obiettivi di QoS Possibilità di raggiungere un elevata efficienza di utilizzazione della capacità di rete

Allocazione deterministica e statistica (1) Allocazione deterministica Al flusso i viene allocata una banda c i (bit/s) maggiore o uguale al valore della sua banda di picco p i (bit/s) (Peak Rate Allocation - PRA) c i p i E possibile garantire una perdita di pacchetti nulla e un ritardo massimo garantito L unico parametro prestazionale è la probabilità bilità di rifiuto della richiesta di instaurazione del flusso

Allocazione deterministica e statistica (2) Allocazione statistica Al flusso i viene allocata una banda c i (bit/s) minore del valore della sua banda di picco p i (bit/s) e maggiore della sua banda media r i (bit/s) r i <c i <p i I parametri di QoS (probabilità di perdita di pacchetto e ritardo) sono garantiti solo statisticamente Per il calcolo della banda c i sono necessari i parametri statistici del flusso un modello della rete che metta in relazione il traffico in ingresso con i parametri statistici di QoS (es. prob perdita pacchetti, ritardo non superato da una percentuale di pacchetti)

Token Bucket

Token Bucket (1) I parametri del TSpec di un flusso sono specificati con riferimento ad un dispositivo denominato Token Bucket Fornisce i parametri per l algoritmo di policing ed è utilizzato anche come sagomatore (shaper) di traffico E caratterizzato da cinque parametri token rate (r) maximum service rate (p) (p > r) bucket size (b) minimum policed unit (m) maximum packet size (M)

Token Bucket (2) Token Rate (r bit/s) Il token rate r specifica il rate a lungo termine del flusso (average rate) Traffico entrante Occupazione corrente Packet Buffer r Dimensione bucket (b bit) Burst Buffer b p Service rate (p bit/s) Flusso uscente Il service rate p specifica il rate massimo del flusso (peak rate) Il buffer size b determina la massima lunghezza di burst concessa alla sorgente I pacchetti di lunghezza inferiore a m sono considerati di lunghezza uguale a m bit Un pacchetto di dimensione superiore a M bit è scartato

Token Bucket (modello 1) Modello Fluidico Maschera di emissione di una sorgente Il numero massimo di bit A(T) emessi in un intervallo (t,t+t] t da un Token Bucket di parametri (r,b) è dato da A(T) = b+r. T A(t) b + r. t b Nel modello 1 si trascurano il service rate p e il maximum packet size (M) T t

Token Bucket (modello 2) Modello Fluidico Maschera di emissione di una sorgente Il numero massimo di bit A(T) emessi in un intervallo (t,t+t] t da un Token Bucket di parametri (r,p,b) è dato da A(T) = min [ p. T, b+r. T ] A(t) p. t b + r. t b Nel modello 2 si trascura il maximum packet size (M) T t

Token Bucket (modello 3) Modello Fluidico Maschera di emissione di una sorgente Il numero massimo di bit A(T) emessi in un intervallo (t,t+t] da un Token Bucket di parametri (M,r,p,b) è dato da A(T) = min [ M+p. T, b+r. T ] A(t) M+p. t b + r. t b M Si ipotizza che il pacchetto di lunghezza massima sia inviato ad un rate infinito T t

Token Bucket: confronto modelli Modello 1 Il modello 1 considera la maschera peggiore Il modello 3 è peggiorativo rispetto al modello 2 Tutti i tre modelli sono una sovrastima dell effettivo flusso emesso da una sorgente A(t) M+p. t p. t b + r. t Modello 3 b M Modello 2 T t

Token Bucket Modello 2 (b,r,p) Burst massimo emettibile dalla sorgente Modello 3 (M,b,r,p) Burst massimo emettibile dalla sorgente Burst max p b p r Burst max M p ( b M ) p r Profilo o massimo mo ON-OFFOFF b p r T ON, 1 T OFF,1 r b Profilo o massimo mo ON-OFFOFF b M p r T ON, 2 T OFF,2 r b TON a1 T T ON OFF r p a 2 T TON T r( b M ) b M a1 pb rm b a M ON OFF 1

Token Bucket: modello discreto A(t) b + r. t M+p. t pacchetto 6 pacchetto 7 pacchetto 8 b M pacchetto 5 pacchetto 4 pacchetto 3 pacchetto 2 pacchetto 1 Si suppone che la sorgente emetta pacchetti di lunghezza costante M ad un bit rate di picco uguale a p b sia un multiplo intero di M Qualsiasi modello di token bucket si adotti, la maschera fluidica è un upper bound di qualsiasi caso reale t

Funzione n di Policing

Policing La funzione di policing ha lo scopo di verificare che il flusso emesso da una sorgente sia conforme al TSpec dichiarato occorre controllare se per ogni pacchetto entrante la sorgente aveva il numero di token necessario per la sua trasmissione p ovvero se in un qualsiasi intervallo di tempo la sorgente abbia emesso un numero di bit in eccesso rispetto alla sua maschera di emissione I pacchetti non conformi possono essere Scartati Marcati e trattati in rete come traffico best effort S Token bucket Policer Interfaccia utente-rete Router di accesso

Schema di controllo del bit rate medio (r) Per ogni pacchetto di lunghezza L bit il policer esegue le seguenti operazioni i Controlla se nel proprio bucket sono presenti almeno L token In caso positivo accetta il pacchetto e diminuisce di L token il contenuto del bucket In caso negativo scarta il pacchetto e non diminuisce il numero di token Token Rate (r byte/s) Token bucket Token Rate (r byte/s) r Bucket size b r Bucket size b pacchetto S Packet Buffer p Service rate (p byte/s) Interfaccia utente-rete Lbit N token sufficenti? no yes Policer Pacchetto accettato Pacchetto scartato

Esempio (1) Si consideri un flusso caratterizzato dai seguenti parametri di token bucket b = 8000 bit p = 1000 kbit/s r = 200 kbit/s M = 1000 bit La sorgente mette sempre pacchetti di lunghezza massima (L=M) La sequenza temporale con cui i pacchetti arrivano al primo router che esegue la funzione di policing è la seguente Determinare: i pacchetti conformi e non conformi alla maschera del token bucket Il numero di token residuo al termine della trasmissione del pacchetto 16 N Tempo Pacch. ms 0 1 1 2 2 3 4 4 5 5 6 6 8 7 9 8 10 9 11 10 12 11 13 12 14 13 15 14 16 15 20 16 22

Esempio (2) A(t) 25000 20000 15000 10000 5000 Parametri dichiarati N Tempo Token Pacchetto T k b = 8000 bit; p = 1000 kbit/s; r = 200 kbit/s Lunghezza dei pacchetti L=1000 bit b+rt 0 0 2 4 6 8 10 12 14 16 18 20 22 Tempo (ms) pt Pacch. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ms 0 1 2 4 5 6 8 9 10 11 12 13 14 15 16 20 22 prima arrivo conforme? 8000 8000 7200 6600 5800 5000 4400 3600 2800 2000 1200 400 600 800 1000 800 1200 si si si si si si si si si si no no no si no si Token dopo arrivo 8000 7000 6200 5600 4800 4000 3400 2600 1800 1000 200 400 600 800 0 800 200

Esercizio 1 (1) Si consideri un router IP, si chiede di progettare un policer in grado di rivelare la violazione del bit rate di picco (p) diunasorgentetoken token-bucket limited (p,b,r,m); Il policer deve applicare una tolleranza percentuale q (0 q 1) sul bit rate di picco p In particolare si chiede di: Definire la procedura seguita dal policer Definire le condizioni di accettazione e di rifiuto di un pacchetto

Esercizio 1 (2) La tolleranza nella misura del bit rate di picco serve a tener conto di fenomeni di ritardo causato dalla multiplazione sulla linea di utente S 1 Shaper #1 Utente Nodo di accesso Policer #1 S 2 Shaper #2 Mux Classifier Policer #2... Linea d utente... Shaper Policer S k #k #k

Esercizio 1 (3) Il lbit rate di picco di una sorgente limita il tempo minimo di interarrivo tra due pacchetti consecutivi Siano: Si ha T a (k-1) : istante di arrivo del pacchetto k-1 (supposto accettato) T 0 p (k) : istante previsto di arrivo del pacchetto k L k : lunghezza del pacchetto k T 0 p ( k ) T ( k 1) a Se non n si applica una tolleranza di misura, il policer deve controllare che l intervallo di tempo tra due pacchetti consecutivi (k-1, k) emessi dalla sorgente deve essere non inferiore a L k /p L k p

Esercizio 1 (4) Se si applica una tolleranza ( toll ) nella misura dell intervallo di tempo tra due pacchetti consecutivi, la relazione precedente diviene T 1 p ( k ) T ( k 1) a Il valore di toll dipende dalla percentuale q di tolleranza nella misura da cui toll q L L p k p k toll 1 0 Lk T p ( k ) T p ( k ) q T a ( k 1) (1 q ) p L k p

Esercizio 1 (5) La procedura che deve seguire il policer è la seguente All arrivo del pacchetto k deve Determinare l istante t effettivo di arrivo T a (k) del pacchetto k Confrontare il tempo effettivo di arrivo del pacchetto T a (k) ed i tempi previsti T 0 p(k) e T 1 p(k) Accettare o scartare il pacchetto k Determinare i tempi previsti di arrivo del pacchetto k+1

Esercizio 1 (6) Regole di accettazione del pacchetto k pacchetto non conforme pacchetto conforme pacchetto conforme T a (k) < T 1 p(k) T 1 p(k) T a (k) T 0 p(k) T 0 p(k) < T a (k) Regole aggiornamento Regole aggiornamento Regole aggiornamento T 1 p(k+1) = T 1 p(k) T 1 p(k+1) = T 1 p(k) + L k /p T 1 p(k+1) = T a (k) + (1-q) L k /p T 0 p(k+1) = T 0 p(k) T 0 p(k+1) = T 0 p(k) + L k /p T 0 p(k+1) = T a (k) + L k /p T 1 p (k) T 0 p (k)

Esercizio 1 (7) Arrivo del pacchetto k al tempo T a (k) T 0 p(k) T a (k)? Yes No T 0 p(k+1) = T a (k) Cella non conforme No T 1 p(k) T a (k)? T 1 p(k+1) = T a (k)- q. L k /p Yes Cella conforme T 0 p(k+1) = T 0 p(k+1) + L k /p T 1 p(k+1) = T 1 p(k+1) + L k /p

Esercizio 2 (1) Si consideri una sorgente token bucket limited con bit rate di picco p=1 Mbit/s che emette pacchetti di lunghezza costante L=10000 bit Sia data la sequenza di istanti di emissione dei pacchetti mostrata in figura Si determini quali pacchetti sono da considerarsi non conformi nel caso di tolleranza di misura q=0 0,1 (10%) Pacchetto Tempo (ms) 0 1 10 2 20 3 30 4 39 5 49 6 58 7 67 8 70 9 90 10 110 11 120 12 128

Esercizio 2 (2) Pacchetto Tempo Lunghezza Pacchettto Pacchettto Pacchetto pacchetto conforme conforme conforme (ms) (bit) T0prev T1prev picco T0prev T1prev 0 0 xxxx xxxx xxxx 0 0 1 10 10000 SI SI SI 20 19 2 20 10000 SI SI SI 30 29 3 30 10000 SI SI SI 40 39 4 39 10000 NO SI SI 50 49 5 49 10000 NO SI SI 60 59 6 58 10000 NO NO NO 60 59 7 67 10000 SI SI SI 77 76 8 70 10000 NO NO NO 77 76 9 90 10000 SI SI SI 100 99 10 110 10000 SI SI SI 120 119 11 120 10000 SI SI SI 130 129 12 128 10000 NO NO NO 130 129

Esercizio 2 (3) Si noti che nel caso di Policing contemporaneo dei parametri r (bit rate medio) e p (bit rate di picco) occorre: Monitorare in parallelo i due parametri utilizzando per ognuno la schema di policer più adatto Accettare un pacchetto solo se questo è stato accettato da entrambi i policer L aggiornamento dei parametri di un policer viene effettuato considerando anche lo scarto del pacchetto dovuto alla violazione dovuta all altro altro policer Pacchetti entranti Policer media Policer picco Pacchetti uscenti