AUTOSAR_AP_EXP_PlatformDesign
FIG-dad03df66b1688f9
819 × 596 px
1 Release(s)
Figure 23.1: Architecture of Remote Persistency
SHA-256 Inhalts-Fingerabdruck:
dad03df66b1688f9a090287984c441fc28d68abcd0829912fb12cb6bc3cbd26b
✦
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 Verteilungsdiagramm (Deployment Diagram) mit Hardware-Knoten («device») und geschachtelten Software-Komponenten/Subsystemen.
- Funktionale Einordnung: AUTOSAR Adaptive Platform (Release R25-11), Functional Cluster Persistency (
ara::per) erweitert um das Konzept der Remote Persistency. - Technischer Zweck: Darstellung der Entkopplung und standortunabhängigen Bereitstellung von persistenten Speichern (Key-Value Storages). Das Diagramm illustriert, wie persistente Speicherbereiche entweder exklusiv lokal (Storage A durch App 1) oder knotenübergreifend geteilt (Storage B durch lokale App 1 & App 3 sowie remote App 2 auf ECU 2) über einen Vermittlungsdienst (Remote Persistency) adressiert werden.
2. Komponenten, Entitäten & Schnittstellen
Hardware-Knoten («device»)
ECU 1: Primäres Steuergerät / Host-Knoten, auf dem der physische persistente Speicher und der Server-Stack der Remote Persistency angesiedelt sind.ECU 2: Satelliten-/Client-Steuergerät ohne lokalen Host-Dienst für Storage B.
Komponenten & Funktionscluster
App 1,App 3(auf ECU 1): Lokale Adaptive Applications.App 2(auf ECU 2): Entfernte Adaptive Application.Remote Persistency: Gateway-/Server-Komponente auf ECU 1, die Anfragen auf persistente Ressourcen kapselt, vermittelt und netzwerkweit transparent macht.Persistency(ara::per): Standardisierter AUTOSAR Adaptive Functional Cluster zur Verwaltung nicht-flüchtiger Speicherzugriffe.Key-Value Storage A&Key-Value Storage B: Logische Speicherinstanzen (KVS-Artefakte) innerhalb vonPersistency.
Ports & Schnittstellenbeziehungen
- Interface
A:- Provider:
Remote Persistency(LollipopA), delegiert anKey-Value Storage A. - Consumer:
App 1über Required Interface (SocketA). - Kardinalität/Bindung: 1:1, exklusiver lokaler Zugriff.
- Provider:
- Interface
B:- Provider:
Remote Persistency(LollipopB), delegiert anKey-Value Storage B. - Consumer:
App 1(ECU 1, SocketB) via logischem Zugriffspfad (gestrichelte Abhängigkeit).App 3(ECU 1, SocketB) via lokalem IPC/Zugriffspfad.App 2(ECU 2, SocketB) via netzwerkübergreifender RPC/Transport-Verbindung.
- Kardinalität/Bindung: n:1 (Multi-Client-Access auf dieselbe Speicherinstanz).
- Provider:
3. Dynamisches Verhalten & Interaktionspfade
- Lokaler Pfad (Synchron/Blockierend oder Asynchron via
ara::core::Future):App 1greift direkt über Interface A auf Storage A zu; Latenz entspricht dem lokalen Flash/NVRAM-Treiberstack (POSIX-Dateisystem / eMMC / UFS).
- Geteilter lokaler Pfad:
App 1undApp 3greifen nebenläufig über Interface B auf Storage B zu. DieRemote Persistency-Schicht bzw.ara::permuss lokalen Locking-, Konsistenz- und Transaktionsmechanismen (Read/Write-Locks, atomare KVS-Updates) bereitstellen.
- Remote-/Netzwerkpfad (Asynchroner RPC):
App 2(ECU 2) initiiert Read-/Write-/Sync-Operationen auf Storage B über Interface B.- Transport & Vermittlung: Der Aufruf wird serialisiert und über einen Kommunikationsmechanismus (z. B.
ara::comvia SOME/IP oder IPC) an dieRemote Persistency-Instanz auf ECU 1 übermittelt. - Fehlerbehandlung: Zusätzliche Fehlerszenarien gegenüber lokalem
ara::per(Netzwerk-Timeouts, Kommunikationsabbruch,ara::core::ErrorCodefür Remoting-Fehler).
4. Normative Relevanz & Entwickler-Hinweise
- API-Transparenz:
- Für
App 1,App 2undApp 3ist die Schnittstelle (KeyValueStorage) funktional identisch konzipiert (ara::per::OpenKeyValueStorage). Die Lokalisierung (lokal vs. remote) wird primär über das ARXML-Deployment-Modell und Manifeste (PersistencyPortPrototypeMapping,PersistencyDeployment) konfiguriert.
- Für
- Nebenläufigkeit & Datenkonsistenz:
- Entwickler müssen bei geteilten Speichern (Storage B) Race Conditions berücksichtigen: Parallele Schreibzugriffe von
App 2(remote) undApp 3(lokal) erfordern serverseitige Serialisierung (SyncKeyValues()) oder definierte Kollisionsauflösung.
- Entwickler müssen bei geteilten Speichern (Storage B) Race Conditions berücksichtigen: Parallele Schreibzugriffe von
- Echtzeit- & Performance-Restriktionen:
- Zugriffe über ECU-Grenzen (
App 2→ Storage B) sind nicht echtzeitfähig (Non-Deterministic Latency). Zeitkritische Daten dürfen nicht in Remote-Storages abgelegt werden.
- Zugriffe über ECU-Grenzen (
- Sicherheit & Zugriffsschutz (Security):
- Da Interface B ECU-Grenzen überschreitet, müssen IAM-Policies (Identity and Access Management) und Authentifizierung/Verschlüsselung (z. B. SecOC, TLS) auf Transportebene für den
Remote Persistency-Endpunkt konfiguriert sein, um unautorisierte Manipulationen an Storage B zu unterbinden.
- Da Interface B ECU-Grenzen überschreitet, müssen IAM-Policies (Identity and Access Management) und Authentifizierung/Verschlüsselung (z. B. SecOC, TLS) auf Transportebene für den
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.