logo资料库

TRDP协议PDF.pdf

第1页 / 共46页
第2页 / 共46页
第3页 / 共46页
第4页 / 共46页
第5页 / 共46页
第6页 / 共46页
第7页 / 共46页
第8页 / 共46页
资料共46页,剩余部分请下载后查看
Annexes
Annex A (normative) Train Real-Time Data Protocol (TRDP)
A.1 General
A.2 Lower Layers
A.2.1 Data link layer
A.2.2 Network Layer
A.2.3 Transport Layer
A.3 TRDP FCS Computation
A.4 Interaction between TRDP user and TRDP Layer
A.5 Communication Identifier (ComId)
A.6 Process Data
A.6.1 Communication model
A.6.2 Roles
A.6.3 Communication pattern
A.6.4 Addressing
A.6.5 PD-PDU
A.6.6 Interaction between application and TRDP protocol layer
A.6.7 Topography counter check
A.6.8 State Machine
A.7 Message Data
A.7.1 Communication model
A.7.2 Roles
A.7.3 Communication pattern
A.7.4 Addressing
A.7.5 MD-PDU
A.7.6 Interaction between application and TRDP layer
A.7.7 Topography counter check
A.7.8 MD protocol state machine
Figures
Figure A.1 – Overview of the protocol stack
Figure A.2 – FCS Computation
Figure A.3 – FCS Table
Figure A.4 – TRDP service model
Figure A.5 – PD push pattern (point to point)
Figure A.6 – PD push pattern (point to multipoint)
Figure A.7 – PD pull pattern (point to point, sink knows source)
Figure A.8 – PD pull pattern (multipoint to point, sink does not know source)
Figure A.9 – PD pull pattern (point to multipoint, sink knows source)
Figure A.10 – PD pull pattern (multipoint to multipoint, sink does not know source)
Figure A.11 – PD-PDU
Figure A.12 – Interaction sequence chart for PD pull pattern
Figure A.13 – Interaction sequence chart for PD push pattern
Figure A.14 – Interaction sequence chart for redundant PD handling
Figure A.15 – PD State diagram publisher
Figure A.16 – PD State diagram requester
Figure A.17 – PD State diagram subscriber
Figure A.18 – Message data transfer options
Figure A.19 – MD-PDU
Figure A.20 – Interaction sequence chart
Figure A.21 – TRDP layer MD caller state chart
Figure A.22 – TRDP layer MD replier state chart
Figure A.23 – TRDP Layer MD telegram reception
Tables
Table A.1 – UDP/TCP port assignments
Table A.2 – Reserved ComIds
Table A.3 – PD-PDU parameters
Table A.4 – TRDP service primitives
Table A.5 – Topography counter check
Table A.6 – PD publisher state diagram – guards
Table A.7 – PD publisher state diagram – triggers
Table A.8 – PD publisher state diagram – actions
Table A.9 – PD publisher state diagram – states
Table A.10 – PD publisher state diagram – guards
Table A.11 – PD requester state diagram – triggers
Table A.12 – PD requester state diagram – actions
Table A.13 – PD requester state diagram – states
Table A.14 – PD subscriber state diagram – triggers
Table A.15 – PD subscriber state diagram – guards
Table A.16 – PD subscriber state diagram – actions
Table A.17 – PD subscriber state diagram – states
Table A.18 – MD-PDU parameters
Table A.19 – TRDP service primitives – Caller
Table A.20 – TRDP service primitives – Replier
Table A.21 – Topography counter check
Table A.22 – MD caller state diagram – triggers
Table A.23 – MD caller state diagram – guards
Table A.24 – MD caller state diagram – actions
Table A.25 – MD caller state diagram – states
Table A.26 – MD replier state diagram – triggers
Table A.27 – MD replier state diagram – guards
Table A.28 – MD replier state diagram – actions
Table A.29 – MD replier state diagram – states
Table A.30 – MD receiver state diagram – triggers
Table A.31 – MD receiver state diagram – guards
– 114 – IEC 61375-2-3:2015  IEC 2015 Annex A (normative) Train Real-Time Data Protocol (TRDP) A.1 General This annex defines the train real-time data protocol (TRDP) which shall be used for the exchange of TCN process data and TCN message data over ETB. The TRDP is executed by a TRDP layer which is placed on top of the TCP/UDP transport layer (Figure A.1). This layer may optionally be extended by a safety layer which provides safe end-to-end data transmission of safety critical process data and message data between any two end devices in the network. All TRDP data on the wire is defined as big endian and byte alignment. Possible marshalling of user data needs to be done by a specific service primitive called from application layer before calling the TRDP service primitives to send data. As well a possible unmarshalling of user data needs to be done at application level after receiving data from the TRDP layer. NOTE Also the optional safety layer uses the data in wire format (big endian and byte alignment). END DEVICE END DEVICE Application Application safety layer TRDP safe data transmission protocol safety layer other TRDP TRDP protocol TRDP other TCP/UDP IP Ethernet TCN TCP/UDP IP Ethernet IEC Figure A.1 – Overview of the protocol stack A.2 Lower Layers A.2.1 Data link layer TRDP uses the ETB as defined in IEC 61375-2-5 for data communication within trains. A.2.2 Network Layer TRDP is based on IP (RFC 791) for data exchange between functions located in different consists of a train. IP Addressing of functions and devices is defined in IEC 61375-2-5 and in this part of IEC 61375. IP address assigments may change after train inaugurations. Data transfer between ETB and CN is provided by a gateway functionality of the ETBN as defined in IEC 61375-2-5. As a recommendation, this gateway should only transfer data between ETB and CN if the data are consistent with the actual train backbone view (defined by Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
IEC 61375-2-3:2015  IEC 2015 – 115 – the ‘etbTopoCnt’ value) and (optionally) operational train view (defined by the ‘opTrnTopoCnt’ value). This consistency can be checked by comparing the values of ‘etbTopoCnt’ and ‘opTrnTopoCnt’ contained in TRDP telegrams to the values stored in the ETBN. In case of a discrepancy the telegrams should be discarded. NOTE 1 The filtering of inconsistent data within the ETBN reduces the probability that inconsistent data are transferred to the destination. But it does not release the destination from the responsibility to check the consistency by itself. NOTE 2 A possible implementation will be to define corresponding firewall rules for the IP router within the ETBN (if IP router is available) A.2.3 Transport Layer TRDP uses the services of the UDP (RFC 768) and TCP (RFC 793) transport layer protocols for data communication. TRDP process data shall be sent with UDP. TRDP process data packet size shall be restricted to the size of one Ethernet frame. TRDP message data may be sent with UDP or with TCP. The choice shall be done by the user when the message data transfer is invoked. NOTE Message data packets exceeding the Ethernet MTU in size (about 1 500 bytes) can be transmitted by TCP in order to avoid problems with packet fragmentation. However, TCP restricts to point-to-point communication. For interoperable data communication, the destination port assignments (well-known ports) defined in Table A.1 shall be used. Table A.1 – UDP/TCP port assignments Protocol Process Data Message Data (UDP) Message Data (TCP) 20548 20550 20550 Destination Port For receiving any process data telegrams and for receiving UDP message data notification, request and confirm telegrams the well-known port shall be used. For receiving UDP message data reply telegrams the port the related request was sent from shall be used. For sending any process data telegrams and for sending UDP message data notification, request and confirm telegrams a private source port different from the well-known port shall be used. For sending UDP message data reply telegrams any source port different from the one the request was received from can be used. TCP connections shall be established between a source port different from the well-known port and the well-known port as destination. Using different well-known port numbers may be allowed for project specific purposes. The used well-known port numbers should be given as a configuration parameter to the communication stack. Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
– 116 – IEC 61375-2-3:2015  IEC 2015 A.3 TRDP FCS Computation For TRDP FCS CRC computation the CRC32 according to IEEE802.3 is used. The CRC calculation shall be done on the data prepared for transmission – big endian format and byte alignment. The CRC itself shall be appended in little endian format (least significant byte first). Based on the table below the following algorithm in C programming language notation with start value ‘FFFFFFFF’H is used (see Figure A.2 and Figure A.3): /******************************************************************************* * GLOBAL FUNCTION DEFINITIONS */ /** * @internal * Computes and returns a 32-bit FCS. * * @param buf Input buffer * @param len Length of input buffer * @param fcs Initial (seed) value for the FCS calculation * * @return Computed fcs value */ static UNSIGNED32 fcs32(const UNSIGNED8 buf[], UNSIGNED32 len, UNSIGNED32 fcs) { UNSIGNED32 i; for (i=0; i < len; i++) { fcs = (fcs >> 8)^fcstab[(fcs ^ buf[i]) & 0xff]; } return (fcs ^ 0xffffffff); } Figure A.2 – FCS Computation Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
IEC 61375-2-3:2015  IEC 2015 – 117 – /* The FCS-32 generator polynomial: * x**0 + x**1 + x**2 + x**4 + x**5 + x**7 + x**8 + x**10 + x**11 + * x**12 + x**16 + x**22 + x**23 + x**26 + x**32. */ static const UINSIGNED32 fcstab[256] = { 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d }; Figure A.3 – FCS Table Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
– 118 – IEC 61375-2-3:2015  IEC 2015 A.4 Interaction between TRDP user and TRDP Layer The TRDP layer shall provide services for process data and message data communication to the TRDP user at upper layer (application) as shown in Figure A.4. This service interface will be defined in an abstract way in the subsequent clauses for process data and message data communication. TRDP User (Application) service user TRDP service primitives TRDP Layer TCP/UDP service provider IEC Figure A.4 – TRDP service model A.5 Communication Identifier (ComId) All TRDP communication is using a so called ComId transmitted in the header of each PDU. The ComId is a unique identifier for the user data structure of the PDU. The ComId forms together with the source IP address a unique identifier of the PDU within the train. The ComId is application dependent but should be standardized in the application profiles. It should be the reference towards the following parameters of the PD telegram: • structure (data set) (one-to-one relation) • source URI • sink URI • communication parameters (TTL, QoS) • • validity behavior (behavior in case of invalid data / timeout) (only for PD_PDU) • cycle time (only for PD-PDU) • • safe data transmission parameters (if used, only for PD-PDU) redundancy (source is redundant) (only for PD-PDU) timeout The ComId shall be set to zero (ComId = 0) in the following cases: • • • for PDUs with unspecified user dataset. in message data confirmation messages in message data error messages The ComIds 1..999 shall not be used by the application since they are reserved for specific use as defined in Table A.2. Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
IEC 61375-2-3:2015  IEC 2015 – 119 – Table A.2 – Reserved ComIds comId Description 0 1 2 3 4 – 9 10 11 – 29 30 31 32-34 35 36 37 38 39 40 41 50 – 79 80 81 82 83 84 85 86 87 88 89 – 99 100 101 102 103 104 105 106 107 108 109 110 111 unspecified PDU ETBCTRL telegram CSTINFO notification message CSTINFOCTRL notification message Additional ComIds reserved for communication framework and ETB control service TRDP Echo Additional ComIds reserved for communication framework and ETB control service Additional ComIds reserved for TRDP statistics data TRDP – statistics request command Additional ComIds reserved for TRDP statistics data TRDP – global statistics data TRDP – subscription statistics data TRDP – publishing statistics data TRDP – redundancy statistics data TRDP – join statistics data TRDP- UDP listener statistics data TRDP – TCP listener statistics data Additional ComIds reserved for communication framework and ETB control service Conformance test – control telegram Conformance test – status telegram Conformance test – confirmation request telegram Conformance test – confirmation reply telegram Conformance test – opTrnDir request telegram Conformance test – opTrnDir reply telegram Conformance test – echo request telegram Conformance test – echo reply telegram Conformance test – echo notification telegram Additional ComIds reserved for conformance test TTDB – operational train directory status telegram TTDB – operational train directory notification TTDB – train directory information request TTDB – train directory information reply TTDB – consist information request TTDB – consist information reply TTDB – train network directory information request TTDB – train network directory information reply TTDB – operational train directory information request TTDB – operational train directory information reply TTDB – train information complete request TTDB – train information complete reply Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
– 120 – IEC 61375-2-3:2015  IEC 2015 comId 112 – 119 120 121 122 123 124 – 129 130 131 132 133 134 – 139 140 141 142 – 149 150 – 199 200 – 999 Description Additional ComIds reserved for TTDB ECSP – control telegram ECSP – status telegram ECSP – Confirmation/Correction request ECSP – Confirmation/Correction reply Additional ComIds reserved for ECSP ETBN – control request ETBN – status reply ETBN – train network directory request ETBN – train network directory reply Additional ComIds reserved for ETBN TCN-DNS – resolving request telegram (query) TCN-DNS – resolving reply telegram Additional ComIds reseraaved for TCN-DNS Additional ComIds reserved for communication framework and ETB control service ComIds reserved for other standards and norms A.6 Process Data A.6.1 Communication model The TRDP process data protocol defines the exchange of PD-PDUs for the transfer of process data. PD-PDUs shall be cyclically transmitted or transmitted on request between a publisher and one or many subscribers using a connectionless and unconfirmed TRDP service. A.6.2 Roles The communication partners in a process data transfer can have different roles: publisher: the source of process data subscriber: the sink of process data requester: requesting the publisher(s) to publish its process data Publisher and requester coincide in push communication pattern. A subscriber may also be a requester in pull communication patterns. A.6.3 Communication pattern A.6.3.1 Push communication pattern Process data exchange shall support the following push communication pattern as defined in IEC 61375-1: a) point to point, cyclic without acknowledge, source knows the sink (Figure A.5); Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
IEC 61375-2-3:2015  IEC 2015 – 121 – b) point to multipoint, cyclic without acknowledge, source knows the sink, e.g.redundancy groups (Figure A.6); c) point to multipoint, cyclic without acknowledge, source does not know the sink (Figure A.6). NOTE From communication point of view there will be no difference in a point to multipoint communication pattern whether the source knows the sinks or not. It is listed here only for completeness. publisher subscriber PD publish PD publish PD publish PD-PDU (data) PD-PDU (data) PD-PDU (data) PD consumption PD consumption PD consumption IEC Figure A.5 – PD push pattern (point to point) publisher PD publish PD publish PD publish PD-PDU (data) PD-PDU (data) PD-PDU (data) subscriber subscriber subscriber PD consumption PD consumption PD consumption IEC Figure A.6 – PD push pattern (point to multipoint) A.6.3.2 Pull communication pattern Process data exchange shall support the following pull communication pattern as defined in IEC 61375-1: • Point to point, without acknowledge, sink knows the source (Figure A.7). Copyright International Electrotechnical Commission Provided by IHS under license with IECLicensee=Hong Kong Polytechnic University/9976803100 Not for Resale, 02/27/2016 19:09:14 MSTNo reproduction or networking permitted without license from IHS--``,,,`,``,,,````,`,,,`,,``,,`,-`-`,,`,,`,`,,`---
分享到:
收藏