Tuning PPP over 2G GPRS: MRU and MTU

MTU & MRU seem to have a drastic effect on usability, but I've not seen this discussed for GPRS.

This is just a quick note to report a drastic improvement in the usability of GPRS on Linux in 2G service areas (GSM not UMTS) by setting small values for PPP's MTU and MRU parameters.

I have made a quick post to the PPP board on the Pharscape.org forums, to see whether anyone knows a bit more....

Update Feb 01. 2007: Tests using Linux KPPP with a Vodafone SIM card (APN: 'internet'), both on a 2G GSM phone and in an Option Fusion GT+ datacard, suggest that Vodafone 2G GPRS doesn't need you to tweak the MTU + MRU. So either Vodafone is doing this automatically, or there's something about their UK network that makes this unnecessary.

By contrast, TMUK's 2G GPRS network (APN: 'general.t-mobile.uk') doesn't work properly unless you adjust MTU + MRU.

I've tried un-commenting 'debug' (and setting 'kdebug' to 1) in /etc/ppp/options in order to see PPP option negotiations in /var/log/debug, but although this shows a lot of stuff, it doesn't show MTU + MRU being negotiated. If I get time I'll try setting 'kdebug' to 5, but I think that will just show data packets as well.

Posted: Mon Jan 29, 2007 1:13 am     Post subject: Tuning KPPP for 2G GPRS

Are there any rules of thumb for this?

Some quick tests of my own suggest that MRU / MTU really benefit from tweaking! 
This is with T-Mobile UK using a Novatel Wireless EU740 card in a non-3G service area.

With default settings in KPPP: (only parameter set = "novj")
=======================================
- pings work OK
- but web access is almost unusable
- logs show few requests reach the web server
- Wireshark shows lots of repeated HTTP GET requests every few secs

With mildly optimised settings in KPP:
========================

- Settings: "novj", "mru 296", "mtu 296"
(nothing magic about these numbers, but "man pppd" suggests them
for very slow links)

- Ping times much the same

- Now the web is MUCH more usable! Not quick, but fairly predictable. 
I'm posting this over 2G GPRS. Page fetch requests don't time out, they just take a while.

Presumably this setting will reduce the speed in 3G service areas, but I guess 
it's probably worth it to make this thing usable.

I'd be very grateful for your thoughts! And for any more tweaks,

Cheers

_________________
-- Martin.
(Novatel Wireless EU740 on T-Mobile UK,
Kubuntu Edgy Eft 2.6.17-10-generic)