gRPC Client Detection Using Queue Staleness Thresholds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

gRPC clients that become unresponsive due to network issues are not detected promptly, leading to accumulation of outbound messages and potential out-of-memory conditions on the server, which can be exploited for denial-of-service attacks and negatively impact other clients.

Innovation Solution

Implementing separate queues for each client and using time thresholds to assess data staleness, allowing only fresh data entries and purging stale data to prevent backlog and resource exhaustion, with alarms for timely client intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If gRPC clients maintain persistent connections with TCP keep-alive messages, then connection stability is improved, but unresponsive clients cannot be detected promptly leading to message accumulation

Engineering Contradiction:
Improveconnection stabilityVSAvoiddetection reliability
Core Design Contradiction:
Stability of the object's compositionVSReliability

Solution Approach 1:

The patent introduces an intermediary detection mechanism that operates independently from the persistent gRPC connection. This mediator monitors client responsiveness by attempting to send messages and track acknowledgments, separate from the main data communication channel. When the intermediary detects unresponsiveness through missing acknowledgments, it triggers client isolation without disrupting the stable TCP connection infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If the server continues sending messages to unresponsive clients, then message delivery completeness is improved, but server memory consumption increases leading to out-of-memory conditions

Engineering Contradiction:
Improvemessage delivery completenessVSAvoidserver memory consumption
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The system implements self-service through automatic client detection and isolation mechanisms. The server monitors acknowledgment patterns and autonomously identifies unresponsive clients, then automatically isolates them by stopping message delivery. This self-service approach eliminates the need for manual intervention while preventing memory exhaustion from accumulating messages to dead endpoints.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements feedback loops where the server sends messages and waits for acknowledgments. When acknowledgments are not received within expected timeframes, the feedback mechanism triggers detection of unresponsive clients. This continuous feedback cycle allows the system to adapt message delivery based on actual client responsiveness, stopping delivery to unresponsive clients before memory exhaustion occurs.

Inventive Principle:
Principle #23Feedback

3Productivity

If the server isolates unresponsive clients immediately, then system performance is improved, but false positives may occur disrupting legitimate clients

Engineering Contradiction:
Improvesystem performanceVSAvoidclient isolation accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent applies preliminary action by implementing a detection phase before isolation. The system first identifies potentially unresponsive clients through acknowledgment monitoring, then applies isolation only after confirmation. This preliminary detection step reduces false positives by distinguishing between temporarily slow clients and truly unresponsive ones, maintaining system performance while protecting legitimate clients from premature isolation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12554567B2Apparatuses, methods, and systems for detecting an unresponsive client
Publication Date: 2026.02.17 CIENA CORP
  • US12554567B2 patent drawing
  • US12554567B2 patent drawing
  • US12554567B2 patent drawing

AI summary

Aspects of the subject disclosure may include, for example, identifying a first client that is associated with a first data item, identifying a first time when the first data item is obtained, identifying a second time associated with a second data item, wherein a receipt of the second data item has not been acknowledged by the first client when the first data item is obtained, computing a first time difference between the first time and the second time, comparing the first time difference to a first threshold, resulting in a first comparison, and initiating a first action based on the first comparison. Other embodiments are disclosed.