0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # IEC 62439-3 High-availability Seamless Redundancy
0004 #
0005
0006 config HSR
0007 tristate "High-availability Seamless Redundancy (HSR & PRP)"
0008 help
0009 This enables IEC 62439 defined High-availability Seamless
0010 Redundancy (HSR) and Parallel Redundancy Protocol (PRP).
0011
0012 If you say Y here, then your Linux box will be able to act as a
0013 DANH ("Doubly attached node implementing HSR") or DANP ("Doubly
0014 attached node implementing PRP"). For this to work, your Linux box
0015 needs (at least) two physical Ethernet interfaces.
0016
0017 For DANH, it must be connected as a node in a ring network together
0018 with other HSR capable nodes. All Ethernet frames sent over the HSR
0019 device will be sent in both directions on the ring (over both slave
0020 ports), giving a redundant, instant fail-over network. Each HSR node
0021 in the ring acts like a bridge for HSR frames, but filters frames
0022 that have been forwarded earlier.
0023
0024 For DANP, it must be connected as a node connecting to two
0025 separate networks over the two slave interfaces. Like HSR, Ethernet
0026 frames sent over the PRP device will be sent to both networks giving
0027 a redundant, instant fail-over network. Unlike HSR, PRP networks
0028 can have Singly Attached Nodes (SAN) such as PC, printer, bridges
0029 etc and will be able to communicate with DANP nodes.
0030
0031 This code is a "best effort" to comply with the HSR standard as
0032 described in IEC 62439-3:2010 (HSRv0) and IEC 62439-3:2012 (HSRv1),
0033 and PRP standard described in IEC 62439-4:2012 (PRP), but no
0034 compliancy tests have been made. Use iproute2 to select the protocol
0035 you would like to use.
0036
0037 You need to perform any and all necessary tests yourself before
0038 relying on this code in a safety critical system!
0039
0040 If unsure, say N.