Arusha Tanzania 2006 Day 9 - Bandwidth
If you're traveling reasonably far off the beaten path and you want to stay connected, there's a number of things I've found to be useful.
We're staying with my sister-in-law who works for the UN ICTR (International War Crimes Tribunal on Rwanda) in Arusha. We're actually living outside Arusha in a town/village called Njiro. The power is only on from about 9pm to 9am, and is usually off in the daytime. The water supply also turns on and off, so there is a 5000 liter tank on top of the house. When the water turns on, assuming the electricity is also on, a pump takes water up to the tank, and because it's on the roof we get water pressure.
As for the computer and internet, they're using a Dell Inspiron 7500 that I gave them a few years back. It's running Windows Server 2000 and was SP2 along with Office XP. I wanted to update them to SP4, but the download is 129megs.
The connection to the internet is a CDMA cell phone connection that starts at 9600bps and tops out (bursts) to 163kbps which is about 16K a second, although the effective bandwidth is about 7K a second. The biggest problem is timeouts and lag. We're using a Huawei modem which looks exactly like a regular desk phone, except it has an antenna. It's connected via a USB to Serial cable, with USB on the computer side and 9pin serial on the phone side. The phone also has an internal battery.
It's actually very common to see ladies on the side of the road (when you're outside of town) with these phones on a small table. They charge passersby to use the phone like a pay phone. It looks and feels like a regular phone, it's just a cell phone.
Tracing route to hanselman.com [126.96.36.199]
over a maximum of 30 hops:
1 * * * Request timed out.
2 311 ms 340 ms 381 ms msd-hq.ttcldata.net [192.168.3.2]
3 621 ms 331 ms 501 ms 188.8.131.52
4 341 ms 320 ms 361 ms 184.108.40.206
5 981 ms 2284 ms 941 ms t3a1-fa2-0-0.uk-goo.eu.bt.net [220.127.116.11]
6 1402 ms 951 ms 971 ms t2c2-p3-2.uk-lon2.eu.bt.net [18.104.22.168]
7 891 ms 841 ms * t2c2-p4-2.uk-ilf.eu.bt.net [22.214.171.124]
8 1072 ms 1282 ms 2003 ms t2c2-p4-0.us-nyb.eu.bt.net [126.96.36.199]
9 2123 ms 961 ms 1632 ms jfk-brdr-01.inet.qwest.net [188.8.131.52]
10 * 921 ms * jfk-core-02.inet.qwest.net [184.108.40.206]
11 * * * Request timed out.
12 1272 ms 1152 ms 1482 ms atl-edge-07.inet.qwest.net [220.127.116.11]
13 1402 ms 982 ms 971 ms 18.104.22.168
14 1052 ms 1201 ms 1082 ms v11.cd2.peak-10.net [22.214.171.124]
15 982 ms 1071 ms 1202 ms 126.96.36.199
16 1532 ms 1031 ms 1042 ms infoquestgujarat.com (hanselman.com) [188.8.131.52]
Timeouts and long lags are common so here's what we do:
- Firefox is FAR more forgiving on lousy connections than IE.
- Turn off images in Firefox's Content options.
- You can include a list of domains or subdomains that you want images automatically loaded.
- I use GetRight for large downloads. This is a fantastic program no matter what connection you have. It took two and a half days and 400 retries, but we finally got the 129meg Windows 2000 SP4 downloaded. I tried the Express download, which would have been about 30M, but it includes its own downloader and it wasn't very forgiving.
- Include common sites' IP address and hostnames in your hosts file, and save a multi-byte DNS lookup. Sounds silly, but it makes a difference in reality.
- Alternatively, run your own local DNS server (easy because we are running Windows Server, although there are open source options) and make sure it caches aggressively.
- Use a remote image compressing HTTP proxy. I wasn't able to prepare for this as I didn't anticipate the bandwidth being this poor, but next time, and possibly just as a favor to them, I'll write one in C#.
- If you REALLY compress JPEGs and such (I mean like 10% quality) you'll be able to get the jist of the page, and then add something like ?compress=false at the end of the request to get the uncompressed version if you need to.
- You can also install SquidProxy on a machine in your home country, and open the appropriate ports. When you get to your remote location, Squid can (possibly?) gzip HTTP content and cache aggressively.
- Another lighter-weight alternative is ziproxy that will compress all content, but not cache it. It appears to be actively developed. I'm interested in trying this one as well, it may be more useful for my needs.
- I may go to an Internet Cafe and remote into my home machine in the US and do this. Unless one of you, dear readers, wants to hook me up? ;)
- If you're using a modem, make sure that hardware compression and error correction is turned on.
- Know your bandwidth, and know what time of the day it's fastest. Around here, when the power is out, the Internet gets faster as most folks' computers shut off. Also, for whatever reason, it's fast (ish) from 1pm to 3pm, and slow at all other times.
Anyway, have a nice day. We're going for a walk now. I'll post more on Malaria and my recent strange sickness later.