File Update Patching with Similarity-Based Delta Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Sending updated files to electronic devices requires significant network bandwidth and time due to their increasing complexity and size.

Innovation Solution

A remote system partitions data representing a file into contiguous portions, identifies similarities between versions using techniques like CRC or SHA-1, generates a patch file containing only unique portions, and sends this along with a manifest for reassembly, reducing network bandwidth and update time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If updated files are sent to electronic devices, then file updates are provided, but network bandwidth consumption increases and update time increases

Engineering Contradiction:
Improvefile update provisionVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system divides the updated file into multiple portions and identifies which portions need to be transmitted by comparing with the existing file version. Only the necessary portions are sent to the electronic device, reducing network bandwidth consumption while still providing complete file updates.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system extracts only the essential portions of the updated file that contain actual changes from the complete file. By taking out and transmitting only these necessary portions rather than the entire file, network bandwidth consumption is reduced while maintaining update reliability.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If updated files are sent to electronic devices, then file updates are provided, but update time increases

Engineering Contradiction:
Improvefile update provisionVSAvoidupdate time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The update process is segmented into identifying changes, preparing only necessary portions, and transmitting only those portions. This segmentation reduces the total update time by avoiding the transmission and processing of unchanged file portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by analyzing the file portions and identifying which ones need to be updated before actually transmitting data. This preliminary identification step optimizes the subsequent transmission process and reduces overall update time.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If complete files are sent, then updates are provided, but computing resources are not optimized

Engineering Contradiction:
Improveupdate completenessVSAvoidcomputing resource efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system extracts and transmits only the necessary portions of the file that contain updates, rather than sending complete files. This extraction approach maintains update completeness while significantly improving computing resource efficiency by reducing data processing requirements.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of sending complete files (excessive action), the system sends only the partial portions that are actually needed for the update. This partial action approach optimizes computing resources while ensuring that all necessary update information is transmitted.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP4440083B1Techniques for updating files
Publication Date: 2026.02.18 VALVE CORPORATION
  • EP4440083B1 patent drawingFigure 1
  • EP4440083B1 patent drawingFigure 2
  • EP4440083B1 patent drawingFigure 3

AI summary

The application is directed to methods, devices, and systems for updating files. One such method comprises: determining, by a remote system, that a first portion of first data representing a first version of a file corresponds to a first portion of second data representing a second version of the file; determining, by the remote system, a first difference between a second portion of the second data and a second portion of the first data; determining, by the remote system, that the second portion of the second data is similar to the second portion of the first data based at least in part on the first difference satisfying a threshold difference; determining, by the remote system, a second difference between a third portion of the second data and a third portion of the first data; determining, by the remote system, that the third portion of the second data is not similar to the third portion of the first data based at least in part on the second difference failing to satisfy the threshold difference; and sending, by the remote system, and based at least in part on the first difference satisfying the threshold difference and the second difference failing to satisfy the threshold difference, a patch file to an electronic device with access to the first data, the patch file including: data for converting the second portion of the first data to the second portion of the second data; and the third portion of the second data.