IEC 61375-2-3 (Communication Profile)
Introduction
The communication profile (IEC 61375-2-3), which is part of IEC 61375, ensures interoperability between consists of trains with respect to the exchange of information.
For this it defines all items which are needed, the so-called communication profile, of the Train Communication Network, as defined in TTDP (IEC 61375-2-5).
Overview
This part of the IEC 61375 revolves around three major parts:
- Communication profile configuration
- TCN-DNS
- ECSP / ECSC
Communication profile configuration
The communication profile configuration file specifies functions and vehicles, and all their properties (such as id, name, etc.), in one consist. This configuration file need to be consistent across all ETBNs that is part of the same consist (redundant nodes).
A ‘function’ here is synonym with a unique IP address which can be used to access whatever process is listening to that address.
A ‘vehicle’ refers to an actual train car, a physical entity, which itself can be part of one single consist. One consist can include one or more vehicles.
TCN-DNS (Train Communication Network Domain Name System)
TCN-DNS specifies one of two interfaces (where the other interface is DNS according to RFC1035) that an application can use to lookup names, much like a DNS lookup, but with a few differences:
- Queries whose URIs resolve to any local device will resolve relative to the querier, not the resolver.
- Some queries will resolve to two IP adresses which represents an IP range, which can include more than two functions.
Note
Point nr 2 only applies to TCN-DNS via TRDP.
ECSP / ECSC (ETB Control Service Provider / ETB Control Service Client)
The ECSP, running on each ETBN, handles all communication and keeps a database of all vehicles, functions and operational states and statuses.
The ECSC, running on a selected device on the train, communicates with the ECSP in order to set and get various data sets.
TCN ECHO Server Interface
The TCN ECHO Server function can be used by end devices, running a compatible TCN ECHO Client function, to perform reachability and latency measurements to the Server (running on a WeOS device configured as an ETBN). When performing latency measurements, no guarantees are given regarding response time, other than that the TCN ECHO Server will attempt to respond as fast as possible.
A TCN ECHO Client needs to send an TCN ECHO request telegram via TRDP. When the TCN ECHO Server receives such a telegram, it will, as quickly as possible, send an TCN ECHO response telegram back to the TCN ECHO Client.
See Annex A - TCN ECHO request/response telegram below for a description of the fields and content of the TCN ECHO request and response telegrams.
Configuration
To setup the communication profile, perform the following steps:
- Create a communication profile configuration file (see configuration options below).
- Copy that configuration file to /cfg/comm-profile.json on the device.
Note
Ensure all devices each have a json file with correct content.
Note
Ensure the filenames are correct. That is, the communication profile configuration file ends up with the name comm-profile.json in /cfg/ on the device.
For an example configuration of a communication profile, see Single consist net with two redundant ETB nodes HowTo
Configuration Options
The structure of the configuration file must conform to comm profile configuration schema).
version
Type: String
Consist info data structure version which must be on the form X.Y, where
X = main version. Valid range: 1..255
Y = sub version. Valid range: 0..255
cstId
Type: ASCII string of length 16
Consist identifier.
cstType
Type: ASCII string of length 16
Consist type.
cstOwner
Type: ASCII string of length 16
Consist owner.
trnId
Type: ASCII string of length 16
Train identifier.
trnOperator
Type: ASCII string of length 16
Train operator.
dns-local-address
Type: Boolean
Whether to resolve DNS queries to local or global addresses.
Valid values are:
false = Resolve to global addresses
true = Resolve to local addresses
Optional. Defaults to false.
cstProp
Type: Object of type properties.
See properties.
Optional.
etbInfoList
Type: Array of etbInfoList, max array length 4
Configuration for ETBs in the consist, see etbInfoList.
NOTE: One ETB is supported.
vehInfoList
Type: Array of vehInfoList, max array length 63
Configuration for vehicles in the consist, see vehInfoList.
etbInfoList
etbId
Type: Integer
Identification of the ETB. The valid value is 0 (operational network).
cnCnt
Type: Integer
Number of CNs within a consist connected to this ETB. Valid range: 1..16
vehInfoList
vehId
Type: ASCII string of length 16
Vehicle identifier.
vehType
Type: ASCII string of length 16
Vehicle type.
vehOrient
Type: Integer
Vehicle orientation: 1 = same as consist direction 2 = inverse to consist direction
cstVehNo
Type: Integer
The sequence number of the vehicle within the consist that the function belongs to.
Valid range: 0..32
0 = no defined vehicle, the function belongs to the consist or the train/ETB.
1..32 = the vehicle that the function belongs to.
tractVeh
Type: Boolean
Wether the vehicle is a traction vehicle or not. Valid values are: false = The vehicle is not a traction vehicle. true = The vehicle is a traction vehicle.
vehProp
Type: Object of type properties,
See properties.
Optional.
fctInfoList
fctName
Type: ASCII string of length 16
Function device or group label as defined in 5.4.4.6.2 in IEC 61375-2-3 (v1.0 2015-07).
fctId
Type: Integer
The host identification of the function or group. Valid range: 1..32767 1..16382 = Devices 1..254 = The group is both consist-limited and ETB-related 256..16382 = ETB-related group 256..32767 = All-train group 255 = Undefined in accordance with IEC 61375-2-3 (v1.0 2015-07)
grp
Type: Boolean
Wether this is a function group that will resolve to a multicast IP address. Valid values are: false = no true = yes
etbId
Type: Integer
Identification of the related ETB. Valid values are: 0 = Operational network 255 = Related to all ETBs (all-train group)
cnId
Type: Integer
Identification of the connected network in the consist, related to the etbId. Valid range: 0..32 0 = not relevant (e.g. for groups) 1..32 = consist network id
properties
File containing octets of data (one octet is 8 bits) read as properties. No checks or interpretations is performed on this data.
The number of octets must be divisible by 4. A properties file that does not meet this requirement is ignored. If the number of octets in a file is greater than 32768, the file is ignored.
version
Type: String
Properties version which must be on the form X.Y, where
X = main version. Valid range: 1..255
Y = sub version. Valid range: 0..255
prop
type: String
Absolute path to the file containing the properties data.
Annex A
TCN ECHO request response telegram
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| cmd | reserved |0
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| challenge |1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |2
| |3
| |4
| payload |5
| |6
| |7
| |8
| |9
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Note
Both the request and response telegrams use the dataset shown in figure 1 above.
The TCN ECHO request and response telegrams have ComID 170 and must be handled according to the TRDP specification (see ).
The TCN ECHO request and response exchange is done by means of TRDP PD (process data) telegrams, as defined in Annex A in the IEC 61375-2-3 standard, using ComID 170 and the dataset shown in Figure 1 above. A description of each field in the dataset follows:
cmd
Type: Unsigned Int 16 Byte offset: 0
TCN ECHO command: 1 = request (sent by TCN ECHO Client) 2 = reply (sent by TCN ECHO Server)
reserved
Type: Unsigned Int 16 Byte offset: 2
Reserved. Recommended value 0. TCN ECHO Server will copy this as-is into the reply telegrams’ reserved field.
challenge
Type: Unsigned Int 32 Byte offset: 4
The TCN ECHO Server will perform an XOR operation with 0x11257731 over the received challenge and copy the calculated result into the reply telegrams’ challenge field.
payload
Type: Array of Unsigned Int 8, length 32 Byte offset: 8
The TCN ECHO Server will copy the received payload as-is into the reply telegrams’ payload field.