Peer-to-Peer Build Sharing Reducing Network Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional build systems, such as software build systems, often rely on a single source, leading to bottlenecks as the number of clients or build sizes increase, resulting in poor performance, high resource utilization, and potential system crashes.

Innovation Solution

A computing system is configured to obtain build objects from multiple sources, including peer build systems, allowing peer build systems to recreate builds without communicating with the originating system, and providing relative changes over the network instead of entire builds, reducing latency and bandwidth requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single source server system is used for build distribution, then build system simplicity is maintained, but performance degrades and resource utilization increases as client numbers and build sizes increase

Engineering Contradiction:
Improvebuild system architectureVSAvoidbuild system performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the centralized build server into multiple peer build systems that can independently serve build objects to clients. Each peer system maintains a local cache of build objects and can serve requests without always contacting the originating build system, distributing the load across multiple nodes and eliminating the single-point bottleneck.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the build distribution architecture by adding geographic distribution and peer-to-peer networking layers. Build systems are distributed across different geographic locations, and peers can serve each other based on proximity and availability, adding spatial and topological dimensions to the previously flat centralized architecture.

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

2Reliability

If entire builds are transmitted over the network, then build objects are available to peer systems, but network bandwidth consumption increases

Engineering Contradiction:
Improvebuild object availabilityVSAvoidnetwork bandwidth usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts and transmits only the essential build modification objects (BMOs) that represent changes between builds, rather than transmitting entire builds. This allows peer systems to reconstruct current builds by applying incremental changes to previous versions, dramatically reducing network bandwidth consumption while maintaining build object availability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements preliminary action by having peer build systems pre-fetch and cache build objects and build modification objects before they are needed. Systems proactively download build data during off-peak periods or in anticipation of requested builds, so that when clients request builds, the data is already available locally or can be quickly retrieved from nearby peers.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If peer build systems communicate with the originating build system for every build request, then build accuracy is maintained, but latency increases

Engineering Contradiction:
Improvebuild accuracyVSAvoidbuild request latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent introduces peer build systems as intermediaries between clients and the originating build system. Instead of clients directly contacting the originating system for every request, they first query local peers who can serve cached builds or build modification objects. This intermediary layer filters and caches requests, reducing direct communications with the originating system and lowering latency while maintaining build accuracy through verification mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3340036B1Systems and methods for peer-to-peer build sharing
Publication Date: 2022.03.23 PALANTIR TECHNOLOGIES INC
  • EP3340036B1 patent drawingFigure 1
  • EP3340036B1 patent drawingFigure 2
  • EP3340036B1 patent drawingFigure 3

AI summary

Systems and methods are provided for obtaining a build object over a communication network, the build object comprising at least a portion of a first build. The build object is stored locally. A build modification object is obtained over the communication network, the build modification object comprising a change between the first build and a second build. The build object is updated using the build modification object obtained over the communication network. At least a portion of the updated build object is provided to a first peer build system over the communication network. Further features include storage of the build objects using hash trees or Merkle trees, updating immutable build objects and predicting build objects (partly using latency).