Presentation is loading. Please wait.

Presentation is loading. Please wait.

Peter R. Pietzuch Peer-to-Peer Computing – or how to make your BitTorrent downloads go faster... Peter Pietzuch Large-Scale Distributed.

Similar presentations


Presentation on theme: "Peter R. Pietzuch Peer-to-Peer Computing – or how to make your BitTorrent downloads go faster... Peter Pietzuch Large-Scale Distributed."— Presentation transcript:

1 Peter R. Pietzuch prp@doc.ic.ac.uk Peer-to-Peer Computing – or how to make your BitTorrent downloads go faster... Peter Pietzuch Large-Scale Distributed Systems Group http://platypus.doc.ic.ac.uk Distributed Software Engineering (DSE) Section Department of Computing Imperial College London UG Open Day – July 2009 Department of Computing prp@doc.ic.ac.uk

2 BitTorrent Who here uses BitTorrent? BitTorrent: “1/3 of all Internet traffic” (?) [CacheLogic’04] 2

3 Talk Overview What are peer-to-peer systems? –Napster –Gnutella How does BitTorrent work? Open research questions: 1.Internet Service Providers vs P2P applications 2.Making BitTorrent downloads faster 3

4 Client/Server Systems Clients contact a server to request a service 4 client server client HTTP request HTTP response

5 Peer-to-Peer Systems Peers themselves contribute resources to the system 5 peer

6 Peer-to-Peer Applications File sharing most popular (e.g. BitTorrent, eMule,...) –Anybody can provide content Peer-to-peer computing (e.g. BOINC,...) –@home computing projects: Contribute users’ resources for file sharing, scientific computing 6 Quake-Catcher@home SETI@home

7 Napster How do we find a file? Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005

8 Gnutella Can we find files without a centralised server? Not particularly efficient! 8 peer search request? file found!

9 BitTorrent Don’t download whole file from single peer –Subdivide file into fixed chunks Use tit-for-tat policy client 12345678... file: 1234 1234 1234 seed 1234

10 BitTorrent Swarm BitTorrent swarm from the perspective of one peer: 10

11 BitTorrent: Peer Discovery tracker 1.Request list of peers from tracker New peer Peers? Existing swarm

12 BitTorrent: Peer Discovery tracker 1.Request list of peers from tracker 2.Tracker records IP of requester New peer Existing swarm

13 BitTorrent: Peer Discovery tracker A B C 1.Request list of peers from tracker 2.Tracker records IP of requester 3.Tracker responds with list of recent peers New peer A,B,C Existing swarm

14 BitTorrent: Peer Discovery tracker A B C 1.Request list of peers from tracker 2.Tracker records IP of requester 3.Tracker responds with list of recent peers 4.Contact New peer Expanded swarm

15 P2P Research: Network Impact 15

16 P2P vs ISPs Many Internet Service Providers (ISPs) block P2P traffic.... 16

17 Internet Submarine Cables 17

18 Internet Road Map 18

19 Locality in Peer Selection I Swarms ignore ISP boundaries Problem –Ignores network topology –Many long-range connections This is inefficient! –Low inter-node bandwidth –High ISP Cost Traffic shaping ISP #1 ISP #2

20 Locality in Peer Selection II Solution –Form locally-biased graph –Improves inter-node bandwidth –Reduces ISP Cost General principle for Internet applications –Locality is good! How do we add locality? –Look at where IP addresses of peers are located... –Tracker may bias returned peers ISP #1 ISP #2

21 P2P Research: Improvement 21

22 How can we make BitTorrent downloads faster? BitTorrent (BT) uses tit-for-tat scheme for resource contribution –Peers show significant amount of altruism –There’s unfairness in the allocation (no Nash equilibrium) 1.Favour peers with uploads that provide good downloads 2.Optimistically unchoke peers at random to find good new peers Unchoking is indiscriminate to upload capacity 22 source: NSDI’’07 - BitTyrant

23 Sybil Attack 23 source: J. Douceur – IPTPS’02 Peer can pretend to be many peers –BT peers pretends to be many low bandwidth peers –Aggregate download bandwidth will be higher Don’t try that at home... –Refuse multiple connections from same IP address

24 Each peer has a fixed number of upload slots Peers can be strategic when choosing peers for upload slots: 1.Prefer clients that reciprocate with high upload bandwidth Allocate upload slots to them 2.Maximise number of reciprocating clients Dynamically select the number of upload slots available 3.Only contribute minimum required amount of upload bandwidth Frees up upload bandwidth for new upload slots 1 2 3 4 Can BT peers be more strategic? 24 peer swarm

25 Summary Peer-to-peer systems are an activate research area –Lots of interesting problems in computer science Improving BitTorrent –Of course need to show/prove that this works... –Game theory, mechanism design, distributed systems, networks, experimental studies,... Final year undergraduate projects in this space! 25 Thank You! Any Questions? Peter Pietzuch

26 Scratch 26

27 Application 3: Locality-aware Bittorrent Reduced inter-ISP traffic Improved bandwidth for peers 27 Unbiased swarmsLocally-biased swarms tracker ISP #1 ISP #2 tracker ISP #1 ISP #2

28 Decentralised Tracker I 28

29 Decentralised Tracker II 29

30 Decentralised Tracker III 30

31 Large number of users, requests, resources,... –Single/multiple data centres, hosts and/or mobile clients  Requirement: Scalability Wide-area Internet communication –Cannot ignore network effects  Requirement: Network-awareness Long-running, 24/7 service –Must adapt to changing conditions and failure  Requirement: Fault-tolerance Properties of Internet-Scale Systems 31


Download ppt "Peter R. Pietzuch Peer-to-Peer Computing – or how to make your BitTorrent downloads go faster... Peter Pietzuch Large-Scale Distributed."

Similar presentations


Ads by Google