IEC 62439-4:2010
(Main)Industrial communication networks - High availability automation networks - Part 4: Cross-network Redundancy Protocol (CRP)
Industrial communication networks - High availability automation networks - Part 4: Cross-network Redundancy Protocol (CRP)
IEC 62439-4:2010 is applicable to high-availability automation networks based on the ISO/IEC 8802-3 (IEEE 802.3) (Ethernet) technology. It specifies a redundancy protocol that is based on the duplication of the network, the redundancy protocol being executed within the end nodes, as opposed to a redundancy protocol built in the switches. The switchover decision is taken in each node individually. The cross-network connection capability enables single attached end nodes to be connected on either of the two networks. It cancels and replaces IEC 62439 published in 2008 and constitutes a technical revision. It includes the following significant technical changes with respect to IEC 62439 (2008):
- adding a calculation method for RSTP (rapid spanning tree protocol, IEEE 802.1Q),
- adding two new redundancy protocols: HSR (High-availability Seamless Redundancy) and DRP (Distributed Redundancy Protocol),
- moving former Clauses 1 to 4 (introduction, definitions, general aspects) and the Annexes (taxonomy, availability calculation) to IEC 62439-1, which serves now as a base for the other documents,
- moving Clause 5 (MRP) to IEC 62439-2 with minor editorial changes,
- moving Clause 6 (PRP) was to IEC 62439-3 with minor editorial changes,
- moving Clause 7 (CRP) was to IEC 62439-4 with minor editorial changes, and
- moving Clause 8 (BRP) was to IEC 62439-5 with minor editorial changes,
- adding a method to calculate the maximum recovery time of RSTP in a restricted configuration (ring) to IEC 62439-1 as Clause 8,
- adding specifications of the HSR (High-availability Seamless Redundancy) protocol, which shares the principles of PRP to IEC 62439-3 as Clause 5, and
- introducing the DRP protocol as IEC 62439-6.
This publication is to be read in conjunction with IEC 62439-1:2010.
Réseaux de communication industriels - Réseaux d'automatisation à haute disponibilité - Partie 4: Protocole de redondance inter-réseau (CRP)
La CEI 62439-4:2010 est applicable aux réseaux d'automatisation à haute disponibilité basés sur la technologie ISO/CEI 8802-3 (IEEE 802.3) (Ethernet). Elle définit un protocole de redondance basé sur la duplication du réseau, le protocole de redondance étant exécuté dans les n uds terminaux, par opposition à un protocole de redondance intégré aux commutateurs. La décision de commutation est prise individuellement par chaque n ud. La capacité de connexion inter-réseau permet à des n uds terminaux simples d'être connectés à l'un ou l'autre des deux réseaux. Elle annule et remplace la CEI 62439 publiée en 2008. et constitue une révision technique. Elle inclut les modifications techniques majeures suivantes par rapport à la CEI 62439 (2008):
- ajout d'une méthode de calcul pour les RSTP (Rapid spanning tree protocol, IEEE 802.1Q),
- ajout de deux nouveaux protocoles de redondance: HSR (High-availability Seamless Redundancy) et DRP (Distributed Redundancy Protocol),
- transfert des anciens Articles 1 à 4 (introduction, définitions, aspects généraux) et des Annexes (taxonomie, calcul de disponibilité) dans la CEI 62439-1, qui sert désormais de base pour les autres documents,
- transfert de l'Article 5 (MRP) dans la CEI 62439-2 avec des modifications éditoriales mineures,
- transfert de l'Article 6 (PRP) dans la CEI 62439-3 avec des modifications éditoriales mineures,
- transfert de l'Article 7 (CRP) dans la CEI 62439-4 avec des modifications éditoriales mineures, et
- transfert de l'Article 8 (BRP) dans la CEI 62439-5 avec des modifications éditoriales mineures,
- ajout d'une méthode de calcul de la durée maximale de rétablissement de RSTP dans une configuration réduite (anneau) dans la CEI 62439-1 comme Article 8,
- ajout de spécifications de protocole HSR (High-availability Seamless Redundancy), qui partage les principes de PRP dans la CEI 62439-3 comme Article 5, et
- introduction du protocole DRP en tant que CEI 62439-6.
Cette publication doit être lue conjointement avec la CEI 62439-1:2010.
General Information
Relations
Standards Content (Sample)
IEC 62439-4 ®
Edition 1.0 2010-02
INTERNATIONAL
STANDARD
Industrial communication networks – High availability automation networks –
Part 4: Cross-network Redundancy Protocol (CRP)
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form
or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from
either IEC or IEC's member National Committee in the country of the requester.
If you have any questions about IEC copyright or have an enquiry about obtaining additional rights to this publication,
please contact the address below or your local IEC member National Committee for further information.
IEC Central Office
3, rue de Varembé
CH-1211 Geneva 20
Switzerland
Email: inmail@iec.ch
Web: www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigenda or an amendment might have been published.
ƒ Catalogue of IEC publications: www.iec.ch/searchpub
The IEC on-line Catalogue enables you to search by a variety of criteria (reference number, text, technical committee,…).
It also gives information on projects, withdrawn and replaced publications.
ƒ IEC Just Published: www.iec.ch/online_news/justpub
Stay up to date on all new IEC publications. Just Published details twice a month all new publications released. Available
on-line and also by email.
ƒ Electropedia: www.electropedia.org
The world's leading online dictionary of electronic and electrical terms containing more than 20 000 terms and definitions
in English and French, with equivalent terms in additional languages. Also known as the International Electrotechnical
Vocabulary online.
ƒ Customer Service Centre: www.iec.ch/webstore/custserv
If you wish to give us your feedback on this publication or need further assistance, please visit the Customer Service
Centre FAQ or contact us:
Email: csc@iec.ch
Tel.: +41 22 919 02 11
Fax: +41 22 919 03 00
IEC 62439-4 ®
Edition 1.0 2010-02
INTERNATIONAL
STANDARD
Industrial communication networks – High availability automation networks –
Part 4: Cross-network Redundancy Protocol (CRP)
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
PRICE CODE
X
ICS 25.040, 35.040 ISBN 978-2-88910-707-0
– 2 – 62439-4 © IEC:2010(E)
CONTENTS
FOREWORD.4
INTRODUCTION.6
1 Scope.7
2 Normative references .7
3 Terms, definitions, abbreviations, acronyms, and conventions.7
3.1 Terms and definitions .7
3.2 Abbreviations and acronyms.7
3.3 Conventions .7
4 CRP overview.8
5 CRP nodes .8
6 CRP LAN topology .8
7 CRP key components .10
7.1 CRP general protocol operation.10
7.1.1 Doubly-attached nodes (DANCs) .10
7.1.2 Singly attached nodes .11
7.2 CRP statistics.11
7.3 CRP Network_Status_Table .12
7.4 CRP recovery time .15
7.4.1 Recovery time calculation.15
7.4.2 Maximum repair time .16
7.5 CRP multicast messages.16
7.5.1 Sending.16
7.5.2 Receiving .16
7.6 CRP unicast messages .16
7.6.1 Sending a frame .16
7.6.2 Receiving a frame.17
7.7 CRP redundancy information.17
7.8 CRP redundancy statistics.17
8 CRP protocol.17
8.1 CRP singly attached node .17
8.2 CRP doubly attached node .17
8.3 CRP Installation, configuration and repair .17
8.4 CRP LRE model attributes.18
8.4.1 Attribute specification .18
8.4.2 Impact of LRE configuration attributes .22
8.5 CRP encoding of the DiagnosticFrame .23
8.6 CRP Encoding of the AnnunciationFrame .24
8.7 CRP common protocol.26
8.7.1 AnnunciationFrames.26
8.7.2 DiagnosticFrames.26
8.7.3 Detection of duplicate Node_Index .27
8.7.4 Detection of duplicate Node_Name.27
8.7.5 Failure detection based on arrival of DiagnosticFrames.27
8.7.6 Status array entries .28
8.7.7 Other failure detection .28
8.8 CRP operational messages .28
62439-4 © IEC:2010(E) – 3 –
8.8.1 Load balancing .28
8.8.2 LAN and port maintenance .28
8.8.3 Selecting transmission path.29
8.8.4 Selecting reception adapter .30
8.8.5 Crossed_cable_status .30
8.8.6 Configured parameters .30
8.9 CRP services .31
8.9.1 Configuration options and services .31
8.9.2 LAN redundancy service specification .31
9 CRP Management Information Base (MIB) .38
Bibliography.41
Figure 1 – CRP stack architecture .8
Figure 2 – CRP single LAN topography.9
Figure 3 – CRP double LAN topology.9
Figure 4 – CRP DiagnosticFrame pair approach .10
Figure 5 – CRP example system .11
Table 1 – CRP example Network_Status_Table for node 3 .11
Table 2 – CRP Network_Status_Table for singly connected nodes.13
Table 3 – CRP Network_Status_Table for DANC .14
Table 4 – CRP Path_Status_Sets .21
Table 5 – CRP example of a Path_Status_Set .21
Table 6 – CRP configuration attributes impact on LAN operation .22
Table 7 – CRP DiagnosticFrame format .23
Table 8 – CRP AnnunciationFrame .24
Table 9 – CRP unicast destination address handling.29
Table 10 – CRP configuration parameters.30
Table 11 – CRP Set_Assignment_Info service parameters.31
Table 12 – CRP Get_Redundancy_Info service.33
Table 13 – CRP Set_Redundancy_Info service .35
Table 14 – CRP Get_Redundancy_Statistics service .37
– 4 – 62439-4 © IEC:2010(E)
INTERNATIONAL ELECTROTECHNICAL COMMISSION
____________
INDUSTRIAL COMMUNICATION NETWORKS –
HIGH AVAILABILITY AUTOMATION NETWORKS –
Part 4: Cross-network Redundancy Protocol (CRP)
FOREWORD
1) The International Electrotechnical Commission (IEC) is a worldwide organization for standardization comprising
all national electrotechnical committees (IEC National Committees). The object of IEC is to promote
international co-operation on all questions concerning standardization in the electrical and electronic fields. To
this end and in addition to other activities, IEC publishes International Standards, Technical Specifications,
Technical Reports, Publicly Available Specifications (PAS) and Guides (hereafter referred to as “IEC
Publication(s)”). Their preparation is entrusted to technical committees; any IEC National Committee interested
in the subject dealt with may participate in this preparatory work. International, governmental and non-
governmental organizations liaising with the IEC also participate in this preparation. IEC collaborates closely
with the International Organization for Standardization (ISO) in accordance with conditions determined by
agreement between the two organizations.
2) The formal decisions or agreements of IEC on technical matters express, as nearly as possible, an international
consensus of opinion on the relevant subjects since each technical committee has representation from all
interested IEC National Committees.
3) IEC Publications have the form of recommendations for international use and are accepted by IEC National
Committees in that sense. While all reasonable efforts are made to ensure that the technical content of IEC
Publications is accurate, IEC cannot be held responsible for the way in which they are used or for any
misinterpretation by any end user.
4) In order to promote international uniformity, IEC National Committees undertake to apply IEC Publications
transparently to the maximum extent possible in their national and regional publications. Any divergence
between any IEC Publication and the corresponding national or regional publication shall be clearly indicated in
the latter.
5) IEC itself does not provide any attestation of conformity. Independent certification bodies provide conformity
assessment services and, in some areas, access to IEC marks of conformity. IEC is not responsible for any
services carried out by independent certification bodies.
6) All users should ensure that they have the latest edition of this publication.
7) No liability shall attach to IEC or its directors, employees, servants or agents including individual experts and
members of its technical committees and IEC National Committees for any personal injury, property damage or
other damage of any nature whatsoever, whether direct or indirect, or for costs (including legal fees) and
expenses arising out of the publication, use of, or reliance upon, this IEC Publication or any other IEC
Publications.
8) Attention is drawn to the Normative references cited in this publication. Use of the referenced publications is
indispensable for the correct application of this publication.
International Standard IEC 62439-4 has been prepared by subcommittee 65C: Industrial
Networks, of IEC technical committee 65: Industrial-process measurement, control and
automation.
This standard cancels and replaces IEC 62439 published in 2008. This first edition constitutes
a technical revision.
This edition includes the following significant technical changes with respect to IEC 62439
(2008):
– adding a calculation method for RSTP (rapid spanning tree protocol, IEEE 802.1Q),
– adding two new redundancy protocols: HSR (High-availability Seamless Redundancy)
and DRP (Distributed Redundancy Protocol),
– moving former Clauses 1 to 4 (introduction, definitions, general aspects) and the
Annexes (taxonomy, availability calculation) to IEC 62439-1, which serves now as a
base for the other documents,
– moving Clause 5 (MRP) to IEC 62439-2 with minor editorial changes,
62439-4 © IEC:2010(E) – 5 –
– moving Clause 6 (PRP) was to IEC 62439-3 with minor editorial changes,
– moving Clause 7 (CRP) was to IEC 62439-4 with minor editorial changes, and
– moving Clause 8 (BRP) was to IEC 62439-5 with minor editorial changes,
– adding a method to calculate the maximum recovery time of RSTP in a restricted
configuration (ring) to IEC 62439-1 as Clause 8,
– adding specifications of the HSR (High-availability Seamless Redundancy) protocol,
which shares the principles of PRP to IEC 62439-3 as Clause 5, and
– introducing the DRP protocol as IEC 62439-6.
The text of this standard is based on the following documents:
FDIS Report on voting
65C/583/FDIS 65C/589/RVD
Full information on the voting for the approval of this standard can be found in the report on
voting indicated in the above table.
This International Standard is to be read in conjunction with IEC 62439-1:2010, Industrial
communication networks – High availability automation networks – Part 1: General concepts
and calculation methods.
A list of the IEC 62439 series can be found, under the general title Industrial communication
networks – High availability automation networks, on the IEC website.
This publication has been drafted in accordance with ISO/IEC Directives, Part 2.
The committee has decided that the contents of this amendment and the base publication will
remain unchanged until the stability date indicated on the IEC web site under
"http://webstore.iec.ch" in the data related to the specific publication. At this date, the
publication will be
• reconfirmed,
• withdrawn,
• replaced by a revised edition, or
• amended.
A bilingual version of this standard may be issued at a later date.
– 6 – 62439-4 © IEC:2010(E)
INTRODUCTION
The IEC 62439 series specifies relevant principles for high availability networks that meet the
requirements for industrial automation networks.
In the fault-free state of the network, the protocols of the IEC 62439 series provide
ISO/IEC 8802-3 (IEEE 802.3) compatible, reliable data communication, and preserve
determinism of real-time data communication. In cases of fault, removal, and insertion of a
component, they provide deterministic recovery times.
These protocols retain fully the typical Ethernet communication capabilities as used in the
office world, so that the software involved remains applicable.
The market is in need of several network solutions, each with different performance
characteristics and functional capabilities, matching diverse application requirements. These
solutions support different redundancy topologies and mechanisms which are introduced in
IEC 62439-1 and specified in the other Parts of the IEC 62439 series. IEC 62439-1 also
distinguishes between the different solutions, giving guidance to the user.
The IEC 62439 series follows the general structure and terms of IEC 61158 series.
The International Electrotechnical Commission (IEC) draws attention to the fact that it is
claimed that compliance with this document may involve the use of a patent concerning a full-
duplex Ethernet in which each device periodically transmits a message representing its
connectivity to the other devices , allowing them to choose a redundant path in case of failure,
given in 7.1 and 7.3.
IEC takes no position concerning the evidence, validity and scope of this patent right.
The holder of this patent right has assured the IEC that he/she is willing to negotiate licences
either free of charge or under reasonable and non-discriminatory terms and conditions with
applicants throughout the world. In this respect, the statement of the holder of this patent
right is registered with IEC. Information may be obtained from:
Fieldbus Foundation
9005 Mountain Ridge Drive – Bowie Bldg
Suite 190
Austin, TX 78759
USA
Attention is drawn to the possibility that some of the elements of this document may be the
subject of patent rights other than those identified above. IEC shall not be held responsible for
identifying any or all such patent rights.
ISO (www.iso.org/patents) and IEC (http://www.iec.ch/tctools/patent_decl.htm) maintain on-
line data bases of patents relevant to their standards. Users are encouraged to consult the
data bases for the most up to date information concerning patents.
62439-4 © IEC:2010(E) – 7 –
INDUSTRIAL COMMUNICATION NETWORKS –
HIGH AVAILABILITY AUTOMATION NETWORKS –
Part 4: Cross-network Redundancy Protocol (CRP)
1 Scope
The IEC 62439 series is applicable to high-availability automation networks based on the
ISO/IEC 8802-3 (IEEE 802.3) (Ethernet) technology.
This part of the IEC 62439 series specifies a redundancy protocol that is based on the
duplication of the network, the redundancy protocol being executed within the end nodes, as
opposed to a redundancy protocol built in the switches. The switchover decision is taken in
each node individually. The cross-network connection capability enables single attached end
nodes to be connected on either of the two networks.
2 Normative references
The following referenced documents are indispensable for the application of this document.
For dated references, only the edition cited applies. For undated references, the latest edition
of the referenced document (including any amendments) applies.
IEC 60050-191, International Electrotechnical Vocabulary – Chapter 191: Dependability and
quality of service
IEC 62439-1:2010, Industrial communication networks – High availability automation networks
– Part 1: General concepts and calculation methods
ISO/IEC 8802-3:2000, Information technology – Telecommunications and information
exchange between systems – Local and metropolitan area networks – Specific requirements –
Part 3: Carrier sense multiple access with collision detection (CSMA/CD) access method and
physical layer specifications
3 Terms, definitions, abbreviations, acronyms, and conventions
3.1 Terms and definitions
For the purposes of this document, the terms and definitions given in IEC 60050-191, as well
as in IEC 62439-1, apply.
3.2 Abbreviations and acronyms
For the purposes of this document, the abbreviations and acronyms given in IEC 62439-1,
apply, in addition to the following:
DANC Doubly attached node implementing CRP
SANC Singly attached node implementing CRP
3.3 Conventions
This document follows the conventions defined in IEC 62439-1.
– 8 – 62439-4 © IEC:2010(E)
4 CRP overview
This International Standard specifies a redundancy protocol that is based on the duplication of
the network, the redundancy protocol being executed within the end nodes, as opposed to a
redundancy protocol built in the switches. There is no central “redundancy manager”; instead
each node operates autonomously. The cross-network connection capability enables single
attached end nodes to be connected on either of the two networks.
5 CRP nodes
There exists different classes of nodes that may interoperate on the same network:
• DANCs (Doubly Attached Nodes) able to execute the CRP protocol, and having two ports
for the purpose of redundancy.
• SANCs (Singly Attached Nodes) able to execute the CRP protocol, and having only one
port.
• SAN (Singly Attached Nodes), such as commercially available laptops or file servers that
are not aware of the CRP protocol. Even though not aware, SANs can also have access to
the redundancy management data for the purpose of monitoring and network management.
In DANCs, these two ports are referred to as port A and port B. They are managed by the Link
Redundancy Entity (LRE), whose implementation is not prescribed, and which is conceptually
located in the communication stack below the network layer, as illustrated in Figure 1.
upper layers
UDP TCP
real-time
stack
IP
link redundancy entity
driver driver
IEC 8802-3 MAC and PHY IEC 8802-3 MAC and PHY
LAN_A LAN_B
IEC 380/10
Figure 1 – CRP stack architecture
This arrangement provides application-level transparency. The LRE hides redundancy from
the upper layers and manages the ports. A node can therefore operate with only one IP
address.
6 CRP LAN topology
Implementing the redundancy protocol within the DANCs allows a variety of topologies, using
switches that are not aware of the redundancy protocol and could implement another
redundancy protocol such as RSTP.
This International Standard does not dictate the topology, but does allow for configuration of
node behaviour to accommodate the characteristics of the specific LAN being used.
Nodes may be attached to the same or to different switches of a single LAN, which may or
may not include redundant links, as Figure 2 shows. Attaching both links to the same switch
only provides leaf link failure resilience.
62439-4 © IEC:2010(E) – 9 –
SANSAN
leaf link
inter-switch link
inter-switch port
switch
LAN
swswiittchch switch
leaf link
edge ports
DANCDANC DANCDANC DANCDANC
IEC 381/10
Figure 2 – CRP single LAN topography
Nodes may be attached to separate LANs, which are basically failure-independent, but may
be connected by an inter-LAN link, as Figure 3 shows.
SANSAN
DADANNCC
DANDANCC
A1A1
inter-LAN links
top switch top switch
LAN_A
LAN_B
switch
switch switch switch
SANSANCC SANSAN SANSAN
DANDANCC DANCDANC DANCDANC DADANCNC
A2A2 B1B1 B2B2
IEC 382/10
Figure 3 – CRP double LAN topology
When there is only one LAN, a node is attached through both its ports to that LAN. In double
LAN configurations, port A is normally connected to LAN_A and port B to LAN_B. Connecting
a node twice to the same network tree or connecting port A to LAN_B and vice-versa may be
a configuration error called “crossed cables”.
– 10 – 62439-4 © IEC:2010(E)
7 CRP key components
7.1 CRP general protocol operation
7.1.1 Doubly-attached nodes (DANCs)
DiagnosticFrames are used to exercise communication paths and to assess the network
health. A DiagnosticFrame contains a summary of the reporting node’s view of the network
health and status, including its own port.
Annunciation frames are sent to announce the existence of the node. These frames are
described in 8 . 7. 1
Each DANC sends a pair of DiagnosticFrames periodically, every T , on both of its ports, as
dmi
Figure 4 shows. Each DANC that receives one DiagnosticFrame on one port expects the other
message of the pair on the other port. (On a single LAN, the node receives both messages on
both ports.) If a node receives no message or if it does not receive the second
DiagnosticFrame on the other port before receiving several more DiagnosticFrames on the
same port, it records a fault in the row of the Network_Status_Table for the corresponding
node.
T
Tdmi dmi
…time
node i
LAN A LAN B
diagnostic messages
time
node j
IEC 383/10
Figure 4 – CRP DiagnosticFrame pair approach
In practice the receiving node compares the Sequence_Number of the last message received
on the other port with that just received. If the difference in Sequence_Number is more than
the configured Max_Sequence_Number_Difference, a fault is recorded.
Based upon the diagnostic frames it receives from all other nodes, each node can select
which port to use to send messages to a particular node, on a node-per-node basis.
EXAMPLE Figure 5 shows four nodes connected to two redundant LANs which are not connected with each other.
Node 3 and node 4 have link failures. The diagnostic frame handling on node 3 is detailed.
Each node broadcasts its view on the port status of all nodes it detected in addition to other status information
(source MAC address, Node_Index, etc.).
Node 3 maintains a Network_Status_Table populated by the DiagnosticFrames from nodes 1, 2, and 4, as shown in
Table 1.
The port status values are OK to indicate a working condition, and X for a don’t know or bad condition.
According to the first three columns of the Network_Status_Table in Table 1, node 3 sends out its
Received_DiagnosticFrame for port A as [OK, OK, OK, OK] and for port B as [OK, OK, OK, X].
Similarly, node 1 sends out its view on nodes 2, 3, and 4 as [OK, OK, X, OK] for port A and [OK, OK, OK, X] for
port B. Node 3’s adapter A and adapter B status is populated as shown in Table 1.
The row for node 3 is set based on its own testing, but in this example there is no testing, so all appears to be OK.
62439-4 © IEC:2010(E) – 11 –
node node node node
1 2 3 4
A B A B A B A B
X
X
LAN A
LAN B
IEC 384/10
Node 3: Interface A partial failure; can receive, but not transmit
Node 4: Interface B complete failure.
Figure 5 – CRP example system
Table 1 – CRP example Network_Status_Table for node 3
Reported status extracted from
Received_DiagnosticFrame
DiagnosticFrame
Node_Index Received on Received on Node 3 Received Node 3 Received
Number
adapter A adapter B on adapter A on adapter B
Received from Received from Received from Received from
a a a a
adapter A/B adapter A /B adapter A/B adapter A /B
1 OK/X X/OK X/X X/OK
2 OK/X X/OK X/X X/OK
3 (this node) OK/X X/OK OK/X X/OK
4 OK/X X/X X/X X/X
a
The cross statuses are all “X” for a dual LAN without inter-LAN link. That is, messages originating from a
port A are never heard on a port B and vice versa.
The DiagnosticFrames provide therefore:
• minimal assurance of a working path. With each message received, the receiving node
can assume that its own receiver, the reporting node’s transmitter, and the path through
the network are all working;
• assurance that the reverse path is working. With each message received, the receiving
node can extract the reporting node’s view of the receiving node and thus determine
whether its own transmitter, the reporting node’s receiver, and the path through the
network are all working.
This allows the system administrator to construct a variety of coverage strategies such as:
• ensure that all paths between all nodes are tested;
• send to a single node. This node may be a “diagnostic node” that only provides detection
of faults between each node and the diagnostic node.
7.1.2 Singly attached nodes
Singly attached nodes (SANCs) also can send and receive DiagnosticFrames. If they choose
to transmit them, the DANCs and SANCs are aware of their presence and attempt to ensure
that messages reach them. The Network_Status_Table built by the SANC allows it to build
DiagnosticFrames and also, in a single LAN, to select a path to a node with a failed port.
7.2 CRP statistics
Statistics should be gathered and presented for each port, by a system management
application. Examples of presentation methods are a graphical user interface for visual
reporting of network errors or via SNMP.
– 12 – 62439-4 © IEC:2010(E)
7.3 CRP Network_Status_Table
Each node maintains a Network_Status_Table that holds the node’s view of the network.
This table is used to assist with selection of which port(s) to use for transmission to a
destination address and which port(s) to use for reception of multicast transmissions.
The Network_Status_Table is constructed from received DiagnosticFrames as well as from
other locally acquired and sometimes vendor-specific diagnostic information, for example
built-in tests, link integrity pulse, etc.
This table is conceptual and is described to assist with understanding of the concepts in this
specification and no specific implementation is prescribed or implied. It is therefore not visible
to network management; however, the contents of the table are reflected in the
DiagnosticFrames.
The Network_Status_Table in each node keeps for each node, and in some cases for each
port of each node the following information:
a) for each remote reporting node,
• remote node identification (name, index in a table, etc.);
• diagnosis message interval;
• apparent number of ports (1.N);
• for each port, in nominal order (e.g., port to LAN_A before port to LAN_B) the MAC
address of the remote port.
b) for each pairing of local and remote ports (e.g., A/B, B/A, A/A or B/B)
• time of latest message receipt;
• sequence number of latest received message;
• receipt of DiagnosticFrame from remote port within time;
• remote port's link status from last received DiagnosticFrame.
c) for assessment of remote connectivity
• inferred status of set of ports (functioning properly, cross-connected, .);
• preferred port pairing.
EXAMPLE Table 2 shows a Network_Status_Table for a SANC and Table 3 a Network_Status_Table for a DANC.
62439-4 © IEC:2010(E) – 13 –
Table 2 – CRP Network_Status_Table for singly connected nodes
Reporting node information
Messages received here sent from reporting node’s
Messages received here sent from reporting node’s adapter A
adapter B
Reported
Sequence_ status
Sequence_ Reported status
Node_Index number of Diagnostic extracted
number of extracted from
Number of Interval Diagnostic
and Time Time Last Frame from
adapters (ms) last message Frame received DiagnosticFrame
Node_Name message received Diagnostic
received for AA
received
Frame for
BA
1 2 000 Time Number OK OK
FD001
1 2 000 Time Number OK OK
FD002
1 1 000 Time Number OK OK
LD001
1 5 000 Time Number OK OK
LD003
2 5 000 Time Number OK OK Time Number OK OK
1 5 000 Time Number OK OK
– 14 – 62439-4 © IEC:2010(E)
Table 3 – CRP Network_Status_Table for DANC
a
Messages received here on adapter A B
Reporting node information Assessment for reporting node
b c d
A Sent from reporting node’s adapter B A B
Reported
Sequence_ status
Addresses Selected
Node_Index Number Number of Diagnostic extracted
for Interval Crossed_ transmission
and of … Time last Frame from … …
adapters (ms) cable_status adapter and
Node_Name adapters message received Diagnostic
A, B receiving adapter
received Frame
for BA
1 addr1.A, 2 2 000 … Time Number OK OK … … OK BB
addr1.B
FD001
2 addr2.A, 2 2 000 … Time Number OK OK … … OK AA
addr2.B
FD002
3 addr3.A, 2 1 000 … Time Number OK OK … … OK AA
addr3.B
LD001
5 addr5.A, 2 5 000 … Time Number OK OK … … OK AA
addr5.B
LD003
6 addr6.A, 2 5 000 … Time Number OK OK … … OK BB
addr6.B
7 addr7.A 1 5 000 OK N/A N/A N/A N/A NA NA OK AA
a Messages received here on adapter B.
b Sent from reporting node’s adapter A.
c Sent from reporting node’s adapter A.
d Sent from reporting node’s adapter B.
62439-4 © IEC:2010(E) – 15 –
7.4 CRP recovery time
7.4.1 Recovery time calculation
The maximum recovery time from a fault is:
t = (1+Max_Sequence_Number_Difference) × t + t + t
rec dmi path proc
where
t is the recovery time;
rec
t is the time interval of diagnostic frames;
dmi
t is the latency of frame delivery of the network; and
path
t is the processing time of the receiving LAN redundancy entity.
proc
The value of t is determined by the amount of time the packet takes to travel through the
path
network. In a switched network the worst case transition time through a FIFO based switch is
dependent on the number of ports of the switch. It may be necessary to use QoS to respect
this delay. The arrival of the packet of interest after all other packets bound for the destination
interface of interest produces the worst case delay. In this case the delay is:
t = N × t × S × 8
sw ports rate pak
where
t is the delay time in a single switch;
sw
N is the number of switch ports on a single switch;
ports
t is the 1/data rate; and
rate
S is the max packet size in bytes.
pak
EXAMPLE The following are examples of recovery time for various end node speeds.
Processing time is dominated by the interrupt response time of the end node. For this example an interrupt time of
15 μs is used.
Given: t = 400 ms, t = 15 μs, Max_Sequence_Number_Difference = 1, N = 24 and S = 1 522 bytes for
dmi proc ports pak
all cases.
For all end nodes with 10 Mbit/s bandwidth:
–7
t = 24 × 10 × 1 522 × 8 = 0,029 s
sw
In a single redundant LAN using 6 switches of 24 ports each, and assuming the diagnostic packet traverses all
switches, the total t is 6 × t = 0,174 s.
path sw
Thus,
t = 2 × 0,40 + 0,174 + 0,000 015 s
rec
For this example the maximum processing time is negligible thus:
t = 0,974 s
rec
For all end nodes with 100 Mbps bandwidth, the equation scales directly thus
–8
t = 24 × 10 × 1 522 × 8 = 0,002 9 s and for 6 paths = 0,014 6 s
sw
– 16 – 62439-4 © IEC:2010(E)
Thus
t = 2 × 0,40 + 0,017 4 + 0,000 015
rec
t = 0,817 4 s
rec
7.4.2 Maximum repair time
For faults such as cable breaks there is no repair time. However, in a multiple interface switch
topology repairing a failed interface requires replacing the entire switch. In this case powering
the switch down to replace it causes additional network disruptions in nodes that have paths
though that switch. So as a worst case, the repair time is identical to the recovery time from a
fault described in 7. 4. 1.
7.5 CRP multicast messages
7.5.1 Sending
Multicast messages are always sent from both ports (if both are operational). They carry as
source MAC address the address of the port over which they have been sent.
This applies in particular to the DiagnosticFrames and AnnunciationFrames
7.5.2 Receiving
On some network topologies, a single operational multicast message can be received on each
of a node’s ports. If a node has two ports, the node may be configured to use the
Network_Status_Table to select a reception port for multicast operational messages, and so
reduce its interrupt and message processing load. Duplicates still need to be detected and
discarded.
7.6 CRP unicast messages
7.6.1 Sending a frame
Each unicast frame sent by a CRP redundancy participating node is sent from only one port.
When the LRE receives a frame from the IP stack (or other upper layer), it examines the
frame, identifies the destination MAC address and looks up for that address in the
Network_Status_Table.
If the A-A path to the destination is OK in the table, the LRE sends the frame to port A, which
inserts its address as a source MAC address.
If A-A path is NOT OK in the table, but the A-B path is OK, then the LRE substitutes the B
MAC address of the destination node in the frame and sends the frame to port A, which
inserts its address as a source MAC address.
If the A-A and A-B paths are both NOT OK, but the B-A path is OK, the LRE sends the frame
to port B, which inserts its address as a source MAC address.
If the A-A, A-B and B-A paths are NOT OK, the LRE substitutes the B MAC address of the
destination node in the frame and send the frame to port B, which inserts its address as a
source MAC address.
If the message is broadcast or multicast, the LRE sends the frame to A if A is working and to
B if A is not working.
62439-4 © IEC:2010(E) – 17 –
7.6.2 Receiving a frame
When the LRE receives a frame from the physical layer over port B, it substitutes the
destination MAC B to MAC A address, before forwarding the frame up to the stack. Some IP
stacks are sensitive to the IP/MAC association being correct. The IP address is not
manipulated/substituted in any way on neither transmit nor receive.
7.7 CRP redundancy information
Each node is configured by a user definable mechanism. The configuration determines the
details of how each node transmits DiagnosticFrames and how it uses the
Network_Status_Table to select transmission and reception ports. This information can be
obtained from another node by listening to AnnunciationFrames.
7.8 CRP redundancy statistics
Any node (even if it is not CRP enabled) may gather and display the health of the nodes in the
network by subscribing to the multicast address used for the DiagnosticFrames. The
application may then generate a Network_Status_Table and use it in any way.
8 CRP protocol
8.1 CRP singly attached node
SANCs shall have one port and shall participate in the CRP redundancy protocol.
8.2 CRP doubly attached node
DANCs shall have two ports and participate in the CRP redundancy protocol.
8.3 CRP Installation, configuration and repair
DANC shall be connected to a single redundant LAN with redundant leaves or to a redundant
6.
LAN without redundant leaves as described in Clause
NOTE 1 The former connection provides four possible paths to other doubly connected nodes while the latter
provides only two.
In order to achieve switch and leaf link redundancy, each port of a DANC shall be connected
to a different switch.
SANC and SAN may be connected to any LAN, but preferably all SANCs and SAN shall be
connected to the same LAN.
The assigned Node_Index and Node_Name shall be unique in the network.
The maximum Node_Index is 2 048; the value of 0 shall not be used for Node_Index.
The maximum number of nodes is 2 047.
NOTE 2 This number is limited by the size of the array of status available in the diagnostic packet.
The maximum number of network switch layers of a single redundant LAN with redundant
leaves shall be 3.
NOTE 3 This limitation maintains a spanning tree diameter of 7 hops for those networks where spanning tree is
used to prevent loops.
– 18 – 62439-4 © IEC:2010(E)
8.4 CRP LRE model attributes
8.4.1 Attribute specification
8.4.1.1 Protocol_Version
This configured attribute specifies the CRP protocol used. It is an Unsigned8 with a value of
0x01.
Packets with higher version numbers shall be rejected by lower versions. Newer versions
shall revert to compatibility mode when older version packets are received.
8.4.1.2 Number_of_ports
This configured attribute specifies the number of ports on this node for the purpose of
redundancy (Unsigned8 = 1 or 2).
8.4.1.3 Max_Sequence_Number_Difference
This configured attribute specifies the maximum acceptable difference between the
Sequence_Number parameters in a pair of DiagnosticFrame received from a particular
sending node. It shall be an Unsigned8 greater than or equal to 1.
NOTE This attribute affects the speed and accuracy of the dual message approach. The value of
Max_Sequence_Number_Difference number is at least one to ensure that faults are not detected by normal
incrementing of the Sequence_Number. A number of at least two ensures that a single lost message does not
cause detection of faults. Having larger numbers allows tolerance of the loss of several successive messages but
slows down speed with which the algorithm detects actual faults, as a trade-off between transient tolerance and
detection speed.
8.4.1.4 Redundancy_Flags
This configured attribute specifies five flags that are not transmitted, indicating one or more of
the following:
a) SingleMulticastMessageTransmissionEnabled. This defines the transmission policy for all
services with multicast destination addresses except for the DiagnosticFrame.
• False Transmit on both ports
• True Transmit on one port
b) CrossedCableDetectionEnabled.
• False Do not detect crossed cables
• True Detect crossed cables
c) SinglePortMulticastMessageReceptionEnabled. This defines the reception policy for all
multicast frames except for the DiagnosticFrame_Addresses for ports A and B.
• False Listen for multicast addresses on both ports
• True Listen for multicast addresses on one port except if a fault is detected
d) DiagnosisUsingOwnMessagesEnabled.
• False Do not use own DiagnosticFrames for diagnosis
• True Use own DiagnosticFrames for diagnosis
e) LoadBalancingEnabled.
• False Do not balance load
• True Balance load
62439-4 © IEC:2010(E) – 19 –
8.4.1.5 DiagnosticFrame_Interval
This configured attribute specifies the time interval in milliseconds between successive
sending of the DiagnosticFrames as an Unsigned32.
NOTE This parameter is set individually for each end device. This allows tuning of the intervals to provide fast
detection of critical end devices while reducing the traffic from other end devices.
8.4.1.6 Ageing time
This configu
...
IEC 62439-4 ®
Edition 1.0 2010-02
INTERNATIONAL
STANDARD
NORME
INTERNATIONALE
Industrial communication networks – High availability automation networks –
Part 4: Cross-network Redundancy Protocol (CRP)
Réseaux de communication industriels – Réseaux d'automatisation à haute
disponibilité –
Partie 4: Protocole de redondance inter-réseau (CRP)
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form
or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from
either IEC or IEC's member National Committee in the country of the requester.
If you have any questions about IEC copyright or have an enquiry about obtaining additional rights to this publication,
please contact the address below or your local IEC member National Committee for further information.
Droits de reproduction réservés. Sauf indication contraire, aucune partie de cette publication ne peut être reproduite ni
utilisée sous quelque forme que ce soit et par aucun procédé, électronique ou mécanique, y compris la photocopie et les
microfilms, sans l'accord écrit de la CEI ou du Comité national de la CEI du pays du demandeur.
Si vous avez des questions sur le copyright de la CEI ou si vous désirez obtenir des droits supplémentaires sur cette
publication, utilisez les coordonnées ci-après ou contactez le Comité national de la CEI de votre pays de résidence.
IEC Central Office Tel.: +41 22 919 02 11
3, rue de Varembé Fax: +41 22 919 03 00
CH-1211 Geneva 20 info@iec.ch
Switzerland www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigenda or an amendment might have been published.
Useful links:
IEC publications search - www.iec.ch/searchpub Electropedia - www.electropedia.org
The advanced search enables you to find IEC publications The world's leading online dictionary of electronic and
by a variety of criteria (reference number, text, technical electrical terms containing more than 30 000 terms and
committee,…). definitions in English and French, with equivalent terms in
It also gives information on projects, replaced and additional languages. Also known as the International
withdrawn publications. Electrotechnical Vocabulary (IEV) on-line.
IEC Just Published - webstore.iec.ch/justpublished Customer Service Centre - webstore.iec.ch/csc
Stay up to date on all new IEC publications. Just Published If you wish to give us your feedback on this publication
details all new publications released. Available on-line and or need further assistance, please contact the
also once a month by email. Customer Service Centre: csc@iec.ch.
A propos de la CEI
La Commission Electrotechnique Internationale (CEI) est la première organisation mondiale qui élabore et publie des
Normes internationales pour tout ce qui a trait à l'électricité, à l'électronique et aux technologies apparentées.
A propos des publications CEI
Le contenu technique des publications de la CEI est constamment revu. Veuillez vous assurer que vous possédez
l’édition la plus récente, un corrigendum ou amendement peut avoir été publié.
Liens utiles:
Recherche de publications CEI - www.iec.ch/searchpub Electropedia - www.electropedia.org
La recherche avancée vous permet de trouver des Le premier dictionnaire en ligne au monde de termes
publications CEI en utilisant différents critères (numéro de électroniques et électriques. Il contient plus de 30 000
référence, texte, comité d’études,…). termes et définitions en anglais et en français, ainsi que
Elle donne aussi des informations sur les projets et les les termes équivalents dans les langues additionnelles.
publications remplacées ou retirées. Egalement appelé Vocabulaire Electrotechnique
International (VEI) en ligne.
Just Published CEI - webstore.iec.ch/justpublished
Service Clients - webstore.iec.ch/csc
Restez informé sur les nouvelles publications de la CEI.
Just Published détaille les nouvelles publications parues. Si vous désirez nous donner des commentaires sur
Disponible en ligne et aussi une fois par mois par email. cette publication ou si vous avez des questions
contactez-nous: csc@iec.ch.
IEC 62439-4 ®
Edition 1.0 2010-02
INTERNATIONAL
STANDARD
NORME
INTERNATIONALE
Industrial communication networks – High availability automation networks –
Part 4: Cross-network Redundancy Protocol (CRP)
Réseaux de communication industriels – Réseaux d'automatisation à haute
disponibilité –
Partie 4: Protocole de redondance inter-réseau (CRP)
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
COMMISSION
ELECTROTECHNIQUE
PRICE CODE
INTERNATIONALE
CODE PRIX X
ICS 25.040, 35.040 ISBN 978-2-83220-534-1
– 2 – 62439-4 IEC:2010
CONTENTS
FOREWORD . 4
INTRODUCTION . 6
1 Scope . 7
2 Normative references . 7
3 Terms, definitions, abbreviations, acronyms, and conventions . 7
3.1 Terms and definitions . 7
3.2 Abbreviations and acronyms . 7
3.3 Conventions . 7
4 CRP overview . 8
5 CRP nodes . 8
6 CRP LAN topology . 8
7 CRP key components . 10
7.1 CRP general protocol operation . 10
7.1.1 Doubly-attached nodes (DANCs) . 10
7.1.2 Singly attached nodes . 11
7.2 CRP statistics . 11
7.3 CRP Network_Status_Table . 12
7.4 CRP recovery time . 15
7.4.1 Recovery time calculation . 15
7.4.2 Maximum repair time . 16
7.5 CRP multicast messages . 16
7.5.1 Sending . 16
7.5.2 Receiving . 16
7.6 CRP unicast messages . 16
7.6.1 Sending a frame . 16
7.6.2 Receiving a frame. 17
7.7 CRP redundancy information . 17
7.8 CRP redundancy statistics. 17
8 CRP protocol . 17
8.1 CRP singly attached node . 17
8.2 CRP doubly attached node . 17
8.3 CRP Installation, configuration and repair . 17
8.4 CRP LRE model attributes . 18
8.4.1 Attribute specification . 18
8.4.2 Impact of LRE configuration attributes . 22
8.5 CRP encoding of the DiagnosticFrame . 23
8.6 CRP Encoding of the AnnunciationFrame . 24
8.7 CRP common protocol . 26
8.7.1 AnnunciationFrames . 26
8.7.2 DiagnosticFrames . 26
8.7.3 Detection of duplicate Node_Index . 27
8.7.4 Detection of duplicate Node_Name . 27
8.7.5 Failure detection based on arrival of DiagnosticFrames . 27
8.7.6 Status array entries . 28
8.7.7 Other failure detection . 28
8.8 CRP operational messages . 28
62439-4 IEC:2010 – 3 –
8.8.1 Load balancing . 28
8.8.2 LAN and port maintenance . 28
8.8.3 Selecting transmission path . 29
8.8.4 Selecting reception adapter . 30
8.8.5 Crossed_cable_status . 30
8.8.6 Configured parameters . 30
8.9 CRP services . 31
8.9.1 Configuration options and services . 31
8.9.2 LAN redundancy service specification . 31
9 CRP Management Information Base (MIB) . 38
Bibliography . 41
Figure 1 – CRP stack architecture . 8
Figure 2 – CRP single LAN topography . 9
Figure 3 – CRP double LAN topology . 9
Figure 4 – CRP DiagnosticFrame pair approach . 10
Figure 5 – CRP example system . 11
Table 1 – CRP example Network_Status_Table for node 3 . 11
Table 2 – CRP Network_Status_Table for singly connected nodes . 13
Table 3 – CRP Network_Status_Table for DANC . 14
Table 4 – CRP Path_Status_Sets . 21
Table 5 – CRP example of a Path_Status_Set . 21
Table 6 – CRP configuration attributes impact on LAN operation . 22
Table 7 – CRP DiagnosticFrame format . 23
Table 8 – CRP AnnunciationFrame . 24
Table 9 – CRP unicast destination address handling . 29
Table 10 – CRP configuration parameters . 30
Table 11 – CRP Set_Assignment_Info service parameters . 31
Table 12 – CRP Get_Redundancy_Info service . 33
Table 13 – CRP Set_Redundancy_Info service . 35
Table 14 – CRP Get_Redundancy_Statistics service . 37
– 4 – 62439-4 IEC:2010
INTERNATIONAL ELECTROTECHNICAL COMMISSION
____________
INDUSTRIAL COMMUNICATION NETWORKS –
HIGH AVAILABILITY AUTOMATION NETWORKS –
Part 4: Cross-network Redundancy Protocol (CRP)
FOREWORD
1) The International Electrotechnical Commission (IEC) is a worldwide organization for standardization comprising
all national electrotechnical committees (IEC National Committees). The object of IEC is to promote
international co-operation on all questions concerning standardization in the electrical and electronic fields. To
this end and in addition to other activities, IEC publishes International Standards, Technical Specifications,
Technical Reports, Publicly Available Specifications (PAS) and Guides (hereafter referred to as “IEC
Publication(s)”). Their preparation is entrusted to technical committees; any IEC National Committee interested
in the subject dealt with may participate in this preparatory work. International, governmental and non-
governmental organizations liaising with the IEC also participate in this preparation. IEC collaborates closely
with the International Organization for Standardization (ISO) in accordance with conditions determined by
agreement between the two organizations.
2) The formal decisions or agreements of IEC on technical matters express, as nearly as possible, an international
consensus of opinion on the relevant subjects since each technical committee has representation from all
interested IEC National Committees.
3) IEC Publications have the form of recommendations for international use and are accepted by IEC National
Committees in that sense. While all reasonable efforts are made to ensure that the technical content of IEC
Publications is accurate, IEC cannot be held responsible for the way in which they are used or for any
misinterpretation by any end user.
4) In order to promote international uniformity, IEC National Committees undertake to apply IEC Publications
transparently to the maximum extent possible in their national and regional publications. Any divergence
between any IEC Publication and the corresponding national or regional publication shall be clearly indicated in
the latter.
5) IEC itself does not provide any attestation of conformity. Independent certification bodies provide conformity
assessment services and, in some areas, access to IEC marks of conformity. IEC is not responsible for any
services carried out by independent certification bodies.
6) All users should ensure that they have the latest edition of this publication.
7) No liability shall attach to IEC or its directors, employees, servants or agents including individual experts and
members of its technical committees and IEC National Committees for any personal injury, property damage or
other damage of any nature whatsoever, whether direct or indirect, or for costs (including legal fees) and
expenses arising out of the publication, use of, or reliance upon, this IEC Publication or any other IEC
Publications.
8) Attention is drawn to the Normative references cited in this publication. Use of the referenced publications is
indispensable for the correct application of this publication.
International Standard IEC 62439-4 has been prepared by subcommittee 65C: Industrial
Networks, of IEC technical committee 65: Industrial-process measurement, control and
automation.
This standard cancels and replaces IEC 62439 published in 2008. This first edition constitutes
a technical revision.
This edition includes the following significant technical changes with respect to IEC 62439
(2008):
– adding a calculation method for RSTP (rapid spanning tree protocol, IEEE 802.1Q),
– adding two new redundancy protocols: HSR (High-availability Seamless Redundancy)
and DRP (Distributed Redundancy Protocol),
– moving former Clauses 1 to 4 (introduction, definitions, general aspects) and the
Annexes (taxonomy, availability calculation) to IEC 62439-1, which serves now as a
base for the other documents,
– moving Clause 5 (MRP) to IEC 62439-2 with minor editorial changes,
– moving Clause 6 (PRP) was to IEC 62439-3 with minor editorial changes,
62439-4 IEC:2010 – 5 –
– moving Clause 7 (CRP) was to IEC 62439-4 with minor editorial changes, and
– moving Clause 8 (BRP) was to IEC 62439-5 with minor editorial changes,
– adding a method to calculate the maximum recovery time of RSTP in a restricted
configuration (ring) to IEC 62439-1 as Clause 8,
– adding specifications of the HSR (High-availability Seamless Redundancy) protocol,
which shares the principles of PRP to IEC 62439-3 as Clause 5, and
– introducing the DRP protocol as IEC 62439-6.
This bilingual version (2012-12) corresponds to the monolingual English version, published in
2010-02.
The text of this standard is based on the following documents:
FDIS Report on voting
65C/583/FDIS 65C/589/RVD
Full information on the voting for the approval of this standard can be found in the report on
voting indicated in the above table.
This International Standard is to be read in conjunction with IEC 62439-1:2010, Industrial
communication networks – High availability automation networks – Part 1: General concepts
and calculation methods.
A list of the IEC 62439 series can be found, under the general title Industrial communication
networks – High availability automation networks, on the IEC website.
The French version of this standard has not been voted upon.
This publication has been drafted in accordance with ISO/IEC Directives, Part 2.
The committee has decided that the contents of this amendment and the base publication will
remain unchanged until the stability date indicated on the IEC web site under
"http://webstore.iec.ch" in the data related to the specific publication. At this date, the
publication will be
• reconfirmed,
• withdrawn,
• replaced by a revised edition, or
• amended.
– 6 – 62439-4 IEC:2010
INTRODUCTION
The IEC 62439 series specifies relevant principles for high availability networks that meet the
requirements for industrial automation networks.
In the fault-free state of the network, the protocols of the IEC 62439 series provide
ISO/IEC 8802-3 (IEEE 802.3) compatible, reliable data communication, and preserve
determinism of real-time data communication. In cases of fault, removal, and insertion of a
component, they provide deterministic recovery times.
These protocols retain fully the typical Ethernet communication capabilities as used in the
office world, so that the software involved remains applicable.
The market is in need of several network solutions, each with different performance
characteristics and functional capabilities, matching diverse application requirements. These
solutions support different redundancy topologies and mechanisms which are introduced in
IEC 62439-1 and specified in the other Parts of the IEC 62439 series. IEC 62439-1 also
distinguishes between the different solutions, giving guidance to the user.
The IEC 62439 series follows the general structure and terms of IEC 61158 series.
The International Electrotechnical Commission (IEC) draws attention to the fact that it is
claimed that compliance with this document may involve the use of a patent concerning a full-
duplex Ethernet in which each device periodically transmits a message representing its
connectivity to the other devices , allowing them to choose a redundant path in case of failure,
given in 7.1 and 7.3.
IEC takes no position concerning the evidence, validity and scope of this patent right.
The holder of this patent right has assured the IEC that he/she is willing to negotiate licences
either free of charge or under reasonable and non-discriminatory terms and conditions with
applicants throughout the world. In this respect, the statement of the holder of this patent
right is registered with IEC. Information may be obtained from:
Fieldbus Foundation
9005 Mountain Ridge Drive – Bowie Bldg
Suite 190
Austin, TX 78759
USA
Attention is drawn to the possibility that some of the elements of this document may be the
subject of patent rights other than those identified above. IEC shall not be held responsible for
identifying any or all such patent rights.
ISO (www.iso.org/patents) and IEC (http://www.iec.ch/tctools/patent_decl.htm) maintain on-
line data bases of patents relevant to their standards. Users are encouraged to consult the
data bases for the most up to date information concerning patents.
62439-4 IEC:2010 – 7 –
INDUSTRIAL COMMUNICATION NETWORKS –
HIGH AVAILABILITY AUTOMATION NETWORKS –
Part 4: Cross-network Redundancy Protocol (CRP)
1 Scope
The IEC 62439 series is applicable to high-availability automation networks based on the
ISO/IEC 8802-3 (IEEE 802.3) (Ethernet) technology.
This part of the IEC 62439 series specifies a redundancy protocol that is based on the
duplication of the network, the redundancy protocol being executed within the end nodes, as
opposed to a redundancy protocol built in the switches. The switchover decision is taken in
each node individually. The cross-network connection capability enables single attached end
nodes to be connected on either of the two networks.
2 Normative references
The following referenced documents are indispensable for the application of this document.
For dated references, only the edition cited applies. For undated references, the latest edition
of the referenced document (including any amendments) applies.
IEC 60050-191, International Electrotechnical Vocabulary – Chapter 191: Dependability and
quality of service
IEC 62439-1:2010, Industrial communication networks – High availability automation networks
– Part 1: General concepts and calculation methods
ISO/IEC 8802-3:2000, Information technology – Telecommunications and information
exchange between systems – Local and metropolitan area networks – Specific requirements –
Part 3: Carrier sense multiple access with collision detection (CSMA/CD) access method and
physical layer specifications
3 Terms, definitions, abbreviations, acronyms, and conventions
3.1 Terms and definitions
For the purposes of this document, the terms and definitions given in IEC 60050-191, as well
as in IEC 62439-1, apply.
3.2 Abbreviations and acronyms
For the purposes of this document, the abbreviations and acronyms given in IEC 62439-1,
apply, in addition to the following:
DANC Doubly attached node implementing CRP
SANC Singly attached node implementing CRP
3.3 Conventions
This document follows the conventions defined in IEC 62439-1.
– 8 – 62439-4 IEC:2010
4 CRP overview
This International Standard specifies a redundancy protocol that is based on the duplication of
the network, the redundancy protocol being executed within the end nodes, as opposed to a
redundancy protocol built in the switches. There is no central “redundancy manager”; instead
each node operates autonomously. The cross-network connection capability enables single
attached end nodes to be connected on either of the two networks.
5 CRP nodes
There exists different classes of nodes that may interoperate on the same network:
• DANCs (Doubly Attached Nodes) able to execute the CRP protocol, and having two ports
for the purpose of redundancy.
• SANCs (Singly Attached Nodes) able to execute the CRP protocol, and having only one
port.
• SAN (Singly Attached Nodes), such as commercially available laptops or file servers that
are not aware of the CRP protocol. Even though not aware, SANs can also have access to
the redundancy management data for the purpose of monitoring and network management.
In DANCs, these two ports are referred to as port A and port B. They are managed by the Link
Redundancy Entity (LRE), whose implementation is not prescribed, and which is conceptually
located in the communication stack below the network layer, as illustrated in Figure 1.
upper layers
UDP TCP
real-time
stack
IP
link redundancy entity
driver driver
IEC 8802-3 MAC and PHY IEC 8802-3 MAC and PHY
LAN_A LAN_B
IEC 380/10
Figure 1 – CRP stack architecture
This arrangement provides application-level transparency. The LRE hides redundancy from
the upper layers and manages the ports. A node can therefore operate with only one IP
address.
6 CRP LAN topology
Implementing the redundancy protocol within the DANCs allows a variety of topologies, using
switches that are not aware of the redundancy protocol and could implement another
redundancy protocol such as RSTP.
This International Standard does not dictate the topology, but does allow for configuration of
node behaviour to accommodate the characteristics of the specific LAN being used.
Nodes may be attached to the same or to different switches of a single LAN, which may or
may not include redundant links, as Figure 2 shows. Attaching both links to the same switch
only provides leaf link failure resilience.
62439-4 IEC:2010 – 9 –
SANSAN
leaf link
inter-switch link
inter-switch port
switch
LAN
swswiittchch switch
leaf link
edge ports
DADANCNC DADANCNC DADANCNC
IEC 381/10
Figure 2 – CRP single LAN topography
Nodes may be attached to separate LANs, which are basically failure-independent, but may
be connected by an inter-LAN link, as Figure 3 shows.
SANSAN
DADANCNC
DADANCNC
A1A1
inter-LAN links
top switch top switch
LAN_A
LAN_B
switch
switch switch switch
SANSANCC SANSAN SANSAN
DADANCNC DADANCNC DADANCNC DADANCNC
A2A2 B1B1 B2B2
IEC 382/10
Figure 3 – CRP double LAN topology
When there is only one LAN, a node is attached through both its ports to that LAN. In double
LAN configurations, port A is normally connected to LAN_A and port B to LAN_B. Connecting
a node twice to the same network tree or connecting port A to LAN_B and vice-versa may be
a configuration error called “crossed cables”.
– 10 – 62439-4 IEC:2010
7 CRP key components
7.1 CRP general protocol operation
7.1.1 Doubly-attached nodes (DANCs)
DiagnosticFrames are used to exercise communication paths and to assess the network
health. A DiagnosticFrame contains a summary of the reporting node’s view of the network
health and status, including its own port.
Annunciation frames are sent to announce the existence of the node. These frames are
described in 8.7.1
Each DANC sends a pair of DiagnosticFrames periodically, every T , on both of its ports, as
dmi
Figure 4 shows. Each DANC that receives one DiagnosticFrame on one port expects the other
message of the pair on the other port. (On a single LAN, the node receives both messages on
both ports.) If a node receives no message or if it does not receive the second
DiagnosticFrame on the other port before receiving several more DiagnosticFrames on the
same port, it records a fault in the row of the Network_Status_Table for the corresponding
node.
T
dmi dmi
T
… time
node i
LAN A LAN B
diagnostic messages
time
node j
IEC 383/10
Figure 4 – CRP DiagnosticFrame pair approach
In practice the receiving node compares the Sequence_Number of the last message received
on the other port with that just received. If the difference in Sequence_Number is more than
the configured Max_Sequence_Number_Difference, a fault is recorded.
Based upon the diagnostic frames it receives from all other nodes, each node can select
which port to use to send messages to a particular node, on a node-per-node basis.
EXAMPLE Figure 5 shows four nodes connected to two redundant LANs which are not connected with each other.
Node 3 and node 4 have link failures. The diagnostic frame handling on node 3 is detailed.
Each node broadcasts its view on the port status of all nodes it detected in addition to other status information
(source MAC address, Node_Index, etc.).
Node 3 maintains a Network_Status_Table populated by the DiagnosticFrames from nodes 1, 2, and 4, as shown in
Table 1.
The port status values are OK to indicate a working condition, and X for a don’t know or bad condition.
According to the first three columns of the Network_Status_Table in Table 1, node 3 sends out its
Received_DiagnosticFrame for port A as [OK, OK, OK, OK] and for port B as [OK, OK, OK, X].
Similarly, node 1 sends out its view on nodes 2, 3, and 4 as [OK, OK, X, OK] for port A and [OK, OK, OK, X] for
port B. Node 3’s adapter A and adapter B status is populated as shown in Table 1.
The row for node 3 is set based on its own testing, but in this example there is no testing, so all appears to be OK.
62439-4 IEC:2010 – 11 –
node node node node
1 2 3 4
A B A B A B A B
X
X
LAN A
LAN B
IEC 384/10
Node 3: Interface A partial failure; can receive, but not transmit
Node 4: Interface B complete failure.
Figure 5 – CRP example system
Table 1 – CRP example Network_Status_Table for node 3
Reported status extracted from
Received_DiagnosticFrame
DiagnosticFrame
Node_Index Received on Received on Node 3 Received Node 3 Received
Number adapter A adapter B on adapter A on adapter B
Received from Received from Received from Received from
a a a a
adapter A/B adapter A /B adapter A/B adapter A /B
1 OK/X X/OK X/X X/OK
2 OK/X X/OK X/X X/OK
3 (this node) OK/X X/OK OK/X X/OK
4 OK/X X/X X/X X/X
a
The cross statuses are all “X” for a dual LAN without inter-LAN link. That is, messages originating from a
port A are never heard on a port B and vice versa.
The DiagnosticFrames provide therefore:
• minimal assurance of a working path. With each message received, the receiving node
can assume that its own receiver, the reporting node’s transmitter, and the path through
the network are all working;
• assurance that the reverse path is working. With each message received, the receiving
node can extract the reporting node’s view of the receiving node and thus determine
whether its own transmitter, the reporting node’s receiver, and the path through the
network are all working.
This allows the system administrator to construct a variety of coverage strategies such as:
• ensure that all paths between all nodes are tested;
• send to a single node. This node may be a “diagnostic node” that only provides detection
of faults between each node and the diagnostic node.
7.1.2 Singly attached nodes
Singly attached nodes (SANCs) also can send and receive DiagnosticFrames. If they choose
to transmit them, the DANCs and SANCs are aware of their presence and attempt to ensure
that messages reach them. The Network_Status_Table built by the SANC allows it to build
DiagnosticFrames and also, in a single LAN, to select a path to a node with a failed port.
7.2 CRP statistics
Statistics should be gathered and presented for each port, by a system management
application. Examples of presentation methods are a graphical user interface for visual
reporting of network errors or via SNMP.
– 12 – 62439-4 IEC:2010
7.3 CRP Network_Status_Table
Each node maintains a Network_Status_Table that holds the node’s view of the network.
This table is used to assist with selection of which port(s) to use for transmission to a
destination address and which port(s) to use for reception of multicast transmissions.
The Network_Status_Table is constructed from received DiagnosticFrames as well as from
other locally acquired and sometimes vendor-specific diagnostic information, for example
built-in tests, link integrity pulse, etc.
This table is conceptual and is described to assist with understanding of the concepts in this
specification and no specific implementation is prescribed or implied. It is therefore not visible
to network management; however, the contents of the table are reflected in the
DiagnosticFrames.
The Network_Status_Table in each node keeps for each node, and in some cases for each
port of each node the following information:
a) for each remote reporting node,
• remote node identification (name, index in a table, etc.);
• diagnosis message interval;
• apparent number of ports (1.N);
• for each port, in nominal order (e.g., port to LAN_A before port to LAN_B) the MAC
address of the remote port.
b) for each pairing of local and remote ports (e.g., A/B, B/A, A/A or B/B)
• time of latest message receipt;
• sequence number of latest received message;
• receipt of DiagnosticFrame from remote port within time;
• remote port's link status from last received DiagnosticFrame.
c) for assessment of remote connectivity
• inferred status of set of ports (functioning properly, cross-connected, .);
• preferred port pairing.
EXAMPLE Table 2 shows a Network_Status_Table for a SANC and Table 3 a Network_Status_Table for a DANC.
62439-4 IEC:2010 – 13 –
Table 2 – CRP Network_Status_Table for singly connected nodes
Reporting node information
Messages received here sent from reporting node’s
Messages received here sent from reporting node’s adapter A
adapter B
Reported
Sequence_ status
Sequence_ Reported status
Node_Index number of Diagnostic extracted
Number of Interval number of Diagnostic extracted from
and Time Time Last Frame from
adap ters (ms) last message Frame received DiagnosticFrame
Node_Name message received Diagnostic
received for AA
received Frame for
BA
1 2 000 Time Number OK OK
FD001
1 2 000 Time Number OK OK
FD002
1 1 000 Time Number OK OK
LD001
1 5 000 Time Number OK OK
LD003
2 5 000 Time Number OK OK Time Number OK OK
1 5 000 Time Number OK OK
– 14 – 62439-4 IEC:2010
Table 3 – CRP Network_Status_Table for DANC
a
Messages received here on adapter A B
Reporting node information Assessment for reporting node
b c d
A Sent from reporting node’s adapter B A B
Reported
Sequence_ status
Addresses Selected
Node_Index Number Number of Diagnostic extracted
for Interval Crossed_ transmission
and of … Time last Frame from … …
adapters (ms) cable_status adapter and
Node_Name adapters message received Diagnostic
A, B receiving adapter
received Frame
for BA
1 addr1.A, 2 2 000 … Time Number OK OK … … OK BB
addr1.B
FD001
2 addr2.A, 2 2 000 … Time Number OK OK … … OK AA
addr2.B
FD002
3 addr3.A, 2 1 000 … Time Number OK OK … … OK AA
addr3.B
LD001
5 addr5.A, 2 5 000 … Time Number OK OK … … OK AA
addr5.B
LD003
6 addr6.A, 2 5 000 … Time Number OK OK … … OK BB
addr6.B
7 addr7.A 1 5 000 OK N/A N/A N/A N/A NA NA OK AA
a Messages received here on adapter B.
b Sent from reporting node’s adapter A.
c Sent from reporting node’s adapter A.
d Sent from reporting node’s adapter B.
62439-4 IEC:2010 – 15 –
7.4 CRP recovery time
7.4.1 Recovery time calculation
The maximum recovery time from a fault is:
t = (1+Max_Sequence_Number_Difference) × t + t + t
rec dmi path proc
where
t is the recovery time;
rec
t is the time interval of diagnostic frames;
dmi
t is the latency of frame delivery of the network; and
path
t is the processing time of the receiving LAN redundancy entity.
proc
The value of t is determined by the amount of time the packet takes to travel through the
path
network. In a switched network the worst case transition time through a FIFO based switch is
dependent on the number of ports of the switch. It may be necessary to use QoS to respect
this delay. The arrival of the packet of interest after all other packets bound for the destination
interface of interest produces the worst case delay. In this case the delay is:
= N × t × S × 8
t
sw ports rate pak
where
t is the delay time in a single switch;
sw
N is the number of switch ports on a single switch;
ports
t is the 1/data rate; and
rate
S is the max packet size in bytes.
pak
EXAMPLE The following are examples of recovery time for various end node speeds.
Processing time is dominated by the interrupt response time of the end node. For this example an interrupt time of
15 µs is used.
Given: t = 400 ms, t = 15 µs, Max_Sequence_Number_Difference = 1, N = 24 and S = 1 522 bytes for
dmi proc ports pak
all cases.
For all end nodes with 10 Mbit/s bandwidth:
–7
t = 24 × 10 × 1 522 × 8 = 0,029 s
sw
In a single redundant LAN using 6 switches of 24 ports each, and assuming the diagnostic packet traverses all
switches, the total t is 6 × t = 0,174 s.
path sw
Thus,
t = 2 × 0,40 + 0,174 + 0,000 015 s
rec
For this example the maximum processing time is negligible thus:
t = 0,974 s
rec
For all end nodes with 100 Mbps bandwidth, the equation scales directly thus
–8
t = 24 × 10 × 1 522 × 8 = 0,002 9 s and for 6 paths = 0,014 6 s
sw
– 16 – 62439-4 IEC:2010
Thus
t = 2 × 0,40 + 0,017 4 + 0,000 015
rec
t = 0,817 4 s
rec
7.4.2 Maximum repair time
For faults such as cable breaks there is no repair time. However, in a multiple interface switch
topology repairing a failed interface requires replacing the entire switch. In this case powering
the switch down to replace it causes additional network disruptions in nodes that have paths
though that switch. So as a worst case, the repair time is identical to the recovery time from a
fault described in 7.4.1.
7.5 CRP multicast messages
7.5.1 Sending
Multicast messages are always sent from both ports (if both are operational). They carry as
source MAC address the address of the port over which they have been sent.
This applies in particular to the DiagnosticFrames and AnnunciationFrames
7.5.2 Receiving
On some network topologies, a single operational multicast message can be received on each
of a node’s ports. If a node has two ports, the node may be configured to use the
Network_Status_Table to select a reception port for multicast operational messages, and so
reduce its interrupt and message processing load. Duplicates still need to be detected and
discarded.
7.6 CRP unicast messages
7.6.1 Sending a frame
Each unicast frame sent by a CRP redundancy participating node is sent from only one port.
When the LRE receives a frame from the IP stack (or other upper layer), it examines the
frame, identifies the destination MAC address and looks up for that address in the
Network_Status_Table.
If the A-A path to the destination is OK in the table, the LRE sends the frame to port A, which
inserts its address as a source MAC address.
If A-A path is NOT OK in the table, but the A-B path is OK, then the LRE substitutes the B
MAC address of the destination node in the frame and sends the frame to port A, which
inserts its address as a source MAC address.
If the A-A and A-B paths are both NOT OK, but the B-A path is OK, the LRE sends the frame
to port B, which inserts its address as a source MAC address.
If the A-A, A-B and B-A paths are NOT OK, the LRE substitutes the B MAC address of the
destination node in the frame and send the frame to port B, which inserts its address as a
source MAC address.
If the message is broadcast or multicast, the LRE sends the frame to A if A is working and to
B if A is not working.
62439-4 IEC:2010 – 17 –
7.6.2 Receiving a frame
When the LRE receives a frame from the physical layer over port B, it substitutes the
destination MAC B to MAC A address, before forwarding the frame up to the stack. Some IP
stacks are sensitive to the IP/MAC association being correct. The IP address is not
manipulated/substituted in any way on neither transmit nor receive.
7.7 CRP redundancy information
Each node is configured by a user definable mechanism. The configuration determines the
details of how each node transmits DiagnosticFrames and how it uses the
Network_Status_Table to select transmission and reception ports. This information can be
obtained from another node by listening to AnnunciationFrames.
7.8 CRP redundancy statistics
Any node (even if it is not CRP enabled) may gather and display the health of the nodes in the
network by subscribing to the multicast address used for the DiagnosticFrames. The
application may then generate a Network_Status_Table and use it in any way.
8 CRP protocol
8.1 CRP singly attached node
SANCs shall have one port and shall participate in the CRP redundancy protocol.
8.2 CRP doubly attached node
DANCs shall have two ports and participate in the CRP redundancy protocol.
8.3 CRP Installation, configuration and repair
DANC shall be connected to a single redundant LAN with redundant leaves or to a redundant
LAN without redundant leaves as described in Clause 6.
NOTE 1 The former connection provides four possible paths to other doubly connected nodes while the latter
provides only two.
In order to achieve switch and leaf link redundancy, each port of a DANC shall be connected
to a different switch.
SANC and SAN may be connected to any LAN, but preferably all SANCs and SAN shall be
connected to the same LAN.
The assigned Node_Index and Node_Name shall be unique in the network.
The maximum Node_Index is 2 048; the value of 0 shall not be used for Node_Index.
The maximum number of nodes is 2 047.
NOTE 2 This number is limited by the size of the array of status available in the diagnostic packet.
The maximum number of network switch layers of a single redundant LAN with redundant
leaves shall be 3.
NOTE 3 This limitation
...










Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...