How can I get pings to compare data centres?
I am launching a site for which I expect approximately 70/30 split UK/US visitors for which will make a LOT of REST requests.
I'm very impressed by Linode and will probably be joining shortly, but I was wondering if there is a way I could get pings from the data centres to compare their response times. Primarily I'm deciding whether it would be worth locating in NJ or London, but am open.
I personally get 20ms to London and 100ms to NJ from my home connection, however if the London server only got a slow ping to an API domain, and NJ was a lot quicker - it might be worth selecting, but currently I'm leaning to London.
The primary REST domains I will or may use are:
api.bing.net
boss.yahooapis.com
api.facebook.com
I don't know if this will make much difference, but I really want my site to be as responsive as possible for my users, I hate "feeling" slow sites which I know are making use of REST requests.
Thanks for your help/advice!
4 Replies
newark:/home/peter# ping -c 100 -q api.bing.net
PING a134.g.akamai.net (96.17.154.19) 56(84) bytes of data.
--- a134.g.akamai.net ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99157ms
rtt min/avg/max/mdev = 1.395/1.456/1.591/0.059 ms
newark:/home/peter# ping -c 100 -q boss.yahooapis.com
PING boss-api.a1.b.yahoo.com (98.136.114.186) 56(84) bytes of data.
--- boss-api.a1.b.yahoo.com ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99143ms
rtt min/avg/max/mdev = 82.937/95.201/122.268/9.691 ms
newark:/home/peter# ping -c 100 -q api.facebook.com
PING api.facebook.com (66.220.149.29) 56(84) bytes of data.
--- api.facebook.com ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99145ms
rtt min/avg/max/mdev = 227.938/228.153/235.153/0.780 ms
london:/home/peter# ping -c 100 -q api.bing.net
PING a134.g.akamai.net (92.123.154.249) 56(84) bytes of data.
--- a134.g.akamai.net ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99152ms
rtt min/avg/max/mdev = 0.837/0.920/1.151/0.078 ms
llondon:/home/peter# ping -c 100 -q boss.yahooapis.com
PING boss-api.a1.b.yahoo.com (98.136.114.186) 56(84) bytes of data.
--- boss-api.a1.b.yahoo.com ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99141ms
rtt min/avg/max/mdev = 89.872/92.930/111.536/4.724 ms
london:/home/peter# ping -c 100 -q api.facebook.com
PING api.facebook.com (66.220.146.22) 56(84) bytes of data.
--- api.facebook.com ping statistics ---
100 packets transmitted, 100 received, 0% packet loss, time 99152ms
rtt min/avg/max/mdev = 155.828/155.929/156.169/0.454 ms
````
Thanks to the dedicated efforts of a few customers running remote sensing software, you can also do some basic measurements by messaging linbot on IRC, e.g.:
> /msg linbot mtr-atlanta api.bing.net
*linbot* [mtr] api.bing.net: 5 hops, no loss, last hop average RTT was 0.5ms
This works for atlanta, dallas, newark, fremont, and london.
Here's what I get from my Linode in Newark… api.bing.net is handled by Akamai (so it'll always be pretty close to anywhere), Yahoo looks decidedly west-coasty, and Facebook goes the wrong way around the planet.
rtucker@framboise:~$ mtr --report api.bing.net
HOST: framboise Loss% Snt Last Avg Best Wrst StDev
1\. 207.99.1.13 0.0% 10 7.8 2.2 0.4 9.8 3.5
2\. 207.99.53.41 0.0% 10 0.3 0.4 0.3 0.5 0.1
3\. vlan801.tbr1.mmu.nac.net 0.0% 10 0.3 0.3 0.3 0.4 0.0
4\. 0.e1-3.tbr2.mmu.nac.net 0.0% 10 0.4 0.6 0.3 1.9 0.5
5\. 0.e1-2.tbr2.ewr.nac.net 0.0% 10 1.1 1.0 0.9 1.1 0.0
6\. bbr1.nyc1.bandcon.com 0.0% 10 1.7 1.7 1.6 1.8 0.1
7\. te-4-2.bbr1.ash1.bandcon.com 0.0% 10 8.0 8.0 7.9 8.2 0.1
8\. 209.107.215.96 0.0% 10 7.9 7.9 7.8 8.0 0.1
````
rtucker@framboise:~$ mtr --report boss.yahooapis.com
HOST: framboise Loss% Snt Last Avg Best Wrst StDev
1. 207.99.1.13 0.0% 10 0.4 1.5 0.4 11.2 3.4
2. 207.99.53.41 0.0% 10 0.5 0.5 0.3 0.7 0.1
3. vlan801.tbr1.mmu.nac.net 0.0% 10 0.3 0.6 0.2 2.7 0.8
4. 0.e1-2.tbr1.ewr.nac.net 0.0% 10 0.9 0.8 0.8 0.9 0.0
5. 0.e1-2.tbr1.tl9.nac.net 0.0% 10 1.2 2.4 1.1 7.9 2.6
6. ge-1-1-0.pat1.the.yahoo.com 0.0% 10 71.0 86.1 71.0 177.9 34.4
7. as-0.pat1.nyc.yahoo.com 0.0% 10 75.7 78.8 75.7 93.2 5.9
8. ae-2.pat2.nyc.yahoo.com 0.0% 10 91.0 83.5 75.7 91.2 7.6
9. UNKNOWN-216-115-100-92.yahoo 0.0% 10 82.4 97.2 81.5 210.6 40.4
10. xe-2-2-0.clr3.ac4.yahoo.com 0.0% 10 81.7 82.1 81.5 82.7 0.5
11. xe-9-2-0.clr3.ac4.yahoo.com 0.0% 10 106.3 87.2 81.7 107.3 10.4
12. gw.oss.search.vip.ac4.yahoo. 0.0% 10 81.8 82.5 81.6 86.8 1.6
````````
rtucker@framboise:~$ mtr --report api.facebook.com
HOST: framboise Loss% Snt Last Avg Best Wrst StDev
1. 207.99.1.13 0.0% 10 0.4 1.8 0.4 10.2 3.2
2. 207.99.53.41 0.0% 10 0.4 1.5 0.3 10.3 3.1
3. vlan801.tbr1.mmu.nac.net 0.0% 10 0.3 0.3 0.3 0.7 0.1
4. 0.e1-2.tbr1.ewr.nac.net 0.0% 10 2.3 1.7 0.8 7.6 2.1
5. 0.e1-2.tbr1.tl9.nac.net 0.0% 10 18.2 3.2 1.1 18.2 5.4
6. linx.br02.lhr1.tfbnw.net 0.0% 10 73.8 74.5 73.6 81.9 2.6
7. xe-5-3-0.bb01.iad1.tfbnw.net 0.0% 10 155.6 157.2 151.6 184.0 9.9
8. xe-7-1-0.bb01.pao1.tfbnw.net 0.0% 10 224.5 228.3 222.0 279.4 18.0
9. ae1.dr01.snc4.tfbnw.net 0.0% 10 225.6 228.9 225.5 246.8 7.1
10. eth-17-1.csw04b.snc4.tfbnw.n 10.0% 10 222.7 222.7 222.5 222.8 0.1
11. api-13-04-snc4.facebook.com 10.0% 10 222.5 222.6 222.4 222.9 0.2
````
The mtr access through linbot is perfect and has been a great help.
Fascinating results - Newark seems to be MUCH slower to the west coast than Atlanta. It's only negligibly faster than London for Yahoo BOSS.
Fremont is the undisputed king for APIs… every API I tested was around 2ms RTT! Sadly its obviously also the highest latency to London.
I set a Linode up in London yesterday, but I'm thinking I'll switch to Atlanta.
Thanks again!