Il traffico di rete che entra in un dominio DiffServ è soggetto a classificazione e condizionamento. Un classificatore di traffico può ispezionare molti parametri diversi nei pacchetti in entrata, come l’indirizzo sorgente, l’indirizzo di destinazione o il tipo di traffico e assegnare i singoli pacchetti ad una specifica classe di traffico. I classificatori di traffico possono onorare qualsiasi marcatura DiffServ nei pacchetti ricevuti o possono scegliere di ignorare o sovrascrivere tali marcature. Per uno stretto controllo sui volumi e sul tipo di traffico in una data classe, un operatore di rete può scegliere di non onorare le marcature all’ingresso nel dominio DiffServ. Il traffico in ogni classe può essere ulteriormente condizionato sottoponendo il traffico a limitatori di tasso, polizzatori di traffico o shapers.
Il comportamento per-hop è determinato dal campo DS nell’intestazione IP. Il campo DS contiene il valore DSCP a 6 bit. L’Explicit Congestion Notification (ECN) occupa i 2 bit meno significativi del campo TOS di IPv4 e del campo TC (traffic class) di IPv6.
In teoria, una rete potrebbe avere fino a 64 diverse classi di traffico usando i 64 valori DSCP disponibili. Le RFC DiffServ raccomandano, ma non richiedono, certe codifiche. Questo dà all’operatore di rete una grande flessibilità nel definire le classi di traffico. In pratica, comunque, la maggior parte delle reti usa i seguenti comportamenti per-hop comunemente definiti:
- Default Forwarding (DF) PHB – che è tipicamente traffico best-effort
- Expedited Forwarding (EF) PHB – dedicato al traffico a bassa perdita e bassa latenza
- Assured Forwarding (AF) PHB – dà garanzia di consegna in condizioni prescritte
- Class Selector PHBs – che mantiene la compatibilità all’indietro con il campo di precedenza IP.
Default ForwardingEdit
Un default forwarding (DF) PHB è l’unico comportamento richiesto. Essenzialmente, qualsiasi traffico che non soddisfa i requisiti di nessuna delle altre classi definite usa DF. Tipicamente, DF ha caratteristiche di inoltro best-effort. Il DSCP raccomandato per DF è 0.
Expedited ForwardingEdit
L’IETF definisce il comportamento Expedited Forwarding (EF) in RFC 3246. Il PHB EF ha le caratteristiche di basso ritardo, bassa perdita e basso jitter. Queste caratteristiche sono adatte per voce, video e altri servizi in tempo reale. Al traffico EF viene spesso data una rigorosa priorità di accodamento sopra tutte le altre classi di traffico. Poiché un sovraccarico di traffico EF causerà ritardi nell’accodamento e influenzerà il jitter e le tolleranze di ritardo all’interno della classe, il controllo dell’ammissione, il traffic policing e altri meccanismi possono essere applicati al traffico EF. Il DSCP raccomandato per EF è 101110B (46 o 2EH).
Voice AdmitEdit
L’IETF definisce il comportamento Voice Admit in RFC 5865. Il Voice Admit PHB ha caratteristiche identiche all’Expedited Forwarding PHB. Tuttavia, il traffico Voice Admit è anche ammesso dalla rete utilizzando una procedura CAC (Call Admission Control). Il DSCP raccomandato per il voice adm è 101100B (44 o 2CH).
Assured ForwardingEdit
L’IETF definisce il comportamento Assured Forwarding (AF) in RFC 2597 e RFC 3260. L’inoltro assicurato permette all’operatore di fornire la garanzia di consegna finché il traffico non supera un certo tasso di sottoscrizione. Il traffico che supera il tasso di sottoscrizione affronta una maggiore probabilità di essere abbandonato se si verifica una congestione.
Il gruppo di comportamento AF definisce quattro classi AF separate con tutto il traffico all’interno di una classe che ha la stessa priorità. All’interno di ogni classe, ai pacchetti viene data una precedenza di drop (alta, media o bassa, dove una precedenza più alta significa più drop). La combinazione di classi e precedenze di drop produce dodici codifiche DSCP separate da AF11 a AF43 (vedi tabella).
Classe 1 | Classe 2 | Classe 3 | Classe 4 | |
---|---|---|---|---|
Bassa probabilità di drop | AF11 (DSCP 10) 001010 | AF21 (DSCP 18) 010010 | AF31 (DSCP 26) 011010 | AF41 (DSCP 34) 100010 |
Med probabilità di drop | AF12 (DSCP 12) 001100 | AF22 (DSCP 20) 010100 | AF32 (DSCP 28) 011100 | AF42 (DSCP 36) 100100 |
Alta probabilità di drop | AF13 (DSCP 14) 001110 | AF23 (DSCP 22) 010110 | AF33 (DSCP 30) 011110 | AF43 (DSCP 38) 100110 |
Qualche misura di priorità ed equità proporzionale è definita tra il traffico in classi diverse. Se si verifica una congestione tra le classi, il traffico della classe più alta ha la priorità. Piuttosto che usare un accodamento strettamente prioritario, è probabile che vengano usati algoritmi di servizio delle code più equilibrati come l’accodamento equo o l’accodamento equo ponderato. Se si verifica una congestione all’interno di una classe, i pacchetti con la priorità di drop più alta vengono scartati per primi. Per prevenire i problemi associati alla caduta della coda, vengono spesso utilizzati algoritmi di selezione della caduta più sofisticati come il rilevamento anticipato casuale.
Class SelectorEdit
Prima di DiffServ, le reti IPv4 potevano utilizzare il campo di precedenza IP nel byte TOS dell’intestazione IPv4 per contrassegnare il traffico prioritario. L’ottetto TOS e la precedenza IP non erano molto usati. L’IETF ha deciso di riutilizzare l’ottetto TOS come campo DS per le reti DiffServ. Per mantenere la compatibilità all’indietro con i dispositivi di rete che usano ancora il campo Precedence, DiffServ definisce il Class Selector PHB.
I punti di codice Class Selector sono della forma binaria ‘xxx000’. I primi tre bit sono i bit di precedenza IP. Ogni valore di precedenza IP può essere mappato in una classe DiffServ. La precedenza IP 0 corrisponde a CS0, la precedenza IP 1 a CS1, e così via. Se un pacchetto viene ricevuto da un router non-DiffServ-aware che ha usato marcature di precedenza IP, il router DiffServ può ancora capire la codifica come un punto di codice Class Selector.
Specifiche raccomandazioni per l’uso dei punti di codice Class Selector sono date in RFC 4594.
Linee guida di configurazioneModifica
RFC 4594 offre raccomandazioni dettagliate e specifiche per l’uso e la configurazione dei punti di codice.
Classe di servizio | Nome DSCP | Valore DSCP Value | Condizionamento sul bordo DS | PHB | Queuing | AQM | |
---|---|---|---|---|---|---|---|
Controllo della rete | CS6 | 48 | Vedi sezione 3.1 | RFC 2474 | Rate | Sì | |
Telefonia | EF | 46 | Polizia usando sr+bs | RFC 3246 | Priority | No | |
Segnalazione | CS5 | 40 | Polizia che usa sr+bs | RFC 2474 | Rate | No | |
Conferenza multimediale | AF41, AF42, AF43 | 34, 36, 38 | Utilizzo di due a tre colori (come RFC 2698) | RFC 2597 | Rate | Sì per DSCP | |
Real-time interactive | CS4 | 32 | Polizia che usa sr+bs | RFC 2474 | Rate | No | |
Multimedia streaming | AF31, AF32, AF33 | 26, 28, 30 | Utilizzando due tassi, tre-colore (come RFC 2698) | RFC 2597 | Rate | Sì per DSCP | |
Broadcast video | CS3 | 24 | Polizia che usa sr+bs | RFC 2474 | Rate | No | |
Dati a bassalatenza dei dati | AF21, AF22, AF23 | 18, 20, 22 | Utilizzando due velocità, tre-colore (come RFC 2698) | RFC 2597 | Rate | Sì per DSCP | |
OAM | CS2 | 16 | Polizia che usa sr+bs | RFC 2474 | Rate | Sì | |
High-dati ad alta velocità | AF11, AF12, AF13 | 10, 12, 14 | Utilizzando due velocità, tre-colore (come RFC 2698) | RFC 2597 | Rata | Sì per DSCP | |
Standard | DF | 0 | Non applicabile | RFC 2474 | Rate | Sì | |
Bassa-priorità dei dati | CS1 | 8 | Non applicabile | RFC 3662 | Rate | Sì |