Real-Time Data Transmission via Multiple TCP Connections

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Real-time video and audio streaming over TCP is hindered by packet loss and delay, leading to significant latency and potential staleness of data, making real-time playback infeasible due to the in-order delivery and retransmission requirements of TCP packets.

Innovation Solution

Establishing multiple TCP connections to transmit real-time data in the form of separate data sets, allowing each data set to be transmitted independently over a separate connection, thereby isolating delays and simulating UDP-like behavior without the need for error correction, ensuring continuous data delivery and minimizing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TCP is used to transmit real-time video and audio data, then reliable data delivery is achieved, but significant latency and delay occur due to packet retransmission and in-order delivery requirements

Engineering Contradiction:
Improvedata delivery reliabilityVSAvoidtransmission latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the real-time data stream into multiple independent data sets, where each data set is transmitted over a separate TCP connection. This segmentation allows parallel transmission of multiple data sets without requiring in-order delivery across all connections, thereby reducing overall latency while maintaining reliability through multiple transmission paths.

Inventive Principle:
Principle #1Segmentation

2Reliability

If packet retransmission is performed to ensure data integrity, then data completeness is improved, but transmission time increases significantly

Engineering Contradiction:
Improvedata completenessVSAvoidretransmission time
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent establishes multiple TCP connections in advance before data transmission begins. By pre-configuring multiple transmission channels, the system prepares redundant paths that can immediately carry data sets without waiting for retransmission timeouts, thus reducing the duration of action while maintaining data completeness through parallel transmission opportunities.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If in-order packet delivery is enforced to maintain data sequence, then data integrity is improved, but real-time playback feasibility deteriorates due to delays

Engineering Contradiction:
Improvedata sequence integrityVSAvoidreal-time playback feasibility
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent transitions from a single-dimensional sequential transmission model to a multi-dimensional parallel transmission model by using multiple TCP connections simultaneously. Each connection operates independently with its own data sets, allowing the system to maintain sequence integrity through logical ordering at the application layer while achieving real-time playback through parallel transmission paths that bypass traditional in-order delivery constraints.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10075498B2Systems and methods for transmitting data in real time
Publication Date: 2018.09.11 OMNISSA LLC
  • US10075498B2 patent drawing
  • US10075498B2 patent drawing
  • US10075498B2 patent drawing

AI summary

Systems and methods described herein facilitate the transmission of data in real time by using TCP connections such that the latency issues incurred from packet loss is prevented. A server is in communication with a client, wherein the server is configured to facilitate forming a plurality of TCP connections with the client. The server is also configured to receive one or more requests from the client via the TCP connections, wherein at least one of the requests corresponds to a request to receive data in real time. The server is configured to separate the real-time data into a succession of data sets and associate the data sets to the TCP connections such that each of the succession of data sets is associated with a separate TCP connection. Each of the succession of data sets is transmitted to the client via the associated separate TCP connections.