Zonal-Architekturen mit Switches setzen zunehmend TSN-Mechanismen (IEEE 802.1Q) ein, um harte Echtzeitgarantien für einzelne Streams zu gewährleisten. Dieser Post zeigt die zwei zentralen AUTOSAR-Bausteine dafür: Egress-Scheduling/Shaping und Frame Preemption.
Warum Scheduling im Switch überhaupt nötig ist
Mehrere Streams konkurrieren am selben Egress-Port um dieselbe Bandbreite. Ohne Priorisierung könnte ein Best-Effort-Bulk-Transfer (z. B. Diagnose-Daten-Upload) eine harte Echtzeit-Deadline eines Sicherheitsstreams (z. B. Bremssignal) blockieren.
Egress-Queues, Transmission Selection und Port-Scheduler
Frames werden laut ihrer Traffic-Class-Zuordnung in Egress-Queues
(EthSwtPortQueue) eingereiht. Jede Queue besitzt einen
Pflicht-Subcontainer EthSwtPortEgressQueueTransmissionSelection, der
über EthSwtPortEgressQueueTransmissionSelectionAlgorithm festlegt, wie
Frames aus dieser Queue zur Übertragung ausgewählt werden — z. B. Credit
Based Shaper (CBS) oder Asynchronous Traffic Shaper.
Der EthSwtPortEgressScheduler (Pflicht-Subcontainer, Algorithmus über
EthSwtPortSchedulerAlgorithm, z. B. Strict Priority) entscheidet dann,
welche der bereits vorselektierten Queues tatsächlich senden darf.
Laut SWS können an einem Egress-Port mehrere Port-Scheduler kaskadiert werden: Der Output eines Egress-Schedulers dient als Input für den nachfolgenden Port-Scheduler. Das erlaubt mehrstufige Priorisierungs- strategien (z. B. erst CBS-Glättung pro Queue-Gruppe, dann Strict-Priority zwischen den Gruppen), statt eines einzigen flachen Schedulers. |
CBS und ETS im Vergleich
| Verfahren | Grundidee |
|---|---|
Credit Based Shaper (CBS) | Klassischer AVB/TSN-Shaper (IEEE 802.1Qav): eine Queue sammelt "Kredit", während sie sendet, und verliert Kredit, während sie wartet — begrenzt die Sendebandbreite auf einen konfigurierten Wert, ohne Bursts völlig zu unterbinden |
Enhanced Transmission Selection (ETS) | Bandbreitenanteile werden mehreren Traffic-Klassen gemeinsam zugewiesen (IEEE 802.1Qaz) — nützlich, wenn mehrere Klassen sich eine garantierte Mindestbandbreite teilen sollen, statt einer strikten Rangfolge |
Frame Preemption (IEEE 802.1Q)
Frame Preemption wird pro EthSwtPort konfiguriert
(EthSwtFramePreemptionEnable) und setzt voraus, dass die
Switch-Hardware es tatsächlich unterstützt — per Default ist das Merkmal
deaktiviert, weil die SWS annimmt, dass Switch-Hardware es typischerweise
nicht kann.
EthSwtFramePreemptionEnable = TRUE am Port
│
▼
Frames in den EthSwtPortQueues werden klassifiziert:
EthSwtTrafficClassToPreemptionStatusAssignment
├── ETHSWT_TRAFFIC_CLASS_PREEMPTABLE → unterbrechbar
└── ETHSWT_TRAFFIC_CLASS_EXPRESS → unterbricht andere FramesIst Preemption an einem Port aktiv, gilt Ingress und Egress. Ein "express" klassifiziertes Frame kann dann ein "preemptable" Frame auf der Leitung unterbrechen (interspersing) — die kritische Nachricht muss nicht warten, bis der große Frame komplett übertragen ist.
Frame Preemption funktioniert nur Link-für-Link: Beide Enden einer Verbindung müssen es unterstützen. Die SWS stellt ausdrücklich klar, dass eine dynamische Aushandlung der Preemption-Fähigkeit zwischen Partnern über Protokolle wie LLDP von AUTOSAR nicht unterstützt wird — Automotive-Netze sind statisch genug designt, dass eine systemweit konsistente Konfiguration über die Systembeschreibung ausreicht. |
Praxisbeispiel
Ein Uplink-Port trägt sowohl einen harten Echtzeit-Stream (z. B. Bremsdaten, als "express" klassifiziert) als auch einen Diagnose-Bulk-Transfer (als "preemptable" klassifiziert). Mit aktivierter Frame Preemption kann der Bremsdaten-Frame den laufenden Diagnose-Frame-Transfer unterbrechen, statt auf dessen vollständige Übertragung zu warten — entscheidend für die Einhaltung einer harten Latenz-Deadline.
Zusammenfassung
| Aspekt | Kernaussage |
|---|---|
Egress-Scheduling | Queue-basiert, mit kaskadierbaren Port-Schedulern (Strict Priority, ETS) |
Shaper | CBS für AVB-typisches Bandbreiten-Limiting, ETS für gemeinsame Bandbreitenanteile mehrerer Klassen |
Frame Preemption | Pro Port konfigurierbar, Traffic-Klassen als preemptable/express markiert |
Wichtige Einschränkung | Funktioniert nur Link-für-Link; keine dynamische LLDP-Aushandlung in AUTOSAR — vollständig statische Konfiguration |