NGINX QUIC Protocol Multiplexing for Multi-Protocol UDP Ports

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing scenario of using QUIC based on NGINX is limited as it only supports HTTP/3.0 and does not support other application layer protocols, leading to increased UDP port overhead due to the need for separate ports for each protocol.

Innovation Solution

Integrate a QUIC protocol stack on the NGINX server to process QUIC messages and derive application layer data, allowing multiple protocols like HTTP/1.1, HTTP/2.0, and RTMP to share the same UDP port, reducing port overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If separate UDP ports are assigned for each application layer protocol, then each protocol can be independently supported, but UDP port overhead increases

Engineering Contradiction:
Improveprotocol support capabilityVSAvoidUDP port overhead
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements a universal QUIC protocol stack that can handle multiple application layer protocols (HTTP/1.1, HTTP/2.0, HTTP/3.0, RTMP, etc.) through a single UDP port. The protocol stack includes a multiplexer that routes different application protocols to appropriate processing modules, enabling one port to serve multiple functions rather than requiring separate ports for each protocol.

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

Solution Approach 2:

The patent introduces a multiplexer as an intermediary component between the QUIC protocol stack and various application layer protocols. This multiplexer acts as a mediator that receives UDP packets, identifies the application protocol type, and directs them to the corresponding processing module, thereby enabling protocol diversity without requiring separate ports for each protocol.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If only HTTP/3.0 is supported on port 443, then QUIC-based NGINX works for web traffic, but other application layer protocols cannot be supported

Engineering Contradiction:
Improveapplication layer protocol diversityVSAvoidprotocol processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the QUIC protocol stack into distinct functional modules, each responsible for a specific application layer protocol (HTTP/1.1 module, HTTP/2.0 module, HTTP/3.0 module, RTMP module, etc.). This segmentation allows each module to process its specific protocol independently while sharing the common QUIC transport layer, thereby supporting multiple protocols without overwhelming complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a dynamic protocol selection mechanism where the multiplexer can adaptively route different application protocols to appropriate processing modules based on the incoming data characteristics. This dynamic approach allows the system to handle protocol diversity flexibly, switching between different processing paths as needed without requiring static dedicated paths for each protocol.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If multiple application layer protocols share the same UDP port, then port overhead is reduced, but protocol identification and routing become more complex

Engineering Contradiction:
Improveport overheadVSAvoidprotocol identification complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent uses protocol identification mechanisms similar to color recognition to distinguish between different application layer protocols. By examining specific fields in the UDP packet (such as payload markers, header structures, or negotiation protocols), the system can identify the protocol type and route it accordingly. This approach allows clear protocol differentiation without requiring separate ports, as each protocol has its own identifiable 'signature' or 'color' within the shared port.

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS12526349B2Data processing method, electronic device, and computer-readable storage medium
Publication Date: 2026.01.13 CHINANETCENT TECH
  • US12526349B2 patent drawing
  • US12526349B2 patent drawing
  • US12526349B2 patent drawing

AI summary

Disclosed are a data processing method, an electronic device, and a computer-readable storage medium. During uplink transmission, upon receiving a first QUIC message from a client device over a target UDP port, an NGINX server sends the first QUIC message to the QUIC protocol stack, such that the QUIC protocol stack processes the first QUIC message to derive application layer data, and sends a first data stream including a first application layer data packet to an upstream server. During downlink transmission, the NGINX server receives a second data stream from the upstream server, caches a second application layer data packet included in the second data stream into a second cache, and delivers the second application layer data packet to the QUIC protocol stack for processing when the QUIC protocol stack is writable to derive a second QUIC message and sends the second QUIC message to the client device.