NGINX QUIC Stack Integration for Multi-Protocol Single-Port Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing scenario of using QUIC based on NGINX is limited to supporting only HTTP/3.0, and assigning different UDP ports to various application layer protocols results in significant port overhead.
Innovation Solution
Integrating a QUIC protocol stack on the NGINX server to process multiple application layer protocols like HTTP/1.1, HTTP/2.0, and RTMP over a single UDP port, using a detection module to identify protocol types and caching data packets for efficient processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If different UDP ports are assigned to various application layer protocols, then each protocol can be supported independently, but port overhead increases significantly
Solution Approach 1:
The patent applies universality by enabling a single UDP port to serve multiple application layer protocols (HTTP/1.1, HTTP/2.0, HTTP/3.0, RTMP) simultaneously. The NGINX server integrates a QUIC protocol stack that can process different protocols over the same port, eliminating the need for separate ports for each protocol and thereby reducing port overhead while maintaining broad protocol support capability.
2Adaptability or versatility
If QUIC protocol stack is integrated on NGINX server, then multiple application layer protocols can be supported over a single UDP port, but the server complexity increases
Solution Approach 1:
The patent applies the nesting principle by integrating the QUIC protocol stack within the NGINX server structure. The QUIC stack is nested inside the NGINX framework, allowing NGINX to handle multiple application layer protocols (HTTP/1.1, HTTP/2.0, HTTP/3.0, RTMP) through a unified architecture. This nested structure enables protocol diversity while managing server complexity through modular integration.
3Speed
If port 443 is used for HTTP/3.0 only, then the protocol is optimized for web traffic, but other application layer protocols cannot be supported
Solution Approach 1:
The patent applies universality by enabling port 443 to serve multiple application layer protocols simultaneously (HTTP/1.1, HTTP/2.0, HTTP/3.0, RTMP). The integrated QUIC protocol stack allows the server to multiplex different protocols over the same port, maintaining the low-latency benefits of QUIC while expanding protocol diversity to support various application layer protocols without requiring separate ports.
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
Embodiments of the present disclosure provide 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. With the technical solutions, by integrating a QUIC protocol stack on a NGINX server, a scenario of using QUIC based on NGINX is practiced and a variety of types of application layer protocols are supported, and in addition, different application layer protocols use a same UDP port, thereby reducing port overhead.