AWS inter-region latency chart
cloudping.co
cloudping.co
Ironically less colorful. :)
Ie, I would not have expected eu-central-1/eu-central-1 to be 1.68ms, and us-east-2/us-east-2 is 8.26ms (almost 5x)
A geological or technical event near one AWS AZ is highly unlikely to also affect the others of that region, unless the event is regional (heh) in scale. For Google Cloud, the AZs are effectively co-located buildings (or at least, Eemshaven has 3 GC AZ DCs at < 1km distance from each other), making even local disruptions reasonably likely to impact availability for the whole region.
[0] https://docs.aws.amazon.com/ram/latest/userguide/working-wit...
For example, the distance between us-east-1 and us-west-1 is approximately 2,500 miles. Light travels at 186,000 miles/second, so that's 13 milliseconds one-way. So the fastest possible TCP SYN/ACK/SYNACK is 39 milliseconds between the two DCs just to establish a connection.
https://www.nojitter.com/enterprise-networking/hollow-fiber-...
const DISTANCE = function(a, b) {
[latA, lonA] = a.split(",");
[latB, lonB] = b.split(",");
latA=parseFloat(latA);
lonA=parseFloat(lonA);
latB=parseFloat(latB);
lonB=parseFloat(lonB);
return 2 * 6371000 * ASIN(SQRT((SIN((latB*(3.14159/180)-latA*(3.14159/180))/2))^2+COS(latB*(3.14159/180))*COS(latA*(3.14159/180))*SIN(((lonB*(3.14159/180)-lonA*(3.14159/180))/2))^2))
}
So that I could just paste concatenated "lat,lon" coords in place of the AWS region names and just compute e.g. =DISTANCE(A2,B1)
Into a second sheet, and then just divide the first sheet by the second sheet as a third sheet.but I kept getting some "#NAME" error and I don't have time to figure it out.
Bad UX, Google. This should have been easy.
Better yet, you're freaking Google, why isn't there a DISTANCE("Hong Kong", "Singapore", "straightline") function?
I have to get back to work but if someone can figure the rest of this out please comment back.
A straight line distance might require tunneling down into the planet a surprising amount of distance, and is an absolute lower bound on the possible distance between the two points, but is not a realistic distance that could actually be achieved in most cases.
With cloudping.co, it isn't clear from the website, but it seems like the inter-region latency they measure is over the public Internet. The Big 3 run their own backbone across all their DCs around the globe, and so I reckon, those numbers would look vastly different if traffic was instead relayed through those uncongested backbones.
With AWS, the cheapest way I know (in terms of development time and cost) to accomplish inter-region over their backbone is via Global Load Accelerator. The clients connect to GLA at the nearest anycast IP location advertised across 150+ AWS PoPs. You can then play with endpoint-groups, connection-affinities, source/port tuples to control routing traffic to different backends in various regions.
We used this technique to prototype a VPN with exit nodes in multiple countries but entry nodes closest to clients at every AWS PoP. It worked quite nicely for a toy: https://news.ycombinator.com/item?id=21071593
[0] https://www.thousandeyes.com/blog/top-takeaways-cloud-perfor... (2019)
If they are running from AWS to AWS, it's going over the AWS backbone.
Except China. China to rest of world is not via backbone.
here's DUB->SYD:
HOST: amazon02.ring.nlnog.net Loss% Snt Last Avg Best Wrst StDev
1. AS16509 ec2-3-248-240-73.eu 0.0% 10 7.1 22.8 1.0 125.7 38.1
2. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
3. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
4. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
5. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
6. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
7. AS??? 100.65.15.3 0.0% 10 0.8 1.1 0.2 6.7 2.0
8. AS??? 100.95.19.145 0.0% 10 0.3 1.4 0.2 5.5 1.9
9. AS??? 100.100.4.12 0.0% 10 0.3 1.1 0.3 7.0 2.1
10. AS??? 150.222.242.237 0.0% 10 254.0 254.0 253.9 254.4 0.2
11. AS??? 52.95.36.164 0.0% 10 257.2 255.7 254.0 257.3 1.3
12. AS??? 150.222.112.139 0.0% 10 253.4 253.9 253.4 255.1 0.5
13. AS??? 150.222.112.142 0.0% 10 259.6 257.8 255.5 266.8 3.5
14. AS??? 52.95.36.143 0.0% 10 255.3 256.1 255.2 261.4 1.9
15. AS??? 52.95.38.17 0.0% 10 255.0 255.6 254.9 259.9 1.6
16. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
17. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
18. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
19. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
20. AS??? ??? 100.0 10 0.0 0.0 0.0 0.0 0.0
21. AS??? 100.65.16.65 0.0% 10 256.7 279.8 256.7 334.4 26.1
22. AS16509 amazon08.ring.nlnog 0.0% 10 254.4 254.4 254.3 254.4 0.0If AWS backbone is used automagically, I wonder why would anyone pay for Transit Gateways or VPC Peering rather than do mTLS between their cross-region instances or tunnel via Wireguard-esque transports like tailscale or defined.net, for example. Also, since when has this been the case, if you'd know?
I'm curious what the bandwidth charges are for EC2 to EC2 cross-region when using their public IPs / DNS? Same as VPC Peering?
Expensive. VPC peering serves a different purpose, but pricing is the same.
> Expensive.
VPC Peering bandwidth rates are $0.01 / GB. EC2 (public Internet?) bandwidth rates are $0.09 / GB. For xfers between EC2 to EC2 via AWS backbone, I assume I'd still be charged the public Internet bandwidth rates, right?
My only suggestion would be that a column and row hover wold make the data easier to inspect and navigate.
A single availability zone is often (always?) composed of multiple datacenters which are spread relatively far apart from one another.
does multiple buildings at single site count as multiple DC? or it must be multiple physically separate locations?
yes, while in my opinion most services won't care about the distinction between cross-az/same-az (you're definitely not most services :) ), you can definitely tell the difference between
* in the same region vs not
* in the same az vs not
* in the same placement group or not
which shouldn't be surprising. you should get a latency benefit from increased physical proximity!
2) Times should be tagged with a theoretical minimum time and how far off the real number is from that.
3) (Bonus points) Times should also be tagged with a 'real' minimum time that is based on the lengths of the actual fiber lines and number of interchanges.
For example, I'd like to find a set of 3 locations across 3 providers that have the lowest latencies between them.
Note: For anyone else that is on a Windows 10 machine and is struggling to see the difference, there is a colorblind mode that you can toggle with Winkey + Ctrl + C.
That's when I found this chart through the magic of google to bring some real numbers (tm) to the latency discussion.