AUTOSAR_AP_EXP_SWArchitecture
FIG-817c9b0c6fa749fd
406 × 360 px
1 Release(s)
Figure 11.9: Scenario: Receive IEEE1722 Stream
SHA-256 Inhalts-Fingerabdruck:
817c9b0c6fa749fda38814be4076e3538bfe3a802667194b485974726b5500ea
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML 2.x Sequenzdiagramm (Interaktionsdiagramm mit kombiniertem Fragment
loop). - Funktionale Einordnung: AUTOSAR Adaptive Platform (AP), Teilsystem Kommunikation (
ara::com/ Raw Data Stream API). - Technischer Zweck: Spezifikation des Lebenszyklus und Interaktionsmusters beim Empfang von unstrukturierten bzw. echtzeitnahen Streaming-Daten über das IEEE 1722 AVTP (Audio Video Transport Protocol) durch eine Adaptive Application (Consumer-Rolle).
2. Komponenten, Entitäten & Schnittstellen
- Akteure / Lebenslinien:
:Adaptive Application: Nutzerprozess im User Space der Adaptive Platform, agiert als Datensenke (Consumer).:IEEE1722RawDataStreamConsumer: Funktionale Entität / Proxy-Klasse des Kommunikations-Stacks zur Kapselung des IEEE 1722 Stream-Endpunkts (AVTP-Empfänger).
- Schnittstellen & Methoden:
Create(): Konstruktion/Instanziierung der Consumer-Instanz (Lifecycle-Beginn).Connect(): Bindung des Sockets bzw. Registrierung auf den spezifischen IEEE 1722 Stream (Stream-ID, Multicast-MAC/VLAN-Filterung).ReadData(): Polling- oder blockierender Abruf von empfangenen AVTP-Payloads/Frames aus dem Stack-Puffer.Shutdown(): Terminierung der Stream-Verbindung, Freigabe von Netzwerk- und Puffer-Ressourcen.
- Beziehungen: 1:1-Assoziation zwischen der anfordernden Applikationsinstanz und dem zugewiesenen Stream-Consumer-Objekt über dessen Lebensdauer hinweg.
3. Dynamisches Verhalten & Sequenzablauf
- Instanziierung: Die
:Adaptive Applicationerzeugt das:IEEE1722RawDataStreamConsumer-Objekt viaCreate()(gekennzeichnet durch die direkte Erzeugungsnachricht auf den Objektkopf). - Verbindungsaufbau: Synchroner Methodenaufruf
Connect()initiiert das Subskribieren/Binden an den IEEE 1722 AVTP-Datenstrom auf Netzwerkebene. - Datenempfang (
loop Read Data):- Das kombinierte Fragment
loopdefiniert die wiederholte Ausführung vonReadData(). - Die Applikation ruft zyklisch oder ereignisgetrieben
ReadData()auf, um eintreffende Datenpakete (z. B. Audio/Video, Sensor-Rohdaten wie Kamera/Radar) sequenziell aus dem Empfangspuffer auszulesen.
- Das kombinierte Fragment
- Verbindungsabbau & Zerstörung:
- Nach Abschluss des Datenstroms ruft die Applikation
Shutdown()auf. - Der Consumer-Endpunkt wird geschlossen, die Ressourcen werden freigegeben und die Lebenslinie des
:IEEE1722RawDataStreamConsumerendet explizit mit dem UML-Terminierungszeichen (X).
- Nach Abschluss des Datenstroms ruft die Applikation
4. Normative Relevanz & Entwickler-Hinweise
- Protokoll-Charakteristik: Im Gegensatz zu IPC/SOME/IP-basierten RPC- oder Event-Mechanismen verzichtet der Raw Data Stream auf Serialisierungs-Overhead. Daten werden direkt im IEEE 1722 AVTP-Format verarbeitet (z. B. Ethernet Layer 2 / AVB).
- API-Vertrag (
ara::com):Connect()undReadData()arbeiten nach demara::core::Result-Muster (Fehlerbehandlung ohne C++ Exceptions).ReadData()erfordert applikationsseitiges Puffer-Management (Bereitstellung von Speichervektoren bzw. Entgegennahme von Zero-Copy-Puffern/Spans zur Vermeidung von Latenzen).
- Ressourcen & Determinismus:
- Der Aufruf von
Shutdown()ist zwingend vor Zerstörung des Kontextes erforderlich, um Socket-Desktriptoren und Kernel-/Stack-Puffer deterministisch freizugeben. - Die Ausführungsschleife (
loop) unterliegt Echtzeitanforderungen; ein Überlaufen des Empfangspuffers bei zu seltener Abholung (ReadData()) führt zu Frame-Loss auf AVTP-Ebene.
- Der Aufruf von