Search code examples
ethernetnetwork-protocolsautosar

is DoIP mandatory to use UDS over Ethernet?


Is DoIP mandatory to use UDS over Ethernet for ECU Flash Programming for example or it can be done without DoIp

What's the main purpose of DoIp if the UDS can be used without it ? is it used mainly for rooting purpose by Gateway?


Solution

  • DoIP (ISO 13400-2) is the de-facto standard Transport Layer for UDS on Ethernet (IEEE 802.3). In theory another Transport Layer which supports Ethernet as underlying Physical Layer would be possible to define, but this would be against standardization and won't be compatible anymore to off-the-shelf software.

    UDS defines the Application Layer, but you will need also a Transport Layer - this can be:

    • ISO-TP (ISO 15765-2) in case of CAN (UDS on CAN; ISO 14229-3)
    • DoIP (ISO 13400-2) in case of Ethernet (UDS on IP; ISO 14229-5)

    Using "only UDS" without a Transport Layer is not possible.

    The main purpose of DoIP is:

    • vehicle network integration (IP address assignment)
    • vehicle announcement and vehicle discovery
    • vehicle basic status information retrieval (e.g. diagnostic power mode)
    • connection establishment (e.g. concurrent communication attempts), connection maintenance and vehicle gateway control
    • data routing to and from the vehicle's sub-components
    • error handling (e.g. physical network disconnect)

    ISO 13400-2:2012 Road vehicles - Diagnostic communication over Internet Protocol (DoIP) -- Part 2: Transport protocol and network layer services