Peer-to-Peer Software Update Distribution via Local Network

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software update methods require significant Internet bandwidth as each client machine downloads and executes update patches from an update server, especially when updating a large number of machines, which can be inefficient.

Innovation Solution

Implementing a peer-to-peer system where the entire updated computer program is transmitted from one or more peer client machines to the client machine, eliminating the need for executing an update patch and reducing bandwidth usage by leveraging local network bandwidth for distribution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If each client machine downloads and executes update patches from an update server, then the software update process is standardized and reliable, but the Internet bandwidth consumption increases significantly

Engineering Contradiction:
Improveupdate process reliabilityVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the update distribution process into two phases: (1) initial update from server to seed machines, and (2) peer-to-peer distribution from seed machines to other clients. This segmentation reduces server bandwidth consumption by distributing the update delivery burden across multiple peer machines in the local network.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces peer machines as intermediary nodes between the update server and client machines. These intermediary peer machines receive updates from the server and then distribute them to other peers, acting as mediators that reduce direct server-to-client bandwidth consumption while maintaining update reliability through standardized patch execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Extent of automation

If update patches are downloaded and executed from an update server, then centralized control and security are maintained, but the update process becomes slower and less efficient for large numbers of machines

Engineering Contradiction:
Improvecentralized controlVSAvoidupdate speed
Core Design Contradiction:
Extent of automationVSProductivity

Solution Approach 1:

The patent segments the update distribution task across multiple peer machines in the local network, allowing parallel update delivery to multiple clients simultaneously. This segmentation enables the system to maintain centralized control through the update server while achieving faster update speeds through distributed peer-to-peer delivery.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a spatial dimension to update distribution by utilizing the local network infrastructure and peer machines' available bandwidth. Instead of all clients competing for server bandwidth over the Internet, updates are distributed across the spatial network topology of the local area network, significantly improving update speed for large numbers of machines.

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

3Productivity

If the entire updated computer program is transmitted between peer machines, then bandwidth requirements are reduced and update speed improved, but the complexity of peer-to-peer transmission increases

Engineering Contradiction:
Improveupdate efficiencyVSAvoidpeer-to-peer system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent makes peer machines universal nodes that can both consume and provide update content. Each peer machine has the capability to receive updates from the server, execute them, and then share the updated program with other peers. This multi-functionality reduces the need for specialized update distribution infrastructure while improving update efficiency through peer-to-peer transmission.

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

Solution Approach 2:

The patent utilizes copying of the updated computer program between peer machines instead of transmitting only differential patches. While this may seem counterintuitive, the copied full program can be efficiently distributed over local network connections, and the copying mechanism is simplified by leveraging existing file transfer capabilities of the peer-to-peer system, actually reducing overall system complexity.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9420065B2Peer-to-peer software updates
Publication Date: 2016.08.16 GOOGLE LLC
  • US9420065B2 patent drawing
  • US9420065B2 patent drawing
  • US9420065B2 patent drawing

AI summary

Various aspects of the subject technology relate to systems, methods, and machine-readable media for providing a software update. A system is configured to receive, from an update server, an update patch for a computer program installed on a memory of a first computing machine, execute the update patch on a first computing machine to update the computer program, receive a request for the updated computer program from a second computing machine, and transmit the updated computer program installed on the memory of the first computing machine to the second computing machine without transmitting the update patch.