Ethernet redundancy protocols for the grid

Technology is constantly getting smarter and smarter, from self-adjusting thermostats to voice-triggered appliances to automated factories. All of these technologies depend on the reliability of the grid infrastructure to provide power. Utility control centers need to communicate with electrical substations quickly and reliably to monitor power flowing across the grid. One way to communicate information is through Ethernet redundancy protocols, which increase the likelihood that information will reach its destination when a disruption in the network occurs.

Two emerging protocols for grid infrastructures are High-Availability Seamless Redundancy (HSR) and Parallel Redundancy Protocol (PRP). When used along with the Precision Time Protocol (PTP), these redundancy protocols can time-stamp the data packets. Keeping track of time helps synchronize information across the network and calculate where an event has occurred by converting the elapsed time into a distance. In this post, I will take a brief look at these two redundancy protocols and how to implement them.


HSR works well for systems that can be placed in a ring topology, as shown in Figure 1. Every node in the ring has two Ethernet ports. To send information from one node to another, the starting node sends out information from each port in different directions and travels around the ring until it reaches the destination node. If a break occurs in the ring, information can always travel in the opposite direction. The information is not just a standard Ethernet frame. A special HSR tag is part of the frame to help identify duplicate information at the final node.

Figure 1: HSR ring


Unlike HSR, PRP is not bound to just a ring topology but can also do stars, buses or other layouts as long as there are two independent networks as shown in Figure 2. To send information in a PRP system, the starting node sends out a packet to both networks. Then, the packet gets routed to the final node. Because the networks are independent of each other, the failure of one network should not affect the other network so a package will still be able to reach its final destination.

Figure 2: PRP star network

TI solutions

To implement HSR or PRP, TI’s Sitara™ processors include a programmable real-time unit-industrial communications subsystem (PRU-ICSS), which is a 32-bit reduced instruction set computer (RISC) processor running at 200MHz. The PRU-ICSS reduces the need for additional communication processors and can be reprogrammed to switch between protocols.

TI’s HSR and PRP firmware are currently supported on real-time operating systems (RTOSs) for the Sitara AM335x, AM437x and AM57x processor families with the processor software development kit (Processor SDK) and PRU-ICSS industrial software for Sitara processors. Additionally, the AM57x processors support HSR and PRP on Linux with limited features including node tables up to 128, cut-through support for HSR and 10/100Mbps Ethernet speeds.

TI is working on full support for all RTOS features for the Linux version, as well as expanding Linux support to the AM335x and AM437x processors. For a more complete comparison between RTOS- and Linux-supported features, see the Processor SDK HSR PRP TI Wiki page.

Additional resources