0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【科普系列】隐藏在OSI模型里的“交通指挥员”——UDS会话层

北汇信息POLELINK ? 2025-09-10 10:03 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


作者 | 客服小祥

小编 | CACTUS

背景

UDS(Unified Diagnostic Services,统一诊断服务)是汽车电子领域的关键通信协议(ISO 14229标准),它如同车辆的"神经系统",让诊断仪能够与ECU(电子控制单元)进行深度交互。在车辆全生命周期中,UDS支撑着故障排查、软件刷写、传感器校准等核心操作,其分层架构将复杂功能拆解到OSI模型的各层协作实现。


偌大的城市车流不息,面对繁杂且实时性要求高的通勤来说,红绿灯是保障通行效率的利器,在汽车诊断通信的世界里,这个角色就是UDS会话层 (ISO 14229-2标准的核心),虽然它不像红绿灯那样直观可见,却是保障整个诊断会话有序、高效的关键!


50bdaf64-8dea-11f0-8ce9-92fbcf53809c.png

UDS会话层是诊断通信的“会话管家”


位置:

它在OSI网络模型的第5层——会话层,夹在网络层(负责“数据打包运输”,如CAN, IP)和应用层(负责“发号施令”,如诊断服务指令)之间,如下图所示。

核心职责:

会话管理,就如同对话需要管理发言顺序和主题,车辆诊断时也需要管理客户端(诊断仪)和服务器(车辆ECU)之间的“对话状态”(例如切换到默认模式、编程模式或扩展模式)。

抽象无形:

和网络层协议(DoCAN、DoIP等)能在报文中直接看到地址不同,会话层是“无形的智慧规则”。我们只能通过理解它的运作方式(流程)来把握它。

50ccfc76-8dea-11f0-8ce9-92fbcf53809c.png


50dd0d96-8dea-11f0-8ce9-92fbcf53809c.png

会话层的工作机制:三大服务


会话层通过三个核心的“服务原语”与应用层和网络层沟通,相当于三个专职“联络员”:


01. S_Data.request (发送请求):

S_Mtype:消息类型(诊断或远程诊断)

S_SA:发送方地址

S_TA:接收方地址

S_TAtype:地址类型(物理寻址或功能寻址)

(可选)S_AE:扩展地址(远程诊断需要)

S_Length:数据长度

S_Data:要发送的诊断指令内容(如0x10 01 切到默认会话)

50ead1d8-8dea-11f0-8ce9-92fbcf53809c.png



02. S_Data.indication (收到通知):

S_Result:接收结果(成功S_OK、失败S_NOK)

510a76f0-8dea-11f0-8ce9-92fbcf53809c.png


03. S_Data.confirm (发送确认):

通知应用层对之前S_Data.request的回应

511ebde0-8dea-11f0-8ce9-92fbcf53809c.png


512e1a74-8dea-11f0-8ce9-92fbcf53809c.png

会话层时间参数

了解这部分之前,我们先了解一个SOM的概念:

SOM(Start Of Message) 是多帧传输的起始标识,用于处理长度超过单帧容量的诊断数据,当诊断数据包超过单帧最大长度时(如 CAN 总线单帧最大 8 字节),UDS 通过多帧传输机制分段发送数据,SOM 作为多帧传输的起始标志,承担关键功能:

数据包分包指示,向接收方声明“后续数据将分多帧传输”

长度预通知,携带完整数据包的总长度,接收方可预留缓存

传输控制同步,建立发送方和接收方的流控机制


01. 默认会话下的时间参数

会话层定义了关键的时间参数,以保障诊断通信高效且不至于无限等待:

5146b368-8dea-11f0-8ce9-92fbcf53809c.png


以下是时间参数的一些常用值和推荐值:

51544a64-8dea-11f0-8ce9-92fbcf53809c.png


关键场景图说:

P2、P6示意(有SOM,如CANTP):

51660e48-8dea-11f0-8ce9-92fbcf53809c.png

1、Client T_Data.req:客户端诊断应用层向网络层报告了一个请求消息

2、Server T_DataSOM.ind:服务器网络层向应用层上报了一个StartOfMessage请求指示消息

3、Client T_Data.con:客户端网络层向应用层上报了一个请求消息完成的确认,客户端启动P2Client计时器

4、Server T_Data.ind:请求消息由网关进行转发,其中转发到服务器损耗的时间为ΔP2Request;服务器网络层向应用层上报接收到完整的请求消息的指示,P2Server计时器启动

5、Server T_Data.ind:服务器应用层经过内部处理,准备将诊断响应发往网络层,这时应用层发送T_Data.req,同时停止P2Server计时器,由此看出,P2Server计时器是服务器接收到请求指示到准备发出响应的时间

6、Client T_DataSOM.ind:诊断响应消息由网关进行转发,其中转发到客户端损耗的时间为ΔP2Response;客户端网络层接收到服务器传来的响应消息,向应用层上报StartOfMessage指示,并停止P2Client计时器,由此看出,P2Client计时器就是客户端完成请求发送到接收到响应消息的起始或T_Data.ind的时间

7、Server T_Data.con:服务器网络层向应用层上报了一个响应消息完成的确认

8、Client T_Data.ind:客户端网络层完整接收到诊断响应消息,向应用层上报指示消息

9、ΔP6Response:从服务器准备发出响应到客户端完整接收到响应结束


P2、P6示意(无SOM,如DoIP):

5173ab98-8dea-11f0-8ce9-92fbcf53809c.png

区别点:客户端应用层不再接收到T_DataSOM.ind指示


P4Server示意:

517fcdf6-8dea-11f0-8ce9-92fbcf53809c.png

图中可以看出:

01、服务器接收到诊断请求消息indication开启P4Server计时器

02、服务器回复负响应NRC78后启动P2*Server计时器

03、服务器准备发出最终响应结束P2*Server和P4Server计时器

因此,P4Server计时器为服务器接收到请求到发送最终响应的时间,当P2Servermax=P4Server时,不允许发送NRC78的负响应


02. 非默认会话下的时间参数(S3保活机制):

51a119c0-8dea-11f0-8ce9-92fbcf53809c.png

注意:S3Server的定时器处理是基于网络层/传输层服务,因此当服务器接收到任何不支持的诊断消息时也能够重新启动S3Server定时器。


以下是一个功能寻址0x3E服务的示例

51bbc8ec-8dea-11f0-8ce9-92fbcf53809c.png



关键场景图说:

51c71062-8dea-11f0-8ce9-92fbcf53809c.png

由图可知:

1、第一步客户端请求了一个非默认会话的请求,例如:10 03或10 02

2、第二步当客户端成功发送请求消息,向应用层上报T_Data.con后,开启S3Client计时器

3、第四步中服务器响应消息成功发送,向应用层上报T_Data.con,服务器开启S3Server计时器

4、第六步中服务器接收到客户端发送来的请求消息,向应用层上报T_Data.ind,停止S3Server计时器,当服务器处理响应报文时,任何由客户端发送的功能寻址0x3E 0x80将被忽略

5、第9步中,S3Client超时,客户端发送功能寻址的0x3E 0x80

6、第10步中,客户端成功发送功能寻址的0x3E 0x80,向应用层上报T_Data.con,开启新的S3Client计时器

7、第11步中服务器成功发送响应消息,向应用层上报T_Data.con,开启新的S3Server计时器

8、第13步中,客户端S3Client超时后,再次发送功能寻址的0x3E 0x80,这时服务器S3Server计时器计时中,

因此会被客户端发送的功能寻址的0x3E 0x80重置S3Server计时器

总结

汽车诊断绝非简单的“一问一答”。UDS会话层作为OSI模型里的“第五层居民”,就像一位看不见的交通指挥员和会话管家:

管理对话状态:

让诊断仪能和ECU在正确的“频道”(会话模式)上沟通。

确保信息通达:

通过精心设计的服务接口,有序传递命令和响应。

掌控时间节奏:

用各种定时器防止通信卡死或ECU“失联”,保证流程高效可靠。

理解会话层,是真正吃透UDS协议精髓的关键一步。ISO14229-2协议文本如同藏宝图,里面还蕴含着错误处理、复杂寻址等更多秘密,等待你去发掘!下次诊断时,别忘了这台“精密对话机器”背后,还有这位无形的秩序维护者在默默工作。

参考文献:

1.Road vehicles— Unified diagnostic services (UDS) —Part 2: Session layer services

2.Road vehicles—Diagnostic communication over Controller Area Network(Do CAN) — Part 2: Transport protocol and network layer services


注:文中部分图片来自Vector

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 汽车电子
    +关注

    关注

    3041

    文章

    8424

    浏览量

    171006
  • ecu
    ecu
    +关注

    关注

    14

    文章

    946

    浏览量

    56247
  • OSI
    OSI
    +关注

    关注

    0

    文章

    86

    浏览量

    15708
  • 会话层
    +关注

    关注

    0

    文章

    2

    浏览量

    5413
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    OSI模型的简单理解

    体系结构标准定义了网络互联的七框架(物理、数据链路层、网络、传输会话层、表示和应用
    发表于 07-30 06:08

    网络协议osi的分层

    网络协议osi的分层,路由器在哪一 应用,表示会话层,传输,网络
    发表于 08-06 08:20

    计算机网络会话层和表示

    了解会话层和表示的功能和作用。会话层的主要功能是在两个节点间建立、维护和释放面向用户的连接,并对会话进行管理和控制,保证会话数据可靠传送。
    发表于 08-05 17:42 ?3次下载
    计算机网络<b class='flag-5'>会话层</b>和表示<b class='flag-5'>层</b>

    网络OSI模型视频教程2

    网络OSI模型视频2 网络通信的工作分为7,它们由低到高分别是物理(Physical Layer),数据链路层(Data Link
    发表于 09-14 10:54 ?89次下载

    网络OSI模型视频教程1

    网络OSI模型视频教程1 网络通信的工作分为7,它们由低到高分别是物理(Physical Layer),数据链路层(Data Li
    发表于 09-14 10:55 ?91次下载

    网络OSI模型视频教程3

    网络OSI模型视频教程3 网络通信的工作分为7,它们由低到高分别是物理(Physical Layer),数据链路层(Data Li
    发表于 09-14 10:55 ?110次下载

    晨控智能工业RFID应用:OSI(开放式系统互联)七网络模型详解

    不同,分工不同,人为的分层七。 每一都运行不同的协议,协议是干什么的,协议就是标准,就是规则,遵循不同的规则就是使用不同的通信协议。 实际上还有人把它划成五、四
    发表于 05-06 15:02 ?2344次阅读
    晨控智能工业RFID应用:<b class='flag-5'>OSI</b>(开放式系统互联)七<b class='flag-5'>层</b>网络<b class='flag-5'>模型</b>详解

    海康威视交警指挥调度平台帮助同事们提高工作效率

    最近,这位特殊的“交通指挥员”——交警指挥调度平台,已经顺利入职了徐州交警支队指挥中心,下面就跟着康康一起去采访下这位新同事吧!
    的头像 发表于 12-16 17:24 ?2975次阅读

    带灯泡或LED闪光灯的交通指挥棒电路

    这是交通指挥棒电路,有两种版本可供选择,即带 LED 闪光灯的交通指挥棒和带灯泡闪光灯的交通指挥棒。两个电路都由一个 6V、4.5Ah 可充电电池供电,该电池夹在操作的腰带上。
    的头像 发表于 06-24 16:48 ?4011次阅读
    带灯泡或LED闪光灯的<b class='flag-5'>交通指挥</b>棒电路

    OSI模型的应用介绍

    OSI模型从下到上分别为物理、数据链路层、网络、传输
    的头像 发表于 07-21 14:37 ?3270次阅读

    提升交通信息展现和决策能力,智慧交通指挥中心以数“智”堵

    随着城市化进程的加快,城市交通问题日益突出,交通拥堵、事故、污染等问题严重影响着城市的发展和居民的生活。为了有效地解决这些问题,提高城市交通管理水平,各地纷纷建立城市交通超级大脑——
    的头像 发表于 07-14 17:51 ?634次阅读

    OSI模型如何帮助网络通信?

    OSI(开放系统互联)七模型是计算机网络体系结构的一种描述方式,它为不同系统之间的通信提供了统一的标准。这个模型从低到高分别是:物理、数
    的头像 发表于 12-21 16:27 ?991次阅读

    osi参考模型有哪几层

    OSI参考模型是一种网络通信协议的理论框架,它将网络通信划分为七个不同的层次,以便于理解和实现网络通信的各个环节。这七个层次分别是物理、数据链路层、网络、传输
    的头像 发表于 01-11 14:58 ?2700次阅读

    OSI模型在网络故障排查中的应用

    模型在网络故障排查中的具体应用: 一、OSI模型概述 OSI
    的头像 发表于 11-24 11:01 ?1946次阅读

    OSI模型和网络安全的关系

    破坏的实践。 OSI模型概述 物理 :负责传输原始的比特流。 数据链路层 :确保物理传输的比特流无误。 网络
    的头像 发表于 11-24 11:08 ?1334次阅读