DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_TimeSynchronization FIG-521a019af486f704 638 × 424 px 1 Release(s)

Figure 5.2: Interfaces required by Time Synchronization from other Functional Clusters

SHA-256 Inhalts-Fingerabdruck: 521a019af486f70428842c47b824344b19f591c8210dc10239ffa9df1a5cf013
✦ 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

  • Diagrammtyp: UML-Komponenten- und Schnittstellendiagramm (Statisches Architektur- und Abhängigkeitsmodell der AUTOSAR Adaptive Platform).
  • Architektur-Kontext: Spezifiziert die externen Abhängigkeiten (Required Interfaces) des Functional Clusters Time Synchronization (AP Release R24-11, SWS TimeSynchronization, Kapitel 5.2).
  • Funktionale Einordnung: Dargestellt ist eine daemon-basierte Implementierung (daemon-based). Der Time-Synchronization-Daemon fungiert als Service-Consumer und stützt sich auf Basisfunktionalitäten des Betriebssystems (Low-Level-Netzwerkzugriff für PTP/gPTP) sowie der Nachbar-Cluster Log and Trace (Plattform-Diagnose), Persistency (nichtflüchtige Speicherung von Zeit-Offsets und Parametern) und Cryptography (kryptografische Authentifizierung und Absicherung von PTP-Paketen über den CryptoStack).

2. Komponenten, Entitäten & Schnittstellen

Komponenten (Consumer & Provider)
  • «aapFunctionalCluster» Time Synchronization (Consumer):
    • Eigenschaft: daemon-based (Ausführung als autonomer Hintergrund-Prozess/Daemon im Plattform-Kontext).
  • Operating System (Provider):
    • Plattform-Betriebssystem (POSIX/Kernel-Ebene), das native Socket- und Netzwerk-Treiberressourcen bereitstellt.
  • «aapFunctionalCluster» Log and Trace (Provider):
    • Adaptiver Funktionscluster für standardisiertes Logging (ara::log).
  • «aapFunctionalCluster» Persistency (Provider):
    • Adaptiver Funktionscluster für strukturierte Datenpersistierung (ara::per).
  • «aapFunctionalCluster» Cryptography (Provider):
    • Eigenschaft: daemon-based. Adaptiver Funktionscluster zur Bereitstellung kryptografischer Primitiven und Sicherheitsdienste (ara::crypto).
Schnittstellen & Realisierungen (Mittelebene)
  • «aapInternal» Raw Socket API:
    • Typ: OS-interne Low-Level-Schnittstelle.
    • Zweck: Direkter Layer-2-/Ethernet-Frame-Zugriff ohne Protokoll-Overhead zur Übertragung von PTP-/IEEE-802.1AS-Paketen sowie Abruf von Hardware-Timestamps (SO_TIMESTAMPING).
    • Realisierungsbeziehung: Wird vom Operating System über Interface-Realisierung implementiert.
  • «aapAPI, aapNativeInterface» Logger:
    • Typ: C++ Native API (ara::log).
    • Methoden:
      • + IsEnabled(): bool
      • + Log(MsgId, Params)
      • + LogDebug(): LogStream, + LogError(): LogStream, + LogFatal(): LogStream, + LogInfo(): LogStream, + LogVerbose(): LogStream, + LogWarn(): LogStream, + WithLevel(): LogStream
    • Realisierungsbeziehung: Realisiert durch «aapFunctionalCluster» Log and Trace.
  • «aapAPI, aapPortInterface» KeyValueStorage:
    • Typ: Port-basiertes C++ API (ara::per).
    • Methoden:
      • + DiscardPendingChanges(), + GetAllKeys(), + GetCurrentValueSize(), + GetValue(), + KeyExists(), + RecoverKey(), + RemoveAllKeys(), + RemoveKey(), + ResetKey(), + SetValue(), + SyncToStorage()
    • Realisierungsbeziehung: Realisiert durch «aapFunctionalCluster» Persistency.
  • «aapAPI, aapNativeInterface» CryptoStack:
    • Typ: Nativer Schnittstellen-Stack (ara::crypto).
    • Zweck: Bereitstellung von Krypto-Operationen (z. B. Signatur-/MAC-Prüfung und -Erzeugung für PTP Security TLVs nach IEEE 802.1AS).
    • Realisierungsbeziehung: Realisiert durch «aapFunctionalCluster» Cryptography.
Abhängigkeitsbeziehungen
  • Time Synchronization nutzt Raw Socket API, Logger und CryptoStack über gerichtete UML-Nutzungsabhängigkeiten («use»).
  • Der Zugriff auf KeyValueStorage erfolgt über eine als Port modellierte Nutzungsabhängigkeit («use», «aapRequiredPort»).

3. Dynamisches Verhalten & Sequenzablauf

Aus dem statischen Schnittstellenvertrag leiten sich für den Time-Sync-Daemon folgende Interaktionsphasen ab:

  1. Initialisierungs- & Bootstrapping-Phase:
    • Persistenzabruf: Abfrage bestehender Konfigurationen, initialer Offsets oder zuletzt gespeicherter Zeitstempel via KeyExists() und GetValue(). Vorab-Größenprüfung mittels GetCurrentValueSize().
    • Krypto-Initialisierung: Initialisierung von Schlüsselkontexten und Krypto-Providern über CryptoStack zur Vorbereitung abgesicherter PTP-Kommunikation.
    • Socket-Bind: Initialisierung der Ethernet-Interfaces über Raw Socket API, Binden an den PTP-Port (Ethertype 0x88F7 bzw. UDP-Ports 319/320) und Aktivierung der Hardware-RX/TX-Timestamping-Flags im Kernel.
    • Status-Logging: Ausgabe des Initialisierungsstatus via LogInfo().
  2. Zyklische Synchronisationsphase (PTP / IEEE 802.1AS & SecPTP):
    • Paketverarbeitung: Senden und Empfangen zeitkritischer Sync-, Follow_Up-, Pdelay_Req- und Pdelay_Resp-Nachrichten über die Raw Socket API.
    • Kryptografische Absicherung: Authentifizierung eingehender PTP-Nachrichten (Prüfung von MACs/Signaturen) und Signieren ausgehender Zeitnachrichten über CryptoStack.
    • Jitter-/Fehlerbehandlung: Protokollierung von Synchronisationsverlusten, Authentifizierungsfehlern oder Drift-Überschreitungen über LogWarn() bzw. LogError().
  3. Persistierungs- & Shutdown-Phase:
    • Sichern akkumulierter Werte: Aktualisierung persistenter Zeitbasen (z. B. relative Clock-Drift oder Epoch-Daten) via SetValue().
    • Flushing: Atomares Commit der geänderten Schlüssel auf den Festspeicher mittels SyncToStorage().

4. Normative Relevanz & Entwickler-Hinweise

  • OS-Privilegien & POSIX-Capabilities: Da Raw Socket API als «aapInternal» deklariert ist, erfordert der Daemon erhöhte Betriebssystem-Rechte (unter Linux/POSIX typischerweise CAP_NET_RAW für Raw Sockets und CAP_SYS_TIME für Clock-Disziplinierung via clock_adjtime/clock_settime).
  • Latenz- und Jitter-Entkopplung:
    • SyncToStorage() blockiert I/O und darf keinesfalls im zeitsynchronen Callback-Pfad der PTP-Paketverarbeitung aufgerufen werden; Persistierungsoperationen müssen asynchron oder in dedizierten Hintergrund-Threads erfolgen.
    • Kryptografische Berechnungen über CryptoStack dürfen den Hardware-Timestamping- und Sende-/Empfangspfad zeitlich nicht unzulässig verzögern.
    • Logging via LogStream in der PTP-Hotpath-Schleife ist strikt über IsEnabled() abzufragen, um Jitter durch String-Formatierung und IPC-Queues zu vermeiden.
  • Manifest-Konfiguration & Port-Modellierung:
    • Der Zugriff auf KeyValueStorage ist explizit als «aapRequiredPort» modelliert und erfordert ein entsprechendes Port-Interface-Design im Execution Manifest / Service Instance Manifest.
    • Für Logger und CryptoStack sind native C++ Bindings (ara::log, ara::crypto) im Manifest zu konfigurieren.
  • Architekturprinzip: Time Synchronization umgeht für den PTP-Transport bewusst die Service-Orientierte Kommunikation (ara::com), um Sub-Mikrosekunden-Latenz und deterministisches Hardware-Timestamping auf Schicht 2 zu gewährleisten.

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

R23-11 → R24-11 normative Änderung Vorgänger: FIG-49207b6911bb8f46
  • Komponente Cryptography («aapFunctionalCluster»): Als neuer Funktionscluster mit Eigenschaft daemon-based hinzugefügt; implementiert die Schnittstelle CryptoStack via Interface-Realisierung.
  • Schnittstelle CryptoStack («aapAPI,aapNativeInterface»): Neu hinzugefügte Schnittstelle für kryptografische Operationen.
  • Abhängigkeit CryptoStack: Neue gerichtete «use»-Abhängigkeit von Time Synchronization auf CryptoStack.
  • Schnittstelle KeyValueStorage («aapAPI,aapPortInterface»):
    • Operation + GetCurrentValueSize() neu hinzugefügt.
    • Die «use»-Abhängigkeit von Time Synchronization ist zusätzlich mit dem Stereotyp «aapRequiredPort» gekennzeichnet.
    • Namensraum-Präfix Persistency:: im Schnittstellenkopf entfernt.
  • Schnittstelle Logger («aapAPI,aapNativeInterface»):
    • Operation + IsEnabled() um Rückgabetyp : bool ergänzt.
    • Namensraum-Präfix Log and Trace:: im Schnittstellenkopf entfernt.
R24-11 → R25-11 normative Änderung Nachfolger: FIG-ef43968e88dd94c5
  • Komponente Execution Management («aapFunctionalCluster»): Neu hinzugefügter Plattform-Funktionscluster mit Eigenschaft daemon-based; implementiert die Schnittstelle ExecutionClient via Interface-Realisierung.
  • Schnittstelle ExecutionClient («aapAPI,aapNativeInterface»): Neue Schnittstelle mit den Operationen + Create() und + ReportExecutionState(ExecutionState).
  • Abhängigkeit ExecutionClient: Neue gerichtete «use»-Abhängigkeit von Time Synchronization auf ExecutionClient.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Operating | System | «aapInternal» Raw Socket API | «aapFunctionalCluster» | Time Synchronization daemon-based | «aapAPI,aapNativeInterf... | Logger | + IsEnabled(): bool + Log(MsgId, Params) + LogDebug(): LogStream + LogError(): LogStream + LogFatal(): LogStream + LogInfo(): LogStream + LogVerbose(): LogStream + LogWarn(): LogStream + WithLevel(): LogStream | «aapAPI,aapPortInterface» | KeyValueStorage | + DiscardPendingChanges() + GetAllKeys() + GetCurrentValueSize() + GetValue() + KeyExists() + RecoverKey() + RemoveAllKeys() + RemoveKey() + ResetKey() + SetValue() + SyncToStorage() | «aapFunctionalClust... | Persistency «aapFunctionalClust... | Log and Trace | «aapAPI,aapNativeInterf... | CryptoStack | «aapFunctionalClust... | Cryptography daemon-based | «use» | «use» «aapRequiredPort» | «use» «use»

Begleitender Spezifikationstext:

Specification of Time Synchronization AUTOSAR AP R24-11 Interface Functional Cluster Purpose Intrusion Detection System Manager Adaptive Intrusion Detection System Manager shall use this interface to determine timestamps of security events. Log and Trace Log and Trace shall use this interface to determine the timestamps that are associated with log messages. Raw Data Stream This interface is used to determine the current synchronized global time for IEEE1722-based communication. Update and Configuration Management Update and Configuration Management shall use this interface to get latest timestamp. SynchronizedTime BaseConsumer Vehicle Update and Configuration Management Vehicle Update and Configuration Management shall use this interface to get latest timestamp. Table 5.1: Interfaces provided to other Functional Clusters 5.2 Required Interfaces This section provides an overview of the public interfaces required by this functional cluster from other functional clusters. Operating System «aapInternal» Raw Socket API «aapFunctionalCluster» Time Synchronization daemon-based «aapAPI,aapNativeInterf... Logger + IsEnabled(): bool + Log(MsgId, Params) + LogDebug(): LogStream + LogError(): LogStream + LogFatal(): LogStream + LogInfo(): LogStream + LogVerbose(): LogStream + LogWarn(): LogStream + WithLevel(): LogStream «aapAPI,aapPortInterface» KeyValueStorage + DiscardPendingChanges() + GetAllKeys() + GetCurrentValueSize() + GetValue() + KeyExists() + RecoverKey() + RemoveAllKeys() +

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R24-11 AUTOSAR_AP_SWS_TimeSynchronization S. 14 5.2 Figure 5.2: Interfaces required by Time Synchronization from other Functional Clusters