BitTorrent Chat Demystified
An anonymous reader writes "Can you really do group chat with no central server? BitTorrent's Patrick Williams has developed a new app that leverages a distributed architecture to eliminate the need for any servers — even to host a buddy list. He says magnet links are the key."
Can you really do group chat with no central server?
ICQ proved that it was possible over a decade ago. Simultaneously, they proved that it was not a good idea (as I remember friends saying, "Who are you talking to? I don't see him! Re-invite!").
Magnet links, how do they work?
Reference: Harry R. Chesley, "Asynchronous Background Networking on the Macintosh," Develop 5, Winter 1991. It was called Rumor Monger.
I implemented something like this once, a long time ago, on a small scale. Just use sequence numbers to determine order, it might not be perfect, but it worked. Each client held a hash table with a limit size (can't remember) of the people they could "see". If you couldn't find a target you'd just "multicast" it to all the ones you knew were there and ask them to deliver, with a limited number of hops (to avoid infinite cycles).
The initial connection relied on invites. This was academic work, kind of a proof of concept. Why would this be news in this day and age baffles me.
Yes, and it's called WASTE. Came out in '03 and I've been "running" a decentralized mesh non-stop ever since.
Good old IRC isn't centralized either! http://en.wikipedia.org/wiki/Netsplit
What ever happened to SILC?
Is the chat encrypted?
I must be a bit confused about how exactly a magnet link works. In order for me to access the magnet stream for a file I wanted to download, I would need a magnet link pointing to somebody who was serving the file, right?
What happens when the person who the magnet link references turns off their computer? If the magnet link needs to "check in" and update itself on a regular basis to prevent against this, what makes it functionally different than hosting a .torrent?
---- I'll take you in a Hunt deathmatch any day.
The BitTorrent DHT is a giant distributed database formed among most of the BT clients that maps ip addresses / port numbers to arbitrary keys. That's how the clients talking in the same room find each other.
Bonjour is multicast decentralized chatting.
http://cspace.in/
cspace is basically what OP is speaking about.
Have a look at Retroshare ( http://retroshare.sourceforge.net )
Totally decentralized chat! Awesome! We've needed this for a very long time, and I don't know why it's taken so long to put together. Not that I'm complaining. Soon as there's a Flash applet that'll handle the protocol, we're in business. I hope this is widely adopted.
This signature has Super Cow Powers
mail is not centralized...
Okay, it's not the same thing at all (just like most of the other things people are suggesting were first/earlier), but it is decentralized chat with radios, since 1992.
Look it up, even if you're not a ham, it's pretty cool stuff.
73 de AB9UL
No ops? SWEET
does cspace need a central server?
Yes, the old UNIX chat command didn't need a central server, every system was a client and a server. Nothing magic about expanding this with DHTs to make connecting easier.
ARPANET, hell, how you think the POTS works? Or even old telegraph cables. The difference is whether packet switched, broadcast or circuit switched.
I think if I chuck text files to each other over freenet, I probably have elementary distributed chat.
When launching uChat :
" uChat is requesting access to :
ability to run in the background
read access to all torrents
write access to all torrents
Would you grant this app access ?"
NO, si i cant test it.
...and apparently fairly old and easy to implement. Its a shame that those elite hackers at LULZSec didn't consider using it.
http://michaelsmith.id.au
Doesn't "Roger Wilco" work without a central server?