P2P Live Streaming Yang Gao, Nazanin Magharei, Reza Rejaie, "Mesh or Multiple- Tree: A Comparative Study of Live P2P Streaming Approaches" INFOCOM 07 Y.

Slides:



Advertisements
Similar presentations
A Construction of Locality-Aware Overlay Network: mOverlay and Its Performance Found in: IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. 22, NO.
Advertisements

Incentives Build Robustness in BitTorrent Bram Cohen.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
Playback delay in p2p streaming systems with random packet forwarding Viktoria Fodor and Ilias Chatzidrossos Laboratory for Communication Networks School.
On Large-Scale Peer-to-Peer Streaming Systems with Network Coding Chen Feng, Baochun Li Dept. of Electrical and Computer Engineering University of Toronto.
Cooperative Overlay Networking for Streaming Media Content Feng Wang 1, Jiangchuan Liu 1, Kui Wu 2 1 School of Computing Science, Simon Fraser University.
Kangaroo: Video Seeking in P2P Systems Xiaoyuan Yang †, Minas Gjoka ¶, Parminder Chhabra †, Athina Markopoulou ¶, Pablo Rodriguez † † Telefonica Research.
Mesh or Multiple-Tree A Comparative Study of Live P2P Streaming Approaches 指導教授:許子衡 老師 學生:王志嘉.
1 Nazanin Magharei, Reza Rejaie University of Oregon INFOCOM 2007 PRIME: P2P Receiver-drIven MEsh based Streaming.
Network Coding in Peer-to-Peer Networks Presented by Chu Chun Ngai
Resilient Peer-to-Peer Streaming Paper by: Venkata N. Padmanabhan Helen J. Wang Philip A. Chou Discussion Leader: Manfred Georg Presented by: Christoph.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
A Framework for Architecting Peer-to- Peer Receiver-driven Overlays Reza Rejaie, Shad Stafford Mirage Research Group Department of Computer Science University.
A New Approach for the Construction of ALM Trees using Layered Coding Yohei Okada, Masato Oguro, Jiro Katto Sakae Okubo International Conference on Autonomic.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
Rheeve: A Plug-n-Play Peer- to-Peer Computing Platform Wang-kee Poon and Jiannong Cao Department of Computing, The Hong Kong Polytechnic University ICDCSW.
Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast J. Liu, S. G. Rao, B. Li and H. Zhang Proc. of The IEEE, 2008 Presented by: Yan Ding.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
CoolStreaming/DONet: A Data- driven Overlay Network for Peer- to-Peer Live Media Streaming INFOCOM 2005 Xinyan Zhang, Jiangchuan Liu, Bo Li, and Tak- Shing.
Vikash Agarwal, Reza Rejaie Computer and Information Science Department University of Oregon January 19, 2005 Adaptive Multi-Source.
Adaptive Multi-source Streaming in Heterogeneous Peer-to-peer Network Vikash Agarwa; Reza Rejaie Twelfth Annual Multimedia Computing and Networking (MMCN.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
Issues in Offering Live P2P Streaming Service to Residential Users Nazanin Magharei, *Yang Guo, and Reza Rejaie Dept. of Computer and Information Science.
Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie.
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
6/28/2015Reza Rejaie INFOCOM 07 1 Nazanin Magharei, Reza Rejaie University of Oregon PRIME: P2P Receiver-drIven MEsh based.
Scalable Live Video Streaming to Cooperative Clients Using Time Shifting and Video Patching Meng Guo and Mostafa H. Ammar INFOCOM 2004.
Supporting VCR-like Operations in Derivative Tree-Based P2P Streaming Systems Tianyin Xu, Jianzhong Chen, Wenzhong Li, Sanglu Lu Nanjing University Yang.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
Department of Computer Science & Engineering The Chinese University of Hong Kong Constructing Robust and Resilient Framework for Cooperative Video Streaming.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
# Idowu Samuel O. # Kashif Shahzad # Arif Kamal M7001E - Multimedia systems [ltu.se] ©2011.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 24 – P2P Streaming Klara Nahrstedt Ramsés Morales.
Peer-To-Peer Multimedia Streaming Using BitTorrent Purvi Shah, Jehan-François Pâris University of Houston Houston, TX.
Exploring VoD in P2P Swarming Systems By Siddhartha Annapureddy, Saikat Guha, Christos Gkantsidis, Dinan Gunawardena, Pablo Rodriguez Presented by Svetlana.
COCONET: Co-Operative Cache driven Overlay NETwork for p2p VoD streaming Abhishek Bhattacharya, Zhenyu Yang & Deng Pan.
Cluster and Grid Computing Lab, Huazhong University of Science and Technology, Wuhan, China Supporting VCR Functions in P2P VoD Services Using Ring-Assisted.
1 V1-Filename.ppt / yyyy-mm-dd / Initials P2P content distribution T Applications and Services in Internet, Fall 2008 Jukka K. Nurminen.
Developing Analytical Framework to Measure Robustness of Peer-to-Peer Networks Niloy Ganguly.
Chun-Yuan Chang, Cheng-Fu Chou * and Ming-Hung Chen Presenter: Prof. Cheng-Fu Chou National Taiwan University
1 Towards Cinematic Internet Video-on-Demand Bin Cheng, Lex Stein, Hai Jin and Zheng Zhang HUST and MSRA Huazhong University of Science & Technology Microsoft.
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.
Resilient Peer-to-Peer Streaming Presented by: Yun Teng.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 37 – P2P Streaming and P2P Applications/PPLive Klara Nahrstedt Spring 2011.
HUAWEI TECHNOLOGIES CO., LTD. Page 1 Survey of P2P Streaming HUAWEI TECHNOLOGIES CO., LTD. Ning Zong, Johnson Jiang.
Adaptive Web Caching CS411 Dynamic Web-Based Systems Flying Pig Fei Teng/Long Zhao/Pallavi Shinde Computer Science Department.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
A Novel Multicast Routing Protocol for Mobile Ad Hoc Networks Zeyad M. Alfawaer, GuiWei Hua, and Noraziah Ahmed American Journal of Applied Sciences 4:
Temporal-DHT and its Application in P2P-VoD Systems Abhishek Bhattacharya, Zhenyu Yang & Shiyun Zhang.
Peer-Assisted Content Distribution Pablo Rodriguez Christos Gkantsidis.
PRIME: P2P Receiver-drIven MEsh based Streaming Nazanin Magharei, Reza Rejaie University of Oregon Presenter Jungsik Yoon.
2007/03/26OPLAB, NTUIM1 A Proactive Tree Recovery Mechanism for Resilient Overlay Network Networking, IEEE/ACM Transactions on Volume 15, Issue 1, Feb.
A P2P-Based Architecture for Secure Software Delivery Using Volunteer Assistance Purvi Shah, Jehan-François Pâris, Jeffrey Morgan and John Schettino IEEE.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
On Reducing Mesh Delay for Peer- to-Peer Live Streaming Dongni Ren, Y.-T. Hillman Li, S.-H. Gary Chan Department of Computer Science and Engineering The.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
SHADOWSTREAM: PERFORMANCE EVALUATION AS A CAPABILITY IN PRODUCTION INTERNET LIVE STREAM NETWORK ACM SIGCOMM CING-YU CHU.
Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan.
1 FairOM: Enforcing Proportional Contributions among Peers in Internet-Scale Distributed Systems Yijun Lu †, Hong Jiang †, and Dan Feng * † University.
Cost-Effective Video Streaming Techniques Kien A. Hua School of EE & Computer Science University of Central Florida Orlando, FL U.S.A.
Accelerating Peer-to-Peer Networks for Video Streaming
Nuno Salta Supervisor: Manuel Ricardo Supervisor: Ricardo Morla
Ying Qiao Carleton University Project Presentation at the class:
Software models - Software Architecture Design Patterns
Yang Guo Thomson Princeton Lab
PRIME Peer-to-Peer Receiver-Driven Mesh-Based Streaming
EE 122: Lecture 22 (Overlay Networks)
Design and Implementation of OverLay Multicast Tree Protocol
Presentation transcript:

P2P Live Streaming Yang Gao, Nazanin Magharei, Reza Rejaie, "Mesh or Multiple- Tree: A Comparative Study of Live P2P Streaming Approaches" INFOCOM 07 Y Liu, Y Guo, "A survey on peer-to-peer video streaming systems", Peer-to-peer Networking and Applications, S Ali, A Mathur, "Measurement of commercial peer-to-peer live video streaming", Recent Advances in Peer-to-Peer Streaming, Deepak Kumar Agarwal ( ) Ajay Narayan ( ) Nishchint Raina ( )

Paper 1. Mesh or Multiple-Tree: A Comparative Study of Live P2P Streaming Approaches - Analyze tree based and mesh based overlays as content delivery overlays - Evaluates performance of their content delivery mechanisms over a properly connected overlay - similarities and differences - ability to tolerate churn - mesh based > tree based by all measures !

P2P streaming Using P2P overlay for streaming live media over network Participating end-systems (or peers) actively contribute their resources by forwarding their available content to their connected peers. Push based content delivery over multiple tree shaped overlays. The tree-based P2P streaming approach expands on the idea of end-system multicast by organizing participating peers into multiple diverse trees. Mesh-based approach uses swarming content delivery over a randomly connected mesh.

Terms Churn: – a peer can leave or join the p2p system at arbitrary time Deadlock: – In the presence of churn, a tree could become saturated and thus unable to accept any new leaf node. Content Bottleneck: – When a parent does not have sufficient number of useful packets for a child peer, the bandwidth of its congestion controlled connection to that child peer can not be fully utilized. Bandwidth Utilization: – ratio of the number of data packets to the total number of delivered packets. Average Quality: – the average number of descriptions ( of Multiple Description Coded (MDC) content ) it receives during a session. Multiple Description Coding (MDC): – Encoding streams into multiple sub-streams called description. Each description can be independently decoded. Furthermore, receiving multiple unique descriptions results in a higher quality.

Organized view of Random Mesh

Delivery Trees Mesh – based approachTree – based approach

Tree Overlay Construction Peer decides number of trees to join based on its access link bandwidth Each peer is placed as an internal node in only one tree and as a leaf node in other trees. Join: – peer contacts the bootstrapping node to identify a parent in the desired number of trees Leave: – subtree nodes rejoin the tree Balance tree: – peer is added as an internal node to the tree that has the minimum number of internal nodes. Short tree: – a new internal node is placed as a child for the node with the lowest depth

Mesh Overlay Construction Participating peers form a randomly connected overlay Each peer tries to maintain a certain number of parents (i.e., incoming degree) Each peer serves a specific number of child peers (i.e., outgoing degree). Upon arrival, a peer contacts a bootstrapping node to receive a set of peers that can potentially serve as parents.

... Mesh Overlay Construction The bootstrapping node maintains the outgoing degree of all participating peers. Then, it selects a random subset of peers that can accommodate new child peers in response to an incoming request for parents. Individual peers periodically report their newly available packets to their child peers and request specific packets from individual parent peers A parent peer periodically receives an ordered list of requested packets from each child peer, and delivers the packets in the requested order. The requested packets from individual parents are determined by a packet scheduling algorithm at each child peer.

Packet scheduling algorithm ( PRIME ) Each peer maintains two pieces of information for individual parents: – the available packets, and – the weighted average bandwidth ( b/w budget ) Each peer monitors the aggregate incoming bandwidth from all parents and slowly adapt the number of requested descriptions (or their target quality) with the aggregate bandwidth. Each peer invokes the algorithm every ∆ seconds to request packets from parent ( with n target quality ) as follows: – scheduler identifies the packets with the highest timestamp that have become available among parents since the last request (during last ∆ seconds). – the missing packets for each timestamp (up to n descriptions per timestamp) are identified and a random subset of these packets is requested from all parents to fully utilize their bandwidth. – to balance the load among parents, when a packet is available at more than one parent, it is requested from the parent that has the lowest fraction of its bandwidth budget utilized.

Similarities Both approaches leverage MDC to accommodate the bandwidth heterogeneity among participating peers. Superimposed view of multiple diverse trees is same as directed random mesh overlays. Content delivery in both enables individual peers to receive different pieces of content. All peers receive data from multiple parents and send it down to different child peers. Both require peers to maintain a loosely synchronized playout time that is sufficiently (τ seconds) behind source’s playout time.

Differences Tree based approachMesh based approach Delivery tree for all packets of a particular description is corr overlay tree for that description Delivery tree for individual packets is dynamically shaped as packet travels through the overlay. When a connection has lower bandwidth than description b/w, its descendant peers can still receive packets from alternate path from other parents. Push based content delivery over multiple tree shaped overlays extending idea of end-system multicast [1] content delivery over a randomly connected mesh extending file swarming mechanisms like in bitTorrent. Inferior performance due to static mapping of content to a particular tree. The placement of each peer as an internal node in one tree and as a leaf in all other trees. Superior performance as there mutiple type of connections among peers and parents. More dynamic to increase in description bandwidth. Sweet spot for peer bandwidth where it can effectively utilize available resources and provide the desired quality. Swarming content delivery couples push content reporting with pull content requesting.

Delivery Tree in Mesh Maximize outgoing bandwidth Diffusion Phase: Once a new packet becomes available at the source, a single peer p in level, i pulls the packet during the next interval ∆ s. Swarming Phase: During the swarming phase, peers on different diffusion subtrees exchange their new packets to contribute their outgoing bandwidth. Delivery tree of a packet consists of two parts: – top portion shall be a diffusion subtree – bottom portion is a collection of swarming connections hanging from the diffusion subtree.

Connection Rules of Delivery Tree C(i,s) and C(l,s) can be attached at any part of the bottom portion of the delivery tree. C(l,s) and C(l,d) → C(l,s) or C(i,s). Otherwise, they form an ending branch for the delivery tree. C(i,d) and C(l,d) can only be attached to the diffusion subtree. C(i,s) and C(i,d) can only be attached as an ending branch of the delivery tree.

Effect of Per Connection Bandwidth Tree-based approach has a sweet spot for the ratio of per- connection bandwidth to description bandwidth where high resource utilization and thus high delivered quality is achieved.

Effect of Peer Degree (Number of Trees)

Effect of bandwidth heterogeneity Mesh: as the % of high bandwidth peers increases, the aggregate performance improves Tree: increasing the % of high bandwidth peers rapidly drops depth of all trees which in turn improves both utilization and the delivered quality.

Performance Evaluation: Properly Connected Static Overlays Tree Based OverlayMesh Based Overlay Content has to be delivered through a particular tree extending the adverse effect of a low bandwidth connection to all downstream peers on that tree. Minimizes the impact of a low bandwidth connection on the connected child peer by providing the required content through other parents.

Performance Evaluation: Responsiveness to Churn ! Procedure / propertyTreeMesh A. Produce distorted overlay: remove a random subset of participating peers from a properly connected overlay without repairing it Subtrees isolated; would not receive content Alternate paths to subtree still exist via swarming connections B. Cohesion of the overlay structure under persistent churn a) ancestor changing rate b) avg degree of connectivity c) frequency of deadlocks a) not stable b) less c) sometimes a) stable : longevity → stability → quality b) more c) no deadlocks !

Summary Identifies the key differences between mesh-based and tree-based approaches to P2P streaming. This in turn sheds an insightful light on the inherent limitations and potentials of these two approaches Identifies the underlying causes for the observed differences between tree- and mesh-based approaches.

A survey on peer-to-peer video streaming systems Yong Liu; Yang Guo; Chao Liang Paper 2

Introduction Classification of Video Streaming : – Live Streaming – Video on Demand Different models to achieve video streaming over internet: – Client-Server Model – Content Delivery Network – Peer-to-Peer Networking

P2P Live Streaming Live video content is disseminated to all users in real-time. Video playbacks on all users are synchronized. Overlay Structures for P2P live streaming : – Tree Based Systems Single-tree streaming Multi-tree streaming – Mesh-based Systems

Tree Based System [P2P Live Streaming] Tree Based Systems – A peer has only one parent in a single streaming tree and downloads all content of the video stream from that parent. Single Tree Streaming – Users form a tree at the application layer, rooted at the video server. – Considerations while constructing a streaming tree: Depth of the tree. Fan out of the tree. Tree maintenance

Tree Based Streaming – Single Tree

Tree Maintenance – Single Tree

Single Tree Construction & Maintenance Achieved in 2 ways: – Centralized central server controls the tree construction and recovery Disadvantage: Performance bottleneck and the single point of failure – Distributed cannot recovery fast enough to handle frequent peer churn.

Multi – tree Streaming Server divides the stream into multiple sub- streams One sub-tree for each sub-stream Each peer joins all sub-trees to retrieve every sub-stream. Each peer has a different position in different sub trees.

Multi-tree Streaming

Mesh-based Systems Peers establish and terminate peering relationships dynamically A peer maintains peering relationship with multiple neighboring peers Extremely robust against peer churn

Mesh formation and Maintenance A mesh streaming system maintains a tracker. – Keeps track of the active peers in the video session. Each peer, when joining the network, contacts the tracker: – Peer reports its IP address, port number etc. – Tracker returns a subset of active list of peers in the session.

Mesh Maintenance Peers identify new node by exchanging peer list with neighbors. Also request for active peer list from tracker. Graceful departure of a peer is informed to the tracker. Unexpected Peer departure: – Peers regularly exchange keep-alive messages

P2P Video on Demand Video on Demand [VoD] – allows users to watch any point of video at any time – offers more flexibility and convenience to users – key feature to attract consumers to IPTV service Overlays to support VoD: – Tree based P2P systems – Mesh based P2P systems

Tree Based P2P Systems Users grouped into sessions based on arrival time. The server and users in the same session form an application level multicast tree.[Base tree] Server streams entire video over the base tree. Users who join the session later, should obtain the ‘patch’ [ Content that is missed]

Tree Based P2P Systems Users act like peers in a P2P network. Each of them provide the following 2 functions: – Base Stream Forwarding Users forward the received base stream to child nodes – Patch Serving Users cache initial part of stream and forward to peers joining newly.

Tree Based P2P Systems

Cache-and-relay P2P VoD Based on the concept of interval caching. Server caches a moving window of video content. – Efficiently utilizes memory at the server – Serve clients whose viewing point falls into the caching window. Serves all clients asynchronously.

Cache-and-relay P2P VoD Each peer buffers a moving window of video content around the point where they are watching. Serves other users who are watching around that point by forwarding the stream.

Cache-and-relay P2P VoD

Mesh-based P2P VoD Achieves fast file downloading by swarming Server disperses data blocks to different users. Diversity Requirement: – The data blocks at different users are better-off to be different from each other so that there is always something to exchange. – Fully utilize users upload bandwidth – Achieve highest downloading throughput.

Mesh-based P2P VoD Challenges face in building a mesh based P2P: – effective rate of video play back is poor as data blocks are retrieved in a fairly random order. – availability of different content blocks is also skewed by users behavior Requires right balance between the overall system efficiency and the conformation to the sequential playback Example of Mesh-based P2P VoD: BiToS

BiToS: Mesh-based P2P VoD

BiToS has 3 components : – Received Buffer : Stores all data blocks that have arrived. – High Priority Set: Contanins the list of data blocks that are close to playback but are not downloaded yet. – Remaining Pieces : List of all blocks that are yet to be downloaded.

Mesh-based P2P VoD Availability of Content in Mesh-based P2P: – If video is downloaded in the order of playback newly arrived user can make little contribution Not many have content earlier users are looking for – Earlier arrived peers serve content to the newly arrived users. – The number of peers that serve content to earlier arrived peers constantly reduces, as users might leave the network. – One Solution is to introduce a source server.

Conclusion Existing Limitations in P2P systems: – Quality of Experience is not comparable to traditional TV. – Long channel start up times and channel delays. – Considerable lag among peers. – Low resolution videos due to limited uploading capacity.

Conclusion High traffic volumes pose a challenge to ISP’s network capabilities. Video content distribution load is shifted to the ISPs without any profit to them. Requires further investigation to identify an effective method to regulate and manage P2P video streaming traffic and maintain stability of the ISP’s network infrastructure.

Measurement of Commercial Peer-To-Peer Live Video Streaming Paper 3

Agenda Challenges with analyzing P2P apps How is measurement done? Analysis of Control Protocols Defining Metrics Analysis of Data Plane Summary and Conclusion

P2P Systems Bright side – Ubiquity, Resilience, Scalability – Distributed Applications – Academic interest generated for Video applications – Popular Not-so-bright side – Little understanding of protocols – Proprietary nature makes it difficult

Challenges with proprietary apps No specification of protocols – Forced to conduct black-box tests No documentation or API – Can’t write test scripts Manual interaction to be done

How is it done? Collecting packet traces with Ethereal Separating control traffic from data traffic Reverse engineering the protocols – By analyzing control traffic Data plane analysis on some metrics Applications – PPLive – SOPCast

Test Machines Intel Pentium 4 computers Windows XP OS Ethereal Software

Control Protocols Software Update – Version checking and downloading updates Channel Lists – Downloading channel lists from webserver Bootstrap – Getting initialization information from webserver Maintaining Peers – Getting initial list of hosts and updating them regularly Requesting data

Separating control and data traffic Observing packet size – Packet size < 40 bytes – ACKs (40%) – Packet size > 1KB – Data packets (40 – 50%) – In between – Control packets (10 – 20%) Measuring flow rate – If > 4KB/s, it’s a data flow

PPLive Protocol analysis done on PPLive SOPCast working very similar Both based in Asia with strong American following Attract large number of users

PPLive Protocol Analysis Software Update – GET message sent to update.pplive.com – Checks for update.inf – Scalability concerns Channel List – Contact centralized server at – Get all.xml file which lists channels – Channel lists specify trackers – Flash crowd point in the system

PPLive Protocol Analysis Software Update – GET message sent to update.pplive.com – Checks for update.inf – Scalability concerns Channel List – Contact centralized server at – Get all.xml file which lists channels – Channel lists specify trackers – Flash crowd point in the system

PPLive Protocol Analysis Software Update – GET message sent to update.pplive.com – Checks for update.inf – Scalability concerns Channel List – Contact centralized server at – Get all.xml file which lists channels – Channel lists specify trackers – Flash crowd point in the system

Definitions Flow – F(A1, X1) = {IPA, PA1, IPX, PX1} Rate of Flow – Given by Duration of flow Parent and Child – Relationship between peers Distance Cost – Miles per byte Stability

Data Plane Analysis Network Resource Usage – Bandwidth – Number of children supported – Connectivity Locality of peers – Cost of downloading/uploading Stability

Network Resource Usage – Bandwidth – Number of children supported – Connectivity

Bandwidth Expected – Fairness – Limit on upload, download and ratio between them Reality – No policy control over upload – Increases 3x if 3 instances used (bottom)

Children Supported Number of parents – Between 3-5 – Same for high capacity (top) and low capacity (bottom) nodes – 1 parent not possible due to group dynamics – Unfair children distribution – HC, 0 LC

Bandwidth Expected – Fairness – Limit on upload, download and ratio between them Reality – No policy control over upload – Increases 3x if 3 instances used (bottom)

Connectivity Data plane structure – Very small fraction of hosts connected are defined parent or child – Unstructured data plane – connectivity maintained through randomness

Locality of Peers – Cost of Downloading – Cost of Uploading

Visibility 3 Levels of visibility We measure at the host

Cost of Download High capacity nodes – High cost of download – Parents in Asia Low Capacity nodes – Lower cost of download – Parents in America Reason?

Cost of Upload Cost v/s Time – Done on HC Nodes – Average suggests low cost CDF – Above 60% children in Asia – Parents in America Inefficiency of System – Data sent back to Asia in majority cases

Stability

Stability v/s Time – 30% of parents change between intervals Cause? – Group dynamics and random nature of data plane

Summary Unfairness Improper NAT handling Inefficient Distribution of Data Transport Protocol – Not ideal for real-time/overhead – Delay associated Security – Control protocols are not encrypted

Contributions Gained valuable insight in working of apps High resource usage Fairness unsatisfactory Metrics defined can be used to study other apps Brings up issues to be addressed

Questions ?