Achievable Catalog Size in Peer-to-Peer Video-on-Demand Systems

Similar documents
IP Network Design by Modified Branch Exchange Method

THE THETA BLOCKCHAIN

Hierarchically Clustered P2P Streaming System

Communication vs Distributed Computation: an alternative trade-off curve

ANALYTIC PERFORMANCE MODELS FOR SINGLE CLASS AND MULTIPLE CLASS MULTITHREADED SOFTWARE SERVERS

RANDOM IRREGULAR BLOCK-HIERARCHICAL NETWORKS: ALGORITHMS FOR COMPUTATION OF MAIN PROPERTIES

Lecture 8 Introduction to Pipelines Adapated from slides by David Patterson

HISTOGRAMS are an important statistic reflecting the

Slotted Random Access Protocol with Dynamic Transmission Probability Control in CDMA System

IP Multicast Simulation in OPNET

Dynamic Multiple Parity (DMP) Disk Array for Serial Transaction Processing

An effective hop-by-hop Interest shaping mechanism for CCN communications

The Dual Round Robin Matching Switch with Exhaustive Service

A Memory Efficient Array Architecture for Real-Time Motion Estimation

Combinatorial Mobile IP: A New Efficient Mobility Management Using Minimized Paging and Local Registration in Mobile IP Environments

arxiv: v2 [physics.soc-ph] 30 Nov 2016

Prioritized Traffic Recovery over GMPLS Networks

The Internet Ecosystem and Evolution

Optical Flow for Large Motion Using Gradient Technique

Journal of World s Electrical Engineering and Technology J. World. Elect. Eng. Tech. 1(1): 12-16, 2012

On using circuit-switched networks for file transfers

Conversion Functions for Symmetric Key Ciphers

Module 6 STILL IMAGE COMPRESSION STANDARDS

Event-based Location Dependent Data Services in Mobile WSNs

Detection and Recognition of Alert Traffic Signs

dc - Linux Command Dc may be invoked with the following command-line options: -V --version Print out the version of dc

A modal estimation based multitype sensor placement method

A Recommender System for Online Personalization in the WUM Applications

Optimal Peer Selection for P2P Downloading and Streaming

Lecture 27: Voronoi Diagrams

ART GALLERIES WITH INTERIOR WALLS. March 1998

Controlled Information Maximization for SOM Knowledge Induced Learning

Separability and Topology Control of Quasi Unit Disk Graphs

MapReduce Optimizations and Algorithms 2015 Professor Sasu Tarkoma

Lecture # 04. Image Enhancement in Spatial Domain

On the Forwarding Area of Contention-Based Geographic Forwarding for Ad Hoc and Sensor Networks

(1) W tcp = (3) N. Assuming 1 P r 1. = W r (4) a 1/(k+1) W 2/(k+1)

CLOUD based storage systems are emerging to gain significant

EE 6900: Interconnection Networks for HPC Systems Fall 2016

Annales UMCS Informatica AI 2 (2004) UMCS

AN ANALYSIS OF COORDINATED AND NON-COORDINATED MEDIUM ACCESS CONTROL PROTOCOLS UNDER CHANNEL NOISE

Spiral Recognition Methodology and Its Application for Recognition of Chinese Bank Checks

Decentralized Trust Management for Ad-Hoc Peer-to-Peer Networks

Fault-Tolerant Routing Schemes in RDT(2,2,1)/α-Based Interconnection Network for Networks-on-Chip Designs

FACE VECTORS OF FLAG COMPLEXES

Dynamic Topology Control to Reduce Interference in MANETs

Input Layer f = 2 f = 0 f = f = 3 1,16 1,1 1,2 1,3 2, ,2 3,3 3,16. f = 1. f = Output Layer

Topological Characteristic of Wireless Network

Shortest Paths for a Two-Robot Rendez-Vous

Image Enhancement in the Spatial Domain. Spatial Domain

Segmentation of Casting Defects in X-Ray Images Based on Fractal Dimension

An Optimised Density Based Clustering Algorithm

Worst-Case Delay Bounds for Uniform Load-Balanced Switch Fabrics

Simulation and Performance Evaluation of Network on Chip Architectures and Algorithms using CINSIM

Any modern computer system will incorporate (at least) two levels of storage:

An Unsupervised Segmentation Framework For Texture Image Queries

An Improved Resource Reservation Protocol

A New Finite Word-length Optimization Method Design for LDPC Decoder

On Adaptive Bandwidth Sharing with Rate Guarantees

a Not yet implemented in current version SPARK: Research Kit Pointer Analysis Parameters Soot Pointer analysis. Objectives

On the Conversion between Binary Code and Binary-Reflected Gray Code on Boolean Cubes

Reachable State Spaces of Distributed Deadlock Avoidance Protocols

A Two-stage and Parameter-free Binarization Method for Degraded Document Images

WIRELESS sensor networks (WSNs), which are capable

Erasure-Coding Based Routing for Opportunistic Networks

Configuring RSVP-ATM QoS Interworking

Lifetime and Energy Hole Evolution Analysis in Data-Gathering Wireless Sensor Networks

Accurate Diffraction Efficiency Control for Multiplexed Volume Holographic Gratings. Xuliang Han, Gicherl Kim, and Ray T. Chen

UCB CS61C : Machine Structures

Number of Paths and Neighbours Effect on Multipath Routing in Mobile Ad Hoc Networks

ACT GLOBAL OPTIMIZATION COMPETITION

Bo Gu and Xiaoyan Hong*

Exploring non-typical memcache architectures for decreased latency and distributed network usage.

Modelling, simulation, and performance analysis of a CAN FD system with SAE benchmark based message set

Effective Missing Data Prediction for Collaborative Filtering

ADDING REALISM TO SOURCE CHARACTERIZATION USING A GENETIC ALGORITHM

Point-Biserial Correlation Analysis of Fuzzy Attributes

MANET QoS support without reservations

Also available at ISSN (printed edn.), ISSN (electronic edn.) ARS MATHEMATICA CONTEMPORANEA 3 (2010)

SCALABLE ENERGY EFFICIENT AD-HOC ON DEMAND DISTANCE VECTOR (SEE-AODV) ROUTING PROTOCOL IN WIRELESS MESH NETWORKS

Secure Collaboration in Mediator-Free Environments

An Efficient Handover Mechanism Using the General Switch Management Protocol on a Multi-Protocol Label Switching Network

Efficient protection of many-to-one. communications

i-pcgrid Workshop 2016 April 1 st 2016 San Francisco, CA

DEADLOCK AVOIDANCE IN BATCH PROCESSES. M. Tittus K. Åkesson

Gravitational Shift for Beginners

A Family of Distributed Deadlock Avoidance Protocols and their Reachable State Spaces

= dv 3V (r + a 1) 3 r 3 f(r) = 1. = ( (r + r 2

Modeling a shared medium access node with QoS distinction

Adaptation of TDMA Parameters Based on Network Conditions

Performance Optimization in Structured Wireless Sensor Networks

An Energy-Efficient Approach for Provenance Transmission in Wireless Sensor Networks

COSC 6385 Computer Architecture. - Pipelining

Data mining based automated reverse engineering and defect discovery

INFORMATION DISSEMINATION DELAY IN VEHICLE-TO-VEHICLE COMMUNICATION NETWORKS IN A TRAFFIC STREAM

An Identification Protocol based the secure USB

Hierarchical Peer-to-peer Systems

IP MULTICAST. Adiseshu Hari, T. V. Lakshman and Gordon Wilfong Nokia Bell Labs

Quality Aware Privacy Protection for Location-based Services

The concept of PARPS - Packet And Resource Plan Scheduling

Transcription:

Achievable Catalog Size in Pee-to-Pee Video-on-Demand Systems Yacine Boufkhad, Fabien Mathieu, Fabien De Montgolfie, Diego Peino, Lauent Viennot To cite this vesion: Yacine Boufkhad, Fabien Mathieu, Fabien De Montgolfie, Diego Peino, Lauent Viennot. Achievable Catalog Size in Pee-to-Pee Video-on-Demand Systems. Poceedings of the 7th Intennational Wokshop on Pee-to-Pee Systems (IPTPS), Feb 2008, Tampa Bay, United States. pp.1-6, 2008. <inia-00471724> HAL Id: inia-00471724 https://hal.inia.f/inia-00471724 Submitted on 8 Ap 2010 HAL is a multi-disciplinay open access achive fo the deposit and dissemination of scientific eseach documents, whethe they ae published o not. The documents may come fom teaching and eseach institutions in Fance o aboad, o fom public o pivate eseach centes. L achive ouvete pluidisciplinaie HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau echeche, publiés ou non, émanant des établissements d enseignement et de echeche fançais ou étanges, des laboatoies publics ou pivés.

Achievable Catalog Size in Pee-to-Pee Video-on-Demand Systems Yacine Boufkhad Fabien Mathieu Fabien de Montgolfie Diego Peino Lauent Viennot Abstact We analyze a system whee n set-top boxes with same upload and stoage capacities collaboate to seve videos simultaneously (a typical value is = n). We give uppe and lowe bounds on the catalog size of the system, i.e. the maximal numbe of distinct videos that can be stoed in such a system so that any demand of at most videos can be seved. Besides /n, the catalog size is constained by the stoage capacity, the upload capacity, and the maximum numbe of simultaneous connections a box can open. We show that the achievable catalog size dastically inceases when the upload capacity of the boxes becomes stictly geate than the playback ate of videos. 1 Intoduction Video on Demand (VoD) is the next challenge in Content Distibution ove the Intenet. Bandwidth equiements fo seving quality content to a lage numbe of customes ae vey high: VoD opeatos have to opeate a lage numbe of seves with high-speed netwok links, and othe expensive esouces. An innovative appoach consists in taking advantage of peeto-pee algoithms. Cuently, home Intenet bandwidth access is elatively scace with espect to video playback ate, and thus pees can only alleviate the load of seves, which ae still mandatoy. Howeve, seve-fee achitectues become possible as the access bandwidth inceases, fo example by the dint of new technologies such as fibe to the home. Most ecent wok in that tend study the poblem of single video distibution, whee pees viewing the same video collaboate [6, 4, 2]. The challenge is then to educe as much as possible statup and seek delays. Anothe issue is to manage a distibuted catalog of videos. We indeed conside the poblem of fully decentalizing the seve in a set of entities with stoage and communicating capacities, called boxes. A challenging task then esides in offeing to the use the lagest possible catalog. This is whee a pee-to-pee appoach becomes poweful as the stoage capacity of the system inceases with the numbe of boxes opeated fo the seve pat. A key poblem to solve is then video allocation: how to stoe a maximum numbe of videos on n boxes so that any equest of at most videos can be satisfied. Notice that such an allocation scheme must be combined with a scheduling algoithm to decide which boxes handle each equest. Suppoted by Poject-team GANG between INRIA and LIAFA. Univesité Pais Dideot, Pais, Fance Oange Labs, Issy-les-Moulineaux, Fance INRIA Pais Rocquencout, Fance An inteesting taget fo opeating such a fully decentalized VoD system is to build a distibuted seve using a set of boxes on the company s side fo seving >> n customes. Relying on a single video distibution algoithm between pees, the poblem is then to seve at most distinct equests (one video souce pe single video distibution swam). We may thus conside the paticula case whee equests ae paiwise distinct. Anothe inteesting taget esides in the set-top boxes opeated by an Intenet Sevice Povides (ISP) on the custome s side. As these boxes may contain a had dive, this mass stoage capacity, combined with the upload powe of the set-top boxes, may be used both as a coopeative video viewing system and as a distibuted seve. In that case, using a single video distibution scheme educes the upload of paticipating boxes to seve as souces. We will then typically conside n equests (assuming that each box eithe watch a video o is idle). Using the stoage capacity of set-top boxes of a P2P VoD system as a cache is poposed in [1], but that still elies on seves fo soucing the system. Ou appoach mostly follows the tack opened by Push-to-Pee [7] whee set-top boxes ae eally used as souces of the system (afte a push phase has been completed). Howeve, Push-To-Pee combines both a queuing model and an allocation scheme tailoed fo boxes with upload capacity smalle than playback ate. In paticula, the catalog size achieved in [7] do not incease with n when the numbe of simultaneous connections is constained. We focus on the allocation poblem fo boxes with upload capacity geate o equal to the playback ate and study how the catalog size may incease with n. Contibution In this pape, we deive uppe and lowe bounds on the catalog size of a distibuted VoD system with egads to box capacities. We assume that each box has stoage space equivalent to d videos and upload capacity of u video steams split among c connections at most (see Table 1 fo a complete list of the paametes used). A tivial uppe bound on the catalog size is dn. Note that fo seving equests it is necessay that un (that is u 1 when = n). We thus define b = un the upload povisioning. When the upload capacity is scace (i.e. b 1), we show that the catalog size is bounded by m = (d u)c n + un. That holds even if all equests ae paiwise distinct. On the othe hand, we popose a simple cyclic scheme that achieves a catalog size of dc n and enables incemental aivals of equests. Moeove, this scheme can be modified to achieve the optimal (d u)c n + un catalog size when all equests ae distinct. (c n can be viewed as

n m d u b c s Numbe of boxes fo seving videos Catalog size (# of videos stoed) Maximum # of simultaneous video equests Stoage capacity of a box, in # of videos Upload capacity of a box, in # of full video steams Upload povisioning w..t. equests (b = un ). # of simultaneous upload connections pe box # of stipes of videos (a video can be viewed by downloading its s stipes simultaneously) q Numbe of distinct videos in a equest (q ) l Single video schemes theshold (see Section 5.3). Table 1: Key paametes a bound on the numbe of connections fo downloading a video). In the case whee b > 1, we popose andom allocation schemes that offe a catalog size of Ω(dn) up to some logaithmic facto. This shows that the catalog size of the system may incease almost popotionally to its stoage capacity as soon as the upload povisioning b is geate than the playback ate. Moe pecisely, we fist show that a andom allocation of O(log n) copies pe video allows to offe a catalog size of Ω(dn/ log n) and to answe a set of distinct equests with high pobability. We then use expande gaph techniques to deive a scheme that can always seve any set of distinct equests with catalog size Ω(dn/ log d). These esults ae then genealized in vaious ways to the geneal case whee some videos can be multiply equested. Fist, the videos can be copied accoding to thei populaity unde the ealistic assumption that the populaity of videos follows a powe law distibution. In that case, the lowe bounds obtained fo distinct equests then still hold up to a 1/ log facto. Anothe possibility it to use multicast (if available) at the cost of some statup delay. Moe geneally, we can ely on an efficient single video distibution scheme to enhance the andom allocation scheme and still achieve a catalog size of Ω(dn/ log n). Beside the theoetical analysis, we validate the andom allocation appoach though simulations showing expeimentally that the system answes efficiently andom and even advesaial equests. Ou esults ae summaized in Table 2. 2 Model We conside a set of n boxes. Each box has stoage capacity of d videos and upload capacity equivalent to u video steams (fo instance if u = 1 a box can upload exactly one steam). We thus assume that all boxes have same constant upload capacity and that all videos ae of equal bit-ate. Additionally, we suppose that each box is always available. These boxes ae used to seve video equests incoming incementally. As new equests aive and old equests teminate, the numbe of simultaneous equests at a given time is supposed to emain bounded by. Fo each equest, a download allocation algoithm designates the set of boxes that will collectively upload the equested video. This algoithm can be fully incemental when the designated boxes emain the same until the end of the equest, o weakly static when the designated boxes emain the same until aival of the next equest, o dynamic when the designated boxes may change due to complex stoage allocation schemes. Of couse, with egad to connection stability, the fome is the best. We popose only fully incemental o weakly static schemes. Ou fully incemental schemes will be distibuted as long as it is possible to lean and pobe the boxes stoing a given video. On the othe hand, ou weakly static schemes may equie some centalized computation. Ou uppe bounds hold fo all download allocation types as long as connections have to emain stable duing shot peiods of time. To enable collective upload of a video, each video may be divided in s equal size stipes using some balanced encoding scheme. The video can then be viewed by downloading simultaneously the s stipes at ate 1/s (playback ate is nomalized to 1). A vey simple way of achieving stiping consists in splitting the video file in a sequence of small packets. Stipe i is then made of the packets with numbe equal to i modulo s. We suppose that a box may open at most c connections fo uploading simultaneously video data. The main eason is that we assume that a downloade may only open a limited numbe of connections to ensue a low statup time and manageable potocols. A balanced scheme must then esult in a bounded numbe of upload connections pe box. Anothe eason is that the total goodput deceases if too many connections ae involved [3]. We additionally assume that the connections of a box equally shae its bandwidth as it would typically be the case fo simultaneous TCP connections. We fist give uppe and lowe bounds fo a system with space capacity. We then focus on the poblem whee the boxes constitute a distibuted seve used fo seving distinct equests, as discussed in the intoduction. Finally, Section 5.3 deals with the poblem whee set-top boxes both seve and view videos (in that case we will assume = n). 3 Scace upload capacity (b 1) 3.1 Full stiping As stated in [7], thee exists a simple optimal scheme fo video allocation when the numbe of simultaneous connections is unbounded: full stiping. Assume each video can be split in n stipes. A system with n boxes can then stoe m = dn videos by allocating to each box one stipe of ate 1/n fo each video. Any equest fo videos will then esult in a demand of stipes pe box. They can always be seved as long as u /n. Notice that dn is a tivial uppe bound on the numbe of videos that can be stoed in the system. Howeve, we show that a system with scace upload capacity and limited numbe of simultaneous connections cannot offe as many videos as it can stoe. 3.2 Cyclic allocation Theoem 1 In the special case whee b = 1 (i.e. un = ), it possible to offe dc n videos. Moeove, it is possible to offe (d u)c n + un videos when equests ae distinct.

Poof: Choose a coding scheme with s = cn/ stipes (fo the sake of simplicity we assume that cn/ and n/s ae integes). Fo each 0 i < s, stoe Stipe i on the n/s boxes with numbe j such that j = i modulo s. Any demand fo n videos can then be satisfied: demanded video numbe j can be downloaded fom the boxes with numbe j, j + 1,..., j + s 1 (modulo n). Each box then have to seve at most s/n = us = c demands of upload 1/s. Note that we can achieve a slightly bette bound of d(s + 1) if the connection fom a box to itself is not accounted in the simultaneous connection constaint. This download allocation scheme is fully incemental. When a equest consists in diffeent videos, a catalog size of (d u)c n + un videos in the system can be achieved as follows. Stoe (d u)c n videos accoding to the pevious scheme plus un videos uniquely stoed in the following sense: stipe i of video j is stoed on box numbe i+j modulo n. A equest fo = un videos is satisfied by allocating fist the demands fo uniquely stoed videos. Each emaining video v can then be seved by the s boxes stoing a uniquely stoed video which is not pat of the equest. If eve this uniquely stoed video is then equested, v has to be viewed fom anothe set of boxes with fee capacity. (Fo that pupose, a DHT o a tacke could maintain which uniquely stoed videos ae not cuently demanded.) The download allocation scheme is thus weakly static. Note how using stiping allows to incease catalog size in these schemes. 3.3 Uppe bound Theoem 2 In the case whee un =, the numbe m of videos offeed by the system is at most m = (d u)c n + un. Poof: Conside a set-top box a stoing data fom i diffeent videos. The numbe of videos that ae not stoed in a is at most u(n 1), othewise a equest fo un = videos not stoed in a would fail because of a lack of upload capacity. Theefoe m i+u(n 1). If i (d u)c n +u, then we get m (d u)c n +un. Now conside i = (d u)c n + 1 + j fo some intege j u 1 and suppose m (d u)c n + un + 1 = i + un j. Ask fo the j videos with fewest data on a plus un j videos not on a. If these j videos epesent less than an amount u of data on a, the system will not have the capacity to seve these videos as box a will upload stictly less than u = /n videos, a contadiction. They must thus epesent not less than u. Moeove, the (d u)c n + 1 videos with lage potions of data shae a stoage space of at most d u. The j videos with fewest data on a thus occupy less than /(nc), implying j > un c = c. Conside then a equest with c videos among these j videos with fewest data on a plus n c videos excluding the (d u)c n + 1 videos with lagest potion of data on a. As a can upload on c connections at most and uploads less than /(nc) pe connection, a will upload less than /n and the system will not have the capacity to seve these videos. This bings again a contadiction. We thus conclude with m (d u)c n + un. The above agumentation assumes that the connections of a do not change ove time. Howeve, the esult still holds with dynamic connections. Conside a synchonous equest of videos (all viewes stat simultaneously). Focus on any time window [t 1 ; t 2 ] whee the connections of a emain stable. Let t = t 2 t 1 denote its duation as a faction of the aveage video duation (t < 1). We can then apply the static aguments on the potions of video data in the time window [t 1 ; t 2 ]. If d is the stoage space of a dedicated to this time window ove all videos, we then similaly deduce that the numbe of videos in the system is at most (d ut) c n t + un. Note that some time window uses a stoage space d td (othewise we would get a contadiction by summing ove stoage spaces dedicated to all time windows). We thus obtain the same bound. Note that we get a simila bound in a system whee downloades ae constained by a maximum numbe c of simultaneous connections. If all pees open at most c download connections, then some box has c n upload connections at most. With the same aguments, we then get m (d u)c + un. 4 Paiwise distinct equests Hee is discussed the case whee each video may be equested by only one use (o one swam of uses). The extension to equests with multiplicity shall be discussed in Section 5. 4.1 Random allocation We now pove some lowe bounds based on andom allocation of copies of video stipes on boxes. We assume that each video is split in s < c n stipes and that the upload povisioning is slightly geate than 1: u n + 1 s, i.e. b 1 + 1 c 1 ( fo s = (c 1) n ) Theoem 3 With u /n+1/s and c us, it is possible to stoe Ω(dn/ log n) videos in the system and to satisfy any demand of distinct videos with high pobability. Poof: Fo each stipe of a video, select β log ns boxes unifomly at andom and copy the stipe to each of them (β is a constant made explicit late on). With high pobability, Ω(dn/ log n) videos can be stoed in the system without exceeding the stoage capacity of any box ( un implies s = O(n)). Conside a equest fo distinct videos. Each box can upload us s/n+1 stipes simultaneously. The allocation of video distibution is made geedily. Conside the poblem of finding a box fo downloading a given stipe afte S < s stipes have aleady been allocated. The numbe of boxes with exceeded capacity is at most S/us < /u. The new stipe cannot be allocated if its β log(ns) copies fall into these boxes. This happens with poba- ) β log ns (ns) β log b 1 bility ( /u n ns fo β = 1/ log b. (Note that β 1/ log(1 + n/(s))). All videos can be seved if no stipe allocation fails. Any subset of paiwise distinct videos can thus be downloaded simultaneously with pobability at least 1 1 n.

Notice that the above download allocation scheme is fully incemental: fome equests ae neve eallocated and it has vey low pobability of blocking a demand as long as the numbe of demands is less than. 4.2 Expande gaph allocation We now give a pocedue to allocate Ω(dn/ log d) videos in the system so that any equest fo distinct videos can always be satisfied. Theoem 4 Fo ds = Ω(log n) and u n + 1/s, it is possible to stoe Ω(dn/ log d) videos in the system so that any equest fo distinct videos can always be satisfied. Poof: Use an expande gaph like constuction (as sketched below) to find a bipatite gaph between video stipes and boxes veifying the following cadinality popety: fo all subset S of at most s stipes, the set B(S) of boxes containing these stipes veifies B(S) S /(us). By Hall s theoem, thee always exists a matching between the stipes of any subset of videos and the boxes such that each box has degee at most us (upload capacities ae thus espected). Such a matching can indeed be computed unning a maximal flow algoithm. (Hall s theoem can be seen as a min-cut max-flow theoem.) We just give a sketch of a andomized constuction of an expande gaph with the desied cadinality popety. See [5] fo deteministic expande gaph constuction. We conside a numbe of copies k > 1 and some constant β > 0. Stoe βdns stipes in the system by copying each stipe on k boxes chosen unifomly at andom. This defines the allocation bipatite gaph G β,k. As ds = Ω(log n), we can find β < 1 k such that no box has degee moe than ds with non zeo pobability (using Chenoff s bounds fo example). Conside any subset S of S = i s stipes. We have P[ B(S) < p] < ( ( n p ki. ( p) n) Using n p) (ne/p) p, plugging p = i/(us), setting un = b, and consideing all subsets S of at most s stipes, we get the following bound on the pobability that G β,k has not the desied cadinality popety: s ( βdns )( n ) ( i ki i=1 i i/(us) uns) ( ) i s βd(b/u)s e ( bse ) i/(us) ( i ) ik i=1 i i bs ( ) s βbde 1+1/(us) i /u i=1 b (k 1/(us) 1) fo k 1 + 1/(us) since i s. It is less than 1 fo k > 1 + 1 us + log 2βde2 /u log b. Thee thus exists a bipatite allocation gaph having the desied cadinality popety without exceeding any box stoage capacity. (With a logaithmic numbe of tials, such a bipatite gaph can be found with high pobability.) Note that once a bipatite gaph with the cadinality popety has been decided fo the video allocation, any equest fo at most distinct videos can always be satisfied. The download allocation scheme is weakly static: when the set of equests changes, a new matching fo connections has to be found (typically unning a maximal flow algoithm stating fom the pevious matching). This may equie to econfigue many connections. We test in Section 6 how equests can be inseted fully incementally in simila bipatite gaphs (without any econfiguation). 5 Managing videos multiply equested Let us now suppose that the same video can be watched simultaneously by many uses. As this context is specially inteesting fo the set-top box setting (box on the custome s side), we conside = n equests (each box views at most one video) fo a total of q distinct videos watched. Howeve, ou esults could be extended to the case whee a box may view up to i 1 videos simultaneously (implying = in). Note that the full stiping and the cyclic allocation scheme (with dc videos) still apply when thee may be multiple equests fo the same video. 5.1 Powe law video populaity The lowe bounds of Section 4 still hold up to a 1/ log facto if the multiplicity of equests follows a powe law distibution. Moe pecisely, assume that fo evey video we know a bound i on the maximum numbe of simultaneous viewing it may each. We then say it is a type i video. Fo 1 i, let p i be the popotion of videos of type i. We postulate that populaity follows a powe law with paamete γ, given by p i = i γ / i=1 i γ. Conside a catalog of size m / log whee m is the catalog size that can be achieved by some allocation scheme (e.g. one of the schemes poposed in Theoems 3 and 4). We then constitute a edundant catalog whee each video of type i is duplicated i times. The catalog size is then m log i=1 ip i. As ip i = i=1 i=1 i1 γ i=1 i γ log when γ > 2, this edundant catalog may be allocated using a distinct equest scheme. Requests fo the same video ae then allocated to diffeent instances of the video in the catalog. 5.2 Multicast In the case whee the boxes, on the custome s side, belong to the same DSLAM (o some specific subnetwok), multicast may be used: a stipe uploaded fom a box can be downloaded simultaneously by many othe ones. Howeve, this equies the viewes to be synchonized. This can be obtained by splitting the videos in small duation windows. The pice to pay is that all the uses watching the same video pogess in paallel in thei window, and so a use may wait a window duation befoe stating playback. (A simple solution to educe statup time is that all uses stoe the fist window of all videos [7]). Then if we use both stiping and windowing, the poblem of multiple equests tivially educes to the poblem of paiwise distinct equests. 5.3 Using single video distibution schemes The poblem of single video distibution has aleady been addessed (e.g. [6, 4, 2]). If a set p pees watching the same video eceive data fom othe pees at a global ate k, the minimum bandwidth they must allocate to the video is p k, leaving a emaining upload capacity of at most (u 1)p + k. If this bound is eached, the distibution scheme is called pefect. An instance of pefect distibution scheme is multiple chaining: in a chain of uses, the most advanced use, i.e. the one watching the futhest, downloads the video as if it wee a single watche. The second

most advanced use downloads diectly fom the the fist one, and so on... We obtain a pefect scheme by using k chains. Howeve, pefect schemes need tight schedules, and fo lage numbe of uses, moe obust schemes must be used. Such schemes usually have aveage download and upload equiements of 1 + ε pe pee (we neglect ε in the sequel), leaving a emaining oveall upload capacity of (u 1)p. We model this distinction between pefect and obust schemes by intoducing a citical size l 1: if p l, we assume the scheme is pefect (emaining capacity: (u 1)p + k); othewise, a obust scheme is used (emaining capacity: (u 1)p). Of couse we may set l = 1 if we suppose that pefection does not exist. In that case, using the scheme of Section 4.2, we can achieve the same catalog size with multiplicity in equests when u 2 + 1/s. Theoem 5 genealizes this esult fo any l. Theoem 5 With u 1 + 1/s + 1/l and c us, it is possible to offe Ω(dn/ log n) videos and to satisfy any demand of = n videos with high pobability. The poof is simila to that of Theoem 3, except that the single distibution scheme capacity equiements have to be taken into account. 6 Simulations In this section, we use a simulato to study the pefomances of a egula allocation scheme. Each video is divided in s stipes eplicated k times. To equally fill up boxes and equally copy stipes, we build a egula andom bipatite gaph athe than the puely andom allocation used fo theoetical lowe bounds. The eason is that it allows to fully utilize the stoage capacity of boxes compaed to a andom allocation that is inheently unbalanced. The mks stipes ae thus placed accoding to a andom pemutation in the nds available stoage slots (we assume mk = nd). Once the allocation is made, the simulato ties to fulfill video equests until a equest fails. We do not conside dynamic eallocations as equests aive, although it could pobably incease the numbe of equests the system can handle. We indeed use the following fully incemental scheme. Once a given video is equested, the system takes the coesponding stipes fom the nodes with the moe available upload bandwidth. The equest schedule can be andom o advesaial. In the fome, videos ae andomly selected among the ones not selected yet. In the latte, the schedule chooses the video fo which the system will select a node with minimal emaining upload capacity. We simulate a n = 1000 nodes system, with a stoage capacity pe node of d = 25, and a numbe of stipes pe video of s = 15. Paiwise distinct equests Following Section 4, we fist analyze a scenaio whee all equests ae distinct. We conside thee diffeent node upload capacity scenaios: u = 1 (scace capacity), u = 1 + 1 s (exta-stipe capacity) and u = 1.5. The tageted numbe of equests is n, but being able to pefom moe than n equests also makes sense if we assume that some nodes may want Numbe of Requests Satisfied Numbe of Requests Satisfied 1600 1400 1200 1000 800 600 Advesaial Random Scheduling u = 1 adv 400 u = 1 + 1 s adv u = 1.5 adv u = 1 and 200 u = 1 + 1 s and u = 1.5 and Catalog Size 0 0 5 10 15 20 Numbe of Copies of Each Video Stipe 1800 1600 1400 1200 1000 800 600 (a) Distinct equests scenaio Advesaial Scheduling u = 1 400 u = 1 + 1 l, l = 10 u = 1 + 1 l, l = 2 200 Catalog Size p l + n p, l = 2 p l + n p, l = 10 0 0 100 200 300 400 500 600 700 800 900 1000 p (numbe of nodes with available upload bandwidth u 1) (b) Multiple equests scenaio (k = 15) Figue 1: Requests scenaios (n=1000, d=25, s=15, c us). to watch moe than one video. We vay the numbe of copies pe video fom k = 1 to k = 20 (the catalog size is then m = nd k ). Figue 1(a) shows the minimum numbe of equest satisfied fo each scenaio among seveal uns. Fist, we can notice that andom and advesaial equests give simila esults except when the numbe of copies is vey small. This means that if the catalog is edundant enough, the system will be unaffected by the equest pattens. Figue 1(a) shows that the system pefoms quite well with distinct equests: with u = 1, it seves 95% of n equests if k = 7, and 98% if k = 20. Howeve, it neve satisfies 100% of n equests. If we incease the upload capacity up to u = 1 + 1 s, then n equests can be satisfied as long as k 5. This means that a bandwidth ovehead of 1 s and a edundancy of 5 povide a catalog obust to distinct equests. By inceasing again the upload capacity to u = 1.5, less copies ae needed to satisfy all the n equests and the system answes up to almost 1500 demands.

Capacity Constaints Achievable lowe bound Theoetical uppe bound b = 1 m = (d u)c n + un (distinct equests), m = dc n (any equests) m (d u)c n + un b 1 + 1 c 1 m = Ω(dn/ log n) fo distinct equests with low failue pobability, o m = Ω(dn/ log d) fo distinct equests with an expande gaph (Theoems 3 and 4 with s = (c 1) n ) m dn u 1 + 1 s + 1 l, = n m = Ω(dn/ log n) fo any multiset of equests with low failue pobability (Theoem 5). u 2 + 1 s, = n m = Ω(dn/ log d) fo any multiset of equests (Theoems 4 using efficient single video distibution). Table 2: Results eminde These esults also show that the system almost fully exploits the available bandwidth except when thee ae too few copies pe video o when the catalog size is lowe than un. Multiple equests We take multiple equests into account by alteing node upload capacities: we assume that p nodes (p n) have an available bandwidth fo distinct equests u = u 1, since 1 is devoted to a single video distibution scheme (similaly to Section 5.3). The numbe of distinct equests with l o moe viewes is then p/l at most. The numbe of distinct equests singly viewed o teated though chaining (of less than l boxes) is at most n p. We thus deduce that the system can manage n equests with multiplicity, if it can handle p l + n p distinct equests with p nodes having alteed upload bandwidth. Figue 1(b) shows the numbe of distinct equests the system can handle with a edundancy set to k = 15 and advesaial equest scheduling. We conside thee node upload capacity scenaios: u = 1, u = 1.1 and u = 1.5. The p l + n p cuves ae also plotted fo l = 2 and l = 10 (l = 2 coespond to no chaining, only pactical single video schemes and l = 10 coesponds to optimal single video schemes fo less than 10 simultaneous viewes). Scenaios above those cuves can manage n equests, with multiplicity, o moe. The scenaio with scace upload capacity (u = 1) cannot satisfy n equests. It can only be close to the limit fo p 300, l = 10, and gives poo pefomances fo p > 300. Howeve, if we incease 1 the upload capacity of l, the esult is a concave function of p that is always above the limit equested to satisfy n equests with multiplicity. As u = 1 + 1 l is the capacity needed to handle n equests if p = n, and u = 1 + 1 s is the capacity needed if p = 0, a capacity of 1 + max( 1 l, 1 s ) seems sufficient in pactice compaed to the 1 + 1 s + 1 l bound suggested by Theoem 5. 7 Conclusion In this pape, we gave seveal tade-offs between bandwidth and stoage capacity. Main esults ae summaized in Table 2. One should etain that when the available bandwidth is close to the minimal bandwidth needed to fetch equests, the catalog is spase with espect to available capacity, and multiple equests of a same video ae difficult to handle. Things get bette if the bandwidth is ove-povisioned. In the set-top box setting, if the available bandwidth is moe than twice the playback ate, the size of the catalog can be almost popotional to the available stoage capacity. Moeove, a high catalog size can also be achieved with available bandwidth 50 % pecent geate than playback ate and high pobability of satisfying equests. Note that using stiping educes the equied upload povisioning. Inteesting futue wok esides in educing the gap between uppe and lowe bounds. Fo example, can we get tighte uppe bounds with multiplicity in equests? Refeences [1] M. S. Allen, B. Y. Zhao, and R. Wolski. Deploying video-ondemand sevices on cable netwoks. In ICDCS 07. [2] S. Annapueddy, S. Guha, C. Gkantsidis, D. Gunawadena, and P. Rodiguez. Exploing VoD in P2P swaming systems. In INFOCOM 07. [3] F. Baccelli, D. Hong, and Z. Liu. Fixed point methods fo the simulation of the shaing of a local loop by a lage numbe of inteacting TCP connections. In Poc. ITC Specialist Confeence on Local Loop, Bacelona, Spain, 2001. [4] B. Cheng, X. Liu, Z. Zhang, and H. Jin. A measuement study of Pee-to-Pee Video-on-Demand system. In IPTPS 07. [5] S. Hooy, N. Linial, and A. Wigdeson. Expande gaphs and thei applications. Bull. AMS, 43:439 561, 2006. [6] C. Huang, J. Li, and K. W. Ross. Can intenet video-on-demand be pofitable? In SIGCOMM 07, pages 133 144. [7] K. Suh, C. Diot, J. F. Kuose, L. Massoulié, C. Neumann, D. Towsley, and M. Vavello. Push-to-Pee Video-on-Demand system: design and evaluation. Technical Repot CR-PRL- 2006-11-0001, Thomson, 2006.