Type of Service

Da Wikipedia, l'enciclopedia libera.

Il campo type of service (TOS) nell'header dell'IPv4 ha assunto finalità diverse nel corso degli anni, ed è stato definito in modi diversi da cinque RFC.[1] La moderna definizione del campo TOS è di una parte di 6 bit Differentiated Services Field (DS field)[2] ed una di 2 bit Explicit Congestion Notification (ECN).[3] Differentiated Services è in qualche modo compatibile con le precedenti definizioni di TOS mentre ECN non lo è.

Type of service[modifica | modifica wikitesto]

Il campo TOS può specificare la priorità di un datagramma e la richiesta per un indirizzamento con basso ritardo, con un elevato throughput o con un servizio di alta affidabilità. A seconda dei valori di TOS un pacchetto potrebbe essere posto in una coda d'uscita con alta priorità,[4] o seguire un instradamento con la latenza, il throughput e l'affidabilita appropriata per la richiesta.

Nella pratica il campo TOS non è mai stato utilizzato. Tuttavia una grande quantità di esperimenti, ricerche e lavori di sviluppo hanno studiato come utilizzare questi otto bit. Questo ha portato alla attuale definizione del campo DS.

Implementazione[modifica | modifica wikitesto]

Prima di essere stato deprecato il campo TOS era definito come segue:

0 1 2 3 4 5 6 7
Precedenza Type of Service

L'ultimo bit del campo TOS (bit 7) era definito come "Deve essere zero" (Must Be Zero). Poiché gli ultimi tre bit cambiarono definizione molte volte, la documentazione e le implementazioni possono essere confuse e contraddittorie.

Campo DS ed ECN[modifica | modifica wikitesto]

Attualmente la RFC 2474 ha riservato i primi sei bit di quello che era il campo TOS per il campo DS contenente i DiffServ Code Points (DSCP) e la RFC 3168 ha riservato gli ultimi due bit per la Explicit Congestion Notification.

0 1 2 3 4 5 6 7
campo DS campo ECN
  • DSCP <=> Tabella di Conversione Precedenza IP
NOme DSCP Valore Campo DS (Dec) Precedenza IP (Descrizione)
CS0 0 0 : Best Effort
CS1,AF11-13 8,10,12,14 1 :Priority
CS2,AF21-23 16,18,20,22 2 :Immediato
CS3,AF31-33 24,26,28,30 3 :Flash - mainly used for voice signaling
CS4,AF41-43 32,34,36,38 4 :Flash Override
CS5,EF 40,46 5 :Critico - usato principalmente per voce RTP
CS6 48 6 :Internetwork Control
CS7 56 7 :Network Control
  • Descrizione dei nomi DSCP
CS  : Class Selector (Selettore di Classe RFC 2474)
AFxy : Assured Forwarding (Inoltro assicurato x=classe, y=precedenza di soppressione) (RFC2597)
EF  : Expedited Forwarding (Inoltro accelerato RFC 3246)
  • "DSCP <=> TOS <=>Precendenza IP" tabella di conversione valori
DSCP(Differentiated Services Code Point),TOS (Type of service)
DSCP Dec valore TOS IP Prec
0 0 0
8 32 1
10 40 1
14 56 1
18 72 2
22 88 2
24 96 3
28 112 3
34 136 4
36 144 4
38 152 4
40 160 5
46 184 5
48 192 6
56 224 7

Esempio basato sulla tabella precedente:

IPP = 1 in decimale, o 001 in bit. Valore che dà 001 00000 per tutto il campo ToS, o ToS = 32. Il campo DSCP è : 001000 00, o DSCP = 8 (gli ultimi 2 bit sono inutilizzati riguardo alla priorità, così si inizia a contare dal terzo bit).

1) Tradizionalmente, i primi 3 bit per la precedenza IP(-> RFC 791) dovevano essere utilizzati in applicazioni di routing TOS (RFC 1583-> OSPF, IS-IS) ma nessuna applicazione diffusa lo supporta davvero.
2) il campo TOS è stato quindi ridefinito come il Differentiated Services Code Point (DSCP-> RFC 2474) che consiste dei primi 6 bit e 2 bit usati per un meccanismo di TCP chiamato Explicit Congestion Notification (ECN) definito in RFC 3168.
3) TOS significa "Type of service" e rappresenta il secondo byte nel datagramma IP
4) Sintesi del convetto dei 3 valori QoS : Precedenza IP, ToS,DSCP
  • Precedenza IP - 0 ~ 7 (Il modo tradizionale e semplice di QoS) -> ToS : 0 ~ 224 (troppo complesso) -> DSCP : 0 ~ 56 (valore ottimizzato)
  • Precedenza IP, TOS(RFC 791, RFC 1583) -> DSCP(RFC 2474) -> ECN (RFC 3168)

Voci correlate[modifica | modifica wikitesto]

Note[modifica | modifica wikitesto]

  1. ^ RFC 791, RFC 1122, RFC 1349, RFC 2474, e RFC 3168. Per la storia completa del campo TOS vedere la sezione 22 della RFC 3168.
  2. ^ RFC 3260 Sezione 4
  3. ^ RFC 3168 Sezione 5
  4. ^ http://www.lartc.org/howto/lartc.qdisc.classless.html Linux Advanced Routing & Traffic Control

Approfondimenti[modifica | modifica wikitesto]

  • John Evans, Clarence Filsfils, Deploying IP and MPLS QoS for Multiservice Networks: Theory and Practice, Morgan Kaufmann, 2007, ISBN 978-0-12-370549-5.

Collegamenti esterni[modifica | modifica wikitesto]