UDS Protocol Stack Architecture Explained
Advertisement
This page describes the architecture of UDS protocol stack layers and the functions of each layer.
Introduction to UDS Architecture
UDS stands for Unified Diagnostic Services. This protocol was developed to give testers the ability to communicate with ECUs (Electronic Control Units) in vehicles for diagnostic purposes.
It follows a client-server architecture. A tester tool acts as the client, sending service requests to the ECU. The ECU acts as the server, responding to the tester tool according to the received service request message.
UDS supports several interface standards including FlexRay, IP, K-Line, LIN, CAN, and KWP 2000.
The figure above shows the UDS Protocol Stack Architecture for CAN bus and its comparison to the OSI model. The physical and data link layer specifications for the CAN interface are defined in ISO 11898. UDS specifications are defined in ISO 14229 for the session and application layers.
Functions and Features of the UDS Stack with CAN Interface
Here’s a breakdown of the functions of each layer in the UDS stack when used with a CAN interface:
-
Application Layer: This layer handles the functional requirements, including communication between the client and server, UDS services, positive and negative response codes, and other parameters like DTCs (Diagnostic Trouble Codes) and DIDs (Data Identifiers). It is detailed in ISO 14229-1.
-
Presentation Layer: This layer is specific to the implementation by different vehicle manufacturers and might vary across different systems.
-
Session Layer: The various services related to the session layer are defined in ISO 14229-2. It specifies the primitives for service requests, indications, confirmations, and so on.
-
Transport and Network Layer: These layers define the communication mechanism for diagnostic requests and their responses. This is defined in ISO 15765-2 and specifies the CAN frame structure, enabling multi-frame payload communication.
-
Data Link Layer: For CAN bus, this layer is specified in ISO 11898-1. It handles the framing and error detection aspects of data transmission.
-
Physical Layer: For CAN bus, this layer is specified in ISO 11898-2. It defines the physical characteristics of the CAN bus, such as voltage levels and timing.
-
OSI Stack Layers: For more detailed information about the OSI model, refer to articles specifically about OSI stack layers and their functions.