Reducing 3G data consumption when tethered
Since I'm on MTN I needed to download a special config to enable tethering for the iPhone 3G, which is available from http://wan.to/iphone/. Here's a how-to for iPhone tethering in Ubuntu.
But 3G bandwidth in South Africa is expensive: R80 for a 100MB MTN bundle (although its cheaper in bulk: R389 for a 2GB MTN bundle). The first time I plugged the phone into Windows the OS grabbed 40MB for updates. After that I did all I could to minimise bandwidth consumption:
Operating System Tweaks
- Disable automatic download of operating system updates.
- If using Windows, disable 3rd-parter auto-updaters using CCleaner (disable Flash, Java, Google updaters and any others)
- Monitor TCP connections to see if any unexpected services are using the internet and turn them off. Use lsof -i on linux, TcpView or Netlimiter Free (thanks Sam) on Windows.
- In iTunes, turn off update checking and change the default Podcast settings to "check manually" and never automatically download episodes! That was another 20MB downloaded behind my back...
- Disable Firefox update and add-on updates.
- Uncheck the Load images automatically checkbox. Text-only default saves a lot of bandwidth: I'm not going to pay to see sidebar ads.
- Install FlashBlock and AdBlock Plus add-ons, to prevent downloading random content.
- Install Firefox User Agent Switcher to pretend to be a mobile browser and get smaller mobile versions of websites. If pretending to be an iPhone, be aware that Firefox is not compatible with some iPhone-only webapps.
- In Options, "Under the bonnet", disable checking for updates, and various things like search-completion and DNS prefetching.
- In "Content settings" select "Do not show any images" and "Do not allow any sites to use plug-ins"
- Start Google Chrome with --user-agent="Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543 Safari/419.3" to pretend its an iPhone. Chrome uses WebKit and will work with many iPhone webapps.
With this setup I can do searching, mail and news-checking on PC tethered to the phone, without spending hundreds of rands for 3G bandwidth.
The iPhone is faster tethered??
The strangest thing is that iPhone 3G internet suddenly gets fast when I tether it. Safari on the phone at the same desk takes a while to load a heavy page, but plug the phone into the PC and use the PC browser and everything comes down at 500kbps. I should double-check. Does MTN have some way of knowing whether the phone is tethered and making 3G slow for mobile phones but fast when used like a 3G modem? If so, is there a way for the iPhone to pretend its tethered when its not?
Comparing the cost of ADSL and 3G
A Telkom Closer 2 calling plan (free installation and free off-peak calls) is R170 per month, plus R200 pm for an MWEB All-in-One 2GB ADSL package - total of R370 per month. That is almost as expensive as adding MTN's 2GB data bundle for R389 assuming an existing contract. For more than 2GB per month, ADSL will be far cheaper, since R519 will buy the R170 Closer 2 line and R349 MWEB all-in-one uncapped ADSL at 384kbps.
Edit: Added iTunes podcast-disabling, and section on Google Chrome.