Marco Listanti i Differentiated Service Architecture t (Diffserv)
Differentiated Service (Diffserv) (1) La prima motivazione dell architettura Dff Diffserv è di tipoeconomico Applicazione di un principio analogo alla politica applicata dalle compagnie aeree Restrizioni sui posti a bordo di un aereo in funzione della tariffa Traffico best-effort (classe economica) alto volume di traffico bassa QoS basse tariffe Traffico non best-effort (business, first class) volume di traffico controllato elevata QoS alte tariffe Riduzione della complessità intrinseca nel modello Intserv Modello scalabile in caso di reti ad alta velocità
Diffserv (2) Elementi chiave Le funzioni più complesse (policing, shaping e classificazione) sono eseguite solo nei router di bordo della rete Ad ogni pacchetto entrante nella rete è assegnata una classe di servizio (aggregato di flussi) Ad ogni pacchetto entrante è assegnato un codice (DS codepoint) che indica esplicitamente la sua classe di servizio Nei router interni della rete sono definite regole di trattamento dei pacchetti (Per Hop Behaviour -PHB)) valide per ogni singola classe di servizio Sono eliminati i reservation state nei router interni alla rete Possibilità di tariffare in modo diverso le varie classi di traffico Separazione delle funzioni di forwarding dei pacchetti dalle funzioni di instradamento
Terminologia (1) DS Domain Infrastruttura di rete operante in accordo all architettura architettura Diffserv e gestita da un unico operatore (e.g. ISP) DS Border Node (Egress & Ingress Router) Router posti ai bordi di un dominio DS Hanno il compito di gestire il traffico proveniente e diretto da e verso l esterno del dominio DS DS Interior Node Router interni al dominio DS
Terminologia (2) Bandwidth Broker (BB) Entità logica di un dominio DS che ha il compito di gestire le domande di traffico e l assegnazione delle risorse in accordo alle politiche fissate dall ISP L entità logica può essere mappata in una o in diverse entità fisiche Ha il compito di instaurare e mantenere gli accordi bilaterali con i domini adiacenti Distribuisce le informazioni sull utilizzazione della banda dei link ai router del dominio DS
Terminologia (3) Service Level Agreement (SLA) Specifica il contratto di traffico tra un utente ed il service provider e indica il livello di QoS del traffico generato dall utente Un SLA specifica i parametri di servizio, quali Parametri prestazionali (throughput, loss probability, latency) Profilo di traffico (parametri del token bucket) Trattamento del traffico in eccesso rispetto al profilo di traffico concordato Marking service Shaping service La definizione di uno SLA è normalmente effettuata su base contrattuale
Dominio Diffserv Flusso aggregato SLA Border DS Router DS Border Router DS Interior Router DS Border Router DS Border Router SLA SLA DS Interior Router DS Border Router DS Domain Bandwidth Broker SLA
Terminologia Diffserv (3) Per-Hop-Behaviour (PHB) Definiscono le regole con cui devono essere trattati i pacchetti appartenenti ad una classe di servizio nei router di un dominio DS Nell architettura Diffserv non sono definiti servizi end-to-end La QoS offerta da un dominio DS è dato dalla composizione dei PHB applicati nei router attraversati dai pacchetti Sono definiti tanti PHB quante sono le classi di servizio previste in un Dominio DS Il PHB con cui deve essere trattato un pacchetto in un router è indicato in modo esplicito da un campo dell header detto Diffserv Code Point (DSCP)
Campo Service Type in IPv4 Bit 0-2: Precedence 111 - Network Control 110 - Internetwork Control 101 - CRITIC/ECP 100 - Flash Override 011 - Flash 010 - Immediate 001 - Priority 000 - Routine Bit 3-5: TOS Bit 3: 0 = Normal Delay, 1 = Low Delay. Bits 4: 0 = Normal Throughput 1 = High Throughput Bits 5: 0 = Normal Reliability 1 = High Reliability Bit 6-7: Reserved for Future Use 0 1 2 3 4 5 6 7 +-----+-----+-----+-----+-----+-----+-----+-----+ PRECEDENCE D T R 0 0 +-----+-----+-----+-----+-----+-----+-----+-----+
Diff Serv Code Point (DSCP) Il campo DS sostituisce i campi Service Type nel protocollo IPv4 Traffic Class nel protocollo IPv6 La struttura del campo DS è la seguente 1 2 3 4 5 6 7 8 DSCP CU DSCP CU : Differentiated Service Code Point : Currently Unused Il campo DSCP è usato come indice per determinare il trattamento del pacchetto in un router
Dominio Diffserv Flusso aggregato SLA Border DS Router DS Border Router DS Interior Router DS Border Router DS Border Router SLA SLA DS Interior Router DS Border Router Classification Marking Shaping Policing i DS Domain Bandwidth Broker Packet forwarding (PHB) SLA
Terminologia Diffserv (4) Sono stati definiti tre gruppi di PHB Best effort Expedited Forwarding (EF) (Premium Service) Fornisce un servizio di virtual wire Ammissione su base peak bit rate Le risorse non utilizzate dall EF sono utilizzate dal traffico best effort Analogo alla classe Guaranteed Service dell architettura Intserv Assured Forwarding (AF) Basato su profili di traffico prestabiliti Livelli di QoS garantiti per il traffico contenuto in un profilo stabilito, con possibilità da parte della sorgente di emettere traffico in eccesso Bassa probabilità di perdita per il traffico entro il profilo Marcatura del traffico Out-of-profile Analogo alla classe Controlled Load dell architettura Intserv
DS Border Router (1) Routing DB Routing Protocol Background Functions Policer Forwarding Path Classifier Marker Shaper Dropper Scheduler
Router Diffserv (2) Classifier Policer Marker identifica il flusso a cui appartiene il pacchetto entrante identifica il tipo di trattamento del pacchetto misura i parametri temporali del flusso effettua il confronto con il profilo di traffico stabilito dallo SLA assegna il valore del campo DSCP al pacchetto assegna il pacchetto ad un particolare flusso aggregato Shaper/Dropper Scheduler sagoma il flusso di pacchetti in accordo al profilo di traffico concordato per il flusso aggregato scarta i pacchetti che sono fuori dal profilo di traffico concordato per il flusso aggregato determina l ordine di trasmissione dei pacchetti in accordo alle regole di trattamento del particolare flusso aggregato a cui appartiene il pacchetto
DS Interior Router Routing DB Routing Protocol Background Functions Forwarding Path Scheduler
Marco Listanti Per Hop Behaviour
Expedited Forwarding (EF) (1) Il PHB Expedited Forwarding (EF) è usato per costruire un servizio caratterizzato da bassa probabilità di perdita basso ritardo bassa variabilità del ritardo banda garantita Il servizio ottenuto tramite il PHB EF, visto agli estremi di un dominio DS, deve essere equivalente a quello ottenuto attraverso una linea virtuale dedicata (Virtual Leased Line Virtual Wire)
Expedited Forwarding (EF) (2) Un PHB EF deve assicurare che i pacchetti non subiscano accodamenti eccessivi nei buffer dei router I router devono essere configurati in modo che il flusso aggregato sia trattato con un livello minimo di banda garantita (Service rate) Il flusso aggregato deve essere configurato, mediante le funzioni di policing e shaping, in modo che il suo tasso di arrivo (Configurable rate) ad un qualsiasi as router sia inferiore o uguale al livello di banda garantita (Service rate) Le regole di allocazione sono di competenza dell operatore di rete
Expedited Forwarding (EF) (3) Descrizione del PHB EF Il service rate del flusso aggregato deve essere uguale o superiore al configurable rate Il traffico EF deve ricevere il service rate in modo indipendente dagli altri tipi di traffico che caricano un router Il service rate deve essere almeno uguale al valore medio del rate di arrivo dei pacchetti del flusso aggregato misurato su qualsiasi finestra temporale Il servizio è analogo a quello della classe Guaranteed Service dell architettura tt Intserv Il valore fissato del campo DSCP è 101110
EF packet flow EF packet flow (DSCP=101110) Assigned bandwidth R 1 bit/sec Interior router EF packet flow Assigned bandwidth R 2 bit/sec ISP B Border router Border router Border router host Unmarked packet flow ISP A Interdomain EF packet flow (assigned bandwidth R bit/sec)
Assured Forwarding (AF) (1) L AF PHB ha lo scopo dare la possibilità ad un operatore di rete di definire un insieme di livelli di trasferimento (Forwarding Assurances) )per differenziare il trattamento dei flussi in un dominio IP Sono definiti quattro classi AF (AFxy, x=1,2,3,4) per ognuna di esse è allocato in ogni router un diverso insieme di risorse (banda e buffer) Per ciascuna delle quattro classi sono definiti tre livelli ll di priorità di scarto dei pacchetti (drop precedence) (AFxy, y=1,2,3), in caso di congestione i pacchetti sono scartati nell ordine stabilito dal livello di drop precedence Algoritmo Random Early Discard (RED) with In/Out bit (RIO)
Assured Forwarding (AF) (2) Banda allocata alle classi AF4x AF3x C 4 Buffer AF4x C Buffer AF3x C 3 QoS crescente Pacchetti entranti AF2x Buffer AF2x C 2 Pacchetti uscenti AF1x Drop AF1 1/2/3 Buffer AF1x Drop AF1 2/3 Drop AF13 No drop C 1 AF11 AF12 AF13 Drop thresholds
Assured Forwarding (AF) (3) In un router se x < y, i pacchetti della classe AFx non devono subire una probabilità di perdita o un ritardo maggiore dei pacchetti della classe AFy Il primo pedice indica il valore della classe di servizio all interno di una stessa classe AF, se p < q, i pacchetti con drop precedence p non devono subire una probabilità di perdita maggiore dei pacchetti con drop precedence q Il secondo predice indica la priorità di scarto all interno di ogni classe di servizio I valori del campo DSCP sono Drop Precedence AF x1 AF x2 Classe AF AF 1y AF 2y AF 3y AF 4y 010000 010010 011000 011010 100000 100010 101000 101010 AF x3 010100 011100 100100 101100
Esempio AF Realizzazione del così detto Olympic Service Tre classi di servizio: Gold, Silver e Bronze I pacchetti della classe Gold vedranno in rete un carico più basso dei pacchetti della classe Silver Il ritardo e la perdita dei pacchetti di classe Gold saranno inferiori a quelli della classe Silver I pacchetti della classe Silver vedranno in rete un carico più basso dei pacchetti della classe Bronze Il ritardo e la perdita dei pacchetti di classe Silver saranno inferiori a quelli della classe Bronze In ogni classe possono essere creati livelli di drop precedence (esempio 3 livelli) Totale 9 classi Classe Gold x = 1 y = 1, 2,3 Classe Silver x = 2 y = 1, 2,3 Classe Bronze x = 3 y = 1, 2,3
Allocazione delle risorse in un Dominio DS
Allocazione delle risorse in un Dominio DS Il Bandwidth d Broker gestisce il database dei flussi (Flow Database) che contiene le informazioni relativi ai flussi appartenenti alle classi EF e AF Flow identification parameters, PHB, ingress/egress interfaces, resources requested, start/finish time, etc. Il BB emette verso i router di bordo messaggi TCA (Traffic Conditioning Agreement) contenenti le regole di classificazione del flusso ed il profilo di traffico associato Il protocollo utilizzato è detto COPS (Common Open Policy Service) (RFC 2748) Gli interior router saranno contattati dal BB solo se è necessaria una variazione dell allocazione della banda sui link
Gestione di un flusso in un Dominio DS 1. La sorgente emette una richiesta verso il router di bordo del dominio DS 2. Il router di bordo emette una richiesta verso il BB che rispondererà accettando o rifiutando la richiesta della sorgente 3. Nel caso in cui la richiesta della sorgente sia accettata, sarà fissato lo SLA con cui il dominio tratterà i pacchetti del flusso emesso dalla sorgente 4. Il border router di bordo marcherà i pacchetti del flusso con il valore appropriato del campo DSCP 5. Il border router eseguirà la funzionalità di policing; in accordo con le regole dello SLA concordato con la sorgente, i pacchetti in eccesso saranno scartati o marcati come pacchetti best effort 6. I core router eseguiranno il forwarding dei pacchetti solo sulla base del valore del campo DSCP
Edge Router Functionality Traffic Conditioner 1 Arriving packet Packet classifier Traffic Conditioner N Best effort Forwarding engine La classificazione avviene mediante l analisi dell header del pacchetto
Traffic conditioning Token bucket Drop on overflow Packet input Wait for token Set EF bit Packet output Token bucket No token (excess traffic) Output Buffer (RIO) Packet input Test if token token Set AF in bit Packet output
Confronto Best-Effort Diffserv Intserv Servizio Connettività base Nessun isolamento Nessuna garanzia Isolamento per aggregati di flussi QoS per aggregati di flussi Isolamento per flusso QoS per flusso Ambito End-to-end Dominio DS End-to-end Complessità No set-up Permanent setup Per flow setup Scalabilità Elevata (solo routing state) Scalabile (stati aggregati negli edge router; class state nei core router) Non scalabile (flow state in tutti i router)
RFC (1) INTEGRATED SERVICES (IntServ) RFC Title Date 1633 Integrated Services in the Internet Architecture: an Overview. June 1994. 2205 Resource ReSerVation Protocol (RSVP) -- Version 1 Functional Specification. September 1997. 2210 The Use of RSVP with IETF Integrated Services. September 1997. 2211 Specification of the Controlled-Load d Network Element Service. September 1997. 2212 Specification of Guaranteed Quality of Service. September 1997. 2215 General Characterization Parameters for Integrated Service Network Elements. September 1997. 2216 Network Element Service Specification Template. September 1997.
RFC (2) DIFFERENTIATED SERVICES (DiffServ) RFC Title Date 2430 2474 A Provider Architecture for Differentiated Services and Traffic Engineering (PASTE). Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers. October 1998. December 1998. 2475 An Architecture for Differentiated Service. December 1998. 2597 Assured Forwarding PHB Group June 1999 2638 A Two-bit Differentiated Services Architecture for the Internet. July 1999. 3246 An Expedited Forwarding PHB (Per-Hop Behavior) March 2002