Peer-to-Peer File Transfer Segment Ordering Algorithm

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing peer-to-peer file transfer protocols, such as BitTorrent, prioritize bandwidth saturation over optimizing transfer time for progressive image files, leading to inefficient file acquisition, especially when peers have differing pieces of the same file.

Innovation Solution

An algorithm that orders peers by the completeness of the file segments they possess, assigning transfers from peers with complete or higher resolution pieces first, and calculates transfer times to optimize the overall file transfer process by grouping peers with similar segment sizes and assigning contiguous ranges of segments for efficient data retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If peers transfer files in random order or by fastest source first, then bandwidth utilization is maximized, but transfer time is not optimized for progressive image files

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidtransfer time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by calculating and sorting peers based on their segment completeness before the transfer begins. The requesting peer determines which peers have complete or higher resolution pieces and orders them accordingly, ensuring that the most valuable segments are transferred first. This pre-planning of transfer order optimizes the overall transfer time for progressive image files while maintaining good bandwidth utilization.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If peers with complete file segments are prioritized, then transfer time is reduced, but protocol overhead increases due to sorting and categorization

Engineering Contradiction:
Improvetransfer timeVSAvoidprotocol overhead
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the peer pool into distinct categories based on segment completeness (complete, partial, empty). This segmentation allows for efficient sorting and prioritization without requiring complex continuous evaluation during transfer. The requesting peer categorizes peers into groups and processes them in a predetermined order, reducing protocol overhead while optimizing transfer time.

Inventive Principle:
Principle #1Segmentation

3Productivity

If multiple peers are connected for downloading, then download speed increases, but coordination complexity increases

Engineering Contradiction:
Improvedownload speedVSAvoidcoordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies dynamics by implementing a flexible peer selection and ordering mechanism that adapts to the available peer resources. The requesting peer dynamically determines the transfer order based on real-time peer availability and segment completeness, allowing multiple peers to be coordinated efficiently without rigid protocols. This dynamic approach enables parallel downloads while maintaining manageable coordination complexity through algorithmic peer selection.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS7739390B2Method and apparatus for achieving optimal transfer times in a peer-to-peer network
Publication Date: 2010.06.15 CISCO TECHNOLOGY INC
  • US7739390B2 patent drawing
  • US7739390B2 patent drawing
  • US7739390B2 patent drawing

AI summary

Apparatus and methods are disclosed for optimizing the transfer time of files in a peer-to-peer network. In disclosed embodiments, a requesting peer desires to transfer a file from a group of supplying peers creates a list of segments available of the file to be transferred available from each of the supplying peers, and orders the list in order of increasing segment size available. The supplying peers are then grouped based on available segments. Then, beginning with the group of supplying peers having the largest portion of the file to be transferred, the requesting peer assigning segments to transfer and a corresponding transfer time to each of the members of the group of supplying peers. The requesting peer then transfers in parallel the assigned segments from the group of supplying peers.