Presentation is loading. Please wait.

Presentation is loading. Please wait.

File Sharing Prepared By: Mahmud Gabareen Eyal Biber Itamar Arie Lecturer Iris Reinhartz-Berger.

Similar presentations


Presentation on theme: "File Sharing Prepared By: Mahmud Gabareen Eyal Biber Itamar Arie Lecturer Iris Reinhartz-Berger."— Presentation transcript:

1 File Sharing Prepared By: Mahmud Gabareen Eyal Biber Itamar Arie Lecturer Iris Reinhartz-Berger

2 Introduction The term “peer-to-peer” (P2P) refers to a class of systems and applications that employ distributed resources to perform a critical function in a decentralized way. Instead of Internet information being held in a few central locations, Peer-to-Peer computing makes it theoretically possible to access the files and data residing on every personal computer connected to the Internet. P2P Client/Server

3 Client/Server problems Scalability As the number of users increases, there is a higher demand for computing power, storage space, and bandwidth associated with the server-side. Reliability The whole network will depend on the highly loaded server to function properly. Infrastructure and administration For fast responding time required a large infrastructure with all associated cost and administration.

4 P2P Advantages In contrast of Client/Server model the increase of users means increase in storage, bandwidth and computing power. No need for a network administrator. Network is fast/inexpensive to setup & maintain. In 2001 Google and Napster had almost the same users and data, Napster had about 100 servers, Google had about 15000 servers.

5 Pure and Hybrid P2P One possible classification of peer-to-peer networks is according to their degree of centralization: Pure peer-to-peer: Peers act as equals, merging the roles of clients and server There is no central server managing the network There is no central router Hybrid peer-to-peer: Has a central server that keeps information on peers and responds to requests for that information. Peers are responsible for hosting available resources, for letting the central server know what resources they want to share, and for making its shareable resources available to peers that request it.

6 Client/Server Architecture

7 Pure P2P Architecture

8 Hybrid P2P Architecture

9 P2P Terminology Client is informally defined as an entity (node, program, module, etc.) that initiates requests but is not able to serve requests. Server is informally defined as an entity that serves requests from other entities, but does not initiate requests. If the server does initiate requests, then it plays the role of a client. Typically, there are one or a few servers versus many clients.

10 P2P Terminology Peer A computer program that acts as both a client and a server for the entire P2P network. Free Riding Free-riding means that a peer does not contribute anything to the system, while it attempts to obtain service (or downloading) from other peers.

11 P2P Applications Should be an implementation of either pure network or hybrid network. Should be able to provide these functions: connect/disconnect to peer/server, manage download and upload. Have necessary entities: Peer, Client, File, Download and Upload. Have an option to configure sittings: configure download and upload bandwidth, saving directory…

12 BitTorrent Implementation of a hybrid P2P network. Two kinds of peers: Leecher: downloader whose file download is incomplete: Seeder: downloader who whose file download is complete and only uploading data. The BitTorrent protocol breaks down files into a number of much smaller pieces, typically a quarter of a megabyte (256 kB) in size. Use “Tracker”: server that tracks the downloading and uploading processes.

13 BitTorrent In order to start sharing we must create or open a Torrent file. Torrent file: contains URL of its tracker, names of the files and their lengths. Also contains SHA-1 hash code for each piece. Web page With.torrent link Tracker Seeder Leecher User.torrent Get Announce Peer List Shake Hand Pieces

14 Emule Hybrid Open source P2P application. Distinguishing features Direct exchange of sources between client nodes. Fast recovery of corrupted downloads. Use of a credit system to reward frequent uploaders. Search. The server can “break” the file in to peaces. The application combine them together in to one file again. each piece of file gets a hash code, to verify the correctness of the pieces.

15 Ares Ares is a pure P2P, free open source file sharing program. Distinguishing features Direct exchange of sources between client nodes. Fast recovery of corrupted downloads. Search. Ares automatically finds more sources and downloads files from many users at once. (breaking the file and gives a hash code to each peace)

16 Use Case Bittorent Emule Ares

17 Use Case P2P DownloaderUploaderSeeder Leecher Peer TrackerServer User

18 Use Case P2P Start Download / Upload Pause Download / UploadManage Download / Upload Share DirectoryCreate TorrentShare Files Connect to server Connect to TrackerUpdate status Update Server SearchConfigure Settings Control panel

19 Use Case P2P

20 Class Diagrames Bittorent Emule Client Peer Download/ Upload Ares Next

21 Class Diagram - BitTorrent

22 Class Diagram eMule

23 Class Diagram Ares

24 Class Diagram

25 Applications Models User Client Bittorent Emule Ares Next

26 Applications Models - BitTorrent

27 Applications Models Emule Sequence diagram:

28 Applications Models Ares Sequence diagram:

29 Domain Models

30 P2P In The Future P2P algorithms: probably have the biggest chance of making impact. As the world becomes increasingly decentralized and connected, there will be a growing need for P2P algorithms to overcome the scalability, anonymity, and connectivity problems. P2P applications: are the next most likely to succeed in the future, because of the advantages of these applications over the existed model.

31 ADOM & P2P P2P is a wide domain that it’s hard to put it in a frame, but ADOM help us in defining the main concepts and functions in the domain. ADOM helped us in modeling what is needed in P2P application, and defining the relations between the classes and functions.

32 Bibliography Dejan S. Milojicic, Vana Kalogeraki, Rajan Lukose, Kiran Nagaraja1, Jim Pruyne, Bruno Richard, Sami Rollins 2,Zhichen Xu. Peer-to-Peer Computing. HP Laboratories Palo Alto. 2002. Andy Oram. Harnessing the Power of Disruptive Technologies. 2001. Qin Lv, Pei Cao, Edith Cohen, Kai Li, Scott Shenker. Search and Replication in Unstructured Peer-to-Peer Networks.2001. Dongyu Qiu and R. Srikant. Modeling and Performance Analysis of BitTorrent-Like Peer-to-Peer Networks. 2004. Wikipedia. http://en.wikipedia.org. Open P2P. http://www.openp2p.com.

33 QUESTIONS???


Download ppt "File Sharing Prepared By: Mahmud Gabareen Eyal Biber Itamar Arie Lecturer Iris Reinhartz-Berger."

Similar presentations


Ads by Google