DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_NetworkManagement FIG-a83a638138b1a3bc 332 × 383 px 1 Release(s)

Figure 5.1: Interfaces provided by Network Management to other Functional Clusters

SHA-256 Inhalts-Fingerabdruck: a83a638138b1a3bc379d7f6f9276e768385a37a02d8b39c1b439fbf30e071492
✦ 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-Komponenten- und Schnittstellendiagramm (AUTOSAR Adaptive Platform Architecture Modeling).
  • Technischer Zweck: Spezifikation der standardisierten Service-/Port-Schnittstelle zwischen den Functional Clusters (FC) Network Management (NM) und State Management (SM).
  • Architektur-Kontext:
    • In der AUTOSAR Adaptive Platform (Release R23-11) ist das Network Management für die Überwachung und Anforderung des Kommunikationsbus-Zustands (z. B. Ethernet/CAN-NM-Cluster) zuständig.
    • Das State Management (als zentrale Instanz für Maschinen- und Funktionszustände) steuert koordinativ die partiellen Netze und Cluster über definierte Schnittstellen an, anstatt direkt auf Bussignale oder Treiber zuzugreifen.

2. Komponenten, Entitäten & Schnittstellen

Entitäten & Stereotypen
  • «aapFunctionalCluster» State Management (Klassifikation: daemon-based):
    • Konsument/Client der Schnittstelle.
    • Agiert als zuständiger System-Daemon für ECU-/Machine-State-Übergänge und bindet die benötigte Schnittstelle über einen Required Port ein.
  • «aapFunctionalCluster» Network Management:
    • Provider/Server der Schnittstelle.
    • Realisiert die Kernlogik des Netzwerkmanagements (Netzwerk-Zustandsmaschine, Bus-Sleep, Repeat Message, Normal Operation).
  • «aapAPI,aapPortInterface» NetworkHandle:
    • Abstrakte Schnittstellendefinition (ara::com / native C++ Schnittstelle), welche die Steuer- und Abfragemethoden bündelt:
      • GetNetworkRequestedState(): Synchroner Getter für den aktuell angeforderten Soll-Netzwerkzustand.
      • GetNetworkState(): Synchroner Getter für den tatsächlichen Ist-Zustand des Netzwerks (Bus-State).
      • SetNetworkRequestedState(): Setter zur Anforderung oder Freigabe des Netzwerks (Transition Trigger).
      • RegisterNetworkRequestedStateChangeNotifier() / UnregisterNetworkRequestedStateChangeNotifier(): Registrierungs-/Deregistrierungsmechanismus für Callbacks bei Änderung des Soll-Zustands.
      • RegisterNetworkStateChangeNotifier() / UnregisterNetworkStateChangeNotifier(): Registrierungs-/Deregistrierungsmechanismus für Callbacks bei Änderung des realen Bus-/Netzwerkzustands.
Beziehungen & Abhängigkeiten
  • Interface Realization (Implementierung):
    • Gestrichelte Linie mit geschlossener, nicht gefüllter Pfeilspitze von Network Management auf NetworkHandle.
    • Network Management stellt die konkrete Implementierung der Schnittstelle bereit (ProvidedPort).
  • Usage Dependency (Verwendung):
    • Gestrichelte Pfeillinie mit offener Spitze von State Management auf NetworkHandle, annotiert mit «use» und «aapRequiredPort».
    • State Management deklariert einen Abhängigkeits-Port auf die Schnittstelle NetworkHandle.

3. Dynamisches Verhalten & Sequenzablauf

Das Diagramm modelliert die statische Schnittstellenstruktur, impliziert jedoch folgendes dynamisches Interaktionsmuster zwischen State Management und Network Management:

  1. Initialisierung & Observer-Registrierung (Asynchron/Event-driven):
    • SM ruft während der Initialisierung RegisterNetworkStateChangeNotifier() und RegisterNetworkRequestedStateChangeNotifier() auf.
    • NM speichert die bereitgestellten Funktionszeiger/Delegate-Instanzen (std::function bzw. Listener-Objekte).
  2. Netzwerk-Aktivierung / Freigabe (Steuerungspfad):
    • Anforderung: SM entscheidet aufgrund von State-Transitions (z. B. Wechsel in den State Running), dass Netzwerkkommunikation erforderlich ist, und ruft synchron/blockierungsarm SetNetworkRequestedState(...) auf.
    • Quittierung & Monitoring: NM schaltet intern die NM-Zustandsmaschine um (z. B. Senden von NM-PDUs, Halten des Busses wach) und notifiziert das SM über die registrierten Notifier-Callbacks bei Statuswechseln.
  3. Zustandsabfrage (Synchroner Polling-Pfad):
    • SM kann zu jedem Zeitpunkt über GetNetworkState() bzw. GetNetworkRequestedState() den aktuellen Zustand abfragen, um Vorbedingungen für weitere State-Transitions (z. B. Vorbereitung des System-Shutdowns/Sleep) zu prüfen.
  4. De-Registrierung:
    • Vor dem Herunterfahren oder bei Rekonfiguration deregistriert SM die Observer über UnregisterNetwork*ChangeNotifier(), um Dangling-Pointer bzw. Callbacks auf terminierte Kontexte zu verhindern.

4. Normative Relevanz & Entwickler-Hinweise

  • API-Vertrag (C++ Namespace ara::nm):
    • Entwickler von State-Management-Regeln müssen sich strikt an die NetworkHandle-Abstraktion halten; direkter Zugriff auf darunterliegende Busprotokolle (z. B. UDP-Sockets, CAN-Interfaces) ist architektonisch unzulässig.
  • Thread-Safety & Reentrancy:
    • Die Notifier-Callbacks werden im Ausführungskontext des Network-Management-Daemons bzw. dessen Worker-Threads aufgerufen. SM-Entwickler müssen sicherstellen, dass Notifier-Routinen nicht-blockierend ausgelegt sind und keine Deadlocks durch synchrone Rückrufe (SetNetworkRequestedState) innerhalb des Notifier-Kontexts provozieren.
  • Zustandssynchronisation:
    • GetNetworkRequestedState() spiegelt lediglich den logischen Anforderungsstatus wider. Ob der physische Bus tatsächlich kommunikationsbereit ist, liefert ausschließlich GetNetworkState() (bzw. dessen Notifier). State-Maschinen im SM dürfen erst nach Bestätigung des tatsächlichen Netzwerkzustands davon ausgehen, dass Kommunikation (ara::com Services) voll einsatzbereit ist.
  • Port-Konfiguration im ARXML-Manifest:
    • Das Deployment erfordert die Deklaration eines entsprechenden RPortPrototype im Execution/Service-Manifest des State Management und eines korrespondierenden PPortPrototype im Network Management Cluster, gebunden über das interne IPC-/Service-Binding der Adaptive Platform.

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

R23-11 → R24-11 keine inhaltliche Änderung Nachfolger: FIG-c4e2ac4bc86b6a56

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«aapFunctionalCluster» | State Management daemon-based | «aapAPI,aapPortInterface» | NetworkHandle | + GetNetworkRequestedState() + GetNetworkState() + RegisterNetworkRequestedStateChangeNotifier() + RegisterNetworkStateChangeNotifier() + SetNetworkRequestedState() + UnregisterNetworkRequestedStateChangeNotifier() + UnregisterNetworkStateChangeNotifier() | «aapFunctionalCluster» | Network Management | «use» «aapRequiredPort»

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R23-11 AUTOSAR_AP_SWS_NetworkManagement S. 10 5.1 Figure 5.1: Interfaces provided by Network Management to other Functional Clusters