AWS recently announced that CloudFront distributions support HTTP version 3 (HTTP/3) requests over QUIC. HTTP/3 is optional and provides faster response times and enhanced security over previous HTTP versions.
The HTTP/3 support for end user connections is built on top of s2n-quic, an open-source QUIC protocol implementation in Rust and designed to improve performance and end-viewer experience by reducing connection times and removing head of line blocking. Channy Yun, principal developer advocate at AWS, explains how HTTP/3 works:
HTTP/3 uses QUIC and overcomes many of TCP’s limitations and brings those benefits to HTTP. When using existing HTTP/2 over TCP and TLS, TCP needs a handshake to establish a session between a client and server, and TLS also needs its own handshake to ensure that the session is secured. Each handshake has to make the full round trip between client and server, which can take a long time when client and server are far apart, network-wise. But, QUIC only needs a single handshake to establish a secure session.
Source: https://aws.amazon.com/blogs/aws/new-http-3-support-for-amazon-cloudfront/
Yan Cui, cloud consultant and AWS Serverless Hero, wonders:
Would managed CloudFront distributions like those managed by Amplify, AppSync and API Gateway be enabled for HTTP/3?
But as it's an optional not default setting, it is currently not automatically available for APIs. To enable HTTP/3 on a distribution, customers can modify the configuration using the console, the UpdateDistribution API or a CloudFormation template. Clients that do not support HTTP/3 can still communicate with HTTP/3 enabled distributions using previous HTTP versions.
Source: https://aws.amazon.com/blogs/aws/new-http-3-support-for-amazon-cloudfront/
Yun adds:
HTTP/3 provides benefits to all CloudFront customers in the form of faster connection times, stream multiplexing, client-side connection migration, and fewer round trips in the handshake process to reduce error rates.
Rowan Udell, cloud practice director at Versent, tweets:
I guess it's a good thing, but we still need to get everyone over to HTTP/2... This isn't going to be another IPv6 is it?
Amazon Cloudfront is not the only content delivery network supporting the new standard, with QUIC and HTTP/3 support available on the Cloudflare edge network since 2019. Google Cloud CDN and HTTPS Load Balancing have been supporting HTTP/3 since last year, with the cloud provider claiming that Google's own roll-out reduced search latency by 2% and video rebuffer times on YouTube by 9%.
The HTTP/3 support is available in all CloudFront edge locations worldwide with no additional charge. For clients and distributions to use HTTP/3, clients must support TLSv1.3 and Server Name Indication (SNI). CloudFront supports HTTP/3 connection migration to allow the viewer to switch networks without losing connection.