DEENESPTFRRUARHIKOZHNL
AUTOSAR_CP_SWS_TcpIp FIG-a46d5a766cb90700 723 × 1049 px 1 Release(s)

Figure 10.28: TcpIpSocketOwnerConfig

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

  • Klassifikation: AUTOSAR BSW-Modul-Konfigurationsdiagramm (UML-Klassendiagramm auf Metamodell-Ebene / ECUC-Parameterdefinition).
  • Technischer Zweck: Definition des Konfigurations-Containers TcpIpSocketOwner zur statischen Registrierung überlagerter BSW-Module (Upper Layer) am TcpIp-Stack.
  • Funktionale Einordnung: Verankert im AUTOSAR Communication Stack (ComStack). Das Modul TcpIp nutzt diese Parameter zur Compile-Zeit (Pre-compile time, scope: ECU, alle Varianten), um Callback-Schnittstellen (Upward Callouts/Indications) generisch an standardisierte Empfänger wie SoAd (Socket Adaptor) oder herstellerspezifische CDD (Complex Device Driver) zu routen.

2. Komponenten, Entitäten & Schnittstellen

Metamodell-Container
  • TcpIpSocketOwner (EcucParamConfContainerDef):
    • Kardinalität: Multiplizität [1..\*] (mindestens ein Socket-Owner muss konfiguriert sein).
    • Enthaltene Sub-Container: Keine (No Included Containers).
Parameter & Literale (+parameter / Kompositions-Beziehungen)
  1. TcpIpSocketOwnerUpperLayerType (EcucEnumerationParamDef, Multiplizität [1..1]):
    • +literal CDD (EcucEnumerationLiteralDef): Socket-Owner ist ein Complex Device Driver mit benutzerdefinierten Funktionssignaturen.
    • +literal SOAD (EcucEnumerationLiteralDef): Standard-Upper-Layer ist der AUTOSAR Socket Adaptor.
  2. TcpIpSocketOwnerId (EcucIntegerParamDef):
    • Wertebereich: [0 .. 65535], Default: 0, Multiplizität [1..1].
    • Eigenschaft: symbolicNameValue = true (dient als Makro-Identifikator/Handle für Socket-Zuweisungen).
  3. TcpIpSocketOwnerHeaderFileName (EcucStringParamDef, Multiplizität [0..1]):
    • Inkludiert die C-Header-Datei des Socket-Owners mit den externen Funktionsdeklarationen.
  4. Callback-Funktionsnamen / Upward Interface Callouts (alle EcucStringParamDef bzw. EcucFunctionNameDef, Multiplizität jeweils [0..1]):
    • TcpIpSocketOwnerRxIndicationName: Name der Rx-Indikations-Funktion bei Dateneingang.
    • TcpIpSocketOwnerTxConfirmationName: Bestätigung für gesendete Daten / TCP-ACK.
    • TcpIpSocketOwnerCopyTxDataName: Callback zum Puffer-Abruf für Sendedaten (ComStack Zero-Copy / Direct-Copy Pattern).
    • TcpIpSocketOwnerTcpAcceptedName: Benachrichtigung über neu angenommene TCP-Verbindungen (Server-Socket Listen-State).
    • TcpIpSocketOwnerTcpConnectedName: Bestätigung des TCP-Handshakes (Client-Socket Connect-State).
    • TcpIpSocketOwnerLocalIpAddrAssignmentChgName: Signalisierung von IP-Zustandsänderungen (z. B. DHCP-Lease, Auto-IP/Link-Local, Statisch).
    • TcpIpSocketOwnerTcpIpEventName (EcucFunctionNameDef): Benachrichtigung über asynchrone Socket-Fehler, Connection-Resets (TCP_RESET), FIN/Closed-Events.

3. Dynamisches Verhalten & Sequenzablauf

Da es sich um ein Konfigurationsmetamodell handelt, bildet das Diagramm die statische Verdrahtung ab, aus der der Pre-Compile-Codegenerator Funktionszeiger-Tabellen oder direkte Aufrufe für folgende Laufzeitabläufe ableitet:

[Netzwerk / EthIf / TcpIp]             [TcpIp Core]                    [Socket Owner (SoAd / CDD)]
          │                                 │                                       │
          │── Frame Rx ────────────────────>│                                       │
          │                                 │── <RxIndicationName>() ──────────────>│
          │                                 │                                       │
          │<── TcpIp_TcpConnect() ──────────│<── Trigger Connection ────────────────│
          │── TCP SYN-ACK ─────────────────>│                                       │
          │                                 │── <TcpConnectedName>() ──────────────>│
          │                                 │                                       │
          │                                 │── <CopyTxDataName>() ────────────────>│
          │                                 │<── Data Copied ───────────────────────│
          │<── Send Packet ─────────────────│                                       │
          │── TCP ACK (Peer) ──────────────>│                                       │
          │                                 │── <TxConfirmationName>() ────────────>│
          │                                 │                                       │
          │── Reset / Link Down ───────────>│                                       │
          │                                 │── <TcpIpEventName>() ────────────────>│
  • Asynchrone Event-Verarbeitung: Verbindungsaufbau, Verbindungsabbruch und IP-Zuweisung erfolgen asynchron im Kontext der TcpIp_MainFunction(). Der Stack ruft den konfigurierten Funktionsbezeichner (<EventName>, <TcpConnectedName>, <LocalIpAddrAssignmentChgName>) des jeweiligen Owners auf.
  • Transmitter Data-Path: Sendebefehle via TcpIp_Transmit() fordern Nutzdaten asynchron über den konfigurierten Callback <CopyTxDataName> an, gefolgt von <TxConfirmationName>.

4. Normative Relevanz & Entwickler-Hinweise

  • Bindungszeitpunkt (Pre-compile time):
    • Alle Parameter werden ausschließlich zur Pre-compile-Zeit ausgewertet (Value Configuration Class: Pre-compile time = X, Link- und Post-build-Time sind nicht unterstützt).
    • Nachträgliches Ändern von Callbacks oder Hinzufügen von Socket-Ownern zur Laufzeit (Post-Build) ist architekturbedingt ausgeschlossen.
  • Code-Generierung & Header-Inklusion:
    • Wird ein Socket-Owner als CDD parametriert, muss TcpIpSocketOwnerHeaderFileName zwingend konfiguriert werden, damit der C-Compiler die Prototypen der konfigurierten Funktionsnamen auflösen kann (extern FuncName(...)).
    • Für SOAD bindet die BSW-Codegenerierung standardmäßig SoAd_Cbk.h ein; abweichende Namen sind nur zulässig, wenn der SoAd entsprechende Wrapper-APIs bereitstellt.
  • Multiplizität & Socket-Referenzierung:
    • Jede Socket-Instanz (TcpIpSocket) im Stack referenziert genau einen TcpIpSocketOwnerId.
    • Ist ein optionaler Callback (Multiplizität 0..1, z. B. TcpIpSocketOwnerTcpAcceptedName für reine UDP-Clients) nicht konfiguriert, generiert die BSW-Toolchain entweder ein Leer-Makro (NULL_PTR) oder optimiert die Verzweigung per Präprozessor (#ifdef) vollständig heraus.

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

R24-11 → R25-11 keine inhaltliche Änderung Vorgänger: FIG-5cfa8686395baeb2

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:

TcpIpSocketOwner: EcucParamConfContainerDef | lowerMultiplicity = 1 upperMultiplicity = * | TcpIpSocketOwnerUpperLayerType: | EcucEnumerationParamDef | CDD: EcucEnumerationLiteralDef | SOAD: EcucEnumerationLiteralDef | TcpIpSocketOwnerRxIndicationName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerTxConfirmationName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerTcpAcceptedName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerTcpConnectedName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerCopyTxDataName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerLocalIpAddrAssignmentChgName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerTcpIpEventName: | EcucFunctionNameDef | lowerMultiplicity = 0 upperMultiplicity = 1 | TcpIpSocketOwnerId: EcucIntegerParamDef | min = 0 max = 65535 defaultValue = 0 symbolicNameValue = true | TcpIpSocketOwnerHeaderFileName: | EcucStringParamDef | lowerMultiplicity = 0 upperMultiplicity = 1 | +parameter | +parameter | +parameter | +parameter | +parameter | +literal | +parameter | +parameter | +parameter | +parameter | +literal | +parameter

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R25-11 AUTOSAR_CP_SWS_TcpIp S. 232 10.28 Figure 10.28: TcpIpSocketOwnerConfig