Distributed Replica Software Upgrades with Handover State Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed networks face challenges in efficiently and reliably performing software upgrades on replicas running on nodes, particularly in asynchronous environments where timing and processing may vary.

Innovation Solution

A mechanism for software upgrades in replicated computing clusters, where replicas perform upgrades at pre-agreed handover rounds, using handover packages to synchronize states and allow asynchronous timing while maintaining deterministic processing, with communication interfaces independent of the upgrade process.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software upgrades are performed on replicas in a distributed network, then the software version can be updated to improve functionality and security, but network disruption and loss of service continuity may occur during the upgrade process

Engineering Contradiction:
Improvesoftware versionVSAvoidnetwork disruption
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by pre-agreing on handover rounds and preparing handover packages containing necessary state information before the actual software upgrade occurs. This allows replicas to synchronize at predetermined points and exchange state data in advance, ensuring continuous operation during the upgrade transition.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The handover package serves as an intermediary mechanism that transfers state information between old and new software versions. The communication interface acts as a mediator that facilitates state exchange independent of the software upgrade process, allowing seamless transition without network disruption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If all replicas perform software upgrades at the same time, then consistency across the network is improved, but synchronization difficulties and timing conflicts arise in asynchronous environments

Engineering Contradiction:
ImproveconsistencyVSAvoidsynchronization timing
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system implements periodic action through pre-agreed handover rounds that occur at regular intervals. Replicas synchronize their software upgrades at these predetermined periodic points rather than attempting simultaneous upgrades, which resolves timing conflicts in asynchronous environments while maintaining network consistency.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The handover package mechanism provides feedback by allowing replicas to exchange state information and verify synchronization status. This feedback loop ensures that all replicas reach the same handover state before proceeding with the upgrade, maintaining consistency without requiring strict simultaneous timing.

Inventive Principle:
Principle #23Feedback

3Reliability

If replicas perform software upgrades independently at different times, then network continuity is maintained, but state desynchronization and inconsistency across nodes occur

Engineering Contradiction:
Improvenetwork continuityVSAvoidstate synchronization
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The handover package acts as an intermediary that reconciles state differences between replicas upgrading at different times. By exchanging handover packages at pre-agreed handover rounds, replicas can independently upgrade while maintaining state synchronization through the mediator mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses copying by replicating state information through handover packages. When replicas upgrade independently, they can obtain copies of the necessary state data from other nodes via handover packages, ensuring consistency without requiring simultaneous upgrades.

Inventive Principle:
Principle #26Copying

4Ease of operation

If a replica falls behind in the upgrade process, then it can request handover packages to catch up, but additional communication overhead and processing time are required

Engineering Contradiction:
Improvecatch-up capabilityVSAvoidprocessing time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The handover package serves as an intermediary that enables catch-up functionality. Replicas that fall behind can request and receive handover packages from other nodes, allowing them to synchronize state without reprocessing all previous data, thus reducing the time penalty for catching up.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary action by pre-computing and storing handover states in handover packages at each handover round. This allows lagging replicas to catch up efficiently by retrieving pre-prepared state data rather than recomputing from scratch, minimizing additional processing time.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12353869B2Update software replica in a distributed system
Publication Date: 2025.07.08 DFINITY STIFTUNG
  • US12353869B2 patent drawing
  • US12353869B2 patent drawing
  • US12353869B2 patent drawing

AI summary

Embodiments of the invention relate to a distributed network. The distributed network comprises a replicated computing cluster and the replicated computing cluster comprises a plurality of nodes. Each of the plurality of nodes of the replicated computing cluster is configured to run a replica and each of the replicas is configured to run one or more computational units. Furthermore, each of the replicas is configured to perform consecutive processing rounds. The consecutive processing rounds comprise a consecutive processing of input blocks in a deterministic and replicated manner and thereby a sequence of round states is computed. Each of the replicas is further configured to perform software upgrades of the replica at handover states of pre-agreed handover rounds of the consecutive processing rounds and to provide, upon request of another replica, via a communication interface that is independent of the software upgrades, a handover package. The handover package is configured to enable an obtainment of the handover state.