Randomized Peer-to-Peer Content Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing content management systems face inefficiencies in synchronizing content items between multiple client devices connected over a local area network, as they often rely on servers for data transfer, leading to increased network traffic and synchronization times.
Innovation Solution
Implementing a randomized peer-to-peer synchronization method where client devices communicate directly with each other on a LAN, selecting a subset of devices with favorable network characteristics to request and transfer content item blocks, reducing reliance on the server for data transfer and improving synchronization efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If client devices request content items from the server, then data transfer is reliable and centralized, but network traffic increases and synchronization time increases
Solution Approach 1:
The patent segments the centralized server-based synchronization into distributed peer-to-peer transfers. Content items are divided into blocks that can be independently transferred between peer devices. This segmentation allows multiple parallel transfer channels, reducing the burden on any single server connection and improving overall synchronization throughput.
Solution Approach 2:
The patent introduces peer devices as intermediaries in the data transfer process. Instead of direct server-to-client transfers, content blocks are routed through intermediate peer devices on the local network. This intermediary approach enables efficient local redistribution of content without requiring all devices to communicate directly with the server.
2Reliability
If all client devices synchronize with the server, then data consistency is maintained, but server load increases
Solution Approach 1:
The patent enables peer devices to serve content blocks to other peers directly from their local caches. Once a device receives content blocks from the server, it can subsequently serve those same blocks to other peers without requiring them to contact the server. This self-service mechanism reduces server load while maintaining data consistency through the blocklist verification process.
Solution Approach 2:
The patent implements preliminary synchronization of content blocks to peer devices before other peers need them. Devices that receive content blocks first can immediately begin serving those blocks to peers, preventing cascading server requests. This preliminary action distributes the synchronization load across multiple devices rather than concentrating it on the server.
3Productivity
If client devices use peer-to-peer synchronization, then network efficiency improves, but device selection complexity increases
Solution Approach 1:
The patent changes the selection parameter from complex multi-criteria evaluation to simple proximity-based selection. Peer devices are selected based on their presence in the local network and their availability in the blocklist, rather than evaluating multiple performance metrics. This parameter simplification reduces device complexity while maintaining network efficiency through local prioritization.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
A content management system synchronizes content items across client computing systems connected by a network. Client devices connected to peer devices on a LAN utilize peer-to- peer synchronization to synchronize content items. Client devices on the LAN broadcast namespaces synchronized on the client devices with other devics on the LAN. Client devices on the LAN connect to a subset of client devices that share a namespace with the connecting client device based on the broadcasts. Upon receiving a notification from the content management system that a new content item has been synchronized with the namespace a client device sends requests for a block comprising a content item to a subset of the connected devices. Additional block requests are sent in the order of randomized blocklist.