S02P00v2.1.1 ITxPT Networks and Protocols Specification
S02P00v2.1.1 ITxPT Networks and Protocols Specification
1 (2020-12)
Important notice
The present document may be made available in electronic versions and/or in print. The
content of any electronic and/or print versions of the present document shall not be
modified without the prior written authorization of ITxPT. In case of any existing or
perceived difference in contents between such versions and/or in print, the prevailing
version of an ITxPT deliverable is the one made publicly available in PDF format at
https://wiki.itxpt.org.
Users of the present document should be aware that the document may be subject to
revision or change of status. Information on the current status of this and other ITxPT
documents is available at https://wiki.itxpt.org/index.php?title=Releases.
If you find errors in the present document, please send your comment to the technical
support https://itxpt.org/membership/contact-us.
Copyright Notification
All rights reserved. This document has been produced and approved by ITxPT and
represents the views of those members who participated.
The content of the PDF version shall not be modified. The copyright and the foregoing
restriction extend to reproduction in all media.
Users of the present document should be aware that the document may be subject to
revision or change of status. Information on the current status of this and other ITxPT
documents is available at wiki.txpt.org
© ITxPT 2020
All rights reserved.
Mandatory requirements
Some technical requirements are mandatory to comply with ITxPT architecture. Such
technical requirements are the minimum features to implement ITxPT architecture
and ensure interoperability at technical level.
This Mandatory icon indicates these mandatory technical requirements in
Be aware!
Each operational implementation may request optional requirements to fulfil its
functional design beyond the minimum mandatory technical requirements.
The verbal forms shown in Table T2 shall be used to indicate that among several
possibilities one is recommended as particularly suitable, without mentioning or
excluding others, or that a certain course of action is preferred but not necessarily
required, or that (in the negative form) a certain possibility or course of action is
deprecated but not prohibited. For example, the recommendations may relate to
values, actions, features to be supported and/or used or presence/absence or optional
elements.
The verbal forms shown in Table T3 shall be used to indicate what is permitted by the
ITXPT deliverable, which can be values, actions, support and /or use of features or
presence/absence of optional elements.
1
"exceptional cases" means where the use of verbal form would change the meaning
of the sentence or make it difficult to understand.
The verbal forms shown in Table T4 shall be used for statements of possibility and
capability, whether material, physical or causal.
The verbal forms shown in Table T5 shall be used to indicate behaviour of equipment
or sub-systems outside the scope of the ITXPT deliverable in which they appear. For
example, in an ITXPT deliverable specifying the requirements of terminal equipment,
these forms shall be used to describe the expected behaviour of the network to
which the terminal is connected.
Figures list
Figure 1- IP networks ............................................................................................................................................................. 9
Figure 2- Onboard Convoy IP network ...................................................................................................................... 11
Figure 3- MQTT client-broker ......................................................................................................................................... 25
Figure 4- Local and central broker ............................................................................................................................ 25
Figure 5- Pub/Sub pattern...............................................................................................................................................26
1.2 Definition
The Onboard architecture hosts embedded modules and services, allowing data and
resources sharing.
Service Oriented Architecture (SOA) enables to simply organize and use shared and
distributed data.
ITxPT specifies technical interfaces, then it is up to PTO and PTA to define the
functional scope of their implementation.
Services should be seen as transverse features delivering data, hosted by modules, to
be used by applications across the Onboard Backbone IP Network.
1.3 IP Networks
The Onboard architecture is composed of the following networks as described in
Figure 1 below:
- Onboard Backbone IP Network (mandatory): this is the key network of the
Figure 1- IP networks
1.6 Hardware
Each module connected on the Onboard Backbone IP Network shall be equipped
with a standard physical Ethernet interface. The detailed specification of wiring and
connectors is described in S01- ITxPT Vehicle Installation Requirements specifications.
In vehicle onboard context, the 256 contiguous class C space is sufficient for most
architecture needs. This covers the respective needs of each of the three onboard IP
networks (backbone IP network, passenger IP network, convoy IP network). Other
classes may be considered in case of specific needs.
The defined IP address range is 192.168.x.0 to 192.168.x.255, where x could be defined at
the time of implementation.
Address assignment
All modules shall support address assignment by static address assignment and
dynamic address assignment (dhcp) as configured by the end-user. Static and
dynamic address assignment shall be implemented/supported as described in TS
13149-7:2019 “Manual assignment” and “DHCP assignment” (“Self assignment” and
“Mixed assignment” are optional).
DHCP server
Any module that supports a DHCP server shall follow TS 13149-7:2019 “DHCP
assignment”.
• Long range
• Mobile Phone technologies (GPRS, EDGE, UMTS, 3G, 4G)
• WCDMA
• WiMAX
• Short range
• Wi-Fi
• Bluetooth
DNS-SD
This chapter describes DNS Service Discovery (DNS-SD) which is the underlying
technology used for the publication and discovery of services on the Onboard IP
Network.
This protocol is compliant with TS13149-7.
DNS-SD is defined in RFC 6763. It uses standard DNS programming interfaces, servers,
and packet formats (PTR, SRV and TXT records).
DNS-SD is recommended to be used with mDNS. DNS-SD is supported by mDNS but
does not require it. mDNS is defined in RFC 6762.
A summary of the main attributes for a service specification will be described.
• Update service
Allow to update information about a declared service.
Updating a service is accomplished by first making sure the old information is
discarded. Then, if the service is updated, it has to be publish again with the new
attributes.
• Browse service
Allow to access to the list of available services.
Some tools to browse ITxPT architecture and services are described in ITxPT tools
page.
<UniqueIdentifier>_<Name>._<Type>._<Protocol>.<Domain>
TTL class SRV priority weight port target
TXT record
For providing more information (e.g. multicast address for multicast services or
versions of different services) the TXT records are used.
Table 3 below shows the exhaustive list of attributes currently specified in the services
of each S02 part. Any additional or other attributes can be implemented for specific
services (e.g. module location, characteristics...).
Relevant attributes shall be implemented according to services specification from
each S02 part.
2.2.3.2.1 Content-Type
Setting Content-Type header is not required of the clients, and the service should
accept requests both without and with Content-Type set, and the request shall be
processed as if content-type was not set.
It is recommended for the clients to set Content-Type. It is strongly recommended
that the service sets Content-Type in replies.
Content-Type application/xml, application/json should be used; text/xml and text/json
implies the content will be read by humans, which is not the case for the ITxPT http
services.
2.2.3.2.2 Content-Length
Setting Content-Length header is not required of the clients, and the service should
accept requests both without and with Content-Length set and do a best-effort
attempt to process the request. Only if that fails may a response code 411 Length
Required be sent.
It is strongly recommended that both clients and services set Content-Length.
2.2.3.2.3 Accept
Accept header is not required of the clients, and the service should accept requests
both without and with Accept set, and the request shall be processed as if accept
header was not set.
However it is still recommended for the clients to set the correct accept header. For
preferred content types to use, see Content-Type above.
Data exchange
To use service through “high level” interface service type shall be “_itxpt_http”.
It uses http commands get and post to access data.
This is one of the recommended service types to be used on ITxPT architecture.
The transport protocol shall be tcp.
There are three kinds of requests:
- Subscription request
Standard HTTP “post” method allows requesting a subscription. XML contents
will be automatically sent through HTTP “post” method at the reply address.
- Unsubscription request
Standard HTTP “post” method allows to cancel a subscription. XML contents
will be automatically sent through HTTP “post” method at the reply address.
- Asynchronous request (optional)
Client Service
HTTP/1.0 200 OK
Date: Mon, 7 Oct 2019 13:52:09 GMT
Content-Type: application/xml
Content-Length: 109
<?xml version="1.0" encoding="UTF-8"?>
<SubscribeResponse>
<Active>true</Active>
</SubscribeResponse>
HTTP/1.0 200 OK
Date: Mon, 7 Oct 2019 13:52:09 GMT
Content-Type: application/xml
Content-Length: 0
Client Service
HTTP/1.0 200 OK
Date: Mon, 7 Oct 2019 13:52:09 GMT
Content-Type: application/xml
Content-Length: 109
<?xml version="1.0" encoding="UTF-8"?>
<SubscribeResponse>
<Active>false</Active>
</SubscribeResponse>
Connection is done through clients that initiate connection to broker, where broker
accepts. Connections are open if the client does not disconnect or loses connection.
Publication can also be done using a “retain” flag, that ensures that new subscribers
will receive the last published message.
<UniqueIdentifier>_<Name>._<Type>._<Protocol>.<Domain>
TTL class SRV priority weight port target
Document history
V1.0.0 December 2015 Publication
v2.0.0 September 2018 • Previous section “3 – Hardware” moved into 1. sub-section
of 1
• New harmonised structure for service description
• Introduction of new APC Service: section 3.7 (source: ITxPT
WG#7)
• Introduction of new and updated MADT service: section 3.8
(source: EBSF_2)
• Introduction of new MQTT broker Service: section 3.9
(source ITxPT WG#6)
v2.0.1 November 2018 Corrective update:
• Re-alignment of data type
V2.1.0 July 2019 • S02 Split into parts
• Alignment with TS13149
• Clarification
v2.1.1 October 2020 Some additions (no required implementation impact):
• Section about changing srv- and txt-record values
• New sections on http headers and http response
codes
• Various minor clarifications