Sync Tree Diff Propagation for Incremental File Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Synchronization of content items across multiple devices in content management systems is fraught with technical obstacles due to out-of-order communications, latency, and conflicts arising from simultaneous modifications by different users, leading to inefficiencies in resource usage and synchronization challenges.

Innovation Solution

A client synchronization service utilizing tree data structures to monitor and synchronize server and file system states, ensuring synchronization by maintaining remote, local, and merge base trees, thereby determining and executing operations to converge these states efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full synchronization of content items is performed across all devices, then data consistency is improved, but resource consumption and processing time increase significantly

Engineering Contradiction:
Improvedata consistencyVSAvoidsynchronization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the content item tree into multiple subtrees and identifies only the affected portions that need synchronization. Instead of synchronizing entire content items or all files, the system divides the work into smaller diff segments that can be processed independently and transmitted efficiently across the network.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial synchronization by transmitting only the diff portions of content items rather than complete files. The diff data represents only the changes needed to update the destination device, significantly reducing the amount of data transmitted and processed while maintaining data consistency.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If detailed monitoring of server and file system states is implemented, then synchronization accuracy is improved, but device complexity and computational overhead increase

Engineering Contradiction:
Improvesynchronization accuracyVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent creates simplified copy representations of the content item tree structure (remote tree and local tree) that track only the essential state information needed for synchronization. These tree structures copy only the necessary metadata and hierarchical relationships rather than complete file contents, reducing computational overhead while maintaining synchronization accuracy.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system performs preliminary comparison of the remote tree and local tree states before initiating synchronization. By pre-identifying differences and generating diff data in advance, the system avoids complex real-time analysis during the actual synchronization process, reducing computational overhead.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If incremental synchronization is performed to reduce data transmission, then resource consumption is improved, but synchronization completeness may be compromised

Engineering Contradiction:
Improveresource efficiencyVSAvoidsynchronization completeness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback mechanisms where the destination device sends acknowledgments and status information back to the source device. This feedback loop ensures that incremental diff transmissions are properly received and applied, maintaining synchronization completeness while benefiting from reduced data transmission.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary actions to ensure the integrity of incremental synchronization by maintaining version information and change logs. Before transmitting diff data, the system prepares comprehensive change information that ensures complete and accurate reconstruction of content item states at the destination.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3701390B1Efficiently propagating diff values
Publication Date: 2025.10.22 DROPBOX INC
  • EP3701390B1 patent drawingFigure 1
  • EP3701390B1 patent drawingFigure 2
  • EP3701390B1 patent drawingFigure 3

AI summary

The disclosed technology relates to a system configured to identify at least one difference between a sync tree and at least one of a remote tree and a local tree. The sync tree represents a known synced state between a server state and a file system state, the remote tree represents the server state, and the local tree represents the file system state. The system may further generate, based on the at least one difference, a set of operations configured to converge the server state and the file system state and manage the execution of the set of operations. The state of a node in a tree is represented by a value based on the hash values of its descendants. When a node is added or removed, the value of the ancestor is recalculated based on its old value and the hash value of the added or removed node.