P2P Content Delivery for Open Source
Orasis writes "The Open Content Network is a collaborative effort to help deliver open source, public domain, and Creative Commons-licensed content using peer-to-peer technology. The network is essentially a huge 'virtual web server' that links together thousands of computers for the purpose of helping out over-burdened/slashdotted web sites. Any existing mirror or web site can easily join the OCN by tweaking the HTML on their site."
It's open source peer-to-peer and handles exactly the problem of distributed serving.
...have been doing this for awhile now. I've seen download sites giving you the option of grabbing game demos from their site or through some small P2P client that they offer, which snags parts of the file from other users and combines them all on your end.
This technology's out there, but it's nice to see it gaining some fairly widespread adoption.
levine
To recap:
- Reliable
- Anonymous
- Totally decentralized
- More popular files are more widely distributed thus avoiding any
/. effect
Install a recent snapshot of Freenet, then visit this freesite to check it out.To me, it looks like this system can sort of do that. Point people to your little web server and add a few lines of Javascript to the top of your main web page and all the files reached from there, with extensions that you specify, will be served via the P2P cache. See the instructions. Also on that page is a link to a large PDF which gets served P2P via an OnionNetworks Java applet. The PDF loaded for me in about 20 seconds. A disadvantage for the user is that currently PDF's stream and you instantly see the first page.
Perhaps Slashdot could use this only in certain cases like when linking to a pdf or linking directly to the newest iso.
While these are insightful points, these are not a problem because the OCN obeys HTTP caching semantics. Thus, just like your browser cache, it can deliver stale content within a certain amount of time before the OCN refreshes its cached copy.
To get a better picture of how HTTP caching semantics work, I recommend trying out Cacheability Engine and enter in a couple of sites to see how cacheable their content is.
Also, the OCN uses the SHA-1 hashes for all content addressing as soon as it translates the URL to the SHA-1 URN. There-after, the content is only referred to by its SHA-1 URN, so there is no concern about version conflicts between mirrors/peers, because a single SHA-1 URN can only ever point to a single version.
Your point re: dynamic data is a good one. The OCN really isn't designed for delivering dynamic content because it changes too frequently and the cached copies on the peers would quickly become stale. However, we are doing some work with caching RSS feeds, which provides a nice trade-off between dynamic and static content.
You can limit the amount of bandwidth Freenet uses if you think it is using too much.
The newly relaunched Happy Puppy uses the Tornado Cache Plug-in to provide some pretty fast downloads. If you're interested in seeing this stuff in action I recommend checking out the site.
That said, the OCN is open to any and all applications out there, so I'd encourage them to join the OCN.
The CC License Engine framework really does all that is needed to identify a license that would allow the P2P network to redistribute the material , so why not use it?
Or am I missing something now?
Employee of Inrupt, Project Release Manager and Community Manager for Solid
I looked over the website and the site for the current client, and found only faint, inspecific references to what loading such a client does to your machine and internet connection.
This is terrible.
We complain when Gator is loaded as an 'add-on' to our system, yet we don't mind if we are not allowed to download some content without loading some P2P app which then uses our disk space and internet connection to serve others?
They need to put up a specific message that says, in effect, "This download client will significantly speed up the process of obtaining this file. Once downloaded your computer will allow other people to download this same file, or portions of it, from your computer so they can gain the same speed benefit you will get. There is no security risk, and you can stop the client from letting others download this file by moving or deleting the file, or ending the client by doing x, y and z. If you wish to simply download the file normally without installing this client, click here - otherwise click 'OK'"
Yes, we all understand what P2P means - we are donating part of our computer and network to the P2P network for as long as we are connected to the internet. But this is not common terminology - ask a non-computer expert who has spent hours downloading music from their favorite P2P app what the P2P app does, and all they know is that they can get "free" music with this cool program. They often have no idea that others are downloading music from their computer, etc.
This may slow down adoption, but the reality is that the backlash that may come out against it is not worth the extra adoption it may gain without full and well-explained disclosure - as well as a method to download the file normally.
-Adam
By the way, your home page is ugly....
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
I agree. It would be nice to have better tools to work on OSS via P2P networking. I think, there was a project to link several ArgoUML instances via P2P, you I haven't heard much about it recently.