Parallel Streaming via Predictive Multi-Connection Scheduling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Digital content distribution systems face challenges in maintaining high playback quality and preventing buffer under-runs due to variable network bandwidth and latency, especially during moments of congestion, which can lead to interrupted streaming.

Innovation Solution

A method for downloading digital content files in parallel using multiple network connections, employing a predictive multi-connection scheduling approach to optimize data throughput by selecting the most efficient connection for each chunk, thereby maximizing bit-rate encodings and reducing buffer under-runs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single network connection is used to download digital content, then the system complexity is low, but the playback quality and reliability deteriorate due to buffer under-runs during network congestion

Engineering Contradiction:
Improvestreaming reliabilityVSAvoidconnection management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the digital content file into multiple sequential portions (chunks) and distributes them across multiple network connections. Each connection downloads a specific portion of the content, allowing parallel retrieval and improving reliability by preventing buffer under-runs during network congestion.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic connection management where the system monitors network conditions and adaptively selects which connection to use for downloading each subsequent portion of content. The scheduler dynamically assigns portions to connections based on current network status, making the system responsive to changing conditions.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If higher bit-rate encodings are used, then the playback quality is improved, but the network bandwidth requirements increase, leading to more frequent buffer under-runs

Engineering Contradiction:
Improveplayback qualityVSAvoidstreaming continuity
Core Design Contradiction:
Manufacturing precisionVSReliability

Solution Approach 1:

The patent merges multiple network connections to collectively download high bit-rate content. By combining the bandwidth of multiple connections, the system can sustain higher bit-rate encodings without increasing the load on a single connection, thereby maintaining both playback quality and streaming continuity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent ensures continuous data flow to the buffer by maintaining multiple active download operations simultaneously. The scheduler continuously monitors buffer levels and connection status, ensuring that data download continues without interruption even when network conditions fluctuate, preventing buffer under-runs during high bit-rate playback.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If multiple network connections are used to download content in parallel, then the throughput and playback quality are improved, but the difficulty of managing and scheduling connections increases

Engineering Contradiction:
Improvedownload throughputVSAvoidconnection scheduling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a self-service scheduling mechanism where the system automatically monitors connection status, buffer levels, and network conditions to make scheduling decisions. The scheduler autonomously assigns content portions to appropriate connections without requiring external intervention, managing the complexity internally while maintaining high throughput.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent employs feedback mechanisms where the system continuously monitors download progress, buffer status, and network conditions. This feedback information is used by the scheduler to dynamically adjust connection usage, ensuring optimal throughput while automatically managing the complexity of multiple connections through real-time adaptation.

Inventive Principle:
Principle #23Feedback

4Reliability

If the content buffer size is increased to prevent under-runs, then the streaming reliability is improved, but the memory requirements and startup time increase

Engineering Contradiction:
Improvebuffer under-run preventionVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent performs preliminary actions by proactively downloading content portions in parallel before they are needed for playback. Multiple connections simultaneously retrieve different segments of the content, pre-loading data into the buffer ahead of time, which prevents under-runs without requiring excessive buffer memory capacity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic buffer management where the system adjusts buffer refill strategies based on real-time monitoring of buffer levels, connection status, and network conditions. This dynamic approach maintains sufficient buffer content to prevent under-runs while optimizing memory usage by only allocating the necessary buffer size rather than a fixed large capacity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10326810B2Parallel streaming
Publication Date: 2019.06.18 NETFLIX INC
  • US10326810B2 patent drawing
  • US10326810B2 patent drawing
  • US10326810B2 patent drawing

AI summary

Embodiments of the present invention set forth techniques for a content player to stream a media file using multiple network connections. To stream the media file, the content player downloads metadata associated with a requested media file, establishes a network connection with multiple content servers (or multiple network connections with a single content server or both) and begins requesting portions of the media file. In response, the requested portions are transmitted to the content player. The content player may employ a predictive multi-connection scheduling approach to determine which network connection to use in downloading a given chunk.