The behavior enables HTTP/2, an open networking protocol for transporting web content. It is designed to reduce latency and resource consumption when loading web properties.
HTTP/2 enhances standard HTTP 1.0 and 1.1 by allowing you to request and download multiple objects concurrently over a single TCP connection. HTTP/2 also provides object prioritization and uses HTTP header compression to conserve bandwidth.
How it works
For your properties on the Akamai Intelligent Platform, you can enable HTTP/2 for TLS connections on the last mile. The last mile has the most performance impact, as it is the final leg of connectivity from an Akamai edge server to a browser.
Your origin doesn’t need to support HTTP/2 in order to implement it for your Akamai configuration. When you enable HTTP/2, and a request is received from a browser that supports HTTP/2, the edge server sets up:
- an HTTP/2 connection, over TLS, between the edge server and the end user’s browser, and
- a non-HTTP/2 connection between the edge server and your origin.
You can add HTTP/2 to your secure configuration on supporting products on Property Manager.
- Multiplexing. HTTP/2 allows for concurrent streams over a single TCP connection, which helps reduce latency. Akamai’s HTTP/2 implementation will limit the number of concurrent streams.
- Prioritization and Dependencies. With prioritization, an HTTP/2-enabled browser can download the objects and/or scripts that are most important to load first, followed by those with a lesser priority.
For Akamai’s HTTP/2 implementation, edge servers will handle sending objects by priority.
- HTTP Header Compression. By compressing HTTP requests and response headers, HTTP/2 transmits fewer packets and bytes, which helps reduce payload.
- HTTP/2 Server Push. Supported between the Akamai edge and the client on certain products and configuration options. Contact your Akamai team to learn more.
HTTP/2’s advantage over HTTP
HTTP was designed at a time when web pages were substantially smaller, simpler, and with fewer resources. With HTTP, when a browser requests an object, it must receive the entire object before downloading another. At least one round trip from the browser to the origin occurs for each object retrieved.
While HTTP and HTTP/2 both run on the application layer, HTTP/2 natively allows multiple data streams between the browser and origin endpoints. With HTTP/2 you can request and download many objects concurrently over a single TCP connection.
This is an improvement over HTTP, which requires the browser to establish several TCP connections and use server-side techniques (like domain sharding) to create and manage multiple, concurrent data streams. While these techniques enhance HTTP, they are onerous to maintain and can lead to latency problems stemming from:
- the need to open a new connection per request (and the associated setup cost), and
- client-side rationing of connections to avoid opening too many connections to a single server.
As HTTP/2 supports multiplexing, no special techniques are required.