Networking & Content Delivery

Achieve up to 60% better performance for internet traffic with AWS Global Accelerator

If you offer applications such as gaming, media, mobile, or financial applications, you need consistent, low latency for a great user experience. AWS Global Accelerator helps you to achieve lower latency by improving performance for internet traffic between your users’ client devices and your applications running on AWS. It uses the AWS global network to direct TCP or UDP traffic to a healthy application endpoint in the closest AWS Region to the client. Global Accelerator routes traffic from the client to the closest AWS edge location via anycast and then routes it to the closest regional endpoint over the AWS global network. This provides improvements in terms of latency, throughput, and jitter.

A popular way to measure performance is via throughput—i.e., how much data can be transferred over a period of time. Whether you are serving API calls, file uploads, or Voice over IP calls, the amount of throughput impacts the experience of your users. Today, Global Accelerator introduces an improvement that automatically provides additional throughput improvements through TCP termination at the edge. Normally, a TCP connection is established via a three-way handshake (i.e., three messages) between the client on the internet and the application endpoint in the AWS Region. So, the farther away the client is from the endpoint, the longer this initial connection setup takes. With TCP termination at the edge, Global Accelerator reduces initial setup time by establishing a TCP connection between the client and the AWS edge location closest to the client. Almost concurrently, a second TCP connection is made between the edge location and the application endpoint in the AWS Region. Because of this process, the client gets a faster response from the Global Accelerator edge location, and the upstream connection from the edge location to the application endpoint in the Region is optimized to run over the AWS global network. Additional optimizations implemented as part of this feature include:

  • Jumbo frame support. By enabling jumbo frames between the AWS edge location and the application endpoint in the AWS Region, Global Accelerator is able to send and receive up to 6X more data (payload) in each packet. Jumbo frame support cuts down the total time required to transmit data between clients and your application.
  • Large receive side window and TCP buffers. By tuning receive side window and TCP buffer settings on the AWS edge infrastructure, Global Accelerator is able to receive and buffer larger amounts of data from your application in a shorter time period. This provides faster downloads to your clients, which are now fetching data in a shorter time directly from the AWS edge.
  • Large congestion window. By transmitting data over the AWS global network, Global Accelerator can scale up the TCP congestion window to send larger amounts of data than are usually possible via the public internet.

To assess the performance impact of this feature, we measured throughput from clients around the world to an endpoint running on Amazon EC2 in the AWS US East (N. Virginia) Region. We compared the throughput when transmitting data via Global Accelerator with TCP termination to the throughput when transmitting data via the public internet. The results were throughput performance gains of up to 60% when using Global Accelerator. In all cases, the throughput performance gains of using Global Accelerator depend on a number of factors, including the amount of data transferred and the quality, capacity, and distance of the connection in the last-mile network.

The following graphs show the time it took internet clients in Australia (Figure 1) and in the United States (Figure 2) to download a 100KB object from the AWS US East (N. Virginia) Region. The graphs compare downloading the object via Global Accelerator (blue line) and directly from EC2 over the public internet (green) – both before and after TCP termination at the edge was enabled. Real user measurements at the 90th percentile via a third-party tool showed around a 60% improvement for clients in Australia who downloaded the object from the AWS US East (N. Virginia) Region via Global Accelerator with TCP termination at the edge. Clients in the United States recorded over 40% improvement.

Figure 1: Latency improvement from clients in Australia to the AWS N. Virginia Region

Note: Time to download a 100KB object, as measured using a third-party real-user measurement tool at the 90th percentile

Figure 2: Latency improvement from clients in the United States to the AWS N. Virginia Region

We noticed similar results when using ThousandEyes, a digital experience monitoring platform, to measure performance. The chart below (Figure 3) shows improvements of over 2.5X in average download throughput when a 100 KB test file was downloaded from the AWS EU (Ireland) Region via Global Accelerator with TCP termination at the edge by 40 clients across Africa, America, Asia, and Europe.

Figure 3: Average throughput improvement to the AWS EU (Ireland) Region via Global Accelerator before and after enabling TCP termination at the edgeIn this blog, we reviewed the latest performance benefits of Global Accelerator driven by the new TCP termination at the AWS edge feature. You can get these benefits by default by getting started with Global Accelerator. As further resources, you can test performance with Global Accelerator from your location with this speed comparison tool and read the ThousandEyes’ blog post on how AWS optimized the performance of AWS Global Accelerator.


About the Author

Marco Cagna is a Product Manager for AWS Global Accelerator.
Ajit is a Solutions Architect for Amazon Web Services. He helps customers across EMEA build on AWS. He specializes in large scale networks and modern application architecture.

 

Watch re:Invent 2019: Building highly available applications using AWS Global Accelerator (NET318-R1)
More on improving global performance