ethernet basic software – what’s next? - vector · pdf filev0.1 | 2016-09-05 8....
TRANSCRIPT
2
The dissemination of Automotive Ethernet increases
The use cases evolve High-speed diagnostic access (DoIP) Smart Charging (V2G) In-Vehicle Ethernet
> Stream data (AVB, RTP, etc.) > Control data (SOME/IP, Multi-PDU)
What’s next? Reliable control data with Time-Sensitive Networking Automotive Ethernet in POSIX-based systems Dynamic use of service-oriented communication
Introduction – Automotive Ethernet
0%50%
100%150%200%250%300%350%400%
2008 2009 2010 2011 2012 2013 2014 2015 2016
Ethernet: Growth rate (Basis: orders 2013 = 100%)
3
2
Time-Sensitive Networking (TSN)
Automotive Ethernet in POSIX-Based Systems
1
3 Service-Oriented Communication
4
ECU µC
Switch
ECU
Motivation Time-Sensitive Networking
Traffic convergence must be handled Control data Streaming data
Diverging transmission behavior & requirements
ECU ECU ECU
Switc
h
ECU
ECU
µC
Complex topology Independent, full-duplex links Several hops within one cluster Frame duplication (multi- and broadcast) Congestion at egress ports
Complex timing & load analysis compared to CAN
5
ECU
Motivation Time-Sensitive Networking
Traffic convergence must be handled Control data Streaming data
Diverging transmission behavior & requirements
Complex topology Independent, full-duplex links Several hops within one cluster Frame duplication (multi- and broadcast) Congestion at egress ports
Complex timing & load analysis compared to CAN
TSN provides mechanisms to target this: Some of which focus on the egress port and are based on existing standards (e.g.
VLAN, QoS).
µC
Switch
ECU ECU ECU
ECU
Switc
h
ECU
ECU
…
Prio 0
Prio 1
Prio 6
Prio 7
Scheduler
Link
µC
Shaper
Shaper
6
What is AVB? A set of IEEE standards Provided by the AVB task group Predecessor of TSN (until Nov. 2012) A toolbox
What are AVB’s main components? Credit based traffic shaper (FQTSS) Time synchronization (gPTP) Stream reservation (SRP) Transport Protocol (AVTP)
What can be done with AVB? Provide latency guarantees Provide bandwidth guarantees Synchronize nodes and data
The Predecessor - Audio Video Bridging (AVB) Time-Sensitive Networking
Src
Src
Src
Ctrl Ctrl
Dst
Dst
Dst
correlate inputs concert outputs
t t
t
without shaping
with shaping
Prio 0
Prio 1 Sched.
Link
FQTSS
reduce bursts
7
What is TSN? Extension of the AVB toolbox AVB focus: Streaming with real time guarantees TSN focus: Reliable control data with hard real time
guarantees Is partly still under discussion
What are TSN’s main components? Time-aware shaper (TDMA) Frame preemption Ingress policing Fault tolerant clocks Redundant communication
What can be done with TSN? Achieve stricter timing requirements Increase reliability through redundancy
Time Sensitive Networking (TSN) Time-Sensitive Networking
latency
reliability
t
Sched
Link FQTSS
TAS*
scheduled time slots
*TAS – Time-aware shaper
t
t t t
Prio 0
Prio 1
Prio 2
guard band
8
µController
Which Basic-Software modules are impacted by AVB and TSN
Impact on Basic-Software Time-Sensitive Networking
Ethernet Controller (MAC)
Ethernet Driver
IP AvTp AVB/TSN Protocols
UDP TCP
gPTP
SPI
Switch Driver
Switch
Standard Stack The standard Ethernet stack is
mostly unaffected AVB/TSN is designed for
interoperability AVB/TSN protocols have
dedicated EtherTypes
AV Transport Protocol The AVTP protocol is lower
layer to media applications It supports media
synchronization mechanisms, e.g. presentation time
AVB/TSN Protocols There is a set of other
protocols in the AVB/TSN world
They are mostly for dynamically setting up the network
gPTP gPTP provides time
synchronization It benefits from
hardware timestamping
Hardware Related Modules The hardware-related parts are
most affected Switch + Switch Driver MAC + Ethernet Driver
AVB/TSN-related features QoS FQTSS shaper Time-aware shaper Hardware timestamping Ingress policing
9
2
Time-Sensitive Networking (TSN)
Automotive Ethernet in POSIX-Based Systems
1
3 Service-Oriented Communication
10
POSIX-based operating systems, especially Linux, provide: Support for high performance CPUs Support for dynamic programming and configuration Rich set of existing features (connectivity, infotainment, image recognition, …)
POSIX-based systems are on the advance
But automotive ECUs require automotive-specific features Configuration Diagnostics Network Management Communication
These are not included in the standard feature set of a POSIX-based system
This is also true for Automotive Ethernet!
Motivation Automotive Ethernet in POSIX-based Systems
11
What automotive-specific Ethernet functions are there? Automotive Ethernet in POSIX-based Systems
Automotive Ethernet Stack
Ethernet Controller (MAC)
Ethernet Driver
IP AVB/TSN Modules
UDP TCP
SPI
Switch Driver
SoAd
DoIP UdpNm SOME/IP
Kernel-Mode Modules User-Mode Modules
Ethernet Driver It should support the required hardware-related features It runs in kernel-mode, extending it is difficult
Switch Driver Is specific to typical automotive switches Can be added as separate user mode component
Standard Modules (ARP, IP, TCP, UDP, etc.) Standard components can typically be used Configuration parameters may differ (e.g. timeout times)
AVB/TSN Modules (AvTp, SRP, BMCA, etc.) Specific, but not automotive-specific Can be added as user-mode modules
(if hardware-related features are provided)
Socket Adapter (SoAd) Is not per se necessary Multi-PDU feature is most-likely needed
Diagnostics over IP (DoIP) Required if ECU is directly accessible via tester
Network Management (UdpNm) Allows ECU is to participate in network management May include partial networking
Service-oriented Middleware (SOME/IP) Data serialization Service discovery
12
Steps towards a native POSIX implementation Automotive Ethernet in POSIX-based Systems
MCU 1 MCU 2 AUTOSAR POSIX
IPC IPC
SPI/USB/ETH
MCU AUTOSAR POSIX
IPC IPC
Shared Memory
Hypervisor
MCU POSIX
Application AUTOSAR
IPC IPC
MCUc POSIX
Application Application
Native POSIX Implementation AUTOSAR as a Process
AUTOSAR as a Guest AUTOSAR as a Companion
ECU ECU
ECU ECU
Segregation
Integration
vs.
Operating System
Shared Memory
Automotive Middleware
13
2
Time-Sensitive Networking (TSN)
Automotive Ethernet in POSIX-Based Systems
1
3 Service-Oriented Communication
14
Goals of a Service-Oriented Architecture (SOA) Loosen the coupling between interacting devices while maintaining their interoperability. Reduce broadcasting (compared to CAN or FlexRay)
Motivation Service-Oriented Communication
Components of a SOA
Service Discovery Offering, finding and subscribing to services
Addressing Addressing of clients, servers and services
Service Description Describing the capabilities of devices and how to use them
Method Invocation Invoking methods on the server
Events Subscribe for automatic change notifications
Ressources on most ECUs are highly limited
SOME/IP is statically used today Services are predefined Service description is shared via a design-time exchange format (e.g. .arxml) Service usage, however, is dynamic
15
Upcoming E/E-Architectures provide more ressources (POSIX-based ECUs)
Are there automotive use cases that require a dynamic service-oriented architecture?
Dynamic use of service-oriented communication Service-Oriented Communication
Additional challenges System behavior becomes less deterministic Testability is reduced Potential surface area for attacks
Adding new Services via Cloud or OTA update Reducing change impact
High Performance ECU
Server
Server Server
Client Server
Client
High Performance ECU
S2S* Gateway dbc
Client Client Client
Service-Oriented Communication Service-Oriented Communication
Cloud
driver
*S2S – Signal-to-Service
CAN/LIN/FlexRay/Eth PDU
16 © 2016. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V0.1 | 2016-09-05
For more information about Vector and our products please visit www.vector.com
Author: Zimmer, Bastian Vector Germany