目录
1 摘要
之前专题介绍了ETH-X以及X-ETH的以太网路由(X代表CAN、LIN、Flexray)的原理以及测试点介绍。本文对以太网路由进行了补充,主要对ETH-ETH的路由一般需求进行了简单介绍。
2 Routing from Ethernet to Ethernet
2.1 在私有网络和公网之间
主要介绍车载ECU接入互联网(即专网与公网通信)的要求。为了实现此功能,网关必须支持NAT (Network Address Translator)技术;
车载以太网NAT(Network Address Translation)技术是一种在车辆网络环境中实现网络地址转换的技术,主要用于解决车辆内部网络与外部网络之间的通信问题。随着汽车智能化和网联化的发展,车载网络逐渐采用以太网技术来支持高速数据传输和复杂的通信需求。NAT技术在这种背景下发挥了重要作用。
2.1.1 车载以太网NAT技术的主要作用:
- 地址转换:
- 车载网络通常使用私有IP地址(如192.168.x.x),而外部网络(如互联网)使用公有IP地址。NAT技术可以将车载网络中的私有IP地址转换为公有IP地址,从而实现车辆与外部网络的通信。
- 安全性增强:
- NAT技术隐藏了车辆内部网络的实际IP地址,外部网络只能看到NAT设备的公有IP地址,这在一定程度上提高了网络的安全性,防止外部攻击者直接访问车辆内部设备。
- IP地址复用:
- 由于公有IP地址资源有限,NAT技术允许多个设备共享一个公有IP地址,从而节省IP地址资源。
- 简化网络配置:
- 在车载网络中,使用私有IP地址可以简化网络配置和管理,而NAT技术则确保这些私有地址可以与外部网络通信。
2.1.2 车载以太网NAT的实现方式:
- 静态NAT:
- 将车载网络中的某个私有IP地址固定映射到一个公有IP地址,适用于需要固定外部访问的场景。
- 动态NAT:
- 从公有IP地址池中动态分配一个IP地址给车载网络中的设备,适用于临时通信需求。
- PAT(Port Address Translation):
- 也称为NAT重载,允许多个私有IP地址共享一个公有IP地址,通过不同的端口号来区分不同的通信会话。
2.1.3 车载以太网NAT的应用场景:
- 车联网通信:
- 车辆通过NAT技术与云端服务器或其他车辆进行通信,支持远程诊断、OTA升级、实时导航等功能。
- 车载娱乐系统:
- 车载娱乐系统(如流媒体、在线音乐)通过NAT技术访问外部网络资源。
- 车载诊断与维护:
- 车辆诊断系统通过NAT技术与远程服务中心通信,实现远程故障诊断和维护。
- V2X通信:
- 在车与车(V2V)、车与基础设施(V2I)通信中,NAT技术可以支持不同网络之间的数据交换。
2.1.4 车载以太网NAT的挑战:
- 延迟问题:
- NAT技术可能会引入一定的网络延迟,影响实时性要求高的应用(如自动驾驶)。
- 协议兼容性:
- 某些协议(如IPsec)可能与NAT技术不兼容,需要进行额外的配置或使用NAT穿透技术(如NAT-T)。
- 复杂网络环境:
- 车载网络通常包含多个子网和不同类型的设备,NAT技术的配置和管理可能较为复杂。
2.1.5 在私有网络和公网之间路由功能的要求
- 地址转换允许私有网络中的主机透明地与外部网络中的目标通信,反之亦然;
- NAT方式按照IETF RFC 2663实现;
- NAT方式在IPv4环境下受到限制;
- 与外部网络通信的ECU首先将其以太网报文发送给网关,将目的MAC地址填入网关地址;
- 网关通过修改源地址使其有效,负责将消息路由到目标主机;
NAT方式示例:
2.2 车内通信
介绍车载ECU之间通过网关路由进行以太网通信的要求:
- 在这种情况下,只允许PDU路由;
- 当从多个以太网ECU路由到一个时,采用从X到以太网的路由策略;
- 当从一个以太网ECU路由到多个ECU时,采用以太网到X的路由策略;
PDU报头的ID字段可以构造为:
其中A表示以太网接口的节点ID, B表示端口号,C表示消息号
节点编号可参考如下表示例:
2.3 跨vlan通信
2.3.1 VLAN概述
车载以太网VLAN(Virtual Local Area Network,虚拟局域网)是一种在车载以太网中实现网络分段和流量隔离的技术。随着汽车电子架构的复杂化,车载网络需要支持多种应用和服务,例如信息娱乐系统、高级驾驶辅助系统(ADAS)、车身控制、诊断系统等。VLAN技术可以帮助在单一物理网络中创建多个逻辑网络,从而实现不同功能模块之间的隔离和优化。
- 车载以太网VLAN的主要特点
- 网络分段:通过VLAN技术,可以将车载以太网划分为多个逻辑子网,每个子网可以独立运行,互不干扰。例如,ADAS系统和信息娱乐系统可以分别位于不同的VLAN中,避免相互影响。
- 流量隔离:VLAN可以隔离不同类型的网络流量,确保关键系统(如ADAS、制动系统)的通信不受其他非关键系统(如娱乐系统)的影响,提高网络的安全性和可靠性。
- 带宽优化:通过VLAN技术,可以优化网络带宽的使用,确保高优先级的数据流(如实时传感器数据)能够优先传输,减少延迟。
- 简化网络管理:VLAN技术使得网络管理更加灵活,管理员可以通过配置VLAN来调整网络结构,而无需更改物理布线。
- 安全性增强:VLAN可以限制不同子网之间的通信,防止未经授权的访问,增强网络的安全性。
- 车载以太网VLAN的工作原理
VLAN通过在以太网帧中插入VLAN标签(VLAN Tag)来实现网络分段。VLAN标签包含VLAN ID,用于标识不同的VLAN。交换机根据VLAN ID将数据帧转发到相应的VLAN中,从而实现流量的隔离和分段。
在车载以太网中,VLAN通常基于IEEE 802.1Q标准实现。该标准定义了如何在以太网帧中插入和解析VLAN标签。车载以太网交换机、网关和ECU(电子控制单元)需要支持802.1Q标准,才能正确识别和处理VLAN标签。
2.3.2 不同VLAN间的车载以太网通信要求
-
在这种情况下,只允许PDU路由;
-
跨vlan通信的ECU首先将其以太网报文发送给网关,将目的MAC地址填入网关地址。但是,目的IP地址仍然是要通信的ECU的地址;
-
网关将根据路由表对消息进行路由。路由表可能如下表所示:
-
当网关ECU收到与自身IP地址不相同的报文,且目的IP地址与路由表中的一条匹配时,网关ECU实现不同vlan间的消息路由;
-
网关ECU需要与相互通信的ECU配置相同的vlan;
-
网关负责通过修改VLAN ID到目标VLAN的方式将消息路由到目的ECU;
源地址和目标地址汇总如下示例:
3 总结
以上是对ETH-ETH以太网路由的一般要求进行了简单介绍,一些路由策略的要求和实现可参考以往专题进行详细解读,希望能对大家理解以太网路由有所帮助!