8.1. Komplikationen durch geteilte Pfade (Complications Introduced by Split Paths)
Dieser Abschnitt behandelt Komplikationen, die durch geteilte oder mehrere Pfade zwischen Endpunkten entstehen.
8.1.1. Was sind geteilte Pfade?
Geteilte Pfade entstehen, wenn:
- Pakete derselben Verbindung verschiedene Routen nehmen
- Last-Balancing über mehrere Pfade
- Pfadänderungen während der Verbindung
- Asymmetrische Vorwärts- und Rückwärtspfade
8.1.2. ECN-Inkonsistenzen über Pfade
Problem 1: Unterschiedliche ECN-Unterstützung
Szenario: Einige Pfade unterstützen ECN, andere nicht.
Auswirkungen:
- Pakete auf Nicht-ECN-Pfaden: ECN-Bits werden gelöscht
- Pakete auf ECN-Pfaden: Funktionieren normal
- Inkonsistentes Verhalten für die Verbindung
Problem 2: Unterschiedliche Überlastungsniveaus
Szenario: Verschiedene Pfade haben unterschiedliche Überlastungsniveaus.
Auswirkungen:
- CE-Markierung ist pfadabhängig
- Überlastungssignale repräsentieren nicht einheitliche Netzwerkbedingungen
- Überlastungskontrolle erhält gemischte Signale
8.1.3. Per-Packet Load Balancing
Wenn Router Per-Packet Load Balancing verwenden:
Herausforderungen:
- Jedes Paket kann einen anderen Pfad nehmen
- Verschiedene Pakete können verschiedenes ECN-Verhalten erfahren
- Einige Pakete CE-markiert, andere nicht
TCP-Verhalten:
- TCP reagiert auf CE basierend auf empfangenen Paketen
- Überlastungskontrolle basiert auf aggregierten Signalen
- Funktioniert generell, aber suboptimal
8.1.4. Per-Flow Load Balancing
Wenn Router Per-Flow Load Balancing verwenden:
Vorteile:
- Alle Pakete eines Flusses nehmen denselben Pfad
- Konsistentes ECN-Verhalten
- Einfacher zu handhaben
Übergang zwischen Pfaden:
- Wenn der Fluss auf einen neuen Pfad umgeschaltet wird
- Kann zu plötzlicher Änderung im ECN-Verhalten führen
- TCP passt sich an
8.1.5. Asymmetrische Pfade
Vorwärtspfad (Daten) und Rückwärtspfad (ACKs) können unterschiedlich sein:
ECN-Implikationen:
- CE-Markierung auf Vorwärtspfad: Normal gehandhabt
- CE-Markierung auf Rückwärtspfad (ACKs): Siehe Abschnitt 6.1.4
- Verschiedene Überlastungsmuster auf verschiedenen Pfaden
8.1.6. Erkennung geteilter Pfade
Endpunkte KÖNNEN erkennen:
- Inkonsistente RTT-Messungen
- Out-of-Order-Paketzustellung
- Variable Paketmarkierungsmuster
Schwierig zu unterscheiden von:
- Normalem Netzwerk-Jitter
- Gelegentlichen Pfadänderungen
- Router-Warteschlangenvariationen
8.1.7. Auswirkungen auf ECN-Nonce
Bei geteilten Pfaden und ECN-Nonce (siehe Abschnitt 11.2):
- Verschiedene Pfade können ECT(0)/ECT(1) unterschiedlich behandeln
- Nonce-Verifikation kann fehlschlagen, wenn Bits gelöscht werden
- Erfordert Robustheit in Nonce-Implementierungen
8.1.8. Empfehlungen
Für Netzwerkoperatoren:
- Bevorzugen Sie Per-Flow Load Balancing über Per-Packet
- Stellen Sie konsistente ECN-Behandlung über Pfade sicher
- Überwachen Sie pfadabhängige Verhaltensunterschiede
Für Protokoll-Implementierer:
- Entwerfen Sie für Robustheit gegenüber pfadvariablem Verhalten
- Verwenden Sie aggregierte Signale, nicht einzelne Paket-Anomalien
- Erwarten Sie gelegentliche Inkonsistenzen
Für TCP:
- Standard-TCP-Überlastungskontrolle ist robust gegenüber geteilten Pfaden
- ECN fügt keine neuen fundamentalen Probleme hinzu
- Existing mechanisms (z.B. Timeout, Fast Retransmit) handhaben Anomalien