The proxy then simply sends the compressed differences between the previous and current version.

The proxy then simply sends the compressed differences between the previous and current version.

−

''improvement: it would be better NOT to modify the client, but instead have a 'reassembly proxy' on the client, so that all http clients/user agents benefit without hacks. The reassembly proxy could then inject a cookie to keep track of page versions. - compare this http://ozlabs.org/~rusty/rproxy.html however and check for patent issues before any actual work is done.''

+

=Q&A=

+

* Would be better NOT to modify the client, but instead have a 'reassembly proxy' on the client, so that all http clients/user agents benefit without hacks.

+

** This is a simple option initially.

+

+

* How does this differ from rproxy? (http://ozlabs.org/~rusty/rproxy.html)

+

** It differs primarily in that it does not require webservers to support anything. Only that a user desiring to run it has somewhere to put their personal proxy.

+

** It also differs in that it has perfect knowledge of the state of the cache on the mobile device.

+

** It differs significantly from rsync/rproxy, as the core of those programs - negotiating file differences over a remote link - is not done.

+

** it does not require any negotiation over the (potentially very slow) link.

Other optimisations:

Other optimisations:

Revision as of 18:53, 11 August 2008

Wishes warning! This article or section documents one or more OpenMoko Wish List items, the features described here may or may not be implemented in the future.

This is a brief page describing a web proxy optimised for use on devices with a reasonable amount of persistant storage, and very limited bandwidth.

Once, each page linked to a subpage of contents, which remained static, and could be easily refreshed if it changed based on dates in the HTTP headers.

Now, this is the case in the minority of popular sites.
Most sites now have a substantial fraction of pages with some non-static contents.

It differs primarily in that it does not require webservers to support anything. Only that a user desiring to run it has somewhere to put their personal proxy.

It also differs in that it has perfect knowledge of the state of the cache on the mobile device.

It differs significantly from rsync/rproxy, as the core of those programs - negotiating file differences over a remote link - is not done.

it does not require any negotiation over the (potentially very slow) link.

Other optimisations:

Comparing pages, and ensuring that any page has in fact changed before downloading, as many servers misreport pages changed when they have not.

Convert all jpegs to progressive, and initially only download the first 'scan' of the image, which is 1/8th the size or so. Allow the user to download the remainder of the file for full resolution by clicking on it.

Different profiles, depending on how the Freerunner is connected (Wifi vs. USB vs. GPRS).

Traffic-measurement especially for GPRS-connection for users with limited data-amounts (for example 200MB/month) or in areas with limited data-consumption, like on commercial wifi-aps on airports and such.

It differs primarily in that it does not require webservers to support anything. Only that a user desiring to run it has somewhere to put their personal proxy.

It also differs in that it has perfect knowledge of the state of the cache on the mobile device.

It differs significantly from rsync/rproxy, as the core of those programs - negotiating file differences over a remote link - is not done.

it does not require any negotiation over the (potentially very slow) link.

Other optimisations:

Comparing pages, and ensuring that any page has in fact changed before downloading, as many servers misreport pages changed when they have not.

Convert all jpegs to progressive, and initially only download the first 'scan' of the image, which is 1/8th the size or so. Allow the user to download the remainder of the file for full resolution by clicking on it.

Different profiles, depending on how the Freerunner is connected (Wifi vs. USB vs. GPRS).

Traffic-measurement especially for GPRS-connection for users with limited data-amounts (for example 200MB/month) or in areas with limited data-consumption, like on commercial wifi-aps on airports and such.