DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_CommunicationManagement FIG-7e3ae73937dff268 917 × 984 px 1 Release(s)

Figure 7.7: Interaction of components during E2E protection of the Method request at the client side

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

  • Diagrammtyp: UML-Sequenzdiagramm (Interaktionsdiagramm).
  • Architektur-Kontext: AUTOSAR Adaptive Platform (AP, Release R20-11), Spezifikation AUTOSAR_SWS_CommunicationManagement ([SWS_CM_90458]).
  • Funktionale Einordnung: Detaillierung des clientseitigen Methodenaufrufs (Remote Procedure Call, RPC) über die serviceorientierte Middleware ara::com. Es definiert die normative Verarbeitungs- und Kapselungsreihenfolge zur funktionalen Sicherheit (End-to-End / E2E-Protection, typischerweise gem. SOME/IP-Transformator- bzw. E2E-Profilspezifikation) vor der Übergabe an den Netzwerk-Stack.

2. Komponenten, Entitäten & Schnittstellen

Akteure / Lifelines
  • Client application: Adaptive Application (Software Component als Service Consumer).
  • ara::com: Adaptive Platform Kommunikations-Middleware (konkret: instanziierte generierte Proxy-Methodenklasse).
  • Transmission: Netzwerk- und Protokoll-Bindungsschicht (z. B. SOME/IP-Binding, Socket-Layer/IPC).
Datenstrukturen & Parameter
  • Methodenargumente: arg1, ..., argN (In- und Inout-Parameter der Methodensignatur).
  • serializedData: Bytestrom/Payload-Array im Speicher.
  • E2E-Protected Header: SOME/IP-Headerfelder, die in die E2E-Prüfsummenberechnung einfließen (Client ID, Session ID, Protocol Version, Interface Version, Message Type, Return Code).
  • E2E-Header: E2E-Prüfdaten gemäß zugewiesenem E2E-Profil (enthält u. a. CRC/Checksumme und Sequence Counter).
  • Non-Protected Header: Routing-/Transport-Headerfelder, die außerhalb der E2E-Prüfsumme liegen (Service ID, Method ID, Length).
  • E2E-Metadaten: dataID (eindeutige Daten-ID zur Maskierung), sourceID, messageType, messageResult.
  • Return-Typ: ara::core::Future (Template-Instanz für asynchrone Rückgabewerte / Exceptions).
Schnittstellen & Aufrufe
  • Applikationsgrenze: proxyMethod.<method name>(arg1, ..., argN) : ara::core::Future (C++ API-Aufruf auf generiertem Proxy-Objekt).
  • Interne ara::com-Subroutinen:
    • Serialize(...)
    • AddE2EProtectedHeader(...)
    • E2E_protect(...)
    • AddNonProtectedHeader(...)
    • store message counter
  • Transportschnittstelle: SendMessage(serializedData) (Übergabe an den Platform-Transportstack).

3. Dynamisches Verhalten & Sequenzablauf

  1. Trigger & API-Einsprung: Die Client application stößt den RPC synchron an: Aufruf von proxyMethod.<method name>(arg1, ..., argN). (Hinweis: Der Kommentarblock im Diagramm spricht fälschlich von „skeleton method class“; architektonisch handelt es sich auf Client-Seite zwingend um die generierte Proxy-Klasse).
  2. Payload-Serialisierung: ara::com transformiert die Argumente (arg1, ..., argN) in eine flache Byte-Repräsentation (Serialize(...) : serializedData).
  3. Erzeugung des geschützten Headers: AddE2EProtectedHeader(serializedData) fügt die invarianten Header-Informationen (Client-ID, Session-ID, Versionen, Message-Typ) ein.
  4. E2E-Prüfdatenberechnung: E2E_protect(...) generiert die E2E-Signatur (CRC und Sequence Counter) über dataID, sourceID, messageType, messageResult und serializedData und bettet den E2E-Header ein.
  5. Erzeugung des ungeschützten Headers: AddNonProtectedHeader(serializedData) komplettiert das Gesamtpaket um Routing-relevante Attribute (Service ID, Method ID, Gesamtlänge Length).
  6. Zustandsaktualisierung: store message counter: Der interne E2E-Zähler wird für die nächste Sequenzzustandsprüfung persistent inkrementiert.
  7. Netzwerkübergabe: SendMessage(serializedData) übergibt die finale PDU an die Transmission-Schicht.
  8. Rückkehrpfad (asynchron): Transmission bestätigt die Annahme des Puffers an ara::com; ara::com gibt die Kontrolle unmittelbar an die Client application zurück, indem das ara::core::Future-Objekt ausgeliefert wird. Die spätere Antwortübertragung (Response) des Servers erfolgt entkoppelt.

4. Normative Relevanz & Entwickler-Hinweise

  • PDU-Assemblierungsreihenfolge (Stack-Entwickler): Die Sequenz erzwingt eine dreigeteilte Paketkonstruktion:
    1. Payload,
    2. E2E-geschützter SOME/IP-Header-Teil,
    3. E2E-Header-Injektion via E2E-Bibliothek,
    4. Ungeschützter SOME/IP-Header-Teil (Bytes 0–7: Service ID, Method ID, Length). Das Length-Feld kann erst nach der E2E-Kapselung berechnet und geschrieben werden, da der E2E-Header die Gesamtnutzlast vergrößert.
  • Zustandsverwaltung / Thread-Sicherheit: Der Schritt store message counter erfordert ein thread-sicheres Management des Sequence Counters pro Proxy-Instanz/Methoden-Kanal, um E2E-Zählerüberläufe und Desynchronisation bei parallelen Aufrufen zu verhindern.
  • Applikations-API & Asynchronität (Applikations-Entwickler): Der Aufruf blockiert nicht auf die Netzwerkantwort des Servers, sondern lediglich für die Dauer der lokalen Serialisierung, Absicherung und Pufferübergabe. Das erhaltene ara::core::Future kapselt das spätere Methoden-Ergebnis oder aufgetretene Middleware-/E2E-Fehler.
  • Spezifikationskorrektur: Die Textannotation „calls the dedicated generated skeleton method class“ im AUTOSAR-Diagramm ist ein redaktioneller Fehler der Spezifikation (Skeleton = Server/Service Provider; Proxy = Client/Service Consumer). Im Implementierungscode gilt verbindlich das Proxy-Muster.

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

R20-11 → R21-11 keine inhaltliche Änderung Nachfolger: FIG-1468506c4b30f354

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Erkannte Spezifikationsbelege & Anforderungen auf dieser Seite

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Client application ara::com Transmission | Creation of the header that is protected by E2E (Client ID, Session ID, Protocol Version, Interface Version, Message Type and Return Code). | Serialization of the argument list (payload) to an array. | Client application calls the dedicated generated skeleton method class to trigger the transmission. | The core part, doing the E2E logic including creation of E2E header. | Creation of further header that is not protected by E2E (Service ID, Method ID and Length). | Delivery of the entire message to the transmission layer. | E2E_protect(dataID, sourceID, messageType, messageResult, serializedData) | SendMessage(serializedData) | AddNonProtectedHeader (serializedData) | Serialize(arg1,.. ,argN): serializedData | proxyMethod.<method name> (arg1, ...,argN): ara::core::Future | store message counter | AddE2EProtectedHeader (serializedData)

Begleitender Spezifikationstext:

Specification of Communication Management AUTOSAR AP R20-11 Figure 7.7 shows an overview of the interaction of components involved during the E2E protection of the Method request at the client side. Client application ara::com Transmission Creation of the header that is protected by E2E (Client ID, Session ID, Protocol Version, Interface Version, Message Type and Return Code). Serialization of the argument list (payload) to an array. Client application calls the dedicated generated skeleton method class to trigger the transmission. The core part, doing the E2E logic including creation of E2E header. Creation of further header that is not protected by E2E (Service ID, Method ID and Length). Delivery of the entire message to the transmission layer. E2E_protect(dataID, sourceID, messageType, messageResult, serializedData) SendMessage(serializedData) AddNonProtectedHeader (serializedData) Serialize(arg1,.. ,argN): serializedData proxyMethod.<method name> (arg1, ...,argN): ara::core::Future store message counter AddE2EProtectedHeader (serializedData) Figure 7.7: Interaction of components during E2E protection of the Method request at the client side 7.3.2.1 Serializing the payload [SWS_CM_90458]{DRAFT} ⌈For E2E-protected Method requests, operator() shall serialize the Method’s in and inout arguments and potentially add a proto- 57 of 451 Document ID 717: AUTOSAR_SWS_CommunicationManagement

Vorkommen in AUTOSAR-Releases (2)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R20-11 AUTOSAR_SWS_CommunicationManagement S. 57 7.7 Figure 7.7: Interaction of components during E2E protection of the Method request at the client side
R20-11 AUTOSAR_SWS_CommunicationManagement S. 57 7.7 Figure 7.7: Interaction of components during E2E protection of the Method request at the client side