CoralCDN
Recently, I've started using the YSlow tool to optimize websites for speed. One of the recommendations of YSlow is to use a content delivery network. For small websites, this doesn't seem like a reasonable thing one can do. However, I discovered Coral CDN, which is a free CDN. To use Coral CDN, one only has to append .nyud.net to an http address. Their map indicates they have 260 nodes, including one in Sydney. However, doing a traceroute does not confirm this.
This shows the 'nearest' CDN point to Sydney to be in China.
$ traceroute cudlug.cudenver.edu.nyud.net traceroute: Warning: cudlug.cudenver.edu.nyud.net has multiple addresses; using 219.243.201.17 traceroute to http.l2.l1.l0.nyucd.net (219.243.201.17), 64 hops max, 40 byte packets 1 192.168.0.1 (192.168.0.1) 1.723 ms 0.256 ms 0.250 ms 2 172.18.208.7 (172.18.208.7) 10.755 ms 12.776 ms 11.442 ms 3 172.18.66.190 (172.18.66.190) 12.128 ms 12.466 ms 10.947 ms 4 CPE-61-9-195-8.nsw.bigpond.net.au (61.9.195.8) 19.876 ms 12.303 ms 11.289 ms 5 TenGigabitEthernet4-1.chw45.Sydney.telstra.net (165.228.107.85) 19.892 ms 12.308 ms 11.257 ms 6 TenGigE0-1-0-0.chw-core2.Sydney.telstra.net (203.50.20.129) 13.368 ms 12.949 ms 12.389 ms 7 Bundle-POS1.exi-core1.Melbourne.telstra.net (203.50.6.14) 27.327 ms 29.038 ms 26.670 ms 8 POS0-0-0-0.way-core4.Adelaide.telstra.net (203.50.6.190) 41.360 ms 40.618 ms 41.273 ms 9 POS0-0-0-0.pie-core1.Perth.telstra.net (203.50.6.214) 72.147 ms 71.139 ms 70.593 ms 10 GigabitEthernetx-x.pthp-core01.Perth.net.reach.com (203.50.13.242) 72.334 ms 72.375 ms 70.695 ms 11 i-3-2.pthw-core02.net.reach.com (202.84.144.213) 68.654 ms 68.778 ms 69.226 ms 12 i-1-4.hhtstcbr01.net.reach.com (202.84.249.221) 177.197 ms 177.925 ms 176.889 ms 13 i-13-1.hhtstcbr02.net.reach.com (202.84.154.190) 175.371 ms 178.601 ms 175.476 ms 14 T-system-peer.iadv01.net.reach.com (134.159.127.154) 180.239 ms 180.100 ms 179.720 ms 15 217.6.25.198 (217.6.25.198) 388.535 ms 379.619 ms 380.093 ms 16 202.112.61.17 (202.112.61.17) 254.907 ms 259.900 ms 253.880 ms 17 202.112.61.105 (202.112.61.105) 285.073 ms 251.217 ms 272.750 ms 18 202.112.61.157 (202.112.61.157) 290.457 ms 251.572 ms 258.496 ms 19 202.112.53.178 (202.112.53.178) 267.425 ms 236.120 ms 251.308 ms 20 202.112.61.254 (202.112.61.254) 253.908 ms 242.259 ms 270.142 ms 21 thu2.6planetlab.edu.cn (219.243.201.17) 269.065 ms 294.498 ms 280.199 ms
Compare the above to Akamai:
traceroute to a152.g.akamai.net (61.9.209.160), 64 hops max, 40 byte packets 1 192.168.0.1 (192.168.0.1) 0.649 ms 0.271 ms 0.236 ms 2 172.18.208.7 (172.18.208.7) 13.856 ms 13.383 ms 11.782 ms 3 172.18.66.190 (172.18.66.190) 11.294 ms 11.116 ms 15.753 ms 4 CPE-61-9-195-8.nsw.bigpond.net.au (61.9.195.8) 12.707 ms 11.411 ms 11.950 ms 5 TenGigabitEthernet4-1.chw45.Sydney.telstra.net (165.228.107.85) 13.269 ms 12.437 ms 10.905 ms 6 TenGigE0-1-0-0.chw-core2.Sydney.telstra.net (203.50.20.129) 12.152 ms 10.778 ms 11.796 ms 7 Bundle-Ether4.ken-core4.Sydney.telstra.net (203.50.6.41) 16.485 ms 12.355 ms 10.994 ms 8 Pos0-0-0-0.cha-core4.Brisbane.telstra.net (203.50.6.206) 29.093 ms 26.410 ms 25.250 ms 9 TenGigabitEthernet7-1.cha30.Brisbane.telstra.net (203.50.51.40) 26.077 ms 25.360 ms 25.089 ms 10 telstr427.lnk.telstra.net (165.228.107.82) 28.281 ms 27.672 ms 27.826 ms 11 a-61-9-209-160.deploy.akamaitechnologies.com (61.9.209.160) 26.560 ms 25.526 ms 26.526 ms
Clearly, Akamai has a node in Sydney.
So Coral may not have a faster response, but could the throughput be any better? Since Australia does not have a public GNU mirror, I thought I'd see if the CDN was any faster.
Well, the throughput measurements may not be accurate due to my ADSL line, but it does look like the CDN was faster.
Direct:
$ time wget http://cudlug.cudenver.edu/GNU/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 --2008-05-22 13:35:05-- http://cudlug.cudenver.edu/GNU/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 Resolving cudlug.cudenver.edu... 132.194.22.137 Connecting to cudlug.cudenver.edu|132.194.22.137|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 39172003 (37M) [application/x-bzip2] Saving to: `gcc-4.1.1.tar.bz2' 100%[=====================================================================================================================================================================>] 39,172,003 57.3K/s in 5m 2s 2008-05-22 13:40:07 (127 KB/s) - `gcc-4.1.1.tar.bz2' saved [39172003/39172003] real 5m2.622s user 0m0.359s sys 0m1.522s
Coral CDN:
$ time wget http://cudlug.cudenver.edu.nyud.net/GNU/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 --2008-05-22 13:29:24-- http://cudlug.cudenver.edu.nyud.net/GNU/gnu/gcc/gcc-4.1.1/gcc-4.1.1.tar.bz2 Resolving cudlug.cudenver.edu.nyud.net... 128.223.8.111, 143.215.128.194, 141.20.103.210 Connecting to cudlug.cudenver.edu.nyud.net|128.223.8.111|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 39172003 (37M) [application/x-bzip2] Saving to: `gcc-4.1.1.tar.bz2' 100%[======================================================================================================================================================================>] 39,172,003 156K/s in 4m 13s 2008-05-22 13:33:42 (151 KB/s) - `gcc-4.1.1.tar.bz2' saved [39172003/39172003] real 4m17.598s user 0m0.352s sys 0m1.541s