Connection Pooling for Video Streaming in CDNs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current video streaming in content delivery networks experiences slow access and video fluency issues due to the frequent setup and teardown of TCP connections between proxy and origin servers, leading to inefficient use of network resources.

Innovation Solution

Implementing a bandwidth-aware connection pooling mechanism that maintains reusable TCP connections between proxy and origin servers, allowing for efficient reuse and management of these connections, and strategically utilizing caching servers to supplement bandwidth when needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TCP connections are dedicated to each request between proxy and origin servers, then connection reliability is improved, but connection setup overhead increases and access speed deteriorates

Engineering Contradiction:
Improveconnection reliabilityVSAvoidconnection setup overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-establishes multiple TCP connections between proxy servers and origin servers before actual video streaming requests arrive. These connections are maintained in a connection pool and reused for subsequent requests, eliminating the need for repeated connection setup and teardown operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A single TCP connection in the connection pool can serve multiple video streaming requests from different clients or the same client. The connection becomes a universal resource that can be allocated to different requests as needed, rather than being dedicated to a single request.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Device complexity

If TCP connections are frequently setup and torn down for each video chunk request, then resource allocation is simplified, but network performance deteriorates and video fluency is impacted

Engineering Contradiction:
Improveresource allocation complexityVSAvoidvideo streaming performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The connection pool is pre-populated with established TCP connections before video streaming begins. This preliminary setup eliminates the need for frequent connection establishment during video playback, ensuring smooth and continuous video delivery without interruptions from connection overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

TCP connections in the connection pool are maintained open and ready for reuse throughout the video streaming session. Rather than being torn down after each use, the connections remain active and can be immediately reused for subsequent video chunk requests, ensuring continuous data flow without interruption.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of time

If connection pooling is implemented between proxy and origin servers, then connection setup overhead is reduced, but connection management complexity increases

Engineering Contradiction:
Improveconnection setup overheadVSAvoidconnection management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent introduces a connection manager as an intermediary component that handles the complexity of connection pool management. This manager is responsible for establishing, maintaining, and allocating connections in the pool, shielding other system components from the complexity of direct connection management while enabling efficient connection reuse.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Speed

If reusable connections are maintained in a connection pool, then access speed is improved, but network resource consumption increases

Engineering Contradiction:
Improveaccess speedVSAvoidnetwork resource consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system maintains a connection pool with a limited number of pre-established connections, which is sufficient to handle the expected video streaming load without over-provisioning. This partial action approach balances the need for fast access with reasonable resource consumption, avoiding the extreme of maintaining excessive connections that would waste network resources.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9124674B2Systems and methods for connection pooling for video streaming in content delivery networks
Publication Date: 2015.09.01 FUTUREWEI TECHNOLOGIES INC
  • US9124674B2 patent drawing
  • US9124674B2 patent drawing
  • US9124674B2 patent drawing

AI summary

System and methods for connection pooling for video streaming in content delivery networks (CSNs) are provided. An embodiment method for connection pooling in a content delivery network (CDN) by a proxy server includes receiving, from a client, a request for media content, sending, to a control server, a query to locate an origin media server having the media content if the media content is cache-missing, receiving, from the control server, information regarding the origin media server having the media content requested by the client, and forwarding the request for the media content to the origin media server having the media content using a reusable connection from a pool of the reusable connections between the proxy server and the origin media server if the reusable connection is unoccupied.