Do you remember the download mesh? <a href="http:&#x2F;&#x2F;rfc-gnutella.sourceforge.net&#x2F;developer&#x2F;tmp&#x2F;download-mesh.html" rel="nofollow">http:&#x2F;&#x2F;rfc-gnutella.sourceforge.net&#x2F;developer&#x2F;tmp&#x2F;download-m...</a><p>3 additional HTTP headers for fully distributed downloading.<p>The server provides an URN and some IPs from participating downloaders and the clients can (but do not have to) swarm that from other clients. Tiger tree hashing ensures that every chunk can be verified, the X-Alt header allows the clients to exchange IPs among themselves (the server does not need to know all) and an X-Nalt header gives distributed disruption avoidance.<p>Back then I wrote a simple server which provides that: <a href="https:&#x2F;&#x2F;bitbucket.org&#x2F;ArneBab&#x2F;gnutella_tracker&#x2F;src&#x2F;43dc24ddda61e62a85c975439889201f45c21ba6&#x2F;gnutella_tracker.py" rel="nofollow">https:&#x2F;&#x2F;bitbucket.org&#x2F;ArneBab&#x2F;gnutella_tracker&#x2F;src&#x2F;43dc24ddd...</a><p>This doesn’t give additional privacy (aside from the effect that the server owner does not need to know whether you just started the download or finished it), but the users can decide themselves where they download from. And the download mesh has proven itself with 50 million users.