Dual 5G + PRP/HSR L2 Redundancy for Industrial Autonomous Trains

Hi VyOS Community,

We are an industrial networking technical team focusing on industrial private 5G and edge networking. We would like to share our stable, production-grade deployment of customized VyOS running on industrial embedded devices.

Deployment Scenario

Deployed on autonomous industrial transport vehicles within heavy metallurgical facilities, featuring harsh conditions including strong electromagnetic interference (EMI) and frequent 5G cell handovers.

Core Implementation

  • Fully ported and optimized VyOS for general industrial embedded hardware platforms

  • Dual 5G modules (ECM/RNDIS) deployed with Linux native PRP over dual GRETAP L2 tunnels

  • Leverages dual 5G modem parallel transmission to reduce end-to-end latency. The PRP duplicate-and-discard mechanism enables hitless zero-failover L2 redundancy, completely eliminating the 100ms–2s service interruption typically caused by 5G cell handovers in mobile industrial scenarios

  • Stable transparent L2 transmission for industrial protocols: PROFINET / EtherNet/IP

Key Optimizations for 5G Industrial Scenarios

  • Resolved SoftIRQ performance bottlenecks under high-frequency industrial control traffic

  • Implemented L2 TCP MSS clamping via nftables netdev hook to eliminate 5G air interface fragmentation

  • Maintained ultra-low latency jitter and achieved 0% packet loss during 5G handover events

Running Status

The solution runs 24/7 stably under harsh industrial conditions. VyOS serves perfectly as a lightweight, software-defined industrial RedBox for mobile private 5G Layer 2 transport scenarios.

We are sharing this fully production-validated dual-5G L2 redundancy industrial practice with the VyOS community.

Thanks to all VyOS developers!

Industrial Networking Technical Team

4 Likes

This sounds intriguing!

>Fully ported and optimized VyOS for general industrial embedded hardware platforms

Did you do it within the existing flavor system, or you had to modify the build scripts?

>Dual 5G modules (ECM/RNDIS) deployed with **Linux native PRP

**Leverages dual 5G modem parallel transmission to reduce end-to-end latency.

Do you think that could be integrated in our mainline interfaces wwan?

>Resolved SoftIRQ performance bottlenecks under high-frequency industrial control traffic

Could you share those settings? Could it be a part of system option network-throughput?

>Implemented L2 TCP MSS clamping via nftables netdev hook

Did you make it a part of the CLI? We’d be happy to merge that if you make a PR.

3 Likes

Hi Daniil,

Thanks for your interest and feedback. We would like to share some more details about our implementation.

1. Fully ported and optimized VyOS for industrial embedded hardware platforms

Yes, we made some modifications to the VyOS build process to support our industrial embedded hardware platforms.

Our current deployment is based on ARM64 platforms, so we customized the build process, including kernel configuration, hardware support, and platform-specific components.

The same approach can also be applied to x86-64 industrial platforms. The main differences are related to hardware drivers and kernel configuration.

We tried to keep our modifications aligned with the existing VyOS architecture as much as possible, rather than maintaining a completely independent fork.


2. Dual 5G modules with Linux native PRP

We believe this capability could be a candidate for integration into upstream VyOS.

Our 5G modules operate in QMI/MBIM mode and can be managed through ModemManager.

The architecture is:

                VyOS
                  |
        +---------+---------+
        |                   |
   WWAN interface      WWAN interface
        |                   |
   ModemManager       ModemManager
        |                   |
     QMI/MBIM          QMI/MBIM
        |                   |
      5G modem          5G modem
        |                   |
      GRETAP             GRETAP
        |                   |
        +------- PRP -------+
                  |
          Industrial L2 network

The PRP implementation is independent from the modem management layer and operates above the WWAN interfaces.

The implementation is based on the Linux kernel HSR/PRP subsystem, with VyOS CLI integration added for configuration and monitoring.

Some kernel configuration changes are required to enable the Linux native HSR/PRP functionality.

The L2 transport path is provided through GRETAP tunnels over the 5G WWAN interfaces, while PRP operates above these transport paths to provide frame duplication and duplicate discard functionality.

The current implementation includes:

  • Two independent 5G WWAN interfaces using QMI/MBIM mode

  • ModemManager for modem management

  • Linux native HSR/PRP subsystem for Layer 2 redundancy

  • GRETAP tunnels for L2 transport

  • PRP duplicate transmit and discard processing

This architecture enables hitless Layer 2 redundancy during 5G handover events and avoids the service interruption normally caused by cellular mobility events.

We also integrated HSR/PRP interface creation, configuration, and monitoring into the existing VyOS CLI framework.

Example:

admin@CPE# set interfaces hsr

Possible completions:
 > hsrN                 HSR interface name
 > prpN                 PRP interface name

Example configuration:

admin@CPE# set interfaces hsr prp38

Possible completions:
+  address              IP address
   description          Description
   disable              Administratively disable interface
   disable-link-detect  Ignore link state changes
   interlink            Interlink interface
   mtu                  Maximum Transmission Unit (MTU)
   protocol             Redundancy protocol
   slave1               First slave interface
   slave2               Second slave interface
   supervision          Supervision address
   version              HSR protocol version
   vrf                  VRF instance name


3. L2 TCP MSS adjustment

Regarding the L2 TCP MSS clamping description in our previous message, we would like to clarify one point.

The current implementation does not directly use the nftables netdev hook. Instead, it uses the existing VyOS bridge MSS adjustment functionality, which relies on the underlying Linux networking stack.

The bridge MSS adjustment configuration is:

bridge br338 {
    ip {
        adjust-mss 1300
    }
}

The bridge netfilter option is enabled as required by our forwarding path:

parameter net.bridge.bridge-nf-call-iptables {
    value 1
}

We also evaluated the nftables netdev hook approach, and we believe it could be a possible direction for more flexible L2 traffic manipulation in the future.

For transparent L2 forwarding scenarios, a dedicated CLI option could improve usability and make this functionality easier to configure.


4. SoftIRQ performance optimization

For the SoftIRQ optimization under high-frequency industrial control traffic, we have performed several kernel and networking stack optimizations.

The main optimization areas include:

  • IRQ affinity tuning

  • RPS/XPS configuration

  • Network queue tuning

  • Kernel networking parameters

The main challenge was handling the combined workload of:

  • Dual 5G WWAN traffic

  • GRETAP encapsulation/decapsulation

  • PRP duplicate processing

  • Industrial real-time Ethernet traffic

We would be happy to discuss these optimization methods and provide more details where appropriate.

However, these optimizations are highly hardware-dependent, and the current tuning parameters are mainly validated on our specific industrial hardware platforms.

Additional adjustments may be required for different CPU architectures, NICs, and hardware configurations.

From our experience, a profile-based approach may be more suitable than applying fixed parameters globally.


Thanks again for your feedback.

We are very interested in discussing how these industrial networking capabilities could fit into the VyOS upstream architecture.

We believe VyOS is well positioned to serve as a lightweight software-defined industrial RedBox for private 5G and edge networking scenarios.

Best regards,

Industrial Networking Technical Team

3 Likes

Hi @pcboygo is the solution you created available commercially? I could be interested in it

Hi Stefano

Thanks for your interest.

Yes, we have plans to commercialize this solution. Since this solution targets industrial private 5G and edge networking scenarios, we would like to better understand the specific application requirements and deployment environment first.

The current implementation has been production-validated in industrial environments, including dual 5G connectivity, Layer 2 transparent transport, and PRP-based seamless redundancy for industrial Ethernet applications.

We would be happy to discuss your use case and explore possible cooperation opportunities. Please feel free to send me a private message, and we can continue the discussion there.

Best regards,
Industrial Networking Technical Team

1 Like

Would be handy if improvements could be backported upstream so the original VyOS can gain from this aswell.

1 Like

Thanks for your suggestion.

We agree that some parts of the improvements could provide value to the wider VyOS community.

Our current implementation includes both VyOS-related enhancements and platform-specific optimizations for our industrial hardware.

We would be happy to evaluate which components are suitable for upstream contribution, especially generic features such as HSR/PRP CLI integration and related networking functionality.

For hardware-specific optimization and industrial deployment tuning, these parts are more dependent on the target platform and may require separate consideration.

We appreciate the VyOS community’s interest and would like to explore possible upstream collaboration.

1 Like