AUTOSAR_AP_EXP_ARAComAPI
FIG-4458bf8454b62982
932 × 532 px
7 Release(s)
Figure 5.1: Auto Updating of Proxy Instance
SHA-256 Inhalts-Fingerabdruck:
4458bf8454b62982a86a765cbcb27944a693e442e3e0770dbd66e49be2e9c334
✦
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: Zeitdiskretes Phasendiagramm / Zustandssequenz (T0–T4) zur Illustration des dynamischen Lebenszyklusverhaltens einer Service-Verbindung.
- Architektur-Kontext: AUTOSAR Adaptive Platform, Funktionscluster
ara::com(Communication Management). - Funktionaler Zweck: Veranschaulichung des transparenten Wiederverbindungs- und Rekonfigurationsmechanismus (Auto-Updating) einer clientseitigen Proxy-Instanz bei temporärem Ausfall und Wiederverfügbarkeit (
OfferService) einer Service-Instanz ohne expliziten Eingriff der Applikationsschicht.
2. Komponenten, Entitäten & Schnittstellen
- Entitäten & Akteure:
ara::com App(Client): Adaptive Application (Process), die als Service-Konsument agiert und die Proxy-Instanz instanziiert hält.Proxy: Generierte typsichere C++-Proxy-Klasse (<ServiceName>Proxy), Schnittstelle der Applikation zur Service-Kommunikation.- Service Binding / Endpunkt (Farbcodierung Blau/Orange): Interne Laufzeit-Ressource des Kommunikationsstacks (z. B. SOME/IP-Endpunkt, IPC-Socket/Shared-Memory-Deskriptor), die die logische Assoziation zwischen Proxy und physischer Service-Instanz kapselt.
Service Instance(Server/Provider): Bereitstellende Server-Komponente (Skeleton), die den Service im System anbietet.
- Schnittstellen & Interaktionen:
- Methodenaufruf:
callMethod()– synchrone oder zukunftsbasierte (ara::core::Future) Methodeninvokation. - Zustandssignalisierung:
up(Service angeboten / aktiv) vs.down(Service gestoppt, abgestürzt oder Timeout bei Service Discovery). - Auto-Update-Mechanismus: Internes Event des Middleware-Laufzeitsystems zur Aktualisierung der internen Proxy-Deskriptoren auf die neu angekündigte Service-Instanz.
- Methodenaufruf:
3. Dynamisches Verhalten & Sequenzablauf
- T0 (Nominalbetrieb):
- Zustand:
Service Instancesignalisiertup. - Aktion: Applikation ruft
callMethod()über Proxy auf. - Ergebnis:
success– Transport über aktive Binding-Struktur (blau).
- Zustand:
- T1 (Verbindungsverlust / Provider-Ausfall):
- Zustand:
Service Instancewechselt aufdown(z. B. Prozessbeendigung, SOME/IPStopOfferServiceoder Link-Loss). - Proxy behält initial das bestehende (nun veraltete) Binding.
- Zustand:
- T2 (Fehlgeschlagener Aufruf im Down-Zustand):
- Aktion: Applikation setzt
callMethod()ab. - Ergebnis:
failed– Middleware detektiert fehlende Verbindung/Timeout und meldet Fehler (Exception bzw. fehlerhafterara::core::Result/ Future-State) an die Applikation.
- Aktion: Applikation setzt
- T3 (Auto-Update bei Re-Offer):
- Trigger:
Service Instancestartet neu und sendet erneutes Service-Offer (up). - Aktion: Der
ara::com-Stack führt im Hintergrund einAuto Update Proxy Instanceaus; der Proxy bindet transparent an den neuen Service-Endpunkt (orangefarbenes Binding).
- Trigger:
- T4 (Re-Synchronisation & Wiederherstellung):
- Zustand: Service ist
up, Proxy intern rekonfiguriert. - Aktion: Erneuter Aufruf von
callMethod()durch die Applikation. - Ergebnis:
success– Aufruf wird ohne erneutes manuellesFindServiceoder Re-Instanziieren des Proxys über das neue Binding erfolgreich abgewickelt.
- Zustand: Service ist
4. Normative Relevanz & Entwickler-Hinweise
- Applikationsdesign & Fehlerbehandlung:
- Fehlgeschlagene Aufrufe (
callMethod : failedin T2) müssen defensiv über Fehlercodes/Exceptions abgefangen werden; ein Fehlschlag bedeutet nicht zwangsläufig die Notwendigkeit, das Proxy-Objekt zu terminieren. - Vermeidung redundanter Re-Discovery-Logik: Die Applikation muss bei temporären Service-Ausfällen den Proxy nicht zwingend zerstören und neu über
FindServiceanlegen, da die Middleware das Re-Binding intern auflösen kann.
- Fehlgeschlagene Aufrufe (
- Zustandsbehaftung (Stateful Services):
- Das automatische Update erneuert ausschließlich die Kommunikationsstrecke. Serverseitige Session-, Authentifizierungs- oder Konfigurationszustände gehen bei einem Neustart der Service-Instanz verloren und müssen von der Applikation nach T3 reinitialisiert werden.
- Einschränkung der Relevanz & Standard-Evolution:
- Das dargestellte Auto-Update-Feature war spezifisch in frühen Adaptive-Releases (R17-03 bis R18-03) als Erklärungsmodell verankert. In späteren Releases (ab R18-10 / R19-11) wurde das explizite Find-Service- und Lifecycle-Management über
HandleTypeund Subscription-Status-Handling verbindlicher geschärft, um Race Conditions und unkontrollierte Service-Rebinds in deterministischen sicherheitskritischen Umgebungen (ASIL) zu unterbinden.
- Das dargestellte Auto-Update-Feature war spezifisch in frühen Adaptive-Releases (R17-03 bis R18-03) als Erklärungsmodell verankert. In späteren Releases (ab R18-10 / R19-11) wurde das explizite Find-Service- und Lifecycle-Management über
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.