Adaptive AUTOSAR is based on Service
Oriented Architecture (SOA) unlike the classic
AUTOSAR which uses signal-based communication
and uses relatively low-speed and data-limited buses
like CAN, Lin, and Flexray. Adaptive AUTOSAR
only uses Ethernet, which makes it much faster and
more suitable for modern applications and a possible
hierarchy for secured software communication is
shown Figure 1, [16].
2 Service-Oriented Communication
The Service Oriented Architecture is more suitable
for Remote Procedure Calls (RPCs) and has easier
and more understandable user interface and is more
suitable for high-performance ECUs especially that
it uses Ethernet, [17], in communication which
allows transmission of complex data like image data
and easier to integrate with other end-user as
Ethernet is nearly used everywhere and more spread
than other protocols like CAN, LIN, and FLEXRAY,
[6].
The AUTOSAR Working Group also published a
new Service Oriented Protocol to fit with Adaptive
AR called SOME/IP which stands for (Scalable
Oriented MiddlEware over IP) but also Adaptive
AUTOSAR can use other Service oriented protocols
like DDS which stands for (Data Distributed
Service), [16].
Data Distributed Service Protocol, known as
DDS, is a standard released by Object Management
Group (OMG) in 2004 at the beginning of the
evolution of IOT technology to facilitate and
standardize the communication between IOT
applications, [18]. In 2015, DDS was modified to fit
run-time applications. The DDS is a plug-and-play
protocol that does not need any modifications or
framework to operate and has built-in QOS and
security features but does not support RPC, [19].
There are several available implementations for
DDS like OpenDDS, FastDDS, and Connext DDS.
DDS implements the Service Oriented
Architecture (SOA) using the Publish/Subscribe
Model. There are three main components for the
mode: Data Readers, Data Writers, and Topic. The
applications can instantiate Data Writer to offer its
service i.e., Publishing in the Topic and Data readers
can receive data or request service i.e., Subscribing
in the Topic. An Example of that is a motor, and we
want to display its RPM on the digital cockpit. We
will have a topic named RPM, a
Publisher/DataWriter ECU that has a sensor to
publish RPM value to the RPM Topic, and a
Subscriber/DataReader in the digital cockpit ECU
that subscribes to the RPM Topic and shows results
to the driver. The configuration is represented in
several XML files and an IDL file that contains the
definition of the used data types within a topic, those
files are passed to a code generator that writes the
code of the data type in the required language C++
or C# or other languages supported by the DDS
vendor, [20].
One of the key features of DDS is its support for
Quality of Service (QoS) policies. QoS policies
allow developers to specify the data characteristics
being transmitted, such as reliability, durability, and
priority. This allows developers to tailor the
communication protocol to the specific needs of
their application, ensuring that the right data is
delivered to the right place at the right time, [18].
DDS has built-in security features that are
represented as DDS plugins. Those plugins include
Authentication, Encryption, Access Control, Key
Management and Secure Communication, [18].
SOME/IP stands for Scalable service-Oriented
MiddlewarE over IP which is a protocol that is used
to communicate and exchange data between
different Electronic Control Units (ECUs) in a
vehicle. It is part of the AUTOSAR (Automotive
Open System Architecture) standard and is designed
to enable service-oriented communication between
ECUs, [21].
The protocol is a lightweight protocol optimized
specially to be used in the vehicles among its ECUs
and standardizes the communication among them.
The protocol design contains a lot of essential
features like error detection, handling, and recovery
mechanisms from network failures which can make
the protocol more reliable, [21].
SOME/IP implements the Service Oriented
Architecture (SOA) using the Server/Client Model.
The server offers a Service Instance that implements
a Service Interface. The client uses/requests a
Service Instance. A Service is defined by its Service
Interface, which may include Methods (with or
without response), Events, and Fields. SOME/IP
also has a Service Discovery feature that explicitly
shows the status of service instances; how they can
be reached is also used in publishing and
subscription of services, so it is acting as a service
registry, or a routing manager, [21]. SOME/IP has
several implementations provided, like VSOME/IP
and WRSOME/IP. In general, SOME/IP works on
Ethernet supports TCP and UDP messages, and
works on IPv4 and IPv6 as shown in Figure 2. Also,
WSEAS TRANSACTIONS on COMMUNICATIONS
DOI: 10.37394/23204.2023.22.22
Omar Hesham, Ashraf Salem, Bassem Abdullah