Client-Side Hashset Detection for Clock-Skewed File Changes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing file transfer protocols like FTP lack support for application programming interfaces (APIs), making it difficult for client devices to reliably detect changes in shared files hosted by file hosting servers, leading to issues with missed changes due to server-generated timestamp discrepancies.

Innovation Solution

Client devices generate hashsets at periodic intervals, containing hash values of file metadata, comparing across two previous intervals to accurately detect file changes without relying on timestamps.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If client devices rely on server-generated timestamps to detect file changes, then the detection process is simple to implement, but the detection accuracy deteriorates due to clock skew and timestamp implementation differences between server and client

Engineering Contradiction:
Improveease of implementationVSAvoidfile change detection accuracy
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The patent introduces an intermediary mechanism (hashset of file metadata) between the server and client to mediate file change detection. Instead of directly comparing timestamps which are subject to clock skew, the client computes hashsets of file metadata (including timestamps, sizes, permissions) and compares these hashsets across polling intervals. This intermediary representation eliminates the direct dependency on server clock accuracy while maintaining detection capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent changes the detection parameter from raw timestamps to hashsets of multiple file attributes (timestamps, sizes, permissions). By transforming the detection basis from a single parameter (timestamp) to a composite parameter (hashset of multiple attributes), the system achieves more accurate and reliable change detection that is not vulnerable to timestamp implementation differences.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If client devices poll file metadata at periodic intervals to detect changes, then the detection reliability improves, but the network bandwidth and memory usage increase

Engineering Contradiction:
Improvefile change detection reliabilityVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential file metadata attributes (timestamps, sizes, permissions) needed for change detection and stores them in a compact hashset structure. This selective extraction avoids storing unnecessary data, reducing memory consumption while maintaining detection reliability. The hashset structure itself provides efficient storage and comparison capabilities.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements periodic polling of file metadata at configured intervals, which balances detection reliability with resource consumption. By using periodic rather than continuous monitoring, the system achieves reliable change detection while limiting network bandwidth usage and memory operations to necessary intervals, preventing resource exhaustion.

Inventive Principle:
Principle #19Periodic action

3Device complexity

If the protocol supports only file transfer without APIs, then the protocol simplicity is maintained, but the capability to efficiently detect and process file changes is lost

Engineering Contradiction:
Improveprotocol complexityVSAvoidfile change detection capability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent enables the client device to perform self-service file change detection by computing and comparing hashsets of file metadata locally. Instead of requiring server-side API support for change notification, the client independently polls metadata, computes hashsets, and detects changes through comparison. This self-service approach maintains protocol simplicity while achieving robust change detection capability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12380067B2Client-side hashset change detection
Publication Date: 2025.08.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12380067B2 patent drawing
  • US12380067B2 patent drawing
  • US12380067B2 patent drawing

AI summary

The detection of a change to a shared file of a file hosting service communicating only through a file transfer protocol is performed on a client-side device. The client-side device obtains the metadata of each shared file of a directory at each periodic interval. The client-side device generates a hashset for the directory at each periodic interval where the hashset includes a hash value for each file's metadata. If the hash of a file at a current time t is contained in the immediately preceding hashset at t−1 but not in the hashset of t−2 then the file is determined to have changed.