UDS OSI Model
Overview of UDS OSI model.
UDS Standards
UDS is defined by multiple standards which are the main source of information and requirements about this protocol. Full list of standards is included in the table below:
OSI Layer |
Common |
CAN |
FlexRay |
Ethernet |
K-Line |
LIN |
---|---|---|---|---|---|---|
Layer 7 Application |
ISO 14229-1 ISO 27145-3 |
ISO 14229-3 |
ISO 14229-4 |
ISO 14229-5 |
ISO 14229-6 |
ISO 14229-7 |
Layer 6 Presentation |
ISO 27145-2 |
|||||
Layer 5 Session |
ISO 14229-2 |
|||||
Layer 4 Transport |
ISO 27145-4 |
ISO 15765-2 |
ISO 10681-2 |
ISO 13400-2 |
Not applicable |
ISO 17987-2 |
Layer 3 Network |
||||||
Layer 2 Data |
ISO 11898-1 |
ISO 17458-2 |
ISO 13400-3 |
ISO 14230-2 |
ISO 17987-3 |
|
Layer 1 Physical |
ISO 11898-2 ISO 11898-3 |
ISO 17458-4 |
ISO 14230-1 |
ISO 17987-4 |
- Where:
OSI Layer - OSI Model Layer for which standards are relevant
Common - standards mentioned in this column are always relevant for UDS communication regardless of bus used
CAN - standards which are specific for UDS on CAN implementation
FlexRay - standards which are specific for UDS on FlexRay implementation
Ethernet - standards which are specific for UDS on IP implementation
K-Line - standards which are specific for UDS on K-Line implementation
LIN - standards which are specific for UDS on LIN implementation
UDS Functionalities
An overview of features that are required to fully implement UDS protocol is presented in the table below:
OSI Layer |
Functionalities |
Implementation |
---|---|---|
Layer 7 Application |
|
|
Layer 6 Presentation |
|
To be provided with Database feature. |
Layer 5 Session |
|
To be provided with Client feature. To be provided with Server feature. |
Layer 4 Transport |
|
To be extended with support for:
|
Layer 3 Network |
||
Layer 2 Data |
|
External python packages for bus handling:
More packages handling other buses to be decided. |
Layer 1 Physical |
- Where:
OSI Layer - considered OSI Model Layer
Functionalities - functionalities required in the implementation to handle considered UDS OSI layer
Implementation - UDS package implementation that provides mentioned functionalities
Protocol Data Units
Each layer of OSI Model defines their own Protocol Data Unit (PDU). To make things simpler for the users and our developers, in the implementation we distinguish following PDUs:
Application Protocol Data Unit (A_PDU) - called diagnostic message or UDS Message in the implementation and documentation. More information about A_PDU can be found in:
Network Protocol Data Unit (N_PDU) - called UDS packet in the implementation and documentation. More information about N_PDU can be found in:
implementation -
uds.packet
Data Protocol Data Unit (D_PDU) - called frame in the implementation and documentation. We do not have any internal frames documentation. Implementation of frames is usually provided by external packages.