Nginx HTTP/3 Optimization
| Název práce v češtině: | Nginx HTTP/3 Optimization |
|---|---|
| Název v anglickém jazyce: | Nginx HTTP/3 Optimization |
| Akademický rok vypsání: | 2025/2026 |
| Typ práce: | diplomová práce |
| Jazyk práce: | |
| Ústav: | Katedra softwarového inženýrství (32-KSI) |
| Vedoucí / školitel: | RNDr. Filip Zavoral, Ph.D. |
| Řešitel: |
| Zásady pro vypracování |
| QUIC protocol was initially standardized in RFC 9000, yet it is still not implemented in mainstream kernels (Windows, Linux), and its support is supplemented through userspace libraries.
QUIC is necessary for HTTP3, which is gaining popularity for content delivery. However, the Nginx, a popular HTTP cache proxy, has a poor QUIC implementation and lacks plenty of essential features, such as a more sophisticated Congestion Control Algorithm selection like BBR. The goal of the thesis is to integrate a state-of-the-art QUIC library called QUICHE into Nginx and compare its performance with Nginx's QUIC implementation. Thesis tasks: 1. Familiarization with codebases - Study the internal architecture of Nginx with a focus on the HTTP/3 and QUIC subsystems - Study the QUICHE library and its API relevant to HTTP/3 connections 2. Design of the integration layer - Design and implement a Foreign Function Interface layer that allows Nginx to use QUICHE for handling incoming HTTP/3 connections - Address differences in memory management and error handling between the two projects - Adapt or extend existing QUICHE patches for older Nginx versions, fixing issues such as missing error handling and segmentation faults 3. Implementation - Modify both Nginx and QUICHE codebases to enable stable and efficient interoperability - Ensure support for core HTTP/3 features and robust handling of multiple concurrent connections 4. Performance evaluation - Design and implement a test framework to compare multiple QUIC implementations under representative workloads - Measure key metrics such as throughput, latency, and CPU utilization under different network conditions and congestion control algorithms - Analyze performance differences between the native Nginx QUIC stack and QUICHE-based integration - Optionally, compare the HTTP3 performance of Nginx with other HTTP3 proxies |
| Seznam odborné literatury |
| https://www.rfc-editor.org/rfc/rfc9000.html
https://www.rfc-editor.org/rfc/rfc9114.html https://nginx.org/ https://github.com/cloudflare/quiche |