# Follow-Up: HTTP/3 Performance Observations with NGINX 1.29.1 and 1.29.2

**URL:** <https://community.nginx.org/t/follow-up-http-3-performance-observations-with-nginx-1-29-1-and-1-29-2/7667>\
**Category:** NGINX\
**Tags:** performance, quic, http3\
**Created:** [October 20, 2025, 1:12am UTC](https://community.nginx.org/t/follow-up-http-3-performance-observations-with-nginx-1-29-1-and-1-29-2/7667 "2025-10-20T01:12:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![villa](https://avatars.discourse-cdn.com/v4/letter/v/bc79bd/32.png) [@villa](https://community.nginx.org/u/villa)\
**Post date:** [October 20, 2025, 1:12am UTC](https://community.nginx.org/t/follow-up-http-3-performance-observations-with-nginx-1-29-1-and-1-29-2/7667/1 "2025-10-20T01:12:36Z")

</div>

Reference to original post: [https://community.nginx.org/t/seeking-clarification-on-http-3-performance-differences-between-nginx-1-27-5-and-1-27-4/5417/4](https://community.nginx.org/t/seeking-clarification-on-http-3-performance-differences-between-nginx-1-27-5-and-1-27-4/5417/4)

We conducted HTTP/3 performance tests across NGINX versions 1.25.5 to the latest 1.29.2 under consistent network emulation conditions.

Starting from version 1.27.5, NGINX switched its QUIC congestion control algorithm from **reno** to **cubic**. While we cannot confirm whether this change is the root cause of performance differences, we suggest that future NGINX releases provide a configuration parameter allowing users to select the QUIC congestion control algorithm based on their deployment needs.

## Test Results(Average of 100 runs per version, in seconds)

| Version | No Packet Loss (sec) | 1% Packet Loss (sec) |
| --- | --- | --- |
| nginx-1.25.5 | 12.329 | 21.339 |
| nginx-1.27.4 | 13.592 | 24.173 |
| nginx-1.27.5 | 27.251 | 221.720 |
| nginx-1.28.0 | 19.456 | 195.452 |
| nginx-1.29.0 | 19.498 | 186.282 |
| **nginx-1.29.1** | **20.957** | **187.009** |
| **nginx-1.29.2** | **16.910** | **185.894** |

## Test Configuration Summary

- **nginx.conf setting:** http3\_stream\_buffer\_size 50m;

- **Network emulation (tc + netem):** limit 6000, delay 50ms, packet loss 0% / 1%

- **Test file size:** 47MB

## Additional Observation

Comparing **nginx-1.29.1** and **nginx-1.29.2** , we observed the following:

- Under **no packet loss** , nginx-1.29.2 (16.910 sec) performed **better** than nginx-1.29.1 (20.957 sec), showing a noticeable improvement.

- Under **1% packet loss** , nginx-1.29.2 (185.894 sec) was **slightly better** than nginx-1.29.1 (187.009 sec), though the difference is marginal.

This may suggest that some internal optimizations were introduced in nginx-1.29.2, but the performance under packet loss remains significantly lower compared to earlier versions using QUIC reno.

---

<div class="post-metadata">

**Author:** ![system](https://drob5swvtjqxg.cloudfront.net/user_avatar/community.nginx.org/system/32/19_2.png) [@system](https://community.nginx.org/u/system)\
**Post date:** [November 19, 2025, 1:13am UTC](https://community.nginx.org/t/follow-up-http-3-performance-observations-with-nginx-1-29-1-and-1-29-2/7667/2 "2025-11-19T01:13:29Z")

</div>

Closed on November 19, 2025, 1:13am UTC

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
