Segment Routing Traffic Engineering (SR-TE) erweitert SR-MPLS um ein kontrollierbares Policy-Modell: Du definierst Policies zu einem Endpoint und gibst mehrere Candidate Paths an, aus denen der Router (oder ein Controller/PCE) abhängig von Präferenzen und Constraints den aktiven Pfad auswählt. Dadurch bekommst du deterministische Pfade, sauberen Failover und die Möglichkeit, Traffic „intelligent“ zu steuern – ohne RSVP-TE pro Tunnel State. In der Praxis ist SR-TE vor allem ein Design-Thema: Du brauchst klare Candidate-Path-Strategien (Fallback-Logik) und gut definierte Constraints (welche Links/Nodes sind erlaubt, welche sind tabu). Dieses Tutorial erklärt Candidate Paths, constraint-basierte Steuerung und einen betriebsnahen Konfigurations-Workflow.
Grundbegriffe: Policy, Candidate Path, Segment List
Eine SR Policy ist das Steuerobjekt. Ein Candidate Path ist ein möglicher Pfad zur selben Destination. Eine Segment List ist die konkrete SID-Sequenz (Label-Stack), die den Pfad beschreibt. Der aktive Pfad ist genau ein Candidate Path (pro Preference).
- SR Policy: Endpoint + Auswahlregeln
- Candidate Path: mögliche Pfadoption mit Preference
- Segment List: konkrete Labels/SIDs für einen Pfad
- Steering: wie Traffic der Policy zugeordnet wird
Merker
Candidate Paths: Warum mehrere Pfade Pflicht sind
Ein einzelner Pfad ist kein TE, sondern nur „Pinned Routing“. In echten Backbones brauchst du mindestens einen Primary und einen Secondary Candidate Path. Optional gibt es einen Tertiary Pfad, der bewusst suboptimal ist, aber Konnektivität garantiert.
- Primary: gewünschter Normalpfad (Latenz, Kosten, Policy)
- Secondary: definierter Failover-Pfad (anderer PoP/Link)
- Tertiary: „last resort“ (IGP-shortest oder minimaler Constraint)
Best Practice
- Candidate Paths klar benennen und dokumentieren
- Preference-Abstände groß genug wählen (lesbar, auditierbar)
- Failover-Pfade regelmäßig testen (nicht nur „vorhanden“)
Constraint-basierte Steuerung: Was sind Constraints?
Constraints sind Regeln, die definieren, welche Ressourcen ein Pfad nutzen darf. Klassische Kategorien sind: Include/Exclude von Nodes/Links (Affinity/Colors), administrative Gruppen, SRLG-Vermeidung, Bandbreiten-/Metric-Grenzen oder „avoid“ Listen. Je nach Implementierung kommen die Constraints aus IGP-TE-Daten (IS-IS/OSPF TE) und werden vom Router oder einem PCE ausgewertet.
- Include: Pfad muss bestimmte Links/Nodes nutzen
- Exclude: Pfad darf bestimmte Links/Nodes nicht nutzen
- Affinity/Colors: Links werden markiert (z. B. „satellite“, „cheap“, „metro“)
- Disjointness: Pfade müssen link-/node-disjoint sein (Risikoreduktion)
Affinity/Link Colors: Der praktische Constraint-Hebel
In vielen SR-TE Designs ist „Link Coloring“ der zentrale Mechanismus: Du markierst Links mit administrativen Gruppen (Affinity) und definierst in Policies, welche Farben erlaubt oder verboten sind. So kannst du z. B. „keine Satellitenlinks“, „nur Metro“, „avoid IX“ ausdrücken, ohne jeden Pfad statisch zu konfigurieren.
Konzept
- Links tragen Affinity-Bits (Farbcode)
- Policy fordert: include/exclude bestimmter Bits
- PCE/Router berechnet Pfad, der Constraints erfüllt
Candidate Path Typen: explicit vs. dynamic
Du kannst Candidate Paths auf zwei Arten bauen. Explicit: du gibst eine feste Segment List vor (maximal deterministisch). Dynamic: der Pfad wird berechnet (CSPF/Constraint-based) und kann sich ändern, wenn Topologie oder Constraints sich ändern. In der Praxis nutzt man oft beides: explicit als „sicherer“ Primary, dynamic als flexibler Secondary.
- Explicit: feste Segment List (Node-/Adj-SIDs), sehr deterministisch
- Dynamic: berechneter Pfad, constraints-basiert, anpassungsfähig
- Hybrid: Primary explicit, Secondary dynamic (oder umgekehrt)
Konfigurations-Pattern: Policy mit mehreren Candidate Paths
Das folgende Pattern zeigt eine SR Policy mit Primary (explicit) und Secondary (explicit). Das ist ideal, um Candidate Paths zu verstehen und im Betrieb zu kontrollieren.
Segment Lists definieren (Beispiel)
segment-routing
traffic-eng
segment-list SL_PRIMARY
index 10 mpls label 16011
index 20 mpls label 16022
segment-list SL_SECONDARY
index 10 mpls label 16033
index 20 mpls label 16022
Policy mit Candidate Paths
segment-routing
traffic-eng
policy POL_TO_PE2
color 100 end-point ipv4 10.255.0.2
candidate-paths
preference 200
explicit segment-list SL_PRIMARY
preference 100
explicit segment-list SL_SECONDARY
Constraint-basiertes SR-TE: Dynamic Candidate Paths (Konzept)
Für echte constraint-basierte Steuerung brauchst du dynamische Pfade: Der Router oder ein PCE berechnet anhand von TE-Topology und Constraints eine Segment List. Die konkrete CLI ist je IOS XE Release und TE-Mode unterschiedlich, das Muster ist jedoch: Candidate Path „dynamic“ plus Constraint-Parameter.
Dynamic Candidate Path (Pattern)
segment-routing
traffic-eng
policy POL_TO_PE2
color 100 end-point ipv4 10.255.0.2
candidate-paths
preference 200
dynamic
preference 150
dynamic
Steering: Wie Traffic die SR Policy nutzt
Policies wirken nur, wenn Traffic in sie gesteuert wird. In skalierbaren Designs erfolgt Steering häufig über BGP (Color/Communities) oder über eine lokale Klassifikation (PBR). Für Backbone-TE ist BGP-Steering meist die langfristig wartbarere Option.
- BGP Steering: Zuordnung über Color/Routes (skalierbar)
- PBR: lokal, präzise, aber operational aufwändiger
- Best Practice: wenige Policies, klare Traffic-Klassen
Monitoring und Betrieb: SR-TE ist ein Telemetrie-Thema
SR-TE muss sichtbar sein: welcher Candidate Path ist active, warum wurde gewechselt, und ob Constraints erfüllt sind. Ohne diese Sicht wirkt SR-TE „random“, obwohl es deterministisch entscheidet.
- Active Candidate Path pro Policy
- Last switch reason (Link down, constraint violated, admin change)
- Traffic pro Policy (Interface Counters/NetFlow/Telemetry)
Verifikation
show segment-routing traffic-eng policy
show segment-routing traffic-eng policy name POL_TO_PE2 detail
show mpls forwarding-table | include 160
Typische Pitfalls: Warum SR-TE Policies nicht tun, was du erwartest
Die häufigsten Probleme sind nicht „SR kaputt“, sondern Design-/Constraint-Fehler: falsche SIDs, zu harte Constraints (kein Pfad möglich), oder fehlende TE-Information im IGP. Kandidaten werden dann als „invalid“ markiert und du fällst auf einen ungewollten Pfad zurück.
- SRGB inkonsistent → Segment Lists funktionieren nicht domänenweit
- Constraints zu strikt → kein gültiger Pfad verfügbar
- TE-Topology fehlt → dynamic path kann nicht berechnet werden
- Adjacency-SIDs übernutzt → Policies werden fragil
Quick-Runbook: Candidate Path Switch unter Zeitdruck
Diese Checkliste hilft, wenn eine Policy unerwartet switched oder „down“ ist: erst Status, dann Gründe, dann Forwarding.
show segment-routing traffic-eng policy
show segment-routing traffic-eng policy name POL_TO_PE2 detail
show ip route 10.255.0.2
show mpls forwarding-table | include 160
show interfaces | include drops|error
show logging | include SR|TE|ISIS|OSPF
Konfiguration speichern
Router# copy running-config startup-config
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab (CCNA)
Hallo! Ich bin ein CCNA-Network Engineer und unterstütze Sie bei Cisco Router- und Switch-Konfigurationen – inklusive eines vollständigen Cisco Packet-Tracer-Labs (.pkt). Ideal für Lern-/Übungsszenarien, Validierung oder eine saubere Demo-Topologie.
Was ich (je nach Paket) umsetze
-
Switching: VLANs, Trunking (802.1Q), Port-Zuweisung, STP-Basics (PortFast/BPDU Guard wo sinnvoll)
-
Routing: Default/Static Routing oder OSPF, Inter-VLAN Routing (Router-on-a-Stick)
-
Services: DHCP (Pools/Scopes), NAT/PAT für Internet-Simulation
-
Optional Security: Basic ACLs und SSH-Hardening
-
Test & Verifikation: Ping/Traceroute + wichtige Show-Commands (mit erwarteten Ergebnissen)
Sie erhalten
-
✅ Packet Tracer .pkt Datei
-
✅ Saubere Konfigurations-Notizen pro Gerät
-
✅ Verifikations-Checkliste + erwartete Outputs
-
✅ Kurze Dokumentation (wie die Topologie funktioniert)
Bitte schreiben Sie mir vor der Bestellung, damit wir Scope, Packet-Tracer-Version, Geräteanzahl und Deadline klären.
Konfiguriere Cisco Router & Switches | Cisco Packet-Tracer-Labs. Finden Sie mich auf Fiverr.












