Speeding up browsing and lightening the traffic load

Mikko Rauhala mjrauhal at cc.helsinki.fi
Mon Apr 7 12:13:17 CEST 2008

ma, 2008-04-07 kello 11:24 +0200, Erland Lewin kirjoitti:
> IMHO, the Opera Mini design (compressing and optimizing web pages
> before sending them to the phone) is excellent, because it saves
> traffic (=money) and speeds up loading.
> I'm not aware of any open source alternative with the same design.

Over the last weekend, I've been working a bit on a prototype proxy
doing streaming html/xml diffs (dubbed mldiffs) based on a shared cache,
largely as described here: http://wiki.openmoko.org/wiki/Server:WebProxy

Sadly, going by track record, I probably will not have the energy to
productize the thing, but maybe it'll provide inspiration and/or a basis
for someone to do so. I do intend to get at least the mldiffs going
(currently just need to debug the interproxy communication, other stuff
is done) and hopefully add rdiff support for non-ml content (during
testing I found the mldiffs to be notably better for markup content so I
started with that). Then I'll put the (python/twisted) source out there
(if someone's really interested for it now, feel free to ask).

Image crappification support would be good, but I don't know, it would
really require inserting javascript or at least mucking with the (x)html
to work nicely with a browser knowing nothing of this. (You know,
something along the lines of click the image the first time, and you'll
get a better version; second time does what it normally does.) I'm not
sure if that's something I want to tackle with. OTOH, simple
crappification controlled from a configuration key on the client might
be doable with my concentration levels, we'll see.

Oh yeah, the interproxy communication thing would need some work as
well, currently being plain http. My intent is to personally use ssh -C
for a transport service, so I'll get "for free" persistent protocol
compression (on top of the ml/rdiff) and encryption for the over-the-air
part. Someone more proficient in twisted would likely easily write a
nice compact persistent custom protocol with internal async muxing and

Annyway, thought I'd mention this even though, as said, my proxy is in a
prototype stage, because, you know, this being an open phone, there's no
need for one to limit oneself to proprietary solutions, even if there's
not a free one available right this instant.

Mikko Rauhala   - mjr at iki.fi     - <URL:http://www.iki.fi/mjr/>
Transhumanist   - WTA member     - <URL:http://www.transhumanism.org/>
Singularitarian - SIAI supporter - <URL:http://www.singinst.org/>

More information about the community mailing list