Multi-Node Flow Synchronization via Static ID Assignment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-node systems, maintaining flow coherency and synchronization across nodes is challenging due to different discovery orders, leading to inefficient load balancing and potential network disruptions, especially when nodes are added or fail.
Innovation Solution
A deterministic algorithm that assigns static integer identifications to each node, allowing them to converge to a common routing table without explicit synchronization, by cycling through discovered nodes in ascending numerical order to balance traffic across slots.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If nodes use dynamic discovery order to join the network, then nodes can be added flexibly, but flow coherency and synchronization across nodes deteriorate
Solution Approach 1:
The patent changes the parameter of node identification from dynamic/discovery-based to static/deterministic. Each node is assigned a predetermined identification value before joining the network, which remains constant regardless of discovery order. This parameter change ensures that all nodes reference the same stable identifiers when building routing tables, maintaining flow coherency while allowing flexible node addition.
Solution Approach 2:
The patent applies preliminary action by pre-assigning identification values to nodes before they join the network. These predetermined identifiers are established in advance, so when nodes discover each other and build routing tables, they use these pre-established identifiers rather than relying on dynamic discovery sequences. This preliminary assignment ensures synchronization without requiring complex coordination during node addition.
2Device complexity
If nodes build routing tables independently based on discovery order, then device complexity is reduced, but load balancing efficiency deteriorates
Solution Approach 1:
The patent changes the parameter used for routing table construction from dynamic discovery order to static identification values. Nodes use these predetermined identifiers to deterministically calculate slot assignments, ensuring all nodes arrive at the same routing table configuration independently. This maintains low device complexity while achieving optimal load balancing through deterministic parameter-based assignment.
3Stability of the object's composition
If explicit synchronization mechanisms are implemented for flow table convergence, then flow coherency is improved, but communication overhead increases
Solution Approach 1:
The patent applies self-service by enabling nodes to independently build synchronized routing tables using predetermined identification values and a deterministic algorithm. Each node autonomously calculates slot assignments based on the same input parameters (node identifiers), ensuring convergence without requiring explicit synchronization communication. This eliminates the need for additional communication overhead while maintaining flow table coherence.
Solution Approach 2:
The patent changes the basis of routing table construction from dynamic discovery sequences to static identification parameters. This parameter change enables all nodes to independently arrive at identical routing configurations using the same deterministic algorithm and input data, achieving synchronization without explicit communication protocols.
Data Source
AI summary
There is disclosed in one example a method of a work node synchronously load balancing to a multi-node service having an expected maximum of n work nodes, including: provisioning a flow table having m bucket groups, m≥1, the bucket groups including n slots each; enumerating a static integer self-identification id0; initializing the flow table with id0 in each slot; performing a discovery iteration, including: discovering a peer device; enumerating a static integer identification idx for the peer device; assigning idx to each slot corresponding to a home position for the peer device; and load balancing slots not assigned to a home position according to a deterministic algorithm; and discovering additional nodes and performing discovery iteration for the additional nodes.


