HSR/PRP RedBox
1. Introduction
The High-availability Redundancy Protocol (HSR) and the Parallel Redundancy Protocol (PRP) can be used to provide redundancy in the network. The switch supports a number of Redundancy Box (RedBox) instances for this purpose.
HSR and PRP are described in the IEC-62439-3 standard. The following terminology is used:
-
SAN: Singly Attached Node.
-
DAN: Doubly Attached Node.
-
DANH: DAN with HSR.
-
DANP: DAN with PRP.
-
VDANH: Virtual DANH (HSR node via RedBox).
-
VDANP: Virtual DANP (PRP node via RedBox).
-
HSR-SAN: RedBox mode used for connecting SANs to HSR network.
-
PRP-SAN: RedBox mode used for connecting SANs to PRP network.
-
HSR-PRP: RedBox mode used for connecting HSR and PRP networks.
-
HSR-HSR: RedBox mode used for connecting HSR networks.
The diagram below shows PRP and HSR networks connected using RedBoxes. The network has the following parts seen from left to right:
-
SANs (left)
-
SANs connected to PRP-SAN RedBox become virtual PRP nodes.
-
-
PRP Network
-
Network A and B are independent switched networks.
-
RedBox in PRP-SAN mode provides redundancy through network A and B.
-
DANP uses network A and B directly for redundancy.
-
-
HSR Network
-
RedBoxes in HSR-PRP mode are connected to network A/B and HSR ring.
-
RedBox in HSR-SAN mode provides redundancy though HSR ring.
-
DANH uses HSR ring for redundancy.
-
-
SANs (right)
-
SANs connected to HSR-SAN RedBox become virtual HSR nodes.
-
| | | | | | SANs | PRP Network | HSR Network | SANs | | | | | | +---------+ | +---------+ +---------+ | +---------+ +---------+ | +---------+ | SAN +-----+ PRP-SAN +-------+ | | | HSR-PRP | | HSR-SAN +-----+ SAN | | VDANP | | | RedBox | | Net A +-----+ RedBox |<--->| RedBox | | | VDANH | | | |+--+ +---+ +-+ | | | A | | +--+| | | +---------+ || +---------+ | | +---------+ | +---------+ +---------+ || +---------+ || | | | ^ ^ || || +-|-+ | | | || || | | | v v || +---------+ || +---------+ | | +---------+ | +---------+ +---------+ || +---------+ | SAN | || | +-+ +---+ | | | HSR-PRP | | | || | SAN | | VDANP +--+ | DANP | | Net B +-----+ RedBox |<--->| DANH | +--+ VDANH | | | | | +-------+ | | | B | | | | | | +---------+ | +---------+ +---------+ | +---------+ +---------+ | +---------+ | | | | | |
2. RedBox Configuration
When a RedBox is configured, these mandatory parameters must be set:
-
RedBox mode:
-
PRP-SAN: RedBox connects PRP network to SANs.
-
HSR-SAN: RedBox connects HSR network to SANs.
-
HSR-PRP: RedBox connects HSR and PRP networks.
-
HSR-HSR: RedBox connects two HSR networks.
-
-
Port A:
-
The bridge port is associated with RedBox port A.
-
The bridge port is active via RedBox port C (aka. interlink).
-
-
Port B:
-
The bridge port is associated with RedBox port B.
-
The bridge port is unused (not forwarding).
-
The diagram below shows a configuration example.
-
RedBox 0:
-
Port 1-8 are capable as RedBox ports.
-
Port 1 has been selected as RedBox port A.
-
Port 2 has been selected as RedBox port B.
-
-
RedBox 1:
-
Port 9-16 are capable as RedBox ports.
-
RedBox is disabled.
-
+------------------------------------------------------------------+ |+----------------------------------------------------------------+| || Bridge || |+--------+--+--+--+--+--+--+--+----+--+--+--+--+--+--+--+--------+| | | | | | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | | +-----+ | | | | | | | | | | | | | | | | | C | | | | | | | | | | | | | | C | |+--+---+ | | | | | | | | | | | | | | +--+---+| ||RedBox| | | | | | | | | | | | | | | |RedBox|| || #0 | | | | | | | | | | | | | | | | #1 || |+-+--+-+ | | | | | | | | | | | | | | +-+--+-+| | A B | | | | | | | | | | | | | | A B | | | +------+ | | | | | | | | | | | | | | | | +------+ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | +---------+--+--+--+--+--+--+--+----+--+--+--+--+--+--+--+---------+ | | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | | | | | | | | | | | | | | | |
The capable ports of RedBox 0 are retrieved as shown below.
FETCH request message:
- "/mchp-velocitysp-redbox:redbox/redbox-capable-list[id='0']"
FETCH response message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-capable-list"
: id: 0
capable-port-list:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '29'
The RedBox mandatory parameters are setup as shown below.
IPATCH request message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list"
: id: 0
config:
mode: hsr-san
port-a: 1
port-b: 2
The RedBox configuration is retrieved as shown below.
FETCH request message:
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/config"
FETCH response message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/config"
: mode: hsr-san
port-a: 1
port-b: 2
net-id: 0
lan-id: lan-a
nt-age-time: 60
pnt-age-time: 60
dd-age-time: 40
sv-forward-rx-port-c: false
sv-forward-tx-port-c: false
3. RedBox Counters
The RedBox counters are retrieved as shown below after sending these frames to the system:
-
One HSR-tagged frame with SMAC 00-00-00-00-00-0A to port A (from DANH).
-
One HSR-tagged frame with SMAC 00-00-00-00-00-0B to port B (from DANH).
-
One untagged frame with SMAC 00-00-00-00-00-0C to port C (from SAN).
FETCH request message:
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/\
port-counters[port='port-a']"
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/\
port-counters[port='port-b']"
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/\
port-counters[port='port-c']"
FETCH response message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/port-counters"
: port: port-a
rx-local: '0'
rx-untagged: '0'
rx-tagged: '1'
rx-wrong-lan: '0'
rx-own: '0'
tx-local: '0'
tx-untagged: '0'
tx-tagged: '2'
tx-dupl-zero: '1'
tx-dupl-one: '0'
tx-dupl-multi: '0'
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/port-counters"
: port: port-b
rx-local: '0'
rx-untagged: '0'
rx-tagged: '1'
rx-wrong-lan: '0'
rx-own: '0'
tx-local: '0'
tx-untagged: '0'
tx-tagged: '2'
tx-dupl-zero: '2'
tx-dupl-one: '0'
tx-dupl-multi: '0'
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/port-counters"
: port: port-c
rx-local: '0'
rx-untagged: '1'
rx-tagged: '0'
rx-wrong-lan: '0'
rx-own: '0'
tx-local: '0'
tx-untagged: '2'
tx-tagged: '0'
tx-dupl-zero: '2'
tx-dupl-one: '0'
tx-dupl-multi: '0'
The RedBox counters are cleared as shown.
IPATCH request message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/control/clear-counters"
:
4. RedBox Node Table
The RedBox maintains a node table with source MAC addresses seen on port A/B. The node table is retrieved as shown below.
FETCH request message:
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/node-table"
FETCH response message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/node-table"
: - addr: 00-00-00-00-00-0A
type: dan
rx-a: 1
rx-wrong-lan-a: 0
rx-b: 0
rx-wrong-lan-b: 0
- addr: 00-00-00-00-00-0B
type: dan
rx-a: 0
rx-wrong-lan-a: 0
rx-b: 1
rx-wrong-lan-b: 0
5. RedBox Proxy Node Table
The RedBox maintains a proxy node table with source MAC addresses seen on port C. The proxy node table is retrieved as shown below.
FETCH request message:
- "/mchp-velocitysp-redbox:redbox/redbox-list[id='0']/proxy-node-table"
FETCH response message:
- ? "/mchp-velocitysp-redbox:redbox/redbox-list/proxy-node-table"
: - addr: 00-00-00-00-00-0C
type: san
rx-c: 1
rx-wrong-lan-c: 0