Streaming Data FEC Repair Packets Bandwidth Probing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing streaming systems are inefficient in data storage and computational resources, often leading to high data packet loss and inefficient bandwidth use, especially in interactive streaming applications that require low-latency and high-interactivity.

Innovation Solution

A system and method for interactive streaming that uses forward error correction (FEC) repair packets as probing traffic to estimate bandwidth concurrently with content traffic, allowing for adaptive bitrate adjustments and low-latency, non-buffered delivery by incorporating FEC repair packets as probing traffic to minimize impact on content quality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional streaming systems use conventional error correction methods, then packet loss can be recovered, but data storage and computational resources are inefficient

Engineering Contradiction:
Improvepacket loss recoveryVSAvoiddata storage and computational resources
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines FEC repair packets with probing packets into a single unified packet structure. The repair packets serve dual purposes: correcting lost data packets and probing network bandwidth capacity. This merging eliminates the need for separate probing traffic, reducing overall data transmission volume and computational overhead while maintaining reliable packet loss recovery.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The repair packets are designed to perform multiple functions simultaneously: error correction, bandwidth probing, and network condition assessment. This multi-functionality reduces the total number of packets required in the streaming system, thereby decreasing data storage requirements and computational resources while improving reliability.

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

2Measurement precision

If streaming systems increase bandwidth allocation for probing traffic, then bandwidth estimation accuracy improves, but available bandwidth for content delivery decreases

Engineering Contradiction:
Improvebandwidth estimation accuracyVSAvoidavailable bandwidth for content delivery
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent merges the probing function into the existing repair packet transmission stream. By embedding bandwidth probing capabilities within the necessary error correction packets, the system achieves accurate bandwidth estimation without allocating additional bandwidth specifically for probing traffic. The repair packets probe network conditions while delivering essential error correction functionality.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The repair packets serve themselves by performing both error correction and bandwidth probing functions. Instead of requiring separate dedicated probing traffic, the system uses the inherently necessary repair packets to simultaneously assess network conditions, thereby eliminating the need for additional probing bandwidth allocation.

Inventive Principle:
Principle #25Self-service

3Loss of time

If streaming systems use low-latency non-buffered delivery, then interactivity improves, but packet loss impact increases

Engineering Contradiction:
ImprovelatencyVSAvoidpacket loss impact
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system sends FEC repair packets in advance alongside the content stream, preparing correction data before it is needed. This preliminary action allows the receiver to immediately reconstruct lost packets without waiting for retransmission, maintaining low latency while protecting against packet loss impact in non-buffered delivery scenarios.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements prior cushioning by including redundant repair packets that can compensate for potential packet loss before it occurs. These pre-positioned repair packets act as a cushion against network errors, allowing the system to maintain reliable delivery without requiring buffering or retransmission delays.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

4Reliability

If streaming systems transmit more repair packets for error correction, then packet loss recovery improves, but bandwidth efficiency decreases

Engineering Contradiction:
Improvepacket loss recoveryVSAvoidbandwidth efficiency
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent combines repair packets with probing packets into a single unified transmission. This merging allows the system to achieve effective packet loss recovery while simultaneously probing network bandwidth, thereby reducing the total transmission overhead and improving bandwidth efficiency compared to sending separate repair and probing traffic streams.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system dynamically adjusts the rate and composition of repair packets based on real-time network conditions assessed through the probing function. By changing parameters such as repair packet frequency and redundancy levels according to actual network performance, the system optimizes the balance between packet loss recovery and bandwidth efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10057014B2System and method for streaming data
Publication Date: 2018.08.21 GOOGLE LLC
  • US10057014B2 patent drawing
  • US10057014B2 patent drawing
  • US10057014B2 patent drawing

AI summary

In a system and method for streaming data, the system includes: instructions that: encode a data stream at a first bitrate; transmit a plurality of first data blocks to a receiver, each of the first data blocks including: a first source packet corresponding to the encoded data stream; and a first repair packet; and transmit a plurality of second data blocks to the receiver for a first predetermined period of time, each of the second data blocks including: a second source packet corresponding to the encoded data stream; a second repair packet; and a probing packet.