AUTOSAR_AP_EXP_SWArchitecture
FIG-6e16fc0575e2830d
607 × 415 px
1 Release(s)
Figure 9.36: Interfaces required by Network Management
SHA-256 Inhalts-Fingerabdruck:
6e16fc0575e2830d92bfcbef59b0ce88a900b7d40065eddf0bc1a53bd28165be
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Komponenten- und Schnittstellendiagramm (statische Architekturansicht mit AUTOSAR-Adaptive-Stereotypen).
- Architektur-Kontext: AUTOSAR Adaptive Platform (ARA/AAP), Spezifikation
AUTOSAR_EXP_SWArchitecture(Release R25-11). - Technischer Zweck: Spezifikation der externen Schnittstellenabhängigkeiten des daemon-basierten Functional Clusters Network Management (NM) zu anderen funktionalen Clustern (Log and Trace, Execution Management) und der Basisinfrastruktur (OS/Plattformebene).
2. Komponenten, Entitäten & Schnittstellen
Entitäten & Stereotypen
«aapFunctionalCluster» Network Management(daemon-based):- Konsument (Client), als eigenständiger Betriebssystem-Daemon realisiert.
- Realisiert die NM-Zustandsmaschine (z. B. UdpNm-Zustände wie Repeat Message, Normal Operation, Ready Sleep) und koordiniert den Netzwerkstatus der Adaptive Platform.
«aapAPI,aapNativeInterface» Log and Trace::Logger:- Öffentliche, standardisierte C++-Laufzeitschnittstelle (
ara::log::Logger). - Deklarierte Operationen:
+ IsEnabled(): bool: Typisierte Abfrage, ob das konfigurierte Log-Level aktiv ist (gibt booleschen Status zurück).+ Log(MsgId, Params): Strukturiertes Logging mit Nachrichten-ID und Parametern.+ LogDebug(): LogStream,+ LogError(): LogStream,+ LogFatal(): LogStream,+ LogInfo(): LogStream,+ LogVerbose(): LogStream,+ LogWarn(): LogStream: Bereitstellung von typisierten Log-Streams für die jeweiligen Schweregrade.+ WithLevel(): LogStream: Dynamische Zuweisung des Log-Levels zur Laufzeit.
- Öffentliche, standardisierte C++-Laufzeitschnittstelle (
«aapAPI,aapNativeInterface» Execution Management::ExecutionClient:- Öffentliche, standardisierte C++-Schnittstelle (
ara::exec::ExecutionClient) zur Lebenszyklusüberwachung. - Deklarierte Operationen:
+ Create(): Statische Methode zur Initialisierung bzw. Instanziierung des Clients.+ ReportExecutionState(ExecutionState): Übermittlung des Prozesslebenszyklus-Zustands (z. B.kRunning,kTerminating) an das Execution Management.
- Öffentliche, standardisierte C++-Schnittstelle (
«aapInternal» TCP/IP Stack:- Nicht-öffentliche Plattform-/OS-Schnittstelle (
«aapInternal»). - Stellt Netzwerk-I/O-Dienste (L4/L3, typischerweise UDP/IP) für das Senden und Empfangen von NM-Botschaften bereit.
- Nicht-öffentliche Plattform-/OS-Schnittstelle (
«aapFunctionalCluster» Log and Trace:- Plattform-Cluster, der den Logging-Dienst kapselt und die physische Weiterleitung (z. B. via DLT – Diagnostic Log and Trace) abstrahiert.
«aapFunctionalCluster» Execution Management(daemon-based):- Zentraler Plattform-Daemon zur Steuerung des Prozesslebenszyklus, der Zustände und der Plattforminitialisierung.
Operating System:- Basis-Laufzeitumgebung (POSIX-kompatibles Betriebssystem gemäß PSE51/PSE52). Beherbergt den Netzwerk-Treiberstack und Kernel-Netzwerkpuffer.
Beziehungen & Kardinalitäten
- Verwendungsabhängigkeiten (
«use», gestrichelte Pfeile mit offener Spitze):Network Management→Log and Trace::Logger: Bindung an das standardisierte Application Interface des Logging-Clusters.Network Management→Execution Management::ExecutionClient: Bindung an den standardisierten Lifecycle-Client zur Zustandsmeldung.Network Management→TCP/IP Stack: Direkte Nutzung der Netzwerk-Transportschicht für NM-PDUs.
- Schnittstellenrealisierungen (Interface Realization, gestrichelte Pfeile mit geschlossener Dreiecksspitze):
Log and Trace→Log and Trace::Logger: Der funktionale Cluster implementiert die native API.Execution Management→Execution Management::ExecutionClient: Der funktionale Cluster implementiert die Lifecycle-Client-Schnittstelle.Operating System→TCP/IP Stack: Das Betriebssystem stellt den Netzwerk-Stack intern bereit.
3. Dynamisches Verhalten & Sequenzablauf
- Initialisierung & Startup:
- Lifecycle-Meldung: Unmittelbar nach Prozessstart instanziiert der NM-Daemon den Client über
ExecutionClient::Create()und meldet seine Betriebsbereitschaft mittelsReportExecutionState(ExecutionState)(z. B.kRunning) an dasExecution Management. - Logging-Initialisierung: NM erzeugt eine
Logger-Instanz mit spezifischer Context- und App-ID über die Laufzeitumgebung vonara::log. - Socket-Initialisierung: NM öffnet Sockets über den
TCP/IP Stack(OS-Systemaufrufe wiesocket(),bind()auf dem konfigurierten NM-Port/Multicast-Adresse).
- Lifecycle-Meldung: Unmittelbar nach Prozessstart instanziiert der NM-Daemon den Client über
- Zyklischer Betrieb & Ereignisbehandlung:
- PDU-Transfer (asynchron/synchron): Senden periodischer NM-Pakete über Non-blocking/Blocking UDP-Sockets (
sendto()); Empfang eingehender NM-Pakete via Socket-Events (epoll(),pselect(),recvfrom()). - Diagnose & Tracing: Vor dem Log-Schreiben kann über
IsEnabled(): boolgeprüft werden, ob das Log-Level aktiv ist; Zustandsübergänge der NM-State-Machine und Bus-Timeouts werden über die typspezifischen LogStream-Methoden an das Logging-Subsystem übermittelt.
- PDU-Transfer (asynchron/synchron): Senden periodischer NM-Pakete über Non-blocking/Blocking UDP-Sockets (
- Shutdown & Terminierung:
- Bei Beendigung oder Funktionsgruppenwechsel meldet NM den Zustand
kTerminatingan dasExecution Management, schließt Socket-Deskriptoren und fährt kontrolliert herunter.
- Bei Beendigung oder Funktionsgruppenwechsel meldet NM den Zustand
4. Normative Relevanz & Entwickler-Hinweise
- Normative Architektur-Änderungen:
- Lebenszyklus-Integration: Durch die Einführung von
«aapAPI,aapNativeInterface» Execution Management::ExecutionClientist der Network Management Functional Cluster normativ in das AUTOSAR-Adaptive-Lebenszyklusmodell eingebunden. - Klassifikation als
daemon-based: Die Kennzeichnung vonNetwork ManagementundExecution Managementalsdaemon-baseddefiniert diese Cluster formal als kontinuierlich laufende Hintergrundprozesse auf Betriebssystemebene. - Typspezifikation in ara::log: Die Ergänzung des Rückgabetyps
boolfürIsEnabled()standardisiert die Signatur der C++-Schnittstelle normativ.
- Lebenszyklus-Integration: Durch die Einführung von
- Entwickler- & Integrationshinweise:
- Execution Manifest: Für die Bereitstellung des NM-Daemons muss im Execution Manifest die Startup-Konfiguration und der IPC-Zugriff auf das
Execution Managementhinterlegt sein. - Startup-Sequenz:
ReportExecutionState(kRunning)muss rechtzeitig nach erfolgreicher Socket- und Logger-Initialisierung abgesetzt werden, um State-Management-Timeouts zu verhindern. - Netzwerkberechtigungen: Als Daemon benötigt der NM-Prozess im Betriebssystem die entsprechenden Capabilities/Rechte zum Öffnen und Binden von L4-UDP-Sockets auf dem Plattform-Netzwerk-Interface.
- Execution Manifest: Für die Bereitstellung des NM-Daemons muss im Execution Manifest die Startup-Konfiguration und der IPC-Zugriff auf das
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.