HSR (High-availability Seamless Redundancy) – Los Miércoles de Tecnología

En el pasado post hablamos del protocolo PRP donde cada nodo se conecta a través de sus dos puertos a dos redes Ethernet totalmente independientes.

¿ Qué es HSR y cómo funciona ?

Hoy hablaremos de HSR (High-availability Seamless Redundancy) donde al igual que en PRP cada nodo debe disponer de dos puertos Ethernet y envía el paquete duplicado por ambos puertos. Pero a diferencia de PRP, los nodos HSR forman un anillo a través de sus dos puertos tal y como se muestra en la siguiente figura.

Básicamente cada nodo en modo tránsito hace un forward del paquete que recibe por un puerto hacia el otro puerto y así en ambos sentidos. El nodo mantiene una tabla de los paquetes recibidos de forma que si recibe por un puerto un paquete que envió por el otro, no hace el forward entre puertos como puede verse en el gráfico anterior. De esta forma cada nodo, y no únicamente uno de ellos habilitado como maestro, evita el bucle de tráfico en el anillo.

Tanto PRP como HSR están normalizados por el estándar en IEC 62439-3:2016. Como en el caso de PRP, HSR es un protocolo ZPL (Zero Packet Loss) ya que al duplicarse todos los paquetes, en caso de pérdida de conexión entre dos nodos, el nodo destino recibirá siempre un paquete por uno de ambos sentidos no perdiendo información.

Al igual que en PRP, si queremos conectar a una red HSR un nodo con un único interfaz Ethernet tendremos que usar una RedBox que permita distribuir el paquete recibido del nodo a través de ambos puertos del anillo y en recepción seleccionar el primer paquete recibido y descartar el segundo paquete duplicado antes de entregarlo de vuelta al nodo.

Además de la RedBox también podemos usar una QuadBox que como su nombre indica dispone de 4 interfaces HSR lo que permite conectar dos anillos HSR entre sí.

¿ Cómo funciona internamente un nodo HSR ?

De forma similar a como vimos en PRP, cada nodo incorpora a nivel de LRE la lógica necesaria para:

  • en transmisión, duplicar el paquete con el header HSR correspondiente a través de dos dos puertos
  • en tránsito, enviar por un puerto los paquetes recibidos por el otro y que no sean para nosotros
  • en recepción, seleccionar el primer paquete y descartar el duplicado

En el caso de una RedBox el funcionamiento es muy parecido, actuando el LRE como proxy entre la red HSR y el puerto Ethernet que conecta al switch del que cuelgan los nodos con un único interfaz de red. Este proxy lleva el control de todas las tramas entre los diferentes nodos y la red HSR agregando los encabezados HSR en función de la dirección MAC origen del tráfico.

¿ Cómo descartar los duplicados de las trama ?

De nuevo, al igual que en PRP, los nodos HSR añaden un encabezado a las tramas Ethernet.

Este encabezado incluye un identificador del anillo (HSR-ET) y del sentido (path) así como un número de secuencia que se va autoincrementando con cada paquete y que permite detectar duplicados y posibles reordenaciones de tramas. El parámetro size también nos permite identificar, de forma rápida y sencilla, una trama HSR de otro no HSR en función del tamaño de la trama.

Soluciones HSR de Kyland

Por último queremos recordarte que nuestro partner Kyland dispone de una RedBox en formato para carril DIN así como un módulo PRP/HSR para insertar en la familia GPT de switches modulares de 19».