Finalize Node Stabilizes Weave Ordering in Partitioned Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Communication failures among networked computing devices due to device failures or obstacles can lead to network partitioning, resulting in subnetworks that may cease to operate or have difficulty reconciling their operations when the full network is restored, especially due to unsynchronized clocks and lack of communication with a central clock, making it challenging to determine the global order of commands.

Innovation Solution

A system and method that utilize a directed acyclic graph to order commands issued by multiple computing devices, employing causal and priority ordering through a weave function to establish a deterministic total ordering, even in the absence of chronological ordering, and introduces a finalize node to stabilize the ordering once global consensus is reached.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If network partitions occur due to device failures or obstacles, then network availability is maintained in subnetworks, but global consistency of command ordering is lost

Engineering Contradiction:
Improvenetwork availabilityVSAvoidglobal order of commands
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system performs preliminary ordering of commands within each subnetwork before the partition occurs, creating local orderings that can be later merged. The weave function is prepared in advance to combine these local orderings into a global ordering once the network is restored, preventing complete loss of command sequence information.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism (the weave function and finalization protocol) that mediates between distributed subnetworks. This intermediary allows each subnetwork to maintain its local command ordering while providing a method to reconcile these orderings into a consistent global ordering after partition healing, thus preserving global consistency without requiring continuous central coordination.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If clocks of computing devices are not synchronized due to network partition, then subnetworks can operate independently, but reconciling command order becomes difficult

Engineering Contradiction:
Improveindependent operation of subnetworksVSAvoidreconciliation of command order
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system dynamically adapts the ordering mechanism based on network conditions. During partitions, subnetworks operate independently with local ordering. Upon network restoration, the weave function dynamically merges these local orderings into a global ordering, allowing the system to transition between independent and coordinated operation modes without fixed constraints.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of command ordering from requiring synchronized clocks to using a clock-less ordering mechanism based on the weave function. This parameter change allows subnetworks to operate independently without time synchronization while still enabling global ordering reconciliation through the finalize command and deterministic weaving algorithm.

Inventive Principle:
Principle #35Parameter changes

3Loss of information

If a centralized clock is used for ordering commands, then global order can be determined, but network availability decreases during partitions

Engineering Contradiction:
Improvecommand ordering informationVSAvoidnetwork availability
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

The patent segments the centralized ordering function into distributed local ordering functions within each subnetwork. Each subnetwork maintains its own command ordering independently without requiring a central clock, thus preserving network availability during partitions. The segmentation is later reversed through the weave function to reconstruct global ordering when networks merge.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each subnetwork serves itself by maintaining local command ordering without relying on external centralized clock services. This self-service capability ensures continued operation and command ordering within subnetworks during partitions, while the finalize command enables self-reconciliation of global ordering once partitions are healed, eliminating the need for continuous centralized coordination.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11928612B1Fixing a changing weave using a finalize node
Publication Date: 2024.03.12 SPIDEROAK INC
  • US11928612B1 patent drawing
  • US11928612B1 patent drawing
  • US11928612B1 patent drawing

AI summary

The system obtains a first acyclic graph including multiple nodes and edges connecting the multiple nodes. A process to create a weave of the first acyclic graph produces a matching weave when executed on the first acyclic graph by different computing devices. An addition of a node to the first acyclic graph produces a second acyclic graph. The addition of the node to the first acyclic graph changes the weave of the first acyclic graph. The system obtains a process to reach a global consensus among the multiple computing devices. The process indicates a criterion to satisfy prior to reaching the global consensus and determines whether the multiple computing devices in the network satisfy the criterion. Upon determining that the criterion is satisfied, the system adds a finalize node to the first acyclic graph to obtain a third acyclic graph. A weave of the third acyclic graph cannot change.