Decentralized Software Update Propagation in Wireless Mesh Networks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deploying software upgrades to large or geographically distributed wireless networks is challenging due to unreliable communication and time-consuming processes, especially in networks with multiple hops, where traditional centralized methods can fail and require all nodes to be active, leading to inefficiencies and high power consumption.

Innovation Solution

Distributing the node update process to allow any node to upgrade others concurrently, eliminating the need for a central coordinator, and optimizing RF channel usage by spreading packet transmissions to reduce collisions, with nodes autonomously searching and upgrading neighboring devices with outdated software.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a centralized device communicates individually to each device for software updates, then the update process is coordinated reliably, but the update time becomes excessively long and the process becomes impractical for large networks

Engineering Contradiction:
Improveupdate coordination reliabilityVSAvoidupdate time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The centralized update process is segmented into distributed peer-to-peer update operations. Each node that receives an update can independently act as an update source for other nodes, dividing the update propagation task into multiple concurrent segments rather than a single sequential process from one central device.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Nodes perform preliminary actions by storing update packages locally after receiving them from any source. This preliminary storage enables nodes to immediately serve as update sources for neighbors without needing to contact the central device again, accelerating the update propagation process.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If multiple nodes transmit upgrade packets simultaneously over RF channels, then the upgrade speed increases, but packet collisions increase and channel availability decreases

Engineering Contradiction:
Improveupgrade speedVSAvoidpacket transmission reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements periodic action through time-spread transmission where nodes transmit upgrade packets at different time intervals rather than simultaneously. This periodic staggering reduces packet collisions while maintaining continuous upgrade operations across the network.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system resolves channel contention by adding temporal and frequency dimensions to the transmission space. Instead of all nodes competing for the same RF channel at the same time, transmissions are distributed across multiple time slots and frequency channels, effectively moving the problem from one dimension to multiple dimensions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If nodes in a low-power network remain active to maintain communication links for updates, then update reliability improves, but power consumption increases significantly

Engineering Contradiction:
Improvecommunication link reliabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The network implements self-service through opportunistic updates where nodes perform updates during their natural wake periods without requiring continuous activity. Each node uses its own operational cycles to both receive and propagate updates, eliminating the need for dedicated update infrastructure or continuous node activation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system embraces dynamic operation by allowing nodes to transition between sleep and active states flexibly. Update operations occur dynamically when nodes are naturally awake and available, rather than requiring static continuous operation, thereby maintaining reliability while minimizing power consumption.

Inventive Principle:
Principle #15Dynamics

4Productivity

If nodes autonomously select target nodes for upgrades without coordination, then the update process becomes simpler and faster, but conflicts arise when multiple nodes attempt to upgrade the same target simultaneously

Engineering Contradiction:
Improveupdate efficiencyVSAvoidconflict management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where nodes broadcast their upgrade status and availability information. When a node is selected as an upgrade target, it provides feedback to other nodes indicating it is already being upgraded, preventing duplicate upgrade attempts and conflicts without requiring complex centralized coordination.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9763062B2Rapid deployment of software updates in multi-hop wireless networks
Publication Date: 2017.09.12 SYNAPSE WIRELESS INC
  • US9763062B2 patent drawing
  • US9763062B2 patent drawing
  • US9763062B2 patent drawing

AI summary

In a system and method for upgrading software in a wireless mesh network, a first node in the network sends a first multicast request to a plurality of other nodes in the network that are in radio range of the first node. The first multicast request queries whether the other nodes are running a software version older than the software version and device type currently running in the first node. The first node then selects a node to upgrade and sends a request asking if any other nodes have already claimed that node. The first node then updates the nodes only if they have not been claimed for update by another node. In upgrading the claimed nodes, the first node copies to the claimed nodes the software it is currently executing in its internal flash memory thereby creating a clone, and does not store any additional copies of the updated software.