汽车中央网关作为车内与车外的沟通桥梁,一般会有以下几个功能:
1. 协议转换
汽车主要存在以下几种通信,其速度和应用范围如下图所示:
汽车通信存在多个设备之间的信息共享和数据交换,由于各接口协议不同,速率不同,需要网关充当“翻译”的角色,如
1. CAN 与 LIN 的数据交换
2. CAN 与车载以太网的数据交换
3. LIN 与车载以太网的数据交换
2. 数据路由
网关需要将 CAN、LIN、Ethernet 等网络数据在不同的网络中进行路由,其路由的方式主要有三种:
① 信号路由:将从源网段接收到报文中的信号重新打包,并在目标网段上按照定义的方式发送出来
② 报文路由:从源网段接收到报文后转发到目标网段。报文路由又分为事件型和周期型
③ TP 路由 :带有传输协议报文的路由称为 TP 路由。TP 路由又分带有协议转换和不带协议转换的
信号路由 报文路由 TP 路由
3. 路由诊断
汽车路由诊断基于 UDS (Unified Diagnostic Services,统一的诊断服务)实现,主要目的是为了能够快速准确判断车辆或者某个控制器的故障以及故障原因,UDS 一般存在以下两个分类:
4. 防火墙
防火墙功能主要用于数据量庞大、情况复杂的网络场景,如车载以太网通信。此外,防火墙将基于不同的规则作“白名单”过滤。
规则例如有: ① 检查 MAC 帧中的虚拟局域网标签(VLAN TAG)是否与整车通讯数据库定义的一致;
② IP 头中的 IP 地址类型。车载以太网一般使用 IPv4 或者 IPv6 的其中一种,按照定义需要检查 IP 地址类型和长度。
③ TCP 链接的状态跟踪。例如 TCP 报文类型应该满足三次握手或者四次挥手的处理时序。
④ 按照整车通讯数据库限制通讯的 TCP 或者 UDP 端口(Port)。
⑤ 对 DoIP 等报文类型检查其合法性,例如 DoIP 协议版本、来源及目的地址等
⑥ Etc ……
防火墙会根据上述的规则做一些相应的功能需求,如:
① 过滤功能:基于上面讨论的规则,防火墙需要拦截非法的数据,避免其进入其他安全区域。
② 转发功能:如果数据满足规则要求,属于白名单以内,则防火墙应该放行相应的数据,确保其到达接收方。
③ 记录功能:防火墙的相关数据,例如拦截数据流量、故障状态和规则数量等,需要存储在相应的安全区域。
5. 入侵检测
IDS(Intrusion-Detection System,入侵检测系统)部署在车载网络流量集中的中央网关上,通过对车载网络报文的实时检测,能够有效识别异常报文和冗余报文,从而对车主和整车厂进行实时预警。
· IDS 可以根据其作用域划分为不同的类别:
① 基于主机的 IDS:监视系统内部活动,比如CPU、内存占用率,系统调用顺序
② 基于网络的 IDS:通过观察网络流量来检测异常行为和异常数据
③ 混合 IDS:基于主机和网络的 IDS 混合,在联网汽车的情况下更有利
· 在识别异常行为上,IDS 的实现技术也有不同:
① 基于签名的检测:通过数据库匹配来处理已知的威胁
② 基于行为的检测:通过大数据驱动,机器学习来处理已知或未知的威胁
6. 消息镜像
镜像可以在不影响设备对报文进行正常处理的情况下,将镜像端口的报文复制一份到观察端口。主要用于状态检测和故障定位。
其原理过程如下图所示:PC 通过观察端口接入,通过诊断指令打开能使端口镜像功能抓取 ECU1→ECU2 的通信报文,进行分析和解决问题。
① 镜像端口:原始报文经过的接口
② 观察端口:连接监控设备的接口,车上一般指 OBD 口
7. 网络管理
网络管理的主要作用可以总结为以下两点:
① 工作状态协同:在任意多 ECU 节点网络工作时,对同一网络 ECU 的通信状态做统一的管理,保证各个 ECU 节点可以在条件满足的时候进入低功耗模式
② 信息交互协同:可以根据网络管理报文状态判定特定 ECU 的运行状态,从而根据需求定义处理相应信息
网络管理的分类:
① 直接的网络管理:使用专用的 CAN 报文做网络状态管理,通过网络上是否有专用的报文及报文的值来做整个网络的协同
② 间接的网络管理:不设定专用的 CAN 报文而是通过 ECU 节点发送的应用报文的状态做网络协同
8. 密钥管理
密钥管理是指一套规则和方法,用于生成、存储、分发和维护密钥。在汽车信息安全中,网关通过密钥管理确保车辆能够安全地与周围设备进行通信,如车主、其他车辆、基础设施和传感器等。
有效的密钥管理可以防止恶意攻击者通过拦截或篡改信息来进行身份欺骗或信息泄露。
密钥管理的主要功能:① 预先建立:在车辆生产过程中,需要预先生成一组用于通信的密钥。
② 存储安全:密钥需要在 ECU 或 TCU 等控制单元中以加密的方式进行存储,以防止攻击者通过物理或远程方式获取密钥。
③ 分发控制:车辆与车辆之间、车辆与基础设施之间的密钥分发需要受到严格控制。
④ 定期更新:为了保持密钥的安全性,需要及时进行密钥的更新操作。
⑤ 撤销和替换:当密钥泄露或被攻击者获取时,需要立即进行密钥的撤销和替换操作。
密钥工作流程图(源自互联网)
9. OTA 升级
汽车厂商通过 OTA (Over-The-Air Technology, 空中下载技术)可以将更新的软件、固件、配置等程序文件从云端传输到车辆中心网关,然后再通过汽车网关进行信息的分发,对车辆的电子控制单元(ECU)进行升级、修复和优化。
根据升级对象不同,OTA 又分为以下两种方式: