SOME/IP
The data path configuration map
The path of a SOME/IP message through COM or LdCom, PduR, SOME/IP TP, SoAd, TcpIp and EthIf is configured as a chain of references. Each module references a shared global PDU (the ECU-wide name of one PDU) and the next container on the path.
One PDU, followed through the configuration
All communication modules refer to the same PDUs through a global PDU (an EcuC Pdu container: the ECU-wide name of one PDU that every module references). COM, PduR and SoAd each reference the global PDU "BrakeEvent", and that is how they agree they mean the same PDU. From SoAd on, the references lead to socket connection groups, local addresses and controllers.
COM / LdCom
One byte-array signal
In COM, the ComIPdu (COM's container for one I-PDU) holds one ComSignal of type UINT8_N (fixed length) or UINT8_DYN (up to a maximum), and ComIPduType says NORMAL or TP. In LdCom, one LdComIPdu (LdCom's container for one I-PDU) per PDU, with LDCOM_IF or LDCOM_TP.
PduR
Routing paths
In R20-11, the sources (PduRSrcPdu: a PDU PduR receives) and destinations (PduRDestPdu: a PDU PduR forwards) are listed next to the paths, inside PduRRoutingPaths; each PduRRoutingPath (one route through PduR) references one source and one destination. For a segmented message one path goes to SOME/IP TP and another from SOME/IP TP to SoAd.
SOME/IP TP
N-SDU and N-PDU
For each segmented message: the N-SDU (the whole message, before segmentation or after reassembly) and the N-PDU (the PDU that carries one segment), plus per channel the separation time between segments and the receive timeout.
SoAd
Routes, socket connections, routing groups
Each SoAdPduRoute (transmit route: a PDU from above) has SoAdPduRouteDests (one way out each: header ID, routing groups, socket connection or socket connection group). Each SoAdSocketRoute (receive route: from a socket connection up) has a header ID and SoAdSocketRouteDests (the PDU handed up, with routing groups). Then come the socket connection groups with their socket connections, and the routing groups themselves.
The map
The SOME/IP-relevant part of each module's configuration, with multiplicities. Containers are in bold. Parameters not needed for SOME/IP are left out. Three containers are new here: SoAdSocketRemoteAddress (the remote IP address and port of a socket connection, possibly a wildcard), TcpIpLocalAddr (one local IP address of the ECU) and EthIfController (an Ethernet controller as TcpIp sees it, with its optional VLAN). SoAdPduHeaderEnable (switches the SoAd PDU header on for a socket connection group) must be on for SOME/IP.
Try it
Pick a feature; the map above marks where it is configured.
Pick a feature.
Things to notice. The header ID appears twice in SoAd: for transmission in the route destination (SoAdTxPduHeaderId), for reception in the route itself (SoAdRxPduHeaderId). The routing groups are defined once in SoAd and referenced from both route kinds, and from Sd. The VLAN is not a SoAd setting at all: it comes from the EthIf controller behind the local address.
Check yourself optional
New terms in this lesson
| Term | Meaning |
|---|---|
| global PDU | The EcuC Pdu container: the ECU-wide name of one PDU that COM, PduR, SOME/IP TP and SoAd all reference |
ComIPdu / LdComIPdu | The container for one I-PDU in COM / LdCom |
PduRRoutingPath | One route through PduR, from one PduRSrcPdu to one PduRDestPdu |
| N-SDU / N-PDU | In SOME/IP TP: the whole message / the PDU that carries one segment |
SoAdPduRoute / SoAdPduRouteDest | Transmit route of a PDU / one way out, with header ID, routing groups and socket connection |
SoAdSocketRoute / SoAdSocketRouteDest | Receive route with its header ID / the PDU handed up, with routing groups |
SoAdSocketRemoteAddress | Remote IP address and port of a socket connection; may be a wildcard |
SoAdPduHeaderEnable | Switches the SoAd PDU header on for a socket connection group; needed for SOME/IP |
TcpIpLocalAddr | One local IP address of the ECU |
EthIfController | An Ethernet controller as TcpIp sees it, with its optional VLAN |
Source: chapter 10 of the R20-11 specifications of Socket Adaptor, PDU Router, COM, Large Data COM, SOME/IP TP, TCP/IP and Ethernet Interface.