汽车以太网端到端连接设计&面向服务的架构

1. 面向服务的架构 - SOA

1.1 背景

1)汽车网络创新:汽车以太网&IP

—— 更快&单播/多播/广播支持

—— 逻辑&动态配置

2)系统/软件领域的创新:面向服务的架构(SOA)

—— 服务:可重用,可远程访问,可独立维护

—— 应用程序可以使用服务,而不管服务位置在哪里

—— 通过运行在汽车以太网&IP上部的SOA中间件提供的服务

汽车以太网端到端连接设计&面向服务的架构

                                                        图1. 面向服务的架构

 

1.2 受益点

标准接口&位置透明度:

—— 降低制造&测试成本

—— 缩短车辆开发&互联车辆的服务时间

—— 有效处理模型/选项—— 可扩展性

汽车以太网端到端连接设计&面向服务的架构

                                                       图2. 两种形式对比

 

2 . 端到端面向服务的架构

2.1 面临的挑战与解决方法

挑战

1)传统车内网络(IVN)

—— 传统车内网络(例如CAN)将与以太网至少要共存一段时间

—— SOA不能直接应用到这些传统的车内网络上

2)需要与外部设备进行服务级别的互操作

—— 与内部网络(IVN)不同的外部网络特性

—— 更重要的安全问题

3)需要有效处理服务相关的信息

—— 频繁的添加和更新

—— 应该可以从许多相关方获得

4)从分布式系统的本质看SOA的安全性及其他问题

—— 应该容易找到服务,但只能由允许的ECU来找到

—— 服务应该易于访问,但只能由授权的服务使用者访问

—— 可能会出现互操作性和资源问题

对应的解决方法

1)传统车内网络(IVN):

→ 传统IVN的信息/功能通过SOA适配器转换为“服务”

2)需要与外部设备进行服务级别的互操作

→ 通过SOA网关实现服务级别的透明度

3)从分布式系统的本质看SOA的安全性及其他问题

→ 使用SD代理的集中式服务发现(SD)架构

→ 可通过服务路由器访问安全性或资源关键型服务

注:SD- Service Discovery

2.2 整体架构

1)端到端的面向服务的架构

—— 扩展的服务级别透明度和集成的服务设计

汽车以太网端到端连接设计&面向服务的架构

                                                          图3. 端到端服务级别的透明度

2.3 SOA适配器

1)传统的车内网络

—— 许多ECU仍基于传统的IVN(如CAN)工作

—— 大部分车辆信息/功能来自传统IVN

—— 这些应可供基于以太网的ECU上的新应用程序访问

2)SOA适配器

—— 将信息/功能从传统IVN转换为“服务”,对于这些服务任何基于以太网的ECU上的应用程序都可以轻松访问

—— 在以太网端,服务是在SOME /IP协议之上提供的

—— 可在传统IVN和基于以太网的IVN之间的“桥接ECU”上实现,如域控制单元、区域控制器等—— 也可以仅通过以太网接口在非桥接ECU上实现

—— SOA适配器提供的服务可以动态更改

汽车以太网端到端连接设计&面向服务的架构

                                   图4. CAN网络桥接ECU上的SOA适配器(示例)

2.4  SOA网关

1)外部网络上的外部设备

—— 车辆需要与外部设备(例如云服务器和智能设备)进行交

—— ADAS和其他联网汽车服务的互通需求变得越来越大

—— 与IVN相比,外部网络具有不同的特征:可用性、带宽、延迟、成本等。

—— 外部连接的协议通常不同于IVN的连接协议

—— 通过外部网络进行交互时会存在更高的安全性问题

2)SOA网关

—— 处理与外部设备/网络交互有关的问题

—— 在需要时转换协议和转换服务

—— 缓存外部信息以处理外部网络的可用性和成本问题

—— 应用策略并执行服务级别的访问控制

—— 应该在具有外部连接功能的ECU上实现

汽车以太网端到端连接设计&面向服务的架构

                                         图5. 用于云服务器交互的SOA网关(示例)

 

2.5 SD代理和服务路由器

1)SD代理

可以使用SD代理实现集中式SD

—— 服务发现消息通过一个称为“ SD代理”的中央S/W模块进行交换。

—— SOME/IP-SD消息也可用于ECU与SD代理之间的通信

 

集中式SD可以解决分布式SD方法的安全性和流量问题

—— 只能由允许的ECU查找并订阅每种服务

—— 可以有效监视服务可用性和搜索/订阅尝试

汽车以太网端到端连接设计&面向服务的架构

                                                           图6. 使用SD代理实现集中式

SD注:SD- Service Discovery

2)服务路由器

SOA的分布式特性带来的问题可以使用服务路由器来处理

—— 服务只能通过服务路由器使用

—— 服务路由可以应用于选定的服务,例如,具有高安全级别的服务,非时间关键型服务,跨域使用服务

—— SD代理可以有效地实现服务路由

—— 可以有效地处理安全和资源问题

—— 可以基于域,ECU,服务甚至方法来控制服务访问。

—— 也可以动态应用策略,例如,取决于IDS模块

汽车以太网端到端连接设计&面向服务的架构

                                                      图7. 服务路由器的应用

 

3  用例 - 电池状态检查和通知

1)案例1:检查电池状态并通知用户

汽车以太网端到端连接设计&面向服务的架构

                                                图8. 检查电池状态并通知用户

“电池检查APP”具有两项服务

—— 获得电池状态信息:订阅“Noti_BatteryStatus”

—— 检查电池状态

—— 通知用户,如果电池电量低:调用“Send_Noti2User”

2)案例2:添加向用户的手机发送通知消息的功能

汽车以太网端到端连接设计&面向服务的架构

                                           图9. 添加向用户的手机发送通知消息的功能

“使用者通知服务”APP:

—— 检测驾驶员不在车内:检查“点火开关”状态和“门锁定/解锁”状态

—— 通过外部网络(蓝牙或SMS)向用户的手机发送通知:调用“ Send_Noti2Device”

 

“Ext. Device Comm.Service”APP:

—— 检测用户的手机未通过蓝牙连接

—— 向手机发送SMS:调用“ Send_SMS2Device”(由云后台通过SoA 网关提供)

3)案例3:将命令(从外部设备)发送到车辆传统系统

汽车以太网端到端连接设计&面向服务的架构

                                     图10. 将命令(从外部设备)发送到车辆传统系统

云功能:

—— 获取用户的点火开关打开命令以重新充电

—— 远程点火:调用“点火开关”(由SoA适配器通过SoA 网关提供)

 

4 小结

  • 汽车以太网&IP带来了汽车系统/软件架构的创新:面向服务的架构(SOA)

  • SoA概念可以扩展到从传统ECU到外部设备的端到端范围

  • SoA适配器和SoA 网关可以分别用于传统设备和外部设备

  • 通过使用SD代理和服务路由器等其他SoA实体,可以有效地管理SoA

  • 端到端SoA支持快速高效地部署各种互联汽车服务

  • 其他功能(例如变体处理或即插即用)也可以从端到端SoA中受益

  • SoA和SDN的联合设计正在进行中