26
Peer-to-Peer is Not Always Decentralized …when Centralization is Good Nelson Minar <[email protected]> http://www.media.mit.edu/~nelson/

Peer-to-Peer is Not Always Decentralized …when Centralization is Good

  • Upload
    duena

  • View
    28

  • Download
    1

Embed Size (px)

DESCRIPTION

Peer-to-Peer is Not Always Decentralized …when Centralization is Good. Nelson Minar http://www.media.mit.edu/~nelson/. Talk Overview. Where I come from Topologies of distributed systems Strengths and weaknesses Conclusions. Warning: Broad generalizations ahead. - PowerPoint PPT Presentation

Citation preview

Page 1: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

Peer-to-Peer is Not Always Decentralized…when Centralization is Good

Nelson Minar

<[email protected]>http://www.media.mit.edu/~nelson/

Page 2: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 2/23

Network Topologies: Nelson Minar

Talk Overview• Where I come from• Topologies of distributed systems• Strengths and weaknesses• Conclusions

Warning: Broad generalizations ahead

Page 3: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 3/23

Network Topologies: Nelson Minar

Systems I’ve Designed• MIT Media Lab: Hive

– Distributed Agents for Networking Things– Distributed objects– Mobile agents– Fully decentralized (cheating a bit)

• Popular Power– Give your computer something to dream about– SOAP-like client/server system– Mobile code– Fully centralized

Page 4: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 4/23

Network Topologies: Nelson Minar

What is P2P Anyway?• Decentralized Systems: no

– Popular Power fails test– Napster fails test– Most Instant Messaging fails test– Confuses topology with function

• Edge Resources: yes– Small computers on edges contribute back– All peers are active participants

Page 5: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 5/23

Network Topologies: Nelson Minar

Distributed Systems Topologies• Get away from fundamentalism

– “Pure P2P”, “True P2P”, etc• Focus instead on system architecture

– How do the pieces fit together?• Concentrate on connection topology• Which topology for which problem?

Page 6: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 6/23

Network Topologies: Nelson Minar

Centralized• Client/server• Web servers• Databases• Napster search• Instant Messaging• Popular Power

Page 7: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 7/23

Network Topologies: Nelson Minar

Ring• Fail-over clusters• Simple load balancing• Assumption

– Single owner

Page 8: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 8/23

Network Topologies: Nelson Minar

Hierarchical• DNS• NTP• Usenet (sort of)

Page 9: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 9/23

Network Topologies: Nelson Minar

Decentralized• Gnutella• Freenet• Hive• Internet routing

Page 10: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 10/23

Network Topologies: Nelson Minar

Page 11: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 11/23

Network Topologies: Nelson Minar

Centralized + Centralized• N-tier apps• Database heavy systems• Web services gateways• Grand Central

Page 12: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 12/23

Network Topologies: Nelson Minar

Centralized + Ring• Serious web applications• High availability servers

Page 13: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 13/23

Network Topologies: Nelson Minar

Centralized + Decentralized• Clip2 Gnutella Reflector• FastTrack / KaZaA

– Morpheus• Email

Page 14: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 14/23

Network Topologies: Nelson Minar

What about other topologies?• Centralized + Hierarchical?

– Back end tree of information– Caching architectures

• Decentralized + Ring?– P2P network of fail-over clusters

• Decentralized + Hierarchical?• Decentralized + Centralized?

Page 15: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 15/23

Network Topologies: Nelson Minar

Strengths and Weaknesses• Plenty of topologies to choose from• What is each kind good for?• Need a set of properties to measure• Caution: What follows is very high level

Page 16: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 16/23

Network Topologies: Nelson Minar

Things to Measure• Manageability

– How hard is it to keep working?• Information coherence

– How authoritative is info? (Auditing, non-repudiation) • Extensibility

– How easy is it to grow?• Fault tolerance

– How well can it handle failures?• Security

– How hard is it to subvert?• Resistance to legal or political intervention

– How hard is it to shut down? (Can be good or bad)• Scalability

– How big can it grow?

Page 17: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 17/23

Network Topologies: Nelson Minar

Centralized

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

System is all in one place All information is in one placeX No one can add on to systemX Single point of failure Simply secure one hostX Easy to shut down? One machine. But in practice?

Page 18: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 18/23

Network Topologies: Nelson Minar

Ring

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

Simple rules for relationships Easy logic for stateX Only ring owner can add Fail-over to next host As long as ring has one ownerX Shut down owner Just add more hosts

Page 19: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 19/23

Network Topologies: Nelson Minar

Hierarchical

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

½ Chain of authority½ Cache consistency½ Add more leaves, rebalance½ Root is vulnerableX Too easy to spoof linksX Just shut down the root Hugely scalable – DNS

Page 20: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 20/23

Network Topologies: Nelson Minar

Decentralized

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

X Very difficult, many ownersX Difficult, unreliable peers Anyone can join in! RedundancyX Difficult, open research No one to sue! (…but follow $)? Theory – yes : Practice – no

Page 21: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 21/23

Network Topologies: Nelson Minar

Centralized + Ring

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

Just manage the ring As coherent as ringX No more than ring Ring is a huge win As secure as ringX Still single place to shut down Ring is a huge win

Common architecture for web applications

Page 22: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 22/23

Network Topologies: Nelson Minar

Centralized + Decentralized

ManageableCoherent

ExtensibleFault Tolerant

SecureLawsuit-proof

Scalable

X Same as decentralized½ Better than decentralized Anyone can still join! Plenty of redundancyX Same as decentralized Still no one to sue? Looking very hopeful

Best architecture for P2P networks?

Page 23: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 23/23

Network Topologies: Nelson Minar

Centralized vs. Decentralized• Centralized is pretty good!

– Manageable– Coherent– Security

• Decentralized is exciting– Extensible– Massive fault tolerance– Lawsuit-proof

• Scalability is the big question

Page 24: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

2001-11-06Slide 24/23

Network Topologies: Nelson Minar

Conclusions• Centralized is easy to deal with

– Major architecture for distributed systems– Combines well with rings

• Decentralized is good, needs research– Coherence, Manageability, Security– Scalability

• Hierarchical is overlooked• Combining architectures is powerful

Page 25: Peer-to-Peer is Not Always Decentralized …when Centralization is Good

Peer-to-Peer is Not Always Decentralized…when Centralization is Good

Nelson Minar

<[email protected]>http://www.media.mit.edu/~nelson/

Thanks to Marc Hedlund, Raffi Krikorian, Tony White

Page 26: Peer-to-Peer is Not Always Decentralized …when Centralization is Good