Distributed OS State Synchronization in Multi-Chassis Routers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As networks become increasingly complex, managing state information across multiple components in multi-chassis routers becomes challenging, leading to inefficiencies in state propagation and potential interruptions in packet forwarding due to redundant execution of operating systems and failure scenarios.

Innovation Solution

A distributed operating system is implemented across computing nodes, utilizing an object flooding protocol for synchronization and a hierarchical naming scheme to efficiently propagate state information, allowing for dynamic expansion or contraction of hardware resources and ensuring coherent state information across producers and consumers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple routing engines each execute a separate instance of the operating system to manage state information, then reliability is improved through failover capability, but device complexity increases and bandwidth requirements increase due to redundant state propagation

Engineering Contradiction:
Improvefailover capabilityVSAvoidnumber of operating system instances
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple separate instances of the operating system into a single shared instance that is accessed by multiple routing engines. This eliminates redundant state propagation while maintaining failover capability, as the standby routing engine can assume control without relearning state information from resources.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single instance of the operating system serves multiple routing engines simultaneously, providing universal state management functionality. This multi-functional approach allows the same operating system instance to support primary and standby routing engines, reducing overall system complexity while maintaining reliability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If standby routing engine relearns state information from each resource, then reliability is ensured through complete state reconstruction, but loss of time occurs due to interruption in packet forwarding

Engineering Contradiction:
Improvestate information accuracyVSAvoidfailover interruption time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The standby routing engine maintains a copy of the state information in advance through the shared operating system instance. When failover is needed, the transition is immediate because the state information is already available, eliminating the time required to relearn state from resources and preventing interruption in packet forwarding.

Inventive Principle:
Principle #10Preliminary action

3Power

If multi-chassis routers combine resources of multiple routing devices, then bandwidth capability is improved, but device complexity increases due to multiple components executing different instances of the operating system

Engineering Contradiction:
Improvebandwidth capabilityVSAvoidnumber of components
Core Design Contradiction:
PowerVSDevice complexity

Solution Approach 1:

The patent combines multiple routing devices into a multi-chassis router with a shared operating system instance. This merging approach allows the system to achieve high bandwidth capability through resource consolidation while reducing complexity by eliminating the need for each component to execute separate instances of the operating system.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentEP3340055B1Communicating state information in distributed operating systems
Publication Date: 2022.03.30 JUNIPER NETWORKS INC
  • EP3340055B1 patent drawingFigure 1
  • EP3340055B1 patent drawingFigure 2
  • EP3340055B1 patent drawingFigure 3

AI summary

In general, techniques are described for communicating state information in distribute operating system. A network device comprises a first hardware node and a second hardware node. The first hardware node may execute a first instance of a distributed operating system, and maintain a first data structure that stores a plurality of objects defining a portion of state information. The second hardware node may execute a second instance of the distributed operating system, and maintain a second data structure that stores synchronized versions of the plurality of objects. The first hardware node may further receive updated state information, update the first data structure to include the updated state information, and synchronize the updated first data structure with the second data structure. The second hardware node may synchronize the second data structure with the updated first data structure.