Ring Buffer UDP Mechanism for Client Input Loss

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing remote content delivery mechanisms using TCP protocols suffer from undesirable latency and bursty graphics display due to user input loss during transmission from client devices to remote servers, which is intolerable in gaming applications.

Innovation Solution

Implementing a mechanism that uses ring buffer messages in conjunction with UDP to handle user input loss, where each ring buffer message contains the last N input commands, allowing for recovery of lost inputs and minimizing latency by enabling subsequent messages to be sent even if previous ones are lost.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TCP protocol is used to ensure user input delivery, then user input loss is eliminated, but latency increases and subsequent inputs are blocked during retransmission

Engineering Contradiction:
Improveuser input delivery reliabilityVSAvoidinput transmission latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments user inputs into fixed-size ring buffer messages containing N inputs each. This segmentation allows the system to transmit multiple inputs in parallel batches rather than sequentially, reducing the impact of any single lost input on overall latency while maintaining reliability through UDP's best-effort delivery mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary actions by sending ring buffer messages containing multiple user inputs in advance before any loss occurs. By pre-grouping and transmitting N inputs together, the system reduces waiting time for retransmission requests and allows subsequent messages to be sent without blocking, even if previous messages are lost.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If TCP retransmission mechanism is used, then user input loss is recovered, but graphics display becomes bursty and undesirable behaviors occur

Engineering Contradiction:
Improveuser input recoveryVSAvoidgraphics display smoothness
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

By segmenting inputs into fixed-size ring buffer messages, the patent ensures that even if one message is lost, only N inputs are affected rather than blocking all subsequent inputs. This segmentation prevents the bursty graphics display by maintaining a steady flow of transmitted messages without long interruptions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent maintains continuity of useful action by allowing subsequent ring buffer messages to be sent without waiting for lost previous messages to be retransmitted. This continuous transmission approach prevents gaps in input delivery that would cause bursty graphics display, ensuring smooth and consistent game response.

Inventive Principle:
Principle #20Continuity of useful action

3Device complexity

If individual user inputs are sent sequentially, then transmission simplicity is maintained, but latency increases due to blocking on lost inputs

Engineering Contradiction:
Improvetransmission mechanism simplicityVSAvoidinput transmission latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent merges multiple individual user inputs into single ring buffer messages containing N inputs each. This merging reduces the total number of transmission operations needed while maintaining simplicity, as the ring buffer structure automatically manages the grouping and sequential sending of merged inputs without complex retransmission logic.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9479618B2Mechanism for handling user input loss that occurs during transmission from a client device to a remote server using ring buffer messages in conjunction with UDP
Publication Date: 2016.10.25 GOOGLE LLC
  • US9479618B2 patent drawing
  • US9479618B2 patent drawing
  • US9479618B2 patent drawing

AI summary

A method for handling user input loss from a client device to a remote server using user datagram protocol (UDP), includes receiving a newly generated user input command at the client device, removing a previously generated user input command located at a front of the ring buffer from the ring buffer, shifting one or more other previously generated user input commands towards the front of the ring buffer, placing the newly generated user input command at an end of a ring buffer, and sending a first ring buffer message containing the one or more other previously generated input commands and the newly generated user input command to the remote server.