Peer-to-Peer Networks University of Jordan. Server/Client Model What?

Slides:



Advertisements
Similar presentations
CAN 1.Distributed Hash Tables a)DHT recap b)Uses c)Example – CAN.
Advertisements

P2P data retrieval DHT (Distributed Hash Tables) Partially based on Hellerstein’s presentation at VLDB2004.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
PEER-TO-PEER Is a type of network in which each workstation has equivalent capabilities and responsibilities. This differs from client/server architectures,
Peer to Peer (P2P) Networks and File sharing. By: Ryan Farrell.
An Overview of Peer-to-Peer Networking CPSC 441 (with thanks to Sami Rollins, UCSB)
Peer-to-Peer Networks João Guerreiro Truong Cong Thanh Department of Information Technology Uppsala University.
Peer-to-Peer Networks as a Distribution and Publishing Model Jorn De Boever (june 14, 2007)
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
FRIENDS: File Retrieval In a dEcentralized Network Distribution System Steven Huang, Kevin Li Computer Science and Engineering University of California,
Spotlighting Decentralized P2P File Sharing Archie Kuo and Ethan Le Department of Computer Science San Jose State University.
Exploiting Content Localities for Efficient Search in P2P Systems Lei Guo 1 Song Jiang 2 Li Xiao 3 and Xiaodong Zhang 1 1 College of William and Mary,
A. Frank 1 Internet Resources Discovery (IRD) Peer-to-Peer (P2P) Technology (1) Thanks to Carmit Valit and Olga Gamayunov.
Peer-to-Peer Intro Jani & Sami Peltotalo.
1 Client-Server versus P2P  Client-server Computing  Purpose, definition, characteristics  Relationship to the GRID  Research issues  P2P Computing.
Object Naming & Content based Object Search 2/3/2003.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Freenet A Distributed Anonymous Information Storage and Retrieval System I Clarke O Sandberg I Clarke O Sandberg B WileyT W Hong.
1 Seminar: Information Management in the Web Gnutella, Freenet and more: an overview of file sharing architectures Thomas Zahn.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Application Layer Functionality and Protocols Network Fundamentals – Chapter.
Introduction to Peer-to-Peer Networks. What is a P2P network Uses the vast resource of the machines at the edge of the Internet to build a network that.
P2P File Sharing Systems
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
Peer-to-Peer Computing CS587x Lecture Department of Computer Science Iowa State University.
1 Napster & Gnutella An Overview. 2 About Napster Distributed application allowing users to search and exchange MP3 files. Written by Shawn Fanning in.
Introduction Widespread unstructured P2P network

Peer-to-Peer Overlay Networks. Outline Overview of P2P overlay networks Applications of overlay networks Classification of overlay networks – Structured.
1 Telematica di Base Applicazioni P2P. 2 The Peer-to-Peer System Architecture  peer-to-peer is a network architecture where computer resources and services.
Distributed Systems Concepts and Design Chapter 10: Peer-to-Peer Systems Bruce Hammer, Steve Wallis, Raymond Ho.
1 P2P Computing. 2 What is P2P? Server-Client model.
Introduction to Peer-to-Peer Networks. What is a P2P network A P2P network is a large distributed system. It uses the vast resource of PCs distributed.
Peer-to-Peer Networking. Presentation Introduction Characteristics and Challenges of Peer-to-Peer Peer-to-Peer Applications Classification of Peer-to-Peer.
Version 4.0. Objectives Describe how networks impact our daily lives. Describe the role of data networking in the human network. Identify the key components.
P2P Web Standard IS3734/19/10 Michael Radzin. What is P2P? Peer to Peer Networking (P2P) is a “direct communications initiations session.” Modern uses.
Introduction of P2P systems
Peer to Peer Research survey TingYang Chang. Intro. Of P2P Computers of the system was known as peers which sharing data files with each other. Build.
1 P2P File-Sharing Solution CS654 – Software Architecture course project Guide: T V Prabhakar Members: S Pavan Kumar – Y1306 D V Janardhan Rao – Y
Vulnerabilities in peer to peer communications Web Security Sravan Kunnuri.
Jonathan Walpole CSE515 - Distributed Computing Systems 1 Teaching Assistant for CSE515 Rahul Dubey.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
An Introduction to Peer-to-Peer Networks Presentation for MIE456 - Information Systems Infrastructure II Vinod Muthusamy October 30, 2003.
Exercises for Chapter 10: Peer-to-Peer Systems Peer-to-Peer Systems
Super-peer Network. Motivation: Search in P2P Centralised (Napster) Flooding (Gnutella)  Essentially a breadth-first search using TTLs Distributed Hash.
1 V1-Filename.ppt / / Jukka K. Nurminen Content Search UnstructuredP2P Content Search Unstructured P2P Jukka K. Nurminen *Partly adapted from.
Peer-to-Peer Network Tzu-Wei Kuo. Outline What is Peer-to-Peer(P2P)? P2P Architecture Applications Advantages and Weaknesses Security Controversy.
FastTrack Network & Applications (KaZaA & Morpheus)
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
PEER TO PEER (P2P) NETWORK By: Linda Rockson 11/28/06.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
Efficient P2P Search by Exploiting Localities in Peer Community and Individual Peers A DISC’04 paper Lei Guo 1 Song Jiang 2 Li Xiao 3 and Xiaodong Zhang.
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
6° of Darkness or Using Webs of Trust to Solve the Problem of Global Indexes.
ADVANCED COMPUTER NETWORKS Peer-Peer (P2P) Networks 1.
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
Peer-to-Peer Systems: An Overview Hongyu Li. Outline  Introduction  Characteristics of P2P  Algorithms  P2P Applications  Conclusion.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
Malugo – a scalable peer-to-peer storage system..
2.2 Interfacing Computers MR JOSEPH TAN CHOO KEE TUESDAY 1330 TO 1530
Distributed Web Systems Peer-to-Peer Systems Lecturer Department University.
An example of peer-to-peer application
Peer-to-Peer Data Management
CHAPTER 3 Architectures for Distributed Systems
Presentation transcript:

Peer-to-Peer Networks University of Jordan

Server/Client Model What?

Server/Client Model What? Centralised Server => sole information provider Clients => dumb terminals Clients are so dumb actually I can describe them in 3 letters: RRR => Request, Receive, and Relay

Server/Client Model Why?

Server/Client Model Why? Greater ease of maintenance Data storage is centralised Updates to that data are far easier to administer Many mature client-server technologies are already available It functions with multiple different clients of different capabilities through a formalized, agreed-upon interface.

Server/Client Model Why not? Bottleneck/overload issues Single point of failure (since it’s centralised)

Peer-to-Peer Model What?

Peer-to-Peer Model What? Distributed (decentralised) No notion of a 'client' or a 'server‘; nodes are known as peers Peers provide resources as well as request them P2P networks are ‘ad-hoc’

Peer-to-Peer Model More about Peers For a node to become effectively a peer in a P2P network, it has to share and allow direct access to its resources. The resources a peer might share can range from processing power, disk storage, data, to network bandwidth and whatnot. The network is known to be 'ad-hoc', as in, the addition or removal of a node in the network does not necessarily affect other nodes.

Peer-to-Peer Model P2P systems and their architecture

Peer-to-Peer Model Architecture of P2P Systems 1.Structured 2.Unstructured 1.Pure P2P Systems 2.Hybrid P2P Systems 3.Centralised P2P Systems

Peer-to-Peer Model Structured Systems In structured peer-to-peer networks, connections in the overlay are fixed. They typically use distributed hash table-based (DHT) indexing. Structured P2P networks employ a globally consistent protocol to ensure that any node can efficiently route a search to some peer that has the desired file, even if the file is extremely rare. Such a guarantee necessitates a more structured pattern of overlay links. By far the most common type of structured P2P network is the DHT, in which a variant of consistent hashing is used to assign ownership of each file to a particular peer. Remember Hash tables? [ key => value ] and in this case [ peer => shared files ]

Peer-to-Peer Model Unstructured Systems An unstructured peer-to-peer network is formed when the overlay links are established arbitrarily. Such networks can be easily constructed as a new peer that wants to join the network can copy existing links of another node and then form its own links over time.

Peer-to-Peer Model Unstructured Systems They… Do not provide any algorithm for organization or optimization of network connections. Use flooding for finding all the peers that share the queried data. Their search queries may not always be resolved Have very poor search efficiency Many of the popular P2P networks are unstructured!

Peer-to-Peer Model Unstructured Systems Pure P2P Systems

Peer-to-Peer Model Pure P2P Systems In pure peer-to-peer systems the entire network consists solely of equipotent peers. There is only one routing layer, as there are no preferred nodes with any special infrastructure function.

Peer-to-Peer Model Unstructured Systems Hybrid P2P Systems

Peer-to-Peer Model Hybrid P2P Systems Hybrid peer-to-peer systems allow such infrastructure nodes to exist, often called supernodes. Such systems distribute their clients into two groups: client nodes and overlay nodes. Typically, each client is able to act according to the momentary need of the network and can become part of the respective overlay network used to coordinate the P2P structure. This division between ‘normal’ and ‘better’ nodes is done in order to address the scaling problems on early pure P2P networks. Example: Gnutella (after v0.4).

Peer-to-Peer Model Unstructured Systems Centralised P2P Systems (wtf?)

Peer-to-Peer Model Centralised P2P Systems In centralized peer-to-peer systems, a central server is used for indexing functions and to bootstrap the entire system. Example: eDonkey

Peer-to-Peer Model Indexing and resource discovery How do you find files, even know they’re there?

Peer-to-Peer Model Indexing and resource discovery Older peer-to-peer networks duplicate resources across each node in the network configured to carry that type of information. This allows local searching, but requires much traffic. Modern networks use central coordinating servers and directed search requests. Central servers are typically used for listing potential peers, coordinating their activities, and searching. Decentralised searching was first done by flooding search requests out across peers. More efficient directed search strategies, including supernodes and distributed hash tables (DHT), are now used.

Peer-to-Peer Model Why?

Peer-to-Peer Model Why? In P2P networks, all clients provide resources, which may include bandwidth, storage space, and computing power. Scaleability: As nodes arrive and demand on the system increases, the total capacity of the system also increases. In contrast, in a typical client-server architecture, clients share only their demands with the system, but not their resources. In this case, as more clients join the system, less resources are available to serve each client. Robustness: The distributed nature of P2P networks also increases robustness, and in pure p2p systems by enabling peers to find the data without relying on a centralized index server. In the latter case, there is no single point of failure in the system.

Peer-to-Peer Model Why not?

Peer-to-Peer Model Why not? As with most network systems, insecure and unsigned codes may allow remote access to files on a victim's computer or even compromise the entire network. In the past this has happened for example to the FastTrack network when anti P2P companies managed to introduce faked chunks into downloads and downloaded files (mostly MP3 files) were unusable afterwards or even contained malicious code. Consequently, the P2P networks of today have seen an enormous increase of their security and file verification mechanisms. Modern hashing, chunk verification and different encryption methods have made most networks resistant to almost any type of attack, even when major parts of the respective network have been replaced by faked or nonfunctional hosts. Internet service providers (ISPs) have been known to throttle P2P file-sharing traffic due to the high-bandwidth usage. Compared to Web browsing, or many other uses of the internet, where data is only transferred in short intervals and relative small quantities, P2P file-sharing often consists of relatively heavy bandwidth usage due to ongoing file transfers and swarm/network coordination packets. A possible solution to this is called P2P caching, where an ISP stores the part of files most accessed by P2P clients in order to save access to the Internet.

P2P software applications

P2P software applications include these six key characteristics: the user interface runs outsides of a Web browser computers in the system can act as both clients and servers the software is easy to use and well- integrated

P2P software applications include these six key characteristics: the user interface runs outsides of a Web browser computers in the system can act as both clients and servers the software is easy to use and well- integrated

the application includes tools to support users wanting to create content or add functionality the application makes connections with other users the application does something new or exciting

Top 7 Free P2P File Sharing Programs - Free P2P Software Shareaza BitTorrent Ares BearShare Kazaa eMule LimeWire

Popular P2P Systems Napster Gnutella Kazaa

Napster A way to share music files with others Users upload their list of files to Napster server You send queries to Napster server for files of interest. o Keyword search (artist, song, album, bitrate, etc.) Napster server replies with IP address of users with matching files You connect directly to user A to download file

Central Napster server Can ensure correct results Bottleneck for scalability Single point of failure Susceptible to denial of service o Malicious users o Lawsuits, legislation

Gnutella Share any type of files (not just music) Decentralized search unlike Napster You ask your neighbours for files of interest Neighbours ask their neighbours, and so on o TTL field quenches messages after a number of hops Users with matching files reply to you

Decentralized o No single point of failure o Not as susceptible to denial of service o Cannot ensure correct results Flooding queries Search is now distributed but still not scalable

Kazaa (Fasttrack network) Hybrid of centralized Napster and decentralized Gnutella o Super-peers act as local search hubs o Each super-peer is similar to a Napster server for a small portion of the network Super-peers are automatically chosen by the system based on their capacities (storage, bandwidth, etc.) and availability (connection time)

Users upload their list of files to a super-peer Super-peers periodically exchange file lists You send queries to a super-peer for files of interest

Legal and Copyright Issues of P2P File Sharing

Copyright Identity theft Sharing illegal files

Question Is P2P (filesharing) legal? Answer Yes--but not with copyrighted material...