Examining Bittorrent
ToyKeeper and other wrote in with this: "The Register published a detailed analysis of BitTorrent traffic and user habits today, focusing on four aspects: availability, integrity, download speeds, and ability to withstand flash crowds. BitTorrent carries 53% of all P2P traffic (or ~35% of all 'net traffic), and this paper helps explain why. Also included are data about torrent lifetime, network poisoning, response during downtime or attacks, and lots of pretty charts. A few performance problems are revealed, which will hopefully be addressed in future p2p systems." The original paper (pdf) is available.
apterous.org
There is such a powerfull distribution mechanism in P2P network, if only the studios/majors/etc would understand it and use it instead of fighting it, their market could explode, while having no distribution costs, their custermers would provide the distribution mechanisms.
- recorder-box/
But I'm afraid they are not going to get it in time.
My dream about a P2P PVR:
http://www.oberle.org/blog/2004/08/02/a-p2p-video
the downloaders of a file barter for chunks of it by uploading and downloading them in a tit-for-tat-like manner to prevent parasitic behavior. Each peer is responsible for maximizing its own download rate by contacting suitable peers, and peers with high upload rates will with high probability also be able to download with high speeds.
Does this actually work? I find that when there are limited seeds, those first in line essentially transmit as fast as they recieve, and increasing upload doesn't really affect total speed much. When there are lots of seeders there's plenty of bandwidth to go around so it's always fast. Does anyone notice that restricting upload significantly affects download speed?
Give me Classic Slashdot or give me death!
There are a few things that i would count as it's downsides. For instance, once the object that is being distributed been downloaded by the masses - you won't get a decent speed downloading it. So unless you grabbed it while it was "hot" - you will have to deal with much lower speeds. Also i often find that i upload almost as much as i download, not being greedy or anything, but here in New Zealand broadband is still capped either on speed or on traffic. And quotas are pretty stingy, counting both uploads and downloads... but that is more isp/country specific i guess:)
Bittorrent did more than get the swapping strategy correct, it fixed the social psychology of p2p. Before, you traded files with other faceless users. This meant you had little investment in the uploads of others. People would join the network and not share files, cap their upload speeds, etc. Generally, this made downloading a slow and painful process. (Not to mention that it was difficult to tell if two similarly named files are the same ... there's too much diversity to get a good spread in file sources).
But Bittorrents have organized around websites. These sites typically require registration and monitor the share ratio of users. Users can no longer leach. There's social stigma attached to it. Also, you have some investment in making sure others have a copy of the file. If you liked it enough to d/l it, you probably want to share. Better yet, the action of the users of the site are focused on the same files, so resources are allocated fairly. Generally, it works better all around.
This leaves out the boost in nerd status of those who have large share ratios and upload lots of torrents. That helps with file availability too.
Use the Firehose to mod down Second Life stories!
The real breakthru for distributed P2P tech will come when someone publishes a BitTorrent content distributor that can be plugged transparently in front of an HTTPD. So I hit http://www.whatever.com , and get my HTTP response, with cache and timing headers intact. But behind the scenes, the "www" host is really the entry point to a distributed server network, a pool of interconnected "torrent" servers that transparently balance the traffic throughout the capacitance of the protocol network. Those servers actually tap the "real" HTTPD behind that network only to check for updated content, which is distributed to the network on demand, to be passed through to requesting clients. The clients speak only HTTP, and can't tell the difference between the real HTTPD and the distributed network proxies.
As long as I'm asking Santa, I'll be more specific. That "www" host has its DNS resolved by the nameserver at whatever.com , which hands out IP#s of the other "torrent" servers distributed around the "Web". torrent servers get the IP# of the real host at whatever.com, so they get content. There are problems: HTTPS requires each serialized object requested/replied to be encrypted with/for the actual private key of the requesting client, unknown until the request is made. And "CGI" or other dynamic content creates a huge space of permuted object states. But, Santa, Google figured out how to deal with all this in a centralized datacenter, and they're damn fast. Get the elves on this, and children around the world will sleep with visions of sugarplums streaming to their download directories.
--
make install -not war