DiffServ steht für "Differentiated Services" und stellt ein Modell dar, die Priorität der Datenpakete zu signalisieren. DiffServ basiert auf dem Type-of-Service(ToS)-Feld und nutzt das gleiche Byte im IP-Header.
ToS verwendet die ersten drei Bits zur Kennzeichnung der Prioritäten (Precedence) 0 bis 7 und vier weitere Bits (die ToS-Bits) zur Optimierung des Datenflusses (u. a. “Low Delay” und “High Reliability”). Dieses Modell ist recht unflexibel und wurde daher in der Vergangenheit eher selten verwendet.
Das DiffServ-Modell nutzt die ersten 6 Bits zur Unterscheidung verschiedener Klassen. Damit sind bis zu 64 Abstufungen (Differentiated Services Code Point, DSCP) möglich, die eine feinere Priorisierung des Datenflusses ermöglichen:
- Um die Abwärtskompatibilität zur ToS-Implementation sicherzustellen, können mit den "Class Selectors" (CS0 bis CS7) die bisherigen Precedence-Stufen abgebildet werden. Die Stufe CS0 wird dabei auch als "Best Effort" (BE) bezeichnet und steht für die normale Übertragung der Datenpakete ohne besondere Behandlung.
- Die "Assured Forwarding"-Klassen werden für die gesicherte Übertragung von Datenpaketen eingesetzt. Die erste Ziffer der AF-Klasse steht jeweils für die Priorität der Übertragung (1 bis 4), die zweite Ziffer für "Drop-Wahrscheinlichkeit" (1 bis 3). Pakete mit AFxx-Kennzeichnung werden "gesichert" übertragen, also nicht verworfen.
Mit der Klasse "Expedited Forwarding" schließlich werden die Pakete markiert, die vor allen anderen Paketen (bevorzugt) übertragen werden sollen.
Codepoint | DSCP Bits | Dez. | Codepoint | DSCP Bits | Dez. | Codepoint | DSCP Bits | Dez. | ||
---|---|---|---|---|---|---|---|---|---|---|
CS0 (BE) | 000000 | 0 | AF11 | 001010 | 10 | AF33 | 011110 | 30 | ||
CS1 | 001000 | 8 | AF12 | 001100 | 12 | AF41 | 100010 | 34 | ||
CS2 | 010000 | 16 | AF13 | 001110 | 14 | AF42 | 100100 | 36 | ||
CS3 | 011000 | 24 | AF21 | 010010 | 18 | AF43 | 100110 | 38 | ||
CS4 | 100000 | 32 | AF22 | 010100 | 20 | EF | 101110 | 46 | ||
CS5 | 101000 | 40 | AF23 | 010110 | 22 | |||||
CS6 | 110000 | 48 | AF31 | 011010 | 26 | |||||
CS7 | 111000 | 56 | AF32 | 011100 | 28 |