DEENESPTFRRUARHIKOZHNL
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.
  • «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.
  • «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.
  • «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 mittels ReportExecutionState(ExecutionState) (z. B. kRunning) an das Execution Management.
    • Logging-Initialisierung: NM erzeugt eine Logger-Instanz mit spezifischer Context- und App-ID über die Laufzeitumgebung von ara::log.
    • Socket-Initialisierung: NM öffnet Sockets über den TCP/IP Stack (OS-Systemaufrufe wie socket(), bind() auf dem konfigurierten NM-Port/Multicast-Adresse).
  • 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(): bool geprü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.
  • Shutdown & Terminierung:
    • Bei Beendigung oder Funktionsgruppenwechsel meldet NM den Zustand kTerminating an das Execution Management, schließt Socket-Deskriptoren und fährt kontrolliert herunter.

4. Normative Relevanz & Entwickler-Hinweise

  • Normative Architektur-Änderungen:
    • Lebenszyklus-Integration: Durch die Einführung von «aapAPI,aapNativeInterface» Execution Management::ExecutionClient ist der Network Management Functional Cluster normativ in das AUTOSAR-Adaptive-Lebenszyklusmodell eingebunden.
    • Klassifikation als daemon-based: Die Kennzeichnung von Network Management und Execution Management als daemon-based definiert diese Cluster formal als kontinuierlich laufende Hintergrundprozesse auf Betriebssystemebene.
    • Typspezifikation in ara::log: Die Ergänzung des Rückgabetyps bool für IsEnabled() standardisiert die Signatur der C++-Schnittstelle normativ.
  • 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 Management hinterlegt 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.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R24-11 → R25-11 normative Änderung Vorgänger: FIG-56a2b26531aa4857
  • Network Management: Erweiterung um die Kennzeichnung als daemon-based.
  • Log and Trace::Logger: Ergänzung des expliziten Rückgabetyps bool bei der Operation + IsEnabled(): bool (zuvor + IsEnabled()).
  • Execution Management::ExecutionClient: Neue Schnittstelle («aapAPI,aapNativeInterface») mit den Operationen + Create() und + ReportExecutionState(ExecutionState).
  • Execution Management: Neuer Functional Cluster («aapFunctionalCluster»), gekennzeichnet als daemon-based.
  • Beziehungen:
    • Neue Verwendungsabhängigkeit («use»): Network Management → Execution Management::ExecutionClient.
    • Neue Schnittstellenrealisierung: Execution Management → Execution Management::ExecutionClient.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«aapFunctionalCluster» | Network Management daemon-based | «aapInternal» | TCP/IP Stack «aapAPI,aapNativeInterface» | Log and Trace::Logger | + IsEnabled(): bool + Log(MsgId, Params) + LogDebug(): LogStream + LogError(): LogStream + LogFatal(): LogStream + LogInfo(): LogStream + LogVerbose(): LogStream + LogWarn(): LogStream + WithLevel(): LogStream | «aapFunctionalCluster» | Log and Trace | Operating System | «aapAPI,aapNativeInterface» Execution Management::ExecutionClient | + Create() + ReportExecutionState(ExecutionState) | «aapFunctionalCluster» Execution Management daemon-based | «use» «use» «use»

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_AP_EXP_SWArchitecture S. 78 9.36 Figure 9.36: Interfaces required by Network Management