当前位置: 首页 > article >正文

车载以太网之要火系列 - 番外篇4:从DoIP到SOME/IP,一个初学者的“越级碰瓷”

写在开篇今晚有点晚来不及学多少了但还得来凑点字数。DoIPUDS的35篇笔记终于边学边写搞完了。从第21篇到第35篇说实话学得并不轻松。有些地方到现在还是迷迷糊糊的——比如27服务那几级权限我写的时候觉得自己懂了过两天再看又有点懵。还有刷固件那十六步顺序到现在都没完全背下来。但不管怎么说一路火花带闪电好歹是走完了。然后我就开始琢磨——DoIP是给车看病的那车正常跑的时候呢车里那么多ECU、域控制器它们之间是怎么聊天的摄像头怎么告诉域控制器“我看到人了”座舱怎么告诉音响“放首歌”BMS怎么告诉整车“我电量不多了”这些DoIP不管。那谁管江湖上有个大名鼎鼎的协议叫SOME/IP。我没学过但听说过。就像小时候听大人们聊“降龙十八掌”知道很厉害但具体怎么打不知道。这不刚学完DoIP心里痒痒的就想碰碰这个SOME/IP。有点像练武的人刚学会了一套拳就想去挑战隔壁门派的大弟子。越级碰瓷自不量力但忍不住。一、先搞清楚SOME/IP是干啥的我翻了翻资料大概弄明白了一件事DoIP是“诊”——车坏了才用。SOME/IP是“聊”——车正常开着的时候各个模块之间互相通信。举个不太恰当的例子DoIP 你去医院看病。医生问你“哪儿不舒服”你说“头疼”医生给你开药。一问一答有来有回。SOME/IP 你身体里各个器官自己聊天。心脏跟肺说“我要血”肺说“我给你氧气”。不用你去指挥它们自己协调。黄蓉如果我笔下真有黄蓉的话肯定会说“哦DoIP是看病SOME/IP是养生”差不多就是这个意思。二、传统方式 vs SOME/IP车载通信的老祖宗是CAN总线。CAN总线的特点是广播。不管哪个节点发消息全车都能收到。不管你需不需要都得听。就像你在小区楼下喊了一嗓子“今天吃饺子”全楼的人都听见了。想听的听见了不想听的也听见了。浪费带宽还吵。SOME/IP不一样。它是面向服务的——谁需要谁调用不需要的不打扰。比如座舱域控制器想放个音乐它只需要跟音响说一声就行。BMS、VCU、ADAS这些模块根本不需要知道有人在放歌。这就叫服务调用。更厉害的是SOME/IP还支持服务发现。音响启动后会在网络上喊一嗓子“我支持放音乐服务”座舱域控制器听到了记在小本本上“哦音响会放音乐以后找它。”不用提前配IP、配端口动态发现即插即用。这点比DoIP灵活多了——DoIP都要提前约好逻辑地址SOME/IP是自动找。三、SOME/IP的四种“说话方式”我翻了翻资料SOME/IP主要有四种通信模式模式怎么玩举个栗子Request-Response你问一句它答一句座舱问“当前车速多少”VCU答“80km/h”FireForget你喊一声不管它回不回座舱喊“开窗”BCM收到就开不回话Event出事了自己往外喊BMS检测到电压异常主动报“我要炸了”Field订阅某个状态变了就通知座舱订阅“车门状态”门一开就收到通知这不就跟UDS有点像UDS是请求/响应SOME/IP是请求/响应事件订阅。但UDS是给人看病SOME/IP是给机器聊天。目标不一样手段也不一样。四、SOME/IP和DoIP到底啥关系我试着总结了一下对比维度DoIPSOME/IP全称Diagnostic over IPScalable Service-Oriented MiddlewarE over IP我的理解给车看病车里模块自己聊天啥时候用车坏了、刷固件车正常跑的时候谁说话诊断仪 ↔ ECUECU之间、域控制器之间通信模式请求/响应请求/响应 事件 订阅/发布端口1340030490常见配置底层都是UDP/TCP都是车载以太网都是UDP/TCP都是车载以太网所以它们不是谁替代谁而是分工不同DoIP负责“保健”车出问题了去修。刷固件、读故障码、清DTC。SOME/IP负责“干活”车正常开所有模块互相配合。摄像头传数据、座舱调音量、BMS汇报电量。一个管“生病”一个管“生活”。五、我为什么想碰SOME/IP学完DoIP总感觉车载以太网这块还有一大片空白。DoIP只是冰山一角而且是“应急用”的那一角。真正的车载以太网每天都在跑着大量的SOME/IP消息——座舱和音响聊天ADAS和摄像头聊天BMS和VCU聊天……这些消息长什么样怎么抓包怎么解析我不知道。但我想知道。就像练武的人学会了一套拳法总想知道下一套是什么。虽然现在的我刚摸到门离精通还差十万八千里。虽然学DoIP的时候很多地方还在迷迷糊糊。但不去碰永远不知道。六、写在最后这篇番外不算技术笔记。更像是一个初学者的一点碎碎念——DoIP刚学完还没捂热就想去碰SOME/IP。明知越级但还是忍不住。不指望一篇番外就能搞懂SOME/IP只是想给自己挖个坑先记下来“有这么一个东西”以后慢慢填。毕竟降龙十八掌也不是一天练成的。DoIP写完了SOME/IP……再说吧。打完收工886。

相关文章:

车载以太网之要火系列 - 番外篇4:从DoIP到SOME/IP,一个初学者的“越级碰瓷”

写在开篇今晚有点晚,来不及学多少了,但还得来凑点字数。DoIPUDS的35篇笔记,终于边学边写,搞完了。从第21篇到第35篇,说实话,学得并不轻松。有些地方到现在还是迷迷糊糊的——比如27服务那几级权限&#xff…...

人工智能日报。今日 AI 重要动态 · 2026.05.08

📰 今日 AI 重要动态 2026.05.08 1. 🤖 Claude 主动助手 Orbit 功能曝光 事件: Anthropic 的 Claude 主动助手功能「Orbit」本周被技术情报站 testingcatalog 从客户端代码中挖掘曝光。Orbit 不需要用户发起对话,会在后台持续运…...

ncmdumpGUI:3分钟解锁网易云音乐NCM格式的终极指南

ncmdumpGUI:3分钟解锁网易云音乐NCM格式的终极指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&#xf…...

CANN数学算子库变更日志

CHANGELOG 【免费下载链接】ops-math 本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。 项目地址: https://gitcode.com/cann/ops-math 本文档记录各版本的重要变更,版本按时间倒序排列。 v8.5.0-beta.1 发布日期:2…...

5分钟快速上手:免费开源词库转换工具完整使用教程

5分钟快速上手:免费开源词库转换工具完整使用教程 【免费下载链接】imewlconverter ”深蓝词库转换“ 一款开源免费的输入法词库转换程序 项目地址: https://gitcode.com/gh_mirrors/im/imewlconverter 深蓝词库转换器是一款功能强大的开源免费输入法词库转换…...

实用指南:Video DownloadHelper CoApp的高效配置与使用技巧

实用指南:Video DownloadHelper CoApp的高效配置与使用技巧 【免费下载链接】vdhcoapp Companion application for Video DownloadHelper browser add-on 项目地址: https://gitcode.com/gh_mirrors/vd/vdhcoapp Video DownloadHelper CoApp是一款功能强大的…...

谷歌:解耦同步提升训练韧性

📖标题:Decoupled DiLoCo for Resilient Distributed Pre-training 🌐来源:arXiv, 2604.21428v1 🛎️文章简介 🔸研究问题:如何在大规模语言模型预训练中打破严格的同步屏障,以解决因…...

AI Agent技能库标准化实践:提升开发效率与跨平台兼容性

1. 项目概述:AI Agent技能库的标准化实践 如果你和我一样,每天都在和Claude Code、Cursor这类AI编程工具打交道,那你肯定遇到过这样的场景:想让AI帮你分析一个PDF文件,或者写个SQL优化建议,结果发现每次都…...

照片去背景的方法有哪些?2026年最全工具对比指南

最近身边好多朋友问我:"怎样才能快速给照片去掉背景?"无论是做证件照、电商产品图,还是准备社交媒体素材,去背景这个需求几乎每个人都会遇到。我自己用过十来个工具,今天就把这几年的经验整理出来&#xff0…...

蜂鸟v2 E203:开源RISC-V MCU SoC架构解析与FPGA开发实战

1. 项目概述:从开源蜂鸟E203到蜂鸟v2 E203的演进如果你对RISC-V处理器设计、嵌入式系统开发,或者单纯想找一个能跑在FPGA上的、五脏俱全的开源MCU SoC来学习,那么“蜂鸟v2 E203”(Hummingbirdv2 E203)这个项目绝对值得…...

为AI编程助手注入领域知识:Kumo平台Markdown知识库集成指南

1. 项目概述:一个为LLM编码工具注入Kumo平台知识的“外挂大脑”如果你正在使用Claude Code、Cursor或者Codex这类AI编程助手来处理数据科学或机器学习项目,尤其是涉及到Kumo这个预测性机器学习平台的工作,那么你很可能遇到过这样的瓶颈&#…...

Windows 11安装完全指南:使用MediaCreationTool.bat轻松绕过硬件限制

Windows 11安装完全指南:使用MediaCreationTool.bat轻松绕过硬件限制 【免费下载链接】MediaCreationTool.bat Universal MCT wrapper script for all Windows 10/11 versions from 1507 to 21H2! 项目地址: https://gitcode.com/gh_mirrors/me/MediaCreationTool…...

Python量化投资终极指南:免费快速获取同花顺问财数据的完整解决方案

Python量化投资终极指南:免费快速获取同花顺问财数据的完整解决方案 【免费下载链接】pywencai 获取同花顺问财数据 项目地址: https://gitcode.com/gh_mirrors/py/pywencai 在量化投资的世界里,数据获取往往是最耗时耗力的环节。想象一下&#x…...

绝地求生罗技鼠标宏终极指南:三步实现智能压枪的完整教程

绝地求生罗技鼠标宏终极指南:三步实现智能压枪的完整教程 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 你是否在绝地求生&#xff…...

3分钟解锁B站宝藏:哔哩下载姬让你的视频收藏从未如此简单

3分钟解锁B站宝藏:哔哩下载姬让你的视频收藏从未如此简单 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&am…...

如何让老旧安卓电视流畅看直播?MyTV-Android的3大技术突破方案

如何让老旧安卓电视流畅看直播?MyTV-Android的3大技术突破方案 【免费下载链接】mytv-android 使用Android原生开发的视频播放软件 项目地址: https://gitcode.com/gh_mirrors/my/mytv-android 还在为家中老旧智能电视卡顿、闪退而烦恼吗?&#x…...

企业内网系统通过Taotoken统一网关安全调用外部大模型API

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 企业内网系统通过Taotoken统一网关安全调用外部大模型API 在企业级应用开发中,引入大模型能力已成为提升产品智能水平的…...

一句话搞定 PDF/Word/PPT全格式解析!AI 帮你从零搭建专属知识体系!

兄弟们,相信大家都尝试过各种各样的 Claw 了吧,OpenClaw、QClaw 等等,这些Agent 确实掀起了一股全民 AI 的热潮。 然而,我一直在思考一个问题,既然大模型精通世界上所有的知识,那么,我们人类最…...

如何快速掌握XUnity.AutoTranslator:游戏玩家的终极翻译解决方案

如何快速掌握XUnity.AutoTranslator:游戏玩家的终极翻译解决方案 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 你是否曾因为语言障碍而错过了精彩的游戏剧情?是否在面对外语游戏…...

Postman面试问题

Postman在工作中使用流程是什么样的? Postman是一款功能强大的接口测试工具 ,它可以帮助开发者和测试者快速地构建、发送、调试和管理各种类型的接口请求。Postman在工作中使用流程大致如下: 根据接口用例所属的模块或功能,新建集…...

不碰内核源码也能“改“内核?聊聊 ftrace 函数挂钩那点事儿

一、先整明白:这技术到底在干嘛? 咱们平时写的程序,调个 printf、发个网络请求,底层其实都在麻烦操作系统内核帮忙干活。内核里有一大堆"服务窗口"——也就是系统调用,比如 clone(创建进程&#…...

大模型面试题:办公 Agent 的意图识别模块核心痛点是什么?怎么解决?

在办公 Agent 里,意图识别不是简单地判断用户“想干什么”,而是要判断:用户现在想做什么、缺什么信息、能不能直接调用工具、是否存在风险、要不要追问、当前任务和历史上下文是什么关系。很多候选人回答这类问题时,只会说“用 LL…...

激光三角法测距

激光三角测距原理详述 激光三角测距法作为低成本的激光雷达设计方案,可获得高精度、高性价比的应用效果,并成为室内服务机器人导航的首选方案,本文将对激光雷达核心组件进行介绍并重点阐述基于激光三角测距法的激光雷达原理。 激光雷达四大核…...

AzurLaneAutoScript:碧蓝航线全自动管理解决方案深度解析

AzurLaneAutoScript:碧蓝航线全自动管理解决方案深度解析 【免费下载链接】AzurLaneAutoScript Azur Lane bot (CN/EN/JP/TW) 碧蓝航线脚本 | 无缝委托科研,全自动大世界 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneAutoScript 在当今…...

如何构建你自己的Switch自定义固件:Atmosphere深度定制指南

如何构建你自己的Switch自定义固件:Atmosphere深度定制指南 【免费下载链接】Atmosphere-stable 大气层整合包系统稳定版 项目地址: https://gitcode.com/gh_mirrors/at/Atmosphere-stable Atmosphere不仅是一个现成的Switch自定义固件,更是一个完…...

Qt 工程瘦身工具:批量删除 build 目录与 IDE 配置文件

目录一、创作动机二、脚本的作用三、脚本做了什么(详细说明)3.1 环境准备3.2 扫描与统计3.3 清理当前目录3.4 遍历子目录清理3.5 统计报告四、脚本代码五、逻辑流程六、使用方法七、下载一、创作动机 作为一名 Qt/QML 开发者,你一定遇到过这…...

人该怎样活着呢?版本70.9

人该怎样活着呢?版本70.9 A思考现实问题并记录自己的灵感 。【生活的指南针】 (20250212) a1如何思考? 思考相似联想因果联想灵感(20251226)相似联想:比如看到苹果想到牛顿在树下被苹果砸…...

Arm Neoverse V3AE调试寄存器DBGWCR0_EL1与DBGBVR1_EL1详解

1. Arm Neoverse V3AE调试寄存器深度解析 在Arm架构的调试系统中,调试寄存器扮演着至关重要的角色。作为一位长期从事Arm架构底层开发的工程师,我经常需要与DBGWCR0_EL1和DBGBVR1_EL1这类调试寄存器打交道。这些寄存器不仅仅是简单的控制位集合&#xff…...

Xbox成就解锁器终极指南:免费工具3步解锁全成就

Xbox成就解锁器终极指南:免费工具3步解锁全成就 【免费下载链接】Xbox-Achievement-Unlocker Achievement unlocker for xbox games (barely works but it does) 项目地址: https://gitcode.com/gh_mirrors/xb/Xbox-Achievement-Unlocker 还在为Xbox游戏中那…...

你的代码仓库变成“毛线团”了?Monorepo 用 Turborepo 拆成“乐高积木”

你维护着五六个项目,每个都单独开一个 Git 仓库。改一个公共组件,要挨个进每个项目,复制粘贴,提交,发布。一上午就没了。今天我们来学 Monorepo——用 Turborepo 把多个项目放进同一个仓库,共享代码、统一构…...