Making your 3G cellular mobile Internet 10x faster for free

I've made a small script for greatly improving response time of 3G cellular data connections while only consuming a minimal amount of transfer quota. It is most noticable when browsing, having interactive ssh sessions and maybe for some remote desktop use cases.

The result is basically reducing the 500ms-1500ms initial latency and random ping times to normal rates of below 80ms. Of course this assumes that you have no other problems like reflections, interference, signal strength or congestion. I've experimented with raw UDP, TCP and ICMP packets in different configurations, but sticked with this simple and efficient solution in the end. An even more advanced future implementation could involve STUN and an external server to steadily stream optimally sized and timed UDP packets to the client without ACK requirement. Also, a further enhanced version could closely monitor local transfer conditions and determine if any addition transfer should actually be done.

Description from the source:

Operation: This program continuously downloads a file at a very low rate. It pauses the download if it perceives that the current network usage has been low for some time (conceptually idle).

Concept: It is mostly useful for 3G cellular data networks to keep the network from entering a power saving state to reduce page loading latency. I don't have technical details (please post on the mailing list or send a comment if you do), but my basic founding is the following. A modem can be registered and connected on the network, ready to accept packets, but from which wakup could take either 400-600ms or multiple seconds. This state is entered automatically either after a few seconds of inactivity or if the transfer rate goes below a certain level.

From user level, clicking a link in your web browser could very well do nothing for seconds before the page even starts to load, lowering user satisfaction. This effect could be easily verified by loading a given page in a fast browser (like links2) and force reloading it. When the link is in power saving, the reload takes at least half a second, otherwise it is less than 100ms.

Comments

  1. Issue sighted in the wild! Too bad they couldn't find my post earlier...

    http://m.hup.hu/shownode/node/121147

    ReplyDelete

Post a Comment

Popular posts from this blog

Tftp secret of TL-WR740N uncovered

Hidden TFTP of TP-Link routers

Haskell for embedded: C output, compilers, monads, Timber