Netzwerk & WAN
QoS / DSCP
QoS mit DSCP (DiffServ) priorisiert Datenverkehr bei Stau: Pakete tragen einen 6-Bit-Codepoint und werden an jedem Knoten bevorzugt oder zurückgestellt.
- Priorisierung bei Stau
- DSCP-Markierung (DiffServ)
- Echtzeit vor Massenlast
- RFC 2474 / 2597 / 3246
- WAN, MPLS, SD-WAN, Voice
Quality of Service (QoS) regelt, welcher Verkehr Vorrang bekommt, wenn eine Leitung nicht alles gleichzeitig transportieren kann. Das verbreitete Modell dafür ist DiffServ: Pakete tragen im IP-Header einen 6 Bit langen DSCP-Wert, und jeder Knoten behandelt sie anhand dieses Werts nach einem vorab festgelegten Muster.
Dieser Artikel erklärt das DS-Feld und die wichtigsten Per-Hop-Behaviors, das Setzen der Markierungen und die Trust Boundary, das verlustbehaftete Mapping zwischen DSCP und der 802.1p-Priorität, die Warteschlangen- und Stauvermeidungsverfahren sowie den Unterschied zwischen Policing und Shaping. Eine Sache vorweg: QoS priorisiert, es schafft keine Bandbreite.
1. Was QoS leistet und was nicht
QoS greift erst bei Stau. Solange eine Leitung Reserven hat, werden alle Pakete sofort weitergeleitet, und die Markierung bleibt folgenlos. Erst wenn mehr Verkehr ansteht, als durchpasst, entscheidet QoS, wer zuerst darf und wer warten oder verworfen wird.
Daraus folgt die wichtigste Einordnung: An einer dauerhaft überlasteten Leitung kann QoS Sprache vor einem Backup-Job bevorzugen, aber es kann die fehlende Kapazität nicht erzeugen. Der einzige echte Ausweg aus chronischem Stau ist mehr Bandbreite. Das aggregatbasierte DiffServ-Modell skaliert dabei gut, weil nur die Netzränder klassifizieren und der Kern allein nach DSCP entscheidet.
QoS verteilt knappe Bandbreite, es vermehrt sie nicht. Wer chronischen Stau mit QoS lösen will, kuriert ein Kapazitätsproblem mit einer Prioritätsregel.
2. Das DS-Feld und der DSCP
DiffServ gibt dem früheren ToS-Byte des IP-Headers eine neue Bedeutung. Die oberen 6 Bit sind der DSCP (Differentiated Services Code Point), der den gewünschten Per-Hop-Behavior wählt, die unteren 2 Bit tragen ECN (Explicit Congestion Notification), mit dem Stau signalisiert statt durch Verwerfen quittiert werden kann.
| Bits im DS-Feld | Funktion |
|---|---|
| 6 (DSCP) | Klassenmarkierung, 64 mögliche Werte |
| 2 (ECN) | Stau-Signalisierung ohne Paketverlust (RFC 3168) |
3. Per-Hop-Behaviors: die Verkehrsklassen
Die standardisierten Verhaltensweisen bestimmen, wie ein Knoten mit einem DSCP-Wert umgeht:
| Klasse | DSCP | Zweck |
|---|---|---|
| Default / Best Effort | 0 | normaler Verkehr ohne Sonderbehandlung |
| Class Selector (CS0 bis CS7) | 0, 8, … 56 | abwärtskompatibel zur alten IP-Precedence; CS6/CS7 oft für Steuerverkehr |
| Assured Forwarding (AF11 bis AF43) | 10 bis 38 (gestuft) | vier Klassen mit je drei Verwurfsstufen (RFC 2597) |
| Expedited Forwarding (EF) | 46 | niedrige Latenz und Jitter für Echtzeit, etwa Sprache (RFC 3246) |
| Lower Effort (LE) | 1 | Hintergrundlast unterhalb Best Effort (RFC 8622) |
Praxis-Empfehlung
RFC 4594 rät, mit drei bis vier Klassen zu beginnen und erst bei echtem Bedarf zu erweitern. Sprache landet fast immer auf EF (46), das ist De-facto-Praxis, kein Zwang.
4. Markieren und die Trust Boundary
Klassifizieren heißt, ein Paket einer Klasse zuzuordnen (nach Anwendung, Port, Protokoll), Markieren heißt, den DSCP-Wert zu setzen. Entscheidend ist die Trust Boundary: der Punkt, ab dem das Netz vorhandenen Markierungen vertraut. Davor werden eingehende Werte ignoriert oder neu gesetzt.
Ohne diese Grenze könnte jedes Endgerät seinen eigenen Verkehr auf EF markieren und damit alles andere verdrängen. Üblich ist deshalb: Am Zugangsport vertraut man dem IP-Telefon, setzt den PC-Verkehr aber auf Default zurück oder markiert ihn per Regel neu.
5. DSCP und 802.1p an der Schichtgrenze
Innerhalb eines VLAN-Tags stehen mit dem PCP-Feld (802.1p) nur 3 Bit für die Priorität zur Verfügung, also acht Stufen. Der DSCP hat dagegen 6 Bit und 64 Werte. Das Mapping zwischen beiden ist zwangsläufig verlustbehaftet: Üblicherweise bilden die oberen 3 Bit des DSCP die CoS-Priorität, sodass EF (46) auf die CoS-Stufe 5 fällt. Wer Layer-2- und Layer-3-QoS kombiniert, muss dieses Mapping bewusst festlegen.
6. Warteschlangen und Stauvermeidung
Die Markierung allein bewirkt nichts, der Effekt entsteht in den Ausgangs-Warteschlangen. Gängige Verfahren:
- Priority Queue / LLQ eine strikt bevorzugte Schlange für Echtzeit (EF), mit Ratenbegrenzung, damit sie die anderen nicht aushungert.
- Gewichtetes Fair Queuing (CBWFQ, WRR/DWRR) jede Klasse erhält eine Mindestbandbreite, Überschuss wird nach Gewichten verteilt.
- WRED verwirft schon vor dem Überlauf gezielt Pakete höherer Verwurfsstufe und setzt so die AF-Logik um.
- AQM (CoDel/FQ-CoDel) moderne, selbstregelnde Verfahren gegen Bufferbloat, die nach Wartezeit statt nach Füllstand eingreifen.
FQ-CoDel gegen Bufferbloat, DSCP für Sprache setzen (Linux)
# Selbstregelnde Queue-Disziplin am Interface
tc qdisc replace dev eth0 root fq_codel
# SIP-Signalisierung mit EF (DSCP 46) markieren (nftables)
table inet mangle {
chain out {
type filter hook output priority mangle;
udp dport 5060 ip dscp set ef
}
} 7. Policing und Shaping
Beide begrenzen eine Rate über einen Token Bucket, aber unterschiedlich:
| Policing | Shaping |
|---|---|
| verwirft oder markiert überschüssige Pakete sofort | puffert überschüssige Pakete und sendet sie verzögert |
| kein zusätzlicher Puffer, keine Verzögerung | zusätzlicher Puffer, erhöht die Latenz |
| typisch am Eingang, um eine zugesicherte Rate zu erzwingen | typisch am Ausgang, um die Rate ans WAN zu glätten |
| Ausgangskurve wirkt gekappt (sägezahnartig) | Ausgangskurve wirkt geglättet |
8. QoS über das WAN: DiffServ-Tunneling
Trägt ein MPLS-Netz den Verkehr, stellt sich die Frage, ob die DSCP-Markierung des Kunden im Kern gilt oder eine eigene. Dafür gibt es drei Modelle: Uniform (eine gemeinsame Domäne, Änderungen im Kern schlagen durch), Pipe (Kern und Kundennetz getrennt, am Ausgang zählt wieder der innere DSCP) und Short-Pipe (wie Pipe, aber der letzte Abschnitt nutzt die Provider-Klasse). So lässt sich eine Provider-QoS unabhängig von der Kundenmarkierung fahren.
9. Stärken und Grenzen
| Stärken | Grenzen |
|---|---|
| Schützt Echtzeitverkehr bei Stau (Latenz, Jitter) | Schafft keine zusätzliche Bandbreite |
| Skalierbar: nur Ränder klassifizieren, der Kern liest DSCP | Wirkt nur bei Stau; im überprovisionierten LAN oft entbehrlich |
| Herstellerneutral standardisiert (DiffServ-RFCs) | Nur als durchgängiges Konzept über alle Knoten wirksam |
| Klare Trennung von Markierung und Durchsetzung | Ohne Trust Boundary verdrängt selbst markierter Verkehr alles |
| Moderne AQM-Verfahren bekämpfen Bufferbloat automatisch | Mapping DSCP zu 802.1p ist verlustbehaftet (64 auf 8 Werte) |
Häufige Fragen zu QoS / DSCP
Nein. QoS priorisiert Verkehr nur dann, wenn eine Leitung überlastet ist, und verschiebt knappe Kapazität zugunsten wichtiger Pakete wie Sprache. Es erzeugt keine zusätzliche Bandbreite. An einer chronisch vollen Leitung hilft am Ende nur mehr Kapazität; QoS sorgt lediglich dafür, dass im Stau das Richtige Vorrang hat.
Sprach- und andere Echtzeitpakete werden in der Praxis fast immer mit Expedited Forwarding (EF, DSCP 46) markiert, das auf niedrige Latenz, geringen Jitter und wenig Verlust ausgelegt ist. Das ist verbreitete Branchenpraxis nach RFC 4594, aber kein normativer Zwang.
Auch der Autor ist nur ein Mensch, dem Fehler unterlaufen können. Wenn in diesem Beitrag etwas nicht stimmt oder unklar ist, freuen wir uns über einen kurzen Hinweis über das Kontaktformular unten, wir prüfen und korrigieren das.
Der nächste Schritt
QoS / DSCP im eigenen Haus richtig einsetzen?
Wir klären, ob und wie der Baustein zu Ihrer Infrastruktur passt, und sagen offen, wann sich der Aufwand lohnt und wann nicht.