PRP For Dummies
Wondering how PRP might be used in your networks or substations? Here Tekron software engineer Mike Smellie takes us through the basics.If you'd like to find out more or contact us about using PRP please get in touch, or check out our products with built in PRP support. Other products can also be used on PRP networks as singly connected nodes (explained below).
Network Redundancy and Rat Proofing
The idea of redundancy in network design is about as old as computer networks themselves. It's all about reliability, which reduces the burden on support and keeps customers happy.
Redundancy normally means re-routing traffic around faults. When that re-route happens there's a tiny outage while it's switched over, so they use special protocols to lessen the impact. A few data packets are lost here and there which was never a big deal. The problem is that as the requirements for networks have grown this just isn't good enough any more.
Parallel Redundancy Protocol or PRP is one of the standards that has been developed to fix this and achieve a system of redundancy where no packets are lost.
No Packet Left Behind
PRP does this by setting up two side by side networks and then sending copies of packets across each of those networks. All the devices in the network have connections to both sub-networks, so that if a packet can't be delivered down one connection it will still go through the other.
In PRP one "logical" network is constructed from two physical networks. Nodes (a node is any end point) on the PRP network can either be attached to only one of the physical networks or doubly attached, with one attachment to each of the physical networks.
The switches in the physical networks and the singly attached nodes (SANs) don't need to support PRP for the network to work. Even though it works, singly attached nodes don't have the same redundancy as the doubly attached nodes since they still have just one connection that could fail.
To connect a SAN to both networks, a special device known as a Red Box is used. It has three ports, two for a double attachment to the physical networks and one which is a regular connection to a SAN. In the diagram above SAN #2 has no protection against failures in physical network A, but SAN #4 is connected through the Red Box. Again though, the red box might fail, or the cable connecting it, so it's not as good as a proper doubly connected node.
Some Technical Details
When a PRP network is operating, all the doubly attached nodes send out two copies of every packet - one on each physical connection. The copies have an identifier (a trailer added to the Ethernet frame) of the physical network and a sequence number. The sequence number is incremented for each pair of copies. When receiving packets a doubly attached node can use the sequence number to identify packets that it has already seen via the other physical network and discard the duplicates.
Here at Tekron we're all about timing. For timing, an assumption made by the usual PTP system is that delay calculation messages follow the same path as sync messages. PRPs break this assumption. Exceptions need to be made in the redundancy mechanism and a special operating profile for PTP defined so that PTP still works well. Luckily in addition to PRP (and HSR), IEC-62439-3 specifies the required modifications. This means it's important that either clocks supporting DAN operation or Red Boxes which can operate as PTP switches are used where accurate timing is required.
Parallel redundancy protocol allows high reliability networks that can survive with zero packet loss through any single failure, like a giant rat eating a cable. It's still compatible with non PRP aware devices which makes it a good candidate for mixed networks and staged deployment. IEEE1588 is well defined on PRP so that timing integrity is maintained and you can have the most reliable network possible.