610 likes | 781 Views
Modelli per il supporto della QoS nelle reti IP. Alfio Lombardo (testo di riferimento: Tofoni). trasferimento di piccole quantità di dati in tempi limitati. robustezza e flessibilità dei path. efficienza nell'uso delle risorse di rete. necessità di controllo del traffico offerto dalla
E N D
Modelli per il supporto della QoS nelle reti IP Alfio Lombardo (testo di riferimento: Tofoni)
trasferimento di piccole quantità di dati in tempi limitati robustezza e flessibilità dei path efficienza nell'uso delle risorse di rete necessità di controllo del traffico offerto dalla sorgente Servizi di Rete Connectionless processamento durante il trasferimento dei dati
Target reti IP IP come unica piattaforma su cui far transitare: Voce Video Dati ……. Ma: Impossibilitàdi ingegnerizzare il traffico Impossibilità di supportare QoS Impossibilità di differenziare Servizi
TE: Ingegneria del Traffico Qualita’ del servizio + Massimizzazione dei ricavi Costi per le risorse di rete • Ingegneria del Traffico • Dimensionamento delle Risorse • Valutazionedelle Prestazioni • Gestione del Traffico
Input Traffic > Output Capacity fT(rit.) 1 - ritardo Ritardo Fisso jitter Ritardo max TE : obiettivi di Qualità del Servizio Con controllo della Congestione Throughput Congestione Traffico Offerto Senza controllo della Congestione Zona di “grave Congestione” Affidabilità Ritardo
Differenziazione dei Servizi • Esigenze diverse in termini di QoS • Varie tipologie di traffico (trasferimento dati, real-time, …) • Varie tipologie di utenti • Differenziazione dei Servizi offerti • Possibilità di servire un’utenza eterogenea • Differenziazione dei costi
2 Buffer 1 1 2 0 3 0 3 Misure di affidabilità (perdita) • Cause di Perdita di pacchetti nella rete: • Errori di trasmissione • Eccessivo ritardo end-to-end • Congestione Tasso di perdita:
1- Ritardo Fisso Ritardo Variazione del ritardo Massimo ritardo Misure di ritardo • Distribuzione della densità di probabilità del ritardo ritardo medio deviazione standard
Meccanismi di QoS nelle reti IP • Classificazione • Controllo del traffico d’utente (metering, • marking, shaping, dropping) • Scheduling • Queue Management (controllo della congestione)
Meccanismi di QoS nelle reti IP Classificazione (es. class. BA) Classificazione (es. class. MF) Traffico Queue Man.+ Scheduling Controllo Traffico
Classificazione • Il traffico in ingresso ad una rete può essere cjassific: • A livello di singola sessione d’utente (micro-flusso) • - A livello di aggregato di micro-flussi aventi le stesse • Caratteristiche (flusso) Ai fini della classificazione viene utilizzata una porzione dell’intestazione del pacchetto IP e/o del segmento TCP/UDP; ad esempio: - classificazione in base ad una parte del campo TOS - classificazione in base a Indirizzo IP sorgente e destinazione, indirizzo di porta sorgente e destinazione tipo di protocollo trasportato
b Controllo del traffico d’utente(metering+marking):Token Bucket (Leaky Bucket) Token rate: r Ampiezza del Bucket: b Gettoni r Bucket Crediti Sufficienti ? Nuovi Pacchetti Si: Pacchetto Conforme NO: Pacchetto non conforme b+rT= numero massimo di byte che possono essere spediti in un tempo T
trabocco CIR tokens/s EBS CBS Tc Te L byte No: Rosso No L Tc ? L Te ? Si:Verde Tc Tc - L Si:Giallo Te Te - L Controllo del traffico d’utente:Single Rate TCM C E
Two Rate TCM Peak Information Rate (PIR): rate di picco massimo consentito; Committed Information Rate (CIR): rate massimo per il quale si garantisce la consegna dei pacchetti con alta probabilità; Peak Burst Size (PBS): massima dimensione che può avere un burst di pacchett perché si tenti di offrirgli risorse disponibili e non si proceda allo scarto; Committed Burst Size (CBS): massima dimensione che può avere un burst di acchetti per avere la garanzia di consegna a destinazione con elevata probabilità; si misurano in ed include l’header IP ma non l’header di livello 2.
Flusso1 C l a s s i f i c. Flusso2 1 1 1 1 . . . scheduler N 2 2 1 1 1 2 2 2 ……. N FlussoN Code Scheduling FIFO (FCFS) Priority Queueing WFQ
FIFO Flusso1 C l a s s i f i c. Flusso2 . . . scheduler N 2 2 1 1 1 N 2 2 1 1 1 FlussoN No QoS management (best effort)
PQ Flusso1 C l a s s i f i c. Flusso2 1 1 1 1 . . . 1 2 scheduler 1 1 1 2 2 2 2 2 ……. N FlussoN Code Queue Starvation
WFQ weight: 0,5 Flusso1 0,2 C l a s s i f i c. 0,3 Flusso2 1 1 1 1 . . . scheduler N 2 1 1 1 2 2 2 2 ……. N FlussoN Equivale a: C = 300 Kbit/s C = 200 Kbit/s C = 500 Kbit/s
Controllo della congestione • Drop tail • RED • WRED
Drop Tail soglia Pacchetti in arrivo Coda FCFS Scarto
RED: Drop with prob P Drop all No drop 1 Probabilitàdi Scarto 0 Occupazione del buffer (stima) THmin THmax
RED Stima dell’occupazione del buffer THmax THmin Decisione Pacchetti in arrivo Coda FCFS Scarto Regione di possibile scarto
1 Probabilitàdi Scarto Profilo di servizio Standard Profilo di servizio Premium 0 Lunghezza media della Coda WRED
Modelli emergenti di QoS Integrated Services Differentiated Services Tecniche conformi ai modelli MPLS
“Servizio” • DEFINIZIONE: Un “servizio” definisce le caratteristiche significative della trasmissione di un pacchetto in una certa direzione attraverso l’insieme di uno o più percorsi interni di una rete. • 2 Modi per esprimere tali caratteristiche: • In termini assoluti • Thoughtput, Ritardo, Jitter, Perdite • In termini relativi • Classi di traffico, Priorità relativa di accesso alle risorse
Integrated Services: RSVP Messaggi PATH (Tspec) Messaggi RESV (Flow spec e Filter spec) Ricevitori Trasmettitore
Pacchetti che passano il Filtro Scheduler (IP sorg.;Porta sorg.) Trattamento QoS Flowspec Filterspec Trattamento Best-effort Pacchetti di una Sessione (IP dest.;Porta dest.; Prot. ID) Altri pacchetti Flow spec specifica la QoS desiderata: viene utilizzato per definire una classe di flussi nello scheduler e allocare i relativi buffer. In generale un Flow spec contiene i seguenti elementi: Classe di Servizio: è un identificatore del tipo di servizio richiesto; RSpec: definisce l’ammontare della banda da prenotare; TSpec: definisce il profilo di traffico della sessione. Il Filter spec specifica un arbitrario sottoinsieme dei pacchetti di una sessione.
RSVP protocol stack • RSVP viene incapsulato direttamente in un pacchetto IP con protocol number 46 ma può operare anche su UDP RSVP UDP IP (v4/v6)
DiffServ Working Group [RFC2575] • Gruppo di lavoro dell’IETF • Obiettivo: migliorare IP prevedendo la differenziazione in classi di servizio del traffico • Risultato:Differentiated Services (o DiffServ) • Punti di forza • semplicità • scalabilità
Passi da seguire per realizzare la Differenziazione dei Servizi • Confini della rete: i pacchetti ricevono un marchio (identifica il tipo di servizio che riceveranno) • Confini della rete: condizionamento del traffico (in accordo con le regole stabilite per ciascun servizio) • Nodi interni: marchio -> “forwarding behavior”
Funzioni dei Router ai confini della rete Meter Shaper/ Dropper/ Ricolorazione Classificatore MF Marker
Funzioni dei Router Interni PHB 1 Classificatore BA PHB 2 PHB n
Scalabilità • Le funzioni di classificazione complesse(per l’attribuzione del valore al marchio) ed il condizionamento devono essere effettuati solo ai confini della rete. • Non è necessario mantenere ad ogni nodo il “per-flow state” o il “per-customer state”. • Non è richiesta un’apposita segnalazione ad ogni “hop”.
Nuova Terminologia • DS codepoint (DSCP): valore assunto dalla porzione dell’header IP utilizzata per marcare i pacchetti • DS behavior aggregate (BA): collezione di pacchetti, marcati con lo stesso DSCP, che attraversano un link in una particolare direzione • Per-Hop Behavior (PHB):“forwanding behavior” esternamente osservabile che un nodo DS riserva a tutti i pacchetti di uno stesso BA
Definizione del DS CodePoint Field Header del pacchetto IPv4 Type Of Service
Da ignorare Definizione del DS Field Struttura dell’ottetto IPv4 Type Of Service o IPv6 Traffic Class nel DiffServ DS codepoint = marchio, valore codificato nel DS Field
ECN ECN=11 feedback
Per-Hop-Behaviour (PHB) • E’ la strategia di “forwarding” applicata ad un aggregato di traffico • Specifica le modalità di allocazione/gestione delle risorse agli aggregati di traffico • Banda da allocare (via scheduling) • Priorità di scarto (via “queue management”) • “Gruppo di PHB”: insieme di PHBs caratterizzati dallo stesso insieme di vincoli (es. stessa politica di “queue management”, di scheduling, ecc.). Le relazioni tra i PHB di uno stesso gruppo possono essere espresse in termini di priorità relativa o assoluta
Mapping DSCP -> PHB Tabella di mapping di un nodo DS (DSCP: indice tabella)
DSCP 3 Mapping DSCP -> PHB Al nodo giunge un pacchetto con DSCP 3
Mapping DSCP -> PHB PHB di default – DSCP non modificato DSCP ???
PHB • PHB di default • PHB Class Selector • Gruppo di PHB Assured Forwarding • PHB Expedited Forwarding
Best Effort PDB (Default PHB) • preserva, entro limiti ragionevoli, i servizi offerti ai pacchetti che non richiedono alcuna speciale differenziazione • garantisce che i pacchetti ricevano dai domini “il più possibile ed il più presto possibile”. • I pacchetti non dovranno essere mai completamente bloccati e, quando saranno disponibili delle risorse (nel senso che non saranno richieste da altri aggregati di traffico), gli elementi di rete dovranno essere configurati in modo tale da permettere ai pacchetti di questo PDB di utilizzarle.
Class Selector PHB • compatibilità con il preesistente uso del campo IP Precedence, che costituisce i primi tre bit dell’ottetto Type Of Service dell’header del pacchetto IPv4 xxx000 xxx000 I PHB selezionati dai codepoint ‘11x000’ devono riservare un trattamento preferenziale rispetto ai PHB selezionati dal codepoint ‘000000’, per preservare l’uso che comunemente si fa dei valori ‘111’ e ‘110’ del campo IP Precedence normalmente riservati al traffico di controllo).
Assured Forwarding PHB AF4x AF3x Servizio migliore AF2x AF1x AF11;AF12;AF13 Soglie di scarto dei pacchetti Assured Forwarding (AF) PHB group provides forwarding of IP packets in N independent AF classes. Within each AF class, an IP packet is assigned one of M different levels of drop precedence. An IP packet that belongs to an AF class i and has drop precedence j is marked with the AF codepoint AFij, where 1 <= i <= N and 1 <= j <= M. Currently, four classes (N=4) with three levels of drop precedence in each class (M=3) are defined for general use. More AF classes or levels of drop precedence MAY be defined for local use.
AF PHB:example weight: 0,5 0,2 1 1 1 1 AF4x 0,3 AF3x 2 2 2 Servizio migliore scheduler AF2x ……. AF1x N 1 Probabilitàdi Scarto AF13 AF12 0 Lunghezza media della Coda
Expedited Forwarding PHB • servizio end-to-end a bassa perdita, basso ritardo, basso jitter e banda minima assicurata attraverso i domini DS • Tale servizio(servizio Premium.101110) appare agli “endpoint” come una connessione punto-punto o come una VLL, che sta per Virtual Leased Line (= linea virtualmente affittata).