* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download PPT - Department of Computer Science
Computer network wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Network tap wikipedia , lookup
Zero-configuration networking wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Deep packet inspection wikipedia , lookup
Video on demand wikipedia , lookup
Airborne Networking wikipedia , lookup
Introduction to Peer-to-Peer Networking Applications and Malicious Peers Song Ye Dartmouth Experimental Visualization Laboratory Department of Computer Science Dartmouth College For CS99 Team Project: “Detect and Prevent Malicious Peers in a Peer-to-Peer System” http://www.cs.dartmouth.edu/~yesong/P2PProject.html Outline What is Peer-to-Peer (P2P)? P2P Applications Malicious Peers in P2P Applications Case Study: P2P Media Streaming Outline What is Peer-to-Peer (P2P)? P2P Applications Malicious Peers in P2P Applications Case Study: P2P Media Streaming What is Peer-to-Peer (P2P)? P2P is a communications model in which each party has the same capabilities and either party can initiate a communication session. Whatis.com P2P is a class of applications that takes advantage of resources – storage, cycles, content, human presence – available at the edges of the Internet. openp2p.com A type of network in which each workstation has equivalent capabilities and responsibilities. Webopedia.com A P2P computer network refers to any network that does not have fixed clients and servers, but a number of peer nodes that function as both clients and servers to other nodes on the network. Wikipedia.org Definition Everything except the client/server model Network of nodes with equivalent capabilities/respons ibilities (symmetrical) Nodes are both servers and clients What’s new? Decentralize Scale – Anonymity – Protect identity and privacy Security – people are envisioning much larger scale Systems must deal with privacy and integrity Stability – – Deal with unstable components as the edges But, can systems designed this way be more stable? P2P Research Projects and Systems Freenet Publis SFS Bayou FARSITE Logistical Networking Pangaea Pastiche Bullet P2Cast SETI@home Dagster SplitStream Gia OceanStore PAST Squirrel CFS Ivy PeerDB PIER … Outline What is Peer-to-Peer (P2P)? P2P Applications Malicious Peers in P2P Applications Case Study: P2P Media Streaming P2P Applications File Sharing (Gnutella) Overlay Networking (RON) Media Streaming (P2Cast) Backup and Data Archiving (OceanStore) Web Caching and Proxy (Squirrel) Database (PeerDB) CPU Cycles Sharing (SETI@home) … File Sharing: Killer application! P2P file sharing has been widely used – – – – – – Napster Gnutella eDonkey Kazaa Bittorrent … File Sharing: Pros and Cons (+) Potentially unlimited file exchange areas (+) High available safe storage: duplication and redundancy (+) Anonymity : preserve anonymity of authors and publishers (-) Network bandwidth consumption (-) Management (-) Search capabilities P2P Overlay Networking (1) Client Server Client Server IP Network Overlay Traditional System IP Network P2P Communication Network P2P Overlay Networking (2) An overlay network is a set of logical connections between end hosts Overlay networks can be unstructured or structured Proximity not necessarily taken into account Overlay maintenance is an issue Media Streaming in P2P Networks P2P media streaming – – – Peers playback and cache the media content during the streaming session They stream the cached content to other peers if requested Some kind of multicast structure is used Backup and Data Archiving Storage space sharing Peers store data for each other – Improve availability of their data – Heterogeneity of peers enables data availability under virus attacks. – When a peer loses its data No computer virus can attack all different OSes. Cheaper than centralized backup services Outline What is Peer-to-Peer (P2P)? P2P Applications Malicious Peers in P2P Applications Case Study: P2P Media Streaming What are malicious peers? If peers do not do what they are supposed to do (according to the application protocol), they are malicious peers (a.k.a noncollaborative peers) – Intentionally or unintentionally The concept of malicious peers is application-specific Malicious Peers (1) File Sharing – – – – Freeloaders Share invalid files Distribute virus … Overlay Network – – – Freeloaders Misroute other peers’ packets … Malicious Peers (2) Media Streaming – – – – Freeloaders Share invalid video/audio clips Intentionally modify video/audio clips being shared … Backup – – – Discard other peers’ data Unreliable storage space … Outline What is Peer-to-Peer (P2P)? P2P Applications Malicious Peers in P2P Applications Case Study: P2P Media Streaming Introduction to Media Streaming Streamed Media: – – Streaming Methods – – Live On-Demand Streaming Products: – – Audio (~300Kbps) Video (150Kbps 750Kbps 2Mbps ??) Real (rm, rmvb, ra, …) Microsoft (asf, wmv, …) An application of bandwidth allocation and sharing Media Streaming vs. File Downloading File Downloading Media Streaming Mode Open-after-downloading Play-while-downloading Download Order Our of order In order Download Speed Requirement Average download speed matters Require relatively steady download speed Current Status Widely deployed and accepted (eDonkey, BitTorrent …) Not widely used yet Freeloaders Not a big issue A big problem Collaborative P2P Media Streaming Our solution: – – A peer Pi’s behavior is monitored by both its upstream peers U(Pi) and downstream peers D(Pi) D(Pi) send streaming certificates for Pi to U(Pi) – Streaming certificates are negotiable U(Pi) adjust streams to Pi accordingly Streaming certificates are transferred piggyback with streaming control sequences An Example Incentive Mechanisms A peer’s selfish behavior can be detected by its upstream peers in a timely manner A peer can get better streaming quality if it contributes more and earns more streaming certificates Evaluation (1) Simulation-based experiments are conducted: – – – – Network topology is not considered There are no bandwidth limits in network connections Peers have inbound and outbound bandwidth limits Set different number of selfish peers An example configuration Number of Peers Inbound Bandwidth Outbound Bandwidth Type 1 1200 112kbps 96kbps Type 2 600 1mbps 600kbps Type 3 200 10mbps 10mbps – Multiple multicast trees are constructed and maintained Evaluation (2) The average bit rates that selfish peers receive are much less than collaborative ones In the media streaming process, selfish peers tend to be placed at the edges of multicast trees Peers tend to behave collaboratively if they are allowed change their behavior from selfish to collaborative – Peers are not allowed to change from collaborative to selfish 1000 900 800 700 600 500 400 300 200 100 0 Type 1 C Type 1 S Type 2 C Type 2 S Type 3 C Time (seconds) 3600 3300 3000 2700 2400 2100 1800 1500 1200 900 600 Type 3 S 300 Average Bit Rate (kbps) Average Bit Rate 90 0 12 00 15 00 18 00 21 00 24 00 27 00 30 00 33 00 36 00 60 0 30 0 Percent of Selfish Peers Change of Selfish Peers 35 30 25 20 10% 20% 15 30% 10 5 0 Time Thank you! P2P Research Projects and Systems Freenet Publis SFS Bayou FARSITE Logistical Networking Pangaea Pastiche Bullet P2Cast SETI@home Dagster SplitStream Gia OceanStore PAST Squirrel CFS Ivy PeerDB PIER … P2P courses UC Berkeley: http://www.cs.berkeley.edu/~kubitron/courses /cs294-4-F03/ U Waterloo: http://bcr2.uwaterloo.ca/~rboutaba/cs856/cs85 6schedule.html