Site icon bintorosoft.com

SRv6 QoS: Hop-by-Hop Policies und praktische Grenzen

SRv6 QoS ist für viele Provider und große Enterprise-Netze ein aktuelles Thema, weil SRv6 nicht nur Traffic Engineering modernisiert, sondern auch die Frage neu stellt: Wie setzt man Hop-by-Hop Policies im IPv6-basierten Segment Routing um – und wo liegen die praktischen Grenzen? In klassischen MPLS-Backbones ist QoS seit Jahren etabliert: DSCP wird am Edge klassifiziert, im Core über TC/EXP in Queues übersetzt, und PHBs (Per-Hop Behaviors) sind relativ klar an Queueing/Scheduling gekoppelt. SRv6 verschiebt die Mechanik in einen IPv6-Kontext: Traffic wird über einen SRv6-Header (Segment Routing Header) und SIDs gesteuert, und QoS muss weiterhin zuverlässig an jedem Hop wirken – über Marking, Trust Boundaries, Queues, Shaping und AQM/ECN. Gleichzeitig bringt SRv6 neue Realitäten mit: zusätzlicher Header-Overhead, strengere MTU-Disziplin, unterschiedliche Hardware-Offload-Fähigkeiten, komplexere Klassifizierung (inner vs. outer Header) und die Frage, wie Policies entlang des Pfades konsistent bleiben, wenn Traffic über verschiedene Domänen, Linecards oder Plattformgenerationen läuft. Wer SRv6 QoS professionell plant, denkt deshalb nicht nur in „wir markieren DSCP“, sondern in Hop-by-Hop Policies, Congestion Domains, Encapsulation-Effekten und messbarer Betriebsfähigkeit.

SRv6 kurz eingeordnet: Routing-Mechanik neu, QoS-Prinzipien bleiben

SRv6 ersetzt nicht die Grundprinzipien von QoS. Auch in SRv6-Netzen gilt: QoS wirkt dort, wo Congestion entsteht, und sie wird durch Marking, Queueing, Scheduling, Shaping und Policing umgesetzt. Was sich ändert, ist der Transport- und Steuerlayer: Der Pfad wird über SRv6-SIDs beeinflusst, und Pakete tragen zusätzliche Header-Information. Dadurch verschieben sich Engpässe und Failure Patterns: MTU/Fragmentierung wird häufiger relevant, und die Frage „welcher Header wird für QoS ausgewertet?“ wird wichtiger. Außerdem ist SRv6 in vielen Netzen noch in Migration: MPLS und SRv6 koexistieren, wodurch Mappings und Trust Boundaries besonders sauber sein müssen.

Hop-by-Hop Policies: Was man darunter in SRv6 QoS versteht

Hop-by-Hop Policies sind die Regeln, die an jedem Router-Hop entscheiden, wie ein Paket behandelt wird. In SRv6 sind das typischerweise dieselben Policy-Bausteine wie in IP/MPLS, aber mit klarer Festlegung, welcher Traffic-Selector gilt: DSCP im Outer IPv6-Header, DSCP im Inner Header (bei Encapsulation), Flow-Labels, Interface-/VRF-Kontext oder SRv6-spezifische Klassifizierungsmerkmale. „Praktische Grenzen“ beginnen dort, wo diese Selektoren nicht konsistent verfügbar sind, wo Hardware nur einen Teil davon in der Fast Path Pipeline auswerten kann oder wo Encapsulation dazu führt, dass Marking an der falschen Stelle betrachtet wird.

Inner vs. Outer DSCP: Die wichtigste SRv6-QoS-Entscheidung

Bei SRv6-Encapsulation stellt sich zwangsläufig die Frage, welche DSCP-Markierung für die Hop-by-Hop Behandlung verwendet wird. Pakete haben häufig einen Inner Header (ursprünglicher Traffic) und einen Outer IPv6 Header (Transport), zusätzlich ggf. einen SRH. Wenn Router im Core nur den Outer Header klassifizieren, müssen Sie sicherstellen, dass die Serviceklasse in den Outer DSCP korrekt übernommen wird (Copy/Propagation). Wenn Router (oder bestimmte Pfade) stattdessen Inner DSCP auswerten, benötigen Sie konsistente Regeln, die das netzweit stabil halten. In der Praxis ist eine klare, netzweite Policy entscheidend, weil Mischformen zu QoS-Löchern führen: Voice ist markiert, aber im Core als Best Effort behandelt.

Trust Boundaries in SRv6: Wo Markierungen akzeptiert oder normalisiert werden

SRv6 ändert nichts an der Grundwahrheit: In Multi-Tenant-Umgebungen sind kundenseitige Markierungen nicht automatisch vertrauenswürdig. Im SRv6-Kontext wird das sogar wichtiger, weil die Edge-Entscheidung (Encapsulation) häufig auch die Marking-Propagation steuert. Eine saubere Trust Boundary sitzt daher am SRv6-Ingress (Edge/Border), wo Servicekontext bekannt ist. Dort wird eine Allowlist durchgesetzt, Kunden-Markings werden auf Provider-Standardwerte gemappt, und Budgets pro Klasse werden enforced (Policing/Degradation). Das Ziel: Premiumklassen schützen, ohne echte Echtzeitdienste zu beschädigen.

Queueing und Scheduling: SRv6 braucht das gleiche Disziplinmodell wie MPLS

Ob MPLS oder SRv6: Echtzeitqualität entsteht am Engpass durch Queueing und Scheduling. In SRv6-Netzen ist die Versuchung groß, alles über „Policy Steering“ zu lösen. Das hilft gegen Hotspots, ersetzt aber nicht die Notwendigkeit, Warteschlangenverzögerung und Drops zu kontrollieren. Ein bewährtes Modell bleibt: Voice in eine limitierte LLQ, Video in eine gewichtete Echtzeitklasse, Business in eine bevorzugte Klasse, Best Effort mit AQM/ECN gegen Bufferbloat, Bulk nachrangig. Entscheidend ist, dass diese PHBs auf allen relevanten Linktypen identisch wirken und dass Queue-Limits so gesetzt sind, dass Bufferbloat nicht die Latenz zerstört.

Praktische Grenze 1: SRv6-Overhead, MTU und Fragmentierung

SRv6 fügt Overhead hinzu: Outer IPv6 Header plus SRH und SIDs. Das reduziert die effektive Nutzlast pro Paket und erhöht das Risiko für MTU-Probleme. Für QoS ist das doppelt relevant: Erstens kann Fragmentierung oder PMTUD-Fehlverhalten zu Drops führen, die bei Echtzeit sofort spürbar sind. Zweitens erhöht Overhead die effektive Leitungslast – Budgets für Echtzeitklassen müssen das berücksichtigen, sonst treffen Policer/Queue-Limits „zu früh“. In der Praxis ist MTU-Disziplin daher ein Kernbestandteil von SRv6 QoS: MSS-Clamping, klare MTU-Standards pro Domäne und Tests mit realen Encapsulation-Stacks.

Praktische Grenze 2: Hardware-Offload und Feature-Parität

SRv6 ist stark von Hardware-Offload abhängig, wenn Sie große Durchsätze und niedrige Latenzen im Core liefern wollen. Nicht jede Plattform unterstützt SRH-Verarbeitung, Klassifizierung und QoS-Mapping im Fast Path gleich gut. Das führt zu einem typischen Betriebsrisiko: Auf einigen Routern funktioniert Class-Aware Behandlung sauber (Outer DSCP, konsistente Queues), auf anderen fällt Traffic in generische Pfade oder wird anders klassifiziert. In SRv6 QoS müssen Sie daher Plattform- und Linecard-Grenzen als „praktische Grenzen“ akzeptieren und Designs so bauen, dass Mixed-Hardware nicht zu QoS-Löchern führt.

Praktische Grenze 3: Hop-by-Hop Policy-Drift in Multi-Domain oder Multi-Vendor Netzen

SRv6 erleichtert Pfadsteuerung, aber es erhöht die Gefahr von Policy-Drift, wenn QoS-Profile nicht strikt standardisiert sind. Drift zeigt sich typischerweise so: DSCP/Queues sind in Region A anders als in Region B, oder nach einem Upgrade ändert sich Default-Mapping. Deshalb ist Governance besonders wichtig: zentrale Klassenmodelle, Template-Renderings pro Plattform, Rezertifizierung und Audits auf Queue-Health (Delay/Drops) sowie auf Marking-Integrität (Ingress/Egress DSCP).

Hop-by-Hop Policies mit SRv6 Steering verbinden: Class-Aware Pathing in der Praxis

SRv6 ermöglicht, Traffic gezielt durch definierte Congestion Domains zu führen. Für QoS ist das wertvoll, wenn Sie bekannte Hotspots umgehen oder Premiumklassen auf stabilere Pfade legen wollen. Praktisch funktioniert das nur, wenn Steering und QoS-Classes aligned sind: Eine Voice-Klasse, die auf einen „Premium-Pfad“ gesteuert wird, muss entlang dieses Pfades auch tatsächlich die Voice-PHB bekommen – sonst steuern Sie nur „optisch“. Ein bewährtes Muster ist daher: pro Klasse ein Pfadprofil (Primary/Secondary/Fallback), dazu klare Hop-by-Hop PHBs, Shaping an Übergängen und Telemetrie, die Pfadwechsel und QoE-Effekte korreliert.

Messbarkeit: SRv6 QoS ohne Telemetrie ist nicht betreibbar

SRv6 QoS muss auf zwei Ebenen gemessen werden: Hop-by-Hop (Queue-Delay, Queue-Drops, AQM/ECN-Marks pro Klasse) und Pfad-/Policy-Ebene (welche SRv6-Policies sind aktiv, wie oft wird umgelenkt, welche Links sind hot). Zusätzlich sollten Sie service-nahe KPIs für Echtzeit (RTP-Loss/Jitter, MOS/R-Faktor-Schätzungen, sofern verfügbar) in die Korrelation aufnehmen. Entscheidend sind kurze Zeitfenster und Perzentile, weil SRv6-Probleme oft in Peak-Phasen oder bei Pfadwechseln sichtbar werden.

Typische Failure Patterns und praktische Grenzen im Alltag

SRv6 QoS scheitert selten an der Idee, sondern an wiederkehrenden Mustern: MTU/Overhead wird nicht berücksichtigt, Outer/Inner DSCP ist inkonsistent, Hardware-Offload fehlt auf Teilstrecken, oder Policies sind zwar definiert, aber die Engpässe liegen an Übergängen (Interconnects, Aggregation), wo Shaping und HQoS fehlen. Diese Grenzen lassen sich beherrschen, wenn sie von Anfang an in das Design aufgenommen werden.

Blueprint: SRv6 QoS robust und realistisch umsetzen

Ein praxiserprobtes Vorgehen beginnt mit klaren Grundlagen: schlankes Klassenmodell, DSCP-Strategie, Trust Boundaries am SRv6-Ingress, und eine eindeutige Entscheidung für Outer-vs-Inner DSCP als Klassifizierungsbasis. Danach wird MTU/Overhead end-to-end geplant (Standards, MSS, Tests), und PHBs werden netzweit konsistent umgesetzt (limitierte LLQ für Voice, gewichtete Klassen für Video/Business, AQM/ECN für Best Effort). Anschließend werden SRv6-Policies eingeführt, die Congestion Domains berücksichtigen und Class-Aware Steering ermöglichen, ohne instabile Pfadwechsel zu verursachen. Shaping und HQoS werden an Übergängen platziert, wo Congestion real entsteht. Abschließend wird Telemetrie aufgebaut, die Queue-Health, Policy-Events und QoE-KPIs korreliert. So entsteht SRv6 QoS, das Hop-by-Hop Policies sauber umsetzt und gleichzeitig die praktischen Grenzen – Overhead, Offload, Drift und Interconnect-Realität – von Anfang an beherrscht.

Exit mobile version