1、车载网络概述:车载网络发展史、车载网络拓扑结构、车载网络面临的威胁与挑战
1.1 车载网络发展史:从一根线到一张网
说起车载网络的发展,我入行那会儿,车上最复杂的网络就是一根CAN总线。那时候的ECU(电子控制单元)也就十几个,大家通过一条双绞线慢悠悠地传数据,速率最高500kbps。你想想看,连个车窗升降都得等个几百毫秒,但大家觉得「够用了」。
后来就不一样了。随着ADAS(高级驾驶辅助系统)和智能座舱的普及,车上ECU的数量从十几个飙到了上百个。我记得2018年做的一个项目,光摄像头就有6个,雷达4个,激光雷达1个。CAN总线那点带宽,连个高清视频流都传不动。于是,车载网络开始「分家」了——
- CAN FD(灵活数据速率):把CAN的8字节数据段扩展到64字节,速率也提到了8Mbps。嗯,算是给CAN续了命。
- LIN总线:专门伺候车窗、座椅、门锁这些「低端」设备,成本低,速率20kbps,够用就行。
- FlexRay:我其实只在一些高端底盘控制项目里见过它。它主打确定性,时间触发,适合线控转向、线控制动这种「命根子」功能。
- MOST(面向媒体的系统传输):这玩意儿现在基本被淘汰了。当年做车载娱乐系统时用过,光纤传输,速率150Mbps,但生态太封闭,后来被以太网干掉了。
- 车载以太网:这才是现在的「主角」。100BASE-T1、1000BASE-T1,单对非屏蔽双绞线,速率从100Mbps到1Gbps。我最近做的项目已经开始上2.5Gbps甚至10Gbps了,为了满足L3级自动驾驶的传感器数据回传。
说白了,车载网络的发展史就是一部「带宽不够用」的血泪史。从CAN到以太网,从低速到高速,从封闭到开放,每一步都是被应用需求推着走的。
1.2 车载网络拓扑结构:星型、环型还是混合型?
拓扑结构这事儿,我见过太多「理想很丰满,现实很骨感」的案例了。先说说常见的几种:
| 拓扑类型 | 典型应用 | 优点 | 缺点 |
|---|---|---|---|
| 总线型 | CAN、LIN | 布线简单,成本低 | 单点故障影响全车,带宽共享 |
| 星型 | 车载以太网(交换机) | 故障隔离好,带宽独享 | 中心节点(交换机)是单点故障 |
| 环型 | FlexRay、部分高端以太网 | 冗余性好,一条链路断了还能走另一条 | 延迟控制复杂,成本高 |
| 混合型 | 现代智能汽车 | 兼顾成本、性能和冗余 | 设计复杂,诊断困难 |
我个人习惯把现代车载网络分成三个域:
- 动力域:发动机、变速箱、制动系统。这里对实时性要求极高,我一般用CAN FD或FlexRay。
- 底盘域:转向、悬架、稳定系统。同样要求低延迟,但更看重冗余。
- 信息娱乐域:导航、语音、视频。这里带宽是王道,必须上以太网。
- ADAS域:摄像头、雷达、激光雷达。嗯,这个域最头疼,既要高带宽又要低延迟,还得考虑功能安全。
我在项目中遇到过一个问题:某款车把ADAS摄像头数据全部通过一个千兆交换机汇聚,结果交换机过热导致丢包。后来我们改成了「域控制器+直连」的混合拓扑——关键传感器直连域控制器,非关键数据走交换机。避坑指南:别把所有鸡蛋放在一个篮子里。
1.3 车载网络面临的威胁与挑战
好了,前面铺垫了这么多,终于到了咱们的核心——安全威胁。说实话,十年前我根本不会考虑「黑客攻击汽车」这种事。但现在?你想想看,一辆L3级自动驾驶汽车,有几十个ECU,几百个传感器,通过以太网、CAN、LIN、FlexRay连在一起,攻击面有多大?
常见的威胁可以分为以下几类:
1.3.1 外部接口攻击
这是最直接的入口。比如:
- OBD-II接口:物理接入,直接访问CAN总线。我曾经在测试中发现,某款车的OBD接口居然没有做任何访问控制,插上设备就能发任意CAN报文。
- 无线接口:蓝牙、Wi-Fi、4G/5G、NFC。这些是黑客的最爱。我记得有个案例,黑客通过车载Wi-Fi的漏洞,远程控制了信息娱乐系统,然后通过网关渗透到了动力域。
- USB接口:插入恶意U盘,利用系统漏洞提权。嗯,这个在PC上常见,在车上也一样。
1.3.2 内部网络攻击
一旦攻击者进入了车内网络,事情就麻烦了。因为传统车载网络(CAN、LIN)在设计时根本没考虑安全:
- 广播通信:CAN总线上的所有节点都能看到所有报文。没有加密,没有认证。我只要监听总线,就能知道刹车、油门、转向的所有状态。
- 无源认证:CAN报文没有源地址。攻击者可以伪造任何报文,比如发送一个「刹车解除」的报文。你想想看,这有多危险。
- 网关脆弱性:网关是不同域之间的桥梁。如果网关被攻破,攻击者就能从信息娱乐域跳到动力域。我曾经参与过一个项目,网关的防火墙规则写得一塌糊涂,CAN报文居然能直接穿透到以太网域。
1.3.3 协议级攻击
这里我重点说一下,因为这是咱们课程的核心:
- CAN总线攻击:DoS攻击(持续发送高优先级报文,让其他节点无法发送)、重放攻击(记录合法报文,稍后重放)、篡改攻击(修改报文内容)。
- 以太网攻击:ARP欺骗、MAC洪泛、VLAN跳跃、中间人攻击。嗯,这些在IT网络里常见,但在车载环境里,后果更严重——因为攻击可能直接影响车辆控制。
- FlexRay攻击:虽然FlexRay有时间触发机制,但攻击者仍然可以通过物理层干扰来破坏同步。
1.3.4 供应链与生命周期挑战
这一点我特别想强调。一辆车的生命周期是10-15年,而网络安全威胁是动态演变的。你今天部署的安全机制,5年后可能就被攻破了。我在项目中遇到过一个问题:某款车出厂时用的是AES-128加密,但5年后AES-128已经被认为不够安全了。怎么办?
- 密钥管理:密钥怎么分发?怎么更新?怎么撤销?
- 固件升级:OTA(空中升级)本身就是一个攻击面。如果升级通道不安全,攻击者可以直接植入恶意固件。
- 供应链安全:ECU来自不同的供应商,每个供应商的安全水平参差不齐。我曾经见过一个ECU,出厂时居然保留了调试接口,而且没有禁用。
小结
好了,这一章的内容就到这里。我们回顾一下:
- 车载网络从CAN发展到以太网,带宽越来越大,但攻击面也越来越广。
- 拓扑结构从总线型到混合型,设计时一定要考虑冗余和隔离。
- 威胁无处不在——外部接口、内部网络、协议漏洞、供应链风险。
下一章,我会深入讲解MACsec的原理和车载应用。说实话,MACsec是我个人非常喜欢的一个协议——它简单、高效、硬件支持好。但具体怎么用,有哪些坑,咱们下回分解。