summaryrefslogtreecommitdiffstats
path: root/network/polipo/README
blob: f9c4c2f41b6d8cf0a42e9aa0faee62c13067a40b (plain)
Polipo is a small and fast caching web proxy (a web cache, an HTTP proxy, a
proxy server). While Polipo was designed to be used by one person or a small
group of people, there is nothing that prevents it from being used by a larger
group.

Polipo has some features that are, as far as I know, unique among currently
available proxies:
  * Polipo will use HTTP/1.1 pipelining if it believes that the remote server
    supports it, whether the incoming requests are pipelined or come in
    simultaneously on multiple connections (this is more than the simple usage
    of persistent connections, which is done by e.g. Squid); Polipo will cache
    the initial segment of an instance if the download has been interrupted,
    and, if necessary, complete it later using Range requests;
  * Polipo will upgrade client requests to HTTP/1.1 even if they come in as
    HTTP/1.0, and up- or downgrade server replies to the client's capabilities
    (this may involve conversion to or from the HTTP/1.1 chunked encoding);
  * Polipo has complete support for IPv6 (except for scoped (link-local)
    addresses).
  * Polipo can optionally use a technique known as Poor Man's Multiplexing to
    reduce latency even further.

In short, Polipo uses a plethora of techniques to make web browsing (seem)
faster.