Train Real Time Data Protocol

from Wikipedia, the free encyclopedia
Train Real Time Data Protocol
Family: Internet protocol family
Field of application: Data transfer
in the TCN
Based on 17224 / UDP Process Data (PD),
17225 / UDP or TCP Message Data (MD) (transport)
current version: 1.0 (2015)
Default: IEC61375-2-3 ( 2015 )

The Train Real Time Data Protocol (TRDP) is a network protocol for communication via IP-based networks in trains and is part of the TCN (Train Communication Network). It is based on UDP and optionally on TCP and enables the exchange of process data (PD) and message data (MD) between devices such as door controls, displays, air conditioning systems, etc. TRDP is a connectionless, frame-oriented protocol and forms the basis for communication in future trains. The proprietary IPTCom protocol from Bombardier Transportation, from which TRDP adopts many features, is considered to be the forerunner.

The protocol was developed by the Working Group TC9 / WG43 of the IEC as part of the TCN and standardized in IEC61375-2-3. Well-known manufacturers and suppliers of rolling stock for rail transport are involved in the development and standardization.
The activities are coordinated by the 'Train Communication Network Open Source Special Interest Group' under the acronym TCNOpen. TCNOpen is an open source initiative founded by partners in the railway industry with the aim of jointly developing key components for the upcoming communication standards in the railway sector.
A reference implementation in 'C' is available under the open source Mozilla license MPL2 as "TRDP Light" on the SourceForge platform .

Process data (PD)

TRDP process data are sent cyclically as UDP packets on port 17224 with a minimum of 10 ms intervals. Senders are called 'Publisher' or 'Source', receivers are called 'Subscriber' or 'Sink'. Various communication patterns are supported.

PD push

Sequence diagram of the TRDP process data
Process data push point-to-point
Process data push point to multipoint

The 'publisher' sends regularly to a 'subscriber'. If no more data is received within a defined period, e.g. B. in the event of a network failure, a 'timeout' is triggered and the received data is either marked as out of date or reset to zero. In addition, the subscriber can use a sequence number in the message to identify whether the packet is new or a duplicate of a redundant sender, which is then ignored.

Using IP multicast , publishers can reach many subscribers who have subscribed to a multicast group. This allows entire groups of devices to be controlled synchronously from one transmitter.

PD pull

Process data pull point-to-point
Process data pull point-to-multipoint

The sending of process data can be forced by means of a request telegram. The publisher must then also send the data outside the set cycle times. The telegrams requested by the 'pull' mechanism have a different identifier ('Pp' instead of 'Pd', see).

Several publishers can be addressed simultaneously using multicast addressing; the reply address can also be a multicast group.

PD telegram format

Process data telegrams consist of a header and the user data (including an optional SDT trailer (Safe Data Transmission)).

SequenceCounter:  Is increased with each telegram sent

MsgType: 'Pr' = PD Request, 'Pp' = PD Reply, 'Pd' = PD Data

ComId: Application-specific, defines content of the data, interval and timeout of the telegram

TRDP Process Data Format

etbTopoCnt: 0 for Consist-internal communication. In the case of train-wide communication, this is the CRC via the 'Train Network Directory' and is checked for validity at both the sender and the recipient.

opTrnTopoCnt: Necessary for telegrams with direction-dependent information. This is the CRC via the 'Operational Train Directory'.

DatasetLength: 0 ... 1432 bytes

ReplyComID / ReplyIpAddress: For pull telegrams to determine the PD Reply to be sent

HeaderFCS: CRC32 according to IEEE802.3, start value 0xFFFFFFFF, inverse and always in little endian format

Dataset: Max. 1432 bytes of data

All data is transmitted in 'Network byte order' (Big Endian), with the exception of the FCS.

Message data (MD)

TRDP message data are event-driven transmitted via UDP or TCP on port 17225. Senders are referred to as 'Requester' or 'Caller', receivers as 'Listener' or 'Replier'. Various communication patterns are supported.

MD communication pattern

If a 'notification' is sent, the sender does not expect a response. The sender (with UDP) cannot determine whether the message has reached the addressee.

Message data communication point-to-point

In the case of a 'request', the caller learns with the reply whether the message has arrived (or the lack of a response due to the expiry of a timer). The replier can request confirmation of receipt of the message from the caller. This is important if the reply caused a status change in the replica and this may have to be reversed.

Message data communication multipoint

If messages are exchanged frequently with the same end devices, it makes sense to use a TCP connection instead of UDP for message data communication.

The maximum data size to be transferred is limited to 64k (also with TCP connections).

Multicast addresses are also possible for message data traffic via UDP:

The caller can indicate how many replies he expects.

MD telegram format

Message data telegrams consist of a header and the user data (including an optional SDT trailer (Safe Data Transmission)).

TRDP Message Data Header Format

SequenceCounter:  Is increased with each telegram sent

MsgType: 'Mn' = MD Notification, 'Mr' = MD Request with Reply, 'Mp' = MD Reply without Confirmation, 'Mq' = MD Reply with Confirmation, 'Mc' = MD Confirmation, 'Me' = MD Error

ComId: Application-specific, defines content of the data, interval and timeout of the telegram

etbTopoCnt: 0 for Consist-internal communication. In the case of train-wide communication, this is the CRC via the 'Train Network Directory' and is checked for validity at both the sender and the recipient.

opTrnTopoCnt: Necessary for telegrams with direction-dependent information. This is the CRC via the 'Operational Train Directory'.

DatasetLength: 0 ... 65388 bytes

ReplyStatus:

SessionId: UUID according to RFC 4122 , uniquely identifies an MD session

ReplyTimeOut: in µs

SourceURI: User part of the source URI (part before the @)

DestinationURI: User part of the destination URI (part before the @)

HeaderFCS: CRC32 according to IEEE802.3, start value 0xFFFFFFFF, inverse and always in little endian format

Dataset: Max. 65388 bytes of data

All data is transmitted in 'Network byte order' (Big Endian), with the exception of the FCS.

General information

PD and MD telegrams can optionally be used for "safe" communication in accordance with SIL2 with a data link layer. In Annex B of IEC61375-2-3, the Safe Data Transmission Protocol SDTv2 is defined.

The use of TRDP is mandatory (normative) for communication between train parts (Consists) via Ethernet according to IEC61375-2-3, and optional for use within Consists.

Individual evidence

  1. http://www.iec.ch/dyn/www/f?p=103:38:0::::FSP_ORG_ID,FSP_LANG_ID:1248,25#
  2. www.tcnopen.eu
  3. TCNOpen. In: SourceForge. Retrieved March 20, 2019 .
  4. NewTecTrainsolutions. In: www.newtec.de. Retrieved March 20, 2019 .
  5. a b IEC 61375-2-3 (2015-07) Ed. 1.0 - English - IEC Standards Shop. In: www.iec-normen.de. Retrieved March 14, 2016 .