Cloudflare ha implementado un módulo para soportar HTTP/3 en NGINX

Empresa Cloudflare preparó módulo para garantizar el soporte del protocolo HTTP/3 en NGINX. El módulo está desarrollado como una extensión de la biblioteca en evolución en Cloudflare quiche con la implementación del protocolo de transporte QUIC y HTTP/3. El código de quiche está escrito en Rust, pero el módulo para NGINX está escrito en C y accede a la biblioteca mediante enlace dinámico. Los desarrollos están disponibles bajo licencia BSD.

Para compilar, solo necesitas descargar parche nginx 1.16 y código la biblioteca quiche, luego recompilar nginx con las opciones «—with-http_v3_module —with-quiche=.. / quiche». En la compilación, el soporte TLS debe basarse en la biblioteca BoringSSL («—with-openssl=.. / quiche / deps / boringssl»), el uso de OpenSSL aún no es compatible. Para aceptar conexiones, debes añadir la directiva listen con la bandera «quic» (por ejemplo, «listen 443 quic reuseport»).

En el software cliente, el soporte para HTTP/3 ya se ha añadido en las compilaciones experimentales de Chrome Canary y la herramienta curl. Del lado del servidor, aún era necesario usar implementaciones de prueba limitadas en sus capacidades de pruebas. La capacidad de manejar HTTP/3 en nginx permitirá simplificar significativamente el despliegue de servidores con soporte para HTTP/3 y hará que la implementación de prueba de un nuevo protocolo sea más accesible. La aparición del soporte nativo para HTTP/3 en nginx se espera en la rama 1.17.x dentro de 6 a 12 meses.

Recordemos que HTTP/3 normaliza el uso del protocolo QUIC como transporte para HTTP/2. El protocolo QUIC (Quick UDP Internet Connections) ha sido desarrollado por Google desde 2013 como una alternativa a la combinación TCP+TLS para la web, que resuelve los problemas de alto tiempo de establecimiento y negociación de conexiones en TCP y elimina las demoras debido a la pérdida de paquetes durante la transmisión de datos. QUIC es una capa sobre el protocolo UDP, que soporta la multiplexión de múltiples conexiones y proporciona métodos de cifrado equivalentes a TLS/SSL.

Principales características QUIC:

  • Alta seguridad, similar a TLS (de hecho, QUIC permite el uso de TLS sobre UDP);
  • Control de integridad del flujo, previniendo la pérdida de paquetes;
  • La posibilidad de establecer una conexión de inmediato (0-RTT, en aproximadamente el 75% de los casos los datos se pueden transmitir inmediatamente después del envío del paquete de establecimiento de conexión) y asegurar una latencia mínima entre el envío de la solicitud y la recepción de la respuesta (RTT, Round Trip Time);
  • No utilizar el mismo número de secuencia para la retransmisión del paquete, lo que permite evitar ambigüedades al determinar los paquetes recibidos y eliminar los tiempos de espera;
  • La pérdida de paquetes afecta solo a la entrega de la corriente asociada y no detiene la entrega de datos en las corrientes que se transmiten en paralelo a través de la conexión actual;
  • Mecanismos de corrección de errores que minimizan la latencia debido a la retransmisión de paquetes perdidos. Uso de códigos especiales de corrección de errores a nivel de paquete para reducir situaciones que requieren la retransmisión de datos de un paquete perdido.
  • Los límites de los bloques criptográficos están alineados con los límites de los paquetes QUIC, lo que reduce el impacto de la pérdida de paquetes en la decodificación del contenido de los siguientes paquetes;
  • Ausencia de problemas de bloqueo de la cola TCP;
  • Soporte para un identificador de conexión que permite reducir el tiempo de establecimiento de una nueva conexión para clientes móviles;
  • Capacidad de conectar mecanismos avanzados de control de congestión de la conexión;
  • Uso de técnicas de predicción de ancho de banda en cada dirección para asegurar la intensidad óptima de envío de paquetes, evitando caer en un estado de congestión donde se observa la pérdida de paquetes;
  • Notable aumento rendimiento y capacidad de transporte en comparación con TCP. Para servicios de video como YouTube, la aplicación de QUIC ha demostrado reducir las operaciones de repetición de búfer al ver videos en un 30%.
  • Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster