Wireless Data Sync Protocol Parallel Mode Negotiation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data synchronization protocols, such as SyncML, require multiple roundtrips for data synchronization and are complex, inefficient, and not tolerant of unreliable networks, leading to suboptimal performance in over-the-air synchronization between client devices and servers.
Innovation Solution
A wireless structured data synchronization protocol that enables parallel sync mode negotiation for multiple dataclasses in a single message, uses text or binary property list files for message representation, and employs sophisticated anchor logic to ensure efficient synchronization even over unreliable networks, allowing for fast or reset sync modes and minimizing message size.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional SyncML protocol is used for data synchronization, then data can be synchronized between client and server, but multiple roundtrips (5 or more) are required per dataclass making the process inefficient
Solution Approach 1:
The patent merges multiple synchronization operations into a single roundtrip by allowing the client to send sync requests for multiple dataclasses simultaneously and receive responses for all of them in one exchange. This consolidates what would traditionally require 5+ separate roundtrips into a single consolidated synchronization operation, dramatically improving productivity while reducing time loss.
2Reliability
If traditional SyncML protocol is used, then data synchronization is achieved, but the protocol complexity increases making it difficult to implement and maintain
Solution Approach 1:
The patent segments the synchronization protocol into distinct, well-defined phases (initialization, data exchange, commitment) with clear state transitions. Each phase has specific rules and expected outcomes, making the protocol easier to implement and maintain while preserving reliability. The segmentation allows each component to be independently verified and tested.
Solution Approach 2:
The patent introduces sync mode parameters (fast sync, slow sync, reset sync) that change the behavior of the synchronization protocol based on the situation. These parameter changes allow the system to adapt to different network conditions and data states, maintaining reliability while simplifying the protocol for common cases like fast sync where only updated items are exchanged.
3Reliability
If traditional SyncML protocol is used, then data synchronization is performed, but the protocol is not tolerant of unreliable networks leading to suboptimal performance
Solution Approach 1:
The patent makes the synchronization protocol dynamic by allowing it to adapt its behavior based on network conditions and sync state. The sync mode can change between fast, slow, and reset modes depending on whether this is the first sync, whether data has changed, or whether network conditions require re-synchronization. This dynamic adaptation maintains reliability on unreliable networks while preserving efficiency when conditions allow.
Solution Approach 2:
The patent performs preliminary actions by establishing sync anchors and determining sync modes before actual data exchange occurs. This preliminary phase allows the system to prepare for potential network failures by setting up recovery points (anchors) and determining the most efficient sync path in advance, improving both reliability and productivity when networks are unreliable.
4Measurement precision
If detailed sync mode negotiation is performed for each dataclass, then synchronization accuracy is improved, but message size increases reducing efficiency
Solution Approach 1:
The patent applies local quality by allowing different sync modes to be specified for different dataclasses based on their individual needs. Each dataclass can have its own sync mode (fast, slow, or reset) determined by its specific characteristics and change frequency. This precise local control improves synchronization accuracy for each dataclass while the overall message structure remains compact by only including necessary sync mode indicators for each class.
Data Source
AI summary
Among other things, techniques and systems are disclosed for syncing data between a client device and a server. Synchronizing data includes initiating a sync session by negotiating a sync mode between a client device and a server for each of one or more dataclasses. A status code is generated based on a result of the negotiating. Based on the generated status code, the client device and the server exchanges one or more data items to be updated for the one or more dataclasses using the negotiated sync mode for each dataclass. The exchanged one or more data items are updated at the client device or the server The updated one or more data items are committed at the client or the server.


