Resources

Why so aggressive? On the support for Background Transfers in WebRTC

Authors: Riccardo Reale, Anton Blomberg and Roberto Roverso The WebRTC framework enables direct browser-to-browser communication for VoIP, video-conferencing but also generic javascript-based peer-to-peer (P2P) applications. In this paper, we address a major deficiency of the framework, that is the absence of a background transfer protocol. In doing so, we enable the development of un intrusive data intensive P2P applications, such as file-sharing and content delivery, on top of WebRTC. This work constitutes the first step in the process of studying and improving WebRTC’s network stack in the context of a real use-case, that is a commercial distributed content delivery... read more

RankSlicing: A decentralized protocol for supernode selection

Authors: Giovanni Simoni, Roberto Roverso and Alberto Montresor In peer-to-peer applications deployed on the Internet, it is common to assign greater responsibility to supernodes, which are usually peers with high computational power, large amount of memory, or high network bandwidth capacity. In this paper, we describe a practical solution to the problem of supernode selection, that is the process of discovering the best peers in the network by some application-specific metric. We provide a distributed heuristic that allows to identify the best K nodes in the P2P overlay, by taking into consideration the realities of actual deployments, such as the presence of NATs. Our approach consists of an epidemic protocol which does not require new connections to be established, but rather relies on established connections, such as the ones provided by a NAT- resilient peer sampling framework. We support our claims with a thorough evaluation of our solution in simulation and in a real deployment on thousands of consumer machines. Download... read more

Through the Wormhole: Low Cost, Fresh Peer Sampling for the Internet

Authors: Roberto Roverso, Jim Dowling, Mark Jelasity State of the art gossip protocols for the Internet are based on the assumption that connection establishment between peers comes at negligible cost. Our experience with commercially deployed P2P systems has shown that this cost is much higher than generally assumed.As such, peer sampling services often cannot provide fresh samples because the service would require too high a connection establishment rate. In this paper, we present the wormhole-based peer sampling service (WPSS). WPSS overcomes the limitations of existing protocols by executing short random walks over a stable topology and by using shortcuts (wormholes), thus limiting the rate of connection establishments and guaranteeing freshness of samples, respectively. We show that our approach can decrease the connection establishment rate by one order of magnitude compared to the state of the art while providing the same levels of freshness of samples. This, without sacrificing the desirable properties of a PSS for the Internet, such as robustness to churn and NAT-friendliness. We support our claims with a thorough measurement study in our deployed commercial system as well as in simulation.... read more

Hive.js: Browser-Based Distributed Caching for Adaptive Video Streaming

Authors: Roberto Roverso and Mikael Hoegqvist Peer-to-peer (P2P) technology has long been considered a natural complement to standard CDN infrastructure for video distribution since it greatly reduces costs and improves quality of user experience. However, P2P solutions have traditionally required the installation of additional software or plugins to be deployed, which significantly hinders adoption. In this paper, we present Hive.js, a browser-based plugin-less distributed caching platform for video streaming. Hive.js is layered over WebRTC, a new set of HTML5 APIs for direct browser-to-browser communication, and it is designed to transport adaptive HTTP streaming protocols, specifically MPEG-DASH. Initial results obtained by evaluating Hive.js in a controlled test environment show that our approach significantly reduces the load on CDN infrastructure and does not sacrifice quality of user experience. Download... read more

On the Optimality and Speed of the Deep Greedy Switching Algorithm for Linear Assignment Problems

Authors: Amgad Naiem, Mohammed El-Beltagy The Deep Greedy Switching algorithm is a fast heuristic for solving large instances of the linear sum assignment problem whilst sacrificing very little in terms of optimality. In this paper we explore the worst case performance aspects of the algorithm. We prove that the algorithm is finite and analyze its computational complexity. We also discuss a number of simplified variations of the algorithm that shed some light on how the algorithm works. The basic algorithm is also extended to problems involving partial assignment. Computational results on a number of problem types show that the solutions reached by our algorithm are only slightly worse than those obtained by the auction algorithm. A parallelized version of the basic algorithm is presented. Our algorithm is significantly faster than other methods with approaching a comparable quality of solution.... read more

Mesmerizer: A Effective Tool for a Complete Peer-to-Peer Software Development Life-cycle

Authors: Roberto Roverso, Sameh El-Ansary, Alexandros Gkogkas, Seif Haridi In this paper we present what are, in our experience, the best practices in Peer-To-Peer(P2P) application development and how we combined them in a middleware platform called Mesmerizer. We explain how simulation is an integral part of the development process and not just an assessment tool. We then present our component-based event-driven framework for P2P application development, which can be used to execute multiple instances of the same application in a strictly controlled manner over an emulated network layer for simulation/testing, or a single application in a concurrent environment for deployment purpose. We highlight modeling aspects that are of critical importance for designing and testing P2P applications, e.g. the emulation of Network Address Translation and bandwidth dynamics. We show how our simulator scales when emulating low-level bandwidth characteristics of thousands of concurrent peers while preserving a good degree of accuracy compared to a packet-level simulator.... read more

The Vital Role of Networking in Corporate Video

Video is the most vibrant venue that executives can use to convey their message to large, far-flung audiences within their respective organizations. More engaging than a conference call, more impactful than e-mail, streaming video is described as an “effective” tool for business communications by 83% of 1,201 executives participating in a fourth quarter 2014 survey fielded by Wainhouse Research.  Despite video’s clear value to the enterprise, it is virtually meaningless without the right distribution infrastructure. For video to deliver on its business promise, organizations must have robust internal corporate networks capable of handling the traffic generated by data-intensive video. In this report, Wainhouse Research identifies popular approaches for addressing corporate networking issues and highlights the advantages and disadvantages associated with its implementation. Download White... read more

A GPU-enabled solver for time-constrained linear sum assignment problems

Authors: Roverso R., Naiem A., El-Beltagy M., El-Ansary S., Haridi, S In this paper we modify a fast heuristic solver for the Linear Sum Assignment Problem (LSAP) for use on Graphical Processing Units (GPUs). The motivating scenario is an industrial application for P2P live streaming that is moderated by a central node which is periodically solving LSAP instances for assigning peers to one another. The central node needs to handle LSAP instances involving thousands of peers in as near to real-time as possible. Our findings are generic enough to be applied in other contexts. Our main result is a parallel version of a heuristic algorithm called Deep Greedy Switching (DGS) on GPUs using the CUDA programming language. DGS sacrifices absolute optimality in favor of low computation time and was designed as an alternative to classical LSAP solvers such as the Hungarian and auctioning methods. The contribution of the paper is threefold: First, we present the process of trial-and-error we went through, in the hope that our experience will be beneficial to adopters of GPU programming for similar problems. Second, we show the modifications needed to parallelize the DGS algorithm. Third, we show the performance gains of our approach compared to both a sequential CPU-based implementation of DGS and a parallel GPU-based implementation of the auctioning algorithm.... read more

SmoothCache: HTTP-Live Streaming Goes Peer-To-Peer

Authors: Roberto Roverso, Sameh El-Ansary, Seif Haridi In this paper, we present SmoothCache, a peer-to-peer live video streaming (P2PLS) system. The novelty of SmoothCache is threefold: i) It is the first P2PLS system that is built to support the relatively new approach of using HTTP as the transport protocol for live content, i) The system supports both single and multi-bitrate streaming modes of operation, and iii) In Smoothcache, we make use of recent advances in application-layer dynamic congestion control to manage priorities of transfers according to their urgency. We start by explaining why the HTTP live streaming semantics render many of the existing assumptions used in P2PLS protocols obsolete. Afterwards, we present our design starting with a baseline P2P caching model. We, then, show a number of optimizations related to aspects such as neighborhood management, uploader selection and proactive caching. Finally, we present our evaluation conducted on a real yet instrumented test network. Our results show that we can achieve substantial trac savings on the source of the stream without major degradation in user experience.... read more

NATCracker: NAT Combinations Matter

Authors: Roberto Roverso, Sameh El-Ansary and Seif Haridi In this paper we report our experience in working with Network Address Translators (NATs). Traditionally, there were only 4 types of NATs. For each type, the (im)possibility of traversal is well-known. Recently, the NAT community has provided a deeper dissection of NAT behaviors resulting into at least 27 types and documented the (im)possibility of traversal for some types. There are, however, two fundamental issues that were not previously tackled by the community. First, given the more elaborate set of behaviors, it is incorrect to reason about traversing a single NAT, instead combinations must be considered and we have not found any study that comprehensively states, for every possible combination, whether direct connectivity with no relay is feasible. Such a statement is the first outcome of the paper. Second, there is a serious need for some kind of formalism to reason about NATs which is a second outcome of this paper. The results were obtained using our own scheme which is an augmentation of currently-known traversal methods. The scheme is validated by reasoning using our formalism, simulation and implementation in a real P2P network.... read more

Accurate and Efficient Simulation of Bandwidth Dynamics for Peer-To-Peer Overlay Networks

Authors: Alexandros Gkogkas, Roberto Roverso, Seif Haridi When evaluating Peer-to-Peer content distribution systems by means of simulation, it is of vital importance to correctly mimic the bandwidth dynamics behavior of the underlying network. In this paper, we propose a scalable and accurate flow-level network simulation model based on an evolution of the classical progressive filling algorithm which implements the max-min fairness idea. We build on top of the current state of art by applying an optimization to reduce the cost of each bandwidth allocation/deallocation operation on a node-based directed network model. Unlike other works, our evaluation of the chosen approach focuses both on efficiency and on accuracy. Our experiments show that, in terms of scalability, our bandwidth allocation algorithm outperforms existing directed models when simulating large-scale structured overlay networks. Whereas, in terms of accuracy we show that allocation dynamics of the proposed solution follow those of the NS-2 packet-level simulator by a small and nearly constant offset for the same scenarios. To the best of our knowledge, this is the first time that an accuracy study has been conducted on an improvement of the classical progressive filling algorithm.... read more

Peer2View: a Peer-To-Peer HTTP-Live Streaming platform

Authors: Roberto Roverso, Sameh El-Ansary, Seif Haridi Conference: P2P 2012 Peer2View is a commercial peer-to-peer live video streaming (P2PLS) system. The novelty of Peer2View is threefold: i) It is the first P2PLS platform to support HTTP as transport protocol for live content, ii) The system supports both single and multi-bitrate streaming modes of operation, and iii) It makes use of an application-layer dynamic congestion control to manage priorities of transfers. Peer2View goals are to achieve substantial savings towards the source of the stream while providing the same quality of user experience of a... read more
Share This