Fault-Tolerant Streaming via Synchronized Segmentation Servers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional architectures for streaming segmented content lack effective fault tolerance, leading to interruptions when a single server fails, and clients may not automatically switch to alternative servers, causing playback disruptions.

Innovation Solution

A fault-tolerant system is implemented using multiple synchronized segmentation servers that generate identical sets of segments and playlists, along with a caching server that automatically probes for server availability and directs requests to backup servers in case of failures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single segmentation server is used to stream segmented content, then the system complexity is reduced, but the reliability deteriorates because server failure causes streaming interruption

Engineering Contradiction:
Improvestreaming continuityVSAvoidserver architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the streaming service into multiple independent segmentation servers, each capable of generating and serving content segments. This allows the system to maintain reliability through redundancy while keeping each server component relatively simple and independent.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Backup segmentation servers perform preliminary actions by pre-generating and caching content segments before they are needed. When the primary server fails, these pre-prepared segments are immediately available to maintain continuous streaming without interruption.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple segmentation servers are deployed for fault tolerance, then the reliability improves, but the device complexity increases

Engineering Contradiction:
Improveserver availabilityVSAvoidmulti-server coordination
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where clients report server availability and segment retrieval status. This feedback loop enables automatic server selection and failover decisions, reducing the complexity of managing multiple servers by letting the system self-regulate based on real-time conditions.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

Clients are empowered to self-select appropriate segmentation servers based on playlist information and server availability. This self-service approach reduces the need for complex centralized coordination, as each client independently manages its own server selection and failover logic.

Inventive Principle:
Principle #25Self-service

3Reliability

If clients automatically switch to backup servers, then the streaming reliability improves, but the difficulty of detecting and measuring server status worsens

Engineering Contradiction:
Improveautomatic failoverVSAvoidserver availability detection
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The system uses periodic actions through scheduled playlist updates and server status probing. Clients periodically request updated playlists that contain current server availability information, and backup servers periodically check primary server status. This periodic monitoring makes server status detection manageable while enabling automatic failover.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS12212452B2System and method for providing fault tolerant streaming of segmented content and cache coherency on multi-hosted origin systems
Publication Date: 2025.01.28 SKITTER INC
  • US12212452B2 patent drawing
  • US12212452B2 patent drawing
  • US12212452B2 patent drawing

AI summary

Multiple segmentation servers are synchronized to provide failover capacity in such a way that should a failover occur, the segment numbers/playlists/encryption keys/decryption keys are identical on each of the segmentation servers. Synchronizing the contents of a segmentation server on one or more backup segmentation servers ensures that the delivery of a content stream is immune to the failure of segmentation servers, provided at least one segmentation server remains fault-free. A caching server may further facilitate the fault tolerance by checking the availability of the individual segmentation servers, collect content segments from one of the segmentation servers, and serve the content segment to clients. The caching server automatically checks a primary segmentation server to ensure it is available (e.g., online), and provides automatic failover to a backup segmentation server should the primary server experience a fault (e.g., go offline).