5 ms·
What about things like Bitcoin and Bittorrent? Those are decentralized protocols that both work great. I think the real problem is that decentralized protocols
by rthomas6 13y ago
What about things like Bitcoin and Bittorrent? Those are decentralized protocols that both work great. I think the real problem is that decentralized protocols have no way of determining what information each user should see or not see. I also think this is a solvable problem, but that it is hard.
- peterwwillis 13y agoBittorrent does not work great, to my mind, compared to a centralized service. It's absolutely abysmal on network traffic, is inherently slow, and depending on the communication, practically unusable outside affinity groups. Toward that last end it's useful, but i'd hardly consider it great in general. I don't know enough about Bitcoin to say if it's efficient but i'm aware that transactions can move around the network without much effort, which is nice. But there's big downsides to the transparency of transactions there vs cash or credit, not to mention having your "wallet" stolen vs more traditional credit systems that are more durable for general global commerce. Both of those things are useful. They're just not as efficient or reliable as a centralized service can be. Centralized services & communication have their own problems, but generally speaking the bigger they are the more robust they are, which is often the opposite in truly distributed systems.
- oib 13y agoWhy is bittorrent abysmal on network traffic and inherently slow ? Both facebook and twitter use it for server deployment because they utilize network resources far better than centralized systems. I would make the opposite claim: distributed systems can be far more efficient or reliable than centralized service.
- peterwwillis 13y agoThe short answer is that the effective use of the protocol is almost entirely based on the quality of the network of peers involved in distributing the content. For a relatively small internal network that can be quality-controlled by a single team, this may work more effectively than a single centralized service. For the Internet, this is retarded. See PDFs below for some example reasons. The long answer would have me explaining all of the different use cases of both decentralized and centralized services and a comparison for each. For example, compare bulk file transfer to a domain name service in truly decentralized networks. Keeping domain names requires massive coordination of peers over a gigantic index which can't have conflicts. Bulk file transfer is almost the opposite, as few people have the records (torrent) and the task is mainly in distributing the index (the file). Both are simpler, more efficient, and more reliable if you take out the middle-man of trying to coordinate with more than one peer. http://www.imd.uni-rostock.de/veroeff/ImprovedBitTorrent_Danielis.pdf http://www.imd.uni-rostock.de/veroeff/ImprovedBitTorrent_Dan... https://engineering.purdue.edu/~isl/TON12.pdf https://engineering.purdue.edu/~isl/TON12.pdf https://www.ietf.org/proceedings/74/slides/P2PRG-0.pdf https://www.ietf.org/proceedings/74/slides/P2PRG-0.pdf
- Jtsummers 13y agoI had to look this up because I was unfamiliar with it. Based on this synopsis it seems that my initial thoughts were correct. They're taking advantage of their unique control over their situation (compared to, say, random clients distributed unevenly across the globe) to achieve their speedup. Facebook's solution is similarly customized and optimized to take advantage of their network control/topology. The clients are given a preference for closer (same rack/node) sources. [1] https://blog.twitter.com/2010/murder-fast-datacenter-code-deploys-using-bittorrent https://blog.twitter.com/2010/murder-fast-datacenter-code-de... [2] http://arstechnica.com/business/2012/04/exclusive-a-behind-the-scenes-look-at-facebook-release-engineering/ http://arstechnica.com/business/2012/04/exclusive-a-behind-t...
- 21echoes 13y ago> Bittorrent does not work great, to my mind, compared to a centralized service. It's absolutely abysmal on network traffic, is inherently slow, and depending on the communication, practically unusable outside affinity groups. Toward that last end it's useful, but i'd hardly consider it great in general. I don't know what BitTorrent you're using, but most everything i torrent downloads way faster than it would from a centralized server (iTunes, MegaUpload, etc.)
- peterwwillis 13y agoYou're missing out on newsgroup and fxp speeds (in the gigabits-per-second range). And that applies to every download, not just the odd torrent with as many seeders as leechers.
- wmf 13y agoIt's not hard for a system with strictly more resources (e.g. massive servers) to be faster, but who's paying for it and how much more does it cost? I suspect if those massive servers acted as BitTorrent permaseeds the result would be even faster because the peers could contribute additional bandwidth.