Nginx 1.26.0: HTTP / 3, improved protection against DoS attacks and performance optimization

Father

Professional
Messages
2,601
Reputation
4
Reaction score
634
Points
113
The nginx team has announced the release of a new stable version of the high-performance HTTP server.

After a year of development, the nginx announced the release of a new stable version of nginx 1.26.0, a high-performance HTTP server and multiprotocol proxy server.

The new version includes all the key changes implemented in the previous main branch 1.25. x. The next updates in the stable branch 1.26 will focus exclusively on fixing serious bugs and vulnerabilities.

In the near future, it is planned to launch the main branch of nginx 1.27, which will continue to develop new features. Users who do not need compatibility with third-party modules are recommended to use the main branch, which is updated every 3 months for the commercial Nginx Plus product.

According to Netcraft, nginx manages approximately 243 million sites, up from 289 million a year earlier. Currently, nginx occupies 18.15% of the active site market, second only to Apache, which has a 20.09% share. Cloudflare and Google are also significantly represented in the market. Despite the overall decline in the market share, nginx remains the leader in the total number of managed sites, with 22.31% of the market.

The new version of nginx 1.26.0 introduces several significant improvements and innovations that deepen the functionality and improve overall performance and security. Here's a detailed overview of the key additions:

1. HTTP/3 support:
The ngx_http_v3 module has been added, which provides experimental support for the HTTP protocol./3. The protocol uses QUIC (Quick UDP Internet Connections) as the transport layer for HTTP/2, which improves performance due to shorter connection establishment time and lower latency in case of packet loss. To enable the module, use the --with-http_v3_module configuration option.

2. Changes to HTTP / 2:
A separate http2 directive has been introduced to selectively enable HTTP/2 at the level of individual server blocks, which provides more flexibility in configuration.
Improved protection against DoS attacks such as Rapid Reset, where an attacker can quickly open and close threads within a single connection. In response, a new limit has been introduced that prevents the default creation of more than 256 new threads per event cycle.

3. Modules for working with connections:
Added the ngx_stream_pass_module module, which allows direct transmission of received connections to any active socket that works with the http, stream, and mail modules. This can be used to simplify proxying and load balancing.
The stream module supports deferred, accept_filter, and setfib parameters in the listen directive, which improves incoming connection management and routing.

4. Performance and resource management:
Implemented support for determining the block size (cache line), which is important for architectures optimized for use in server solutions.
Improved performance and buffer management for HTTP / 2, especially in automatic connection detection and management.

5. Removing deprecated features:
Removed support for Server Push technology in HTTP / 2 and the ssl directive, which were deprecated in previous versions, indicating a desire to improve and simplify the code base.

In addition, the stable release of FreeNginx 1.26.0, a fork of the project developed without corporate intervention and focused on non-commercial use, was published, which is led by Maxim Dunin, one of the leading developers of Nginx.
 
Top