DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_SAEJ1939TransportLayer FIG-49f66202298a5bb6 894 × 852 px 1 Release(s)

Figure 9: 7: Retry Handling

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

UML-Sequenzdiagramm zur Spezifikation des AUTOSAR Classic Platform Transportprotokolls nach SAE J1939 (J1939Tp). Das Diagramm illustriert das Zusammenspiel zwischen dem PDU-Router (PduR) und dem J1939Tp-Modul auf Sender- und Empfängerseite während einer verbindungsorientierten Datenübertragung mittels Connection Management (BAM/CM) unter Berücksichtigung von Übertragungsfehlern und Wiederholungsmechanismen (Retry Handling).

2. Komponenten, Entitäten & Schnittstellen

Beteiligte Komponenten (als «module» instanziiert bzw. adressiert):

  • PduR (Senderseite, Caller)
  • J1939Tp (Senderseite, Transport Layer Modul)
  • :J1939Tp (Empfängerseite, korrespondierender Transport Layer Endpunkt)
  • :PduR (Empfängerseite, Callee / Data Sink)

Schnittstellen und Nachrichten:

  • Steuer- und Daten-APIs zwischen PduR und J1939Tp: J1939Tp_Transmit(), PduR_J1939TpStartOfReception(), PduR_J1939TpCopyTxData(), PduR_J1939TpCopyRxData(), PduR_J1939TpRxIndication(), PduR_J1939TpTxConfirmation()
  • SAE J1939 Protokollnachrichten (CAN-Bus-Ebene): TP.CM_RTS(), TP.CM_CTS(), TP.DT(), TP.EOMACK()
  • Zustandsvariablen / interne Parameter: TpDataState (TP_DATACONF, TP_CONFPENDING, TP_DATARETRY), TxTpDataCnt

3. Dynamisches Verhalten & Sequenzablauf

  1. Verbindungsaufbau:
    • PduR initiiert die Übertragung über J1939Tp_Transmit().
    • Sender-J1939Tp sendet die Verbindungsanforderung TP.CM_RTS() an :J1939Tp.
    • Empfänger meldet den Beginn über PduR_J1939TpStartOfReception() an :PduR.
  2. Blockübertragung (loop for Each Block):
    • Der Empfänger antwortet mit TP.CM_CTS() zur Freigabe eines Übertragungsblocks.
    • Paketübertragung (loop for Each Packet):
      • Sender fragt Nutzdaten über PduR_J1939TpCopyTxData() an. Dabei wird TpDataState = TP_DATACONF für das erste Paket des Blocks bzw. TP_CONFPENDING für Folgepakete gesetzt.
      • Sender übermittelt das Datenpaket via TP.DT().
      • Verzweigung Fehlerfall (alt TP.DT lost):
        • [NO]: Paket kommt fehlerfrei an; Empfänger ruft PduR_J1939TpCopyRxData() auf.
        • [YES]: Paket geht verloren; Empfänger sendet erneutes TP.CM_CTS() (Anforderung ab Fehlpaket/Blockstart, Notiz: „Next Packet set to first Packet of Block“). Sender fordert über PduR_J1939TpCopyTxData() mit TpDataState = TP_DATARETRY und TxTpDataCnt = Offset in bytes to start of Block erneut Daten ab, sendet TP.DT() erneut und Empfänger reicht die Daten mittels PduR_J1939TpCopyRxData() weiter.
  3. Übertragungsabschluss:
    • Nach vollständigem Empfang quittiert :J1939Tp mit TP.EOMACK() an J1939Tp und signalisiert den Abschluss über PduR_J1939TpRxIndication() an :PduR.
    • Sender-J1939Tp bestätigt den Gesamtabschluss an PduR mittels PduR_J1939TpTxConfirmation().

4. Normative Relevanz & Entwickler-Hinweise

Das Diagramm beschreibt das normative Retry-Verhalten für J1939Tp bei Paketverlust während blockweiser TP.DT-Übertragung. Implementierer müssen sicherstellen:

  • Der Sender muss bei Retry (TpDataState = TP_DATARETRY) über TxTpDataCnt den Pufferzeiger im oberen Layer (PduR) exakt auf den Byte-Offset des Blockanfangs zurücksetzen können (Pufferverwaltung muss Rückspulen/Rewind unterstützen).
  • Der Empfänger detektiert fehlende oder unvollständige Pakete innerhalb eines Blocks und steuert die Wiederholung über ein erneutes CTS mit dem entsprechenden Sequenznummernbezug aus.
  • Quittierungszustände (TP_DATACONF vs. TP_CONFPENDING) definieren, ab wann vorherige Blockdaten durch die PDU-Router-Pufferverwaltung freigegeben werden dürfen.

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

R4.1.3 → R4.2.2 keine inhaltliche Änderung Nachfolger: FIG-d5705d4016da7b3c

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«module» | :PduR | «module» | J1939Tp | «module» | PduR | «module» | :J1939Tp | loop for Each Block | loop for Each Packet | alt TP.DT lost | [NO] | [YES] | TpDataState = { TP_DATACONF for first Packet of Block \ TP_CONFPENDING for following Packets | Next Packet set to first Packet of Block | TpDataState = TP_DATARETRY TxTpDataCnt = Offset in bytes to start of Block | J1939Tp_Transmit() | TP.CM_RTS() | PduR_J1939TpStartOfReception() | TP.CM_CTS() | PduR_J1939TpCopyTxData() | TP.DT() | PduR_J1939TpCopyRxData() | TP.CM_CTS() | PduR_J1939TpCopyTxData() | TP.DT() | PduR_J1939TpCopyRxData() | PduR_J1939TpRxIndication() TP.EOMACK() PduR_J1939TpTxConfirmation()

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R4.1.3 AUTOSAR_SWS_SAEJ1939TransportLayer S. 57 9 Figure 9: 7: Retry Handling