14
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007 1149 Scalable On-Demand Streaming of Nonlinear Media Yanping Zhao, Derek L. Eager, and Mary K. Vernon Abstract—A conventional video file contains a single temporally- ordered sequence of video frames. Clients requesting on-demand streaming of such a file receive (all or intervals of) the same content. For popular files that receive many requests during a file playback time, scalable streaming protocols based on multicast or broadcast have been devised. Such protocols require server and network bandwidth that grow much slower than linearly with the file request rate. This paper considers “nonlinear” video content in which there are parallel sequences of frames. Clients dynamically select which branch of the video they wish to follow, sufficiently ahead of each branch point so as to allow the video to be delivered without jitter. An example might be “choose-your-own-ending” movies. With traditional scalable delivery architectures such as movie theaters or TV broadcasting, such personalization of the delivered video content is very difficult or impossible. It becomes feasible, in principle at least, when the video is streamed to individual clients over a network. For on-demand streaming of nonlinear media, this paper analyzes the minimal server bandwidth requirements, and proposes and evaluates practical scalable delivery protocols. Index Terms—Hierarchical stream merging, nonlinear media, on-demand streaming, performance evaluation, periodic broad- cast. I. INTRODUCTION A CONVENTIONAL video file contains a single tem- porally-ordered sequence of video frames. Clients that request the same file receive encodings of (all or intervals of) the same frames. We hypothesize here that generalizing this structure to that of a tree or graph, so as to allow clients to dy- namically select among alternative parallel sequences of frames during playback, may enable new streaming media applications as well as enrich existing applications. An example is “choose- your-own-ending” entertainment videos, analogous to the many choose-your-own-ending children’s books. Other possible ex- amples include a video-news service in which clients receive different regional news depending on interest or location, and e-learning applications. In general, the use of nonlinear media allows a form of customization of video content according Manuscript received October 28, 2004; revised August 31, 2005, and September 21, 2006; approved by IEEE/ACM TRANSACTIONS ON NETWORKING Editor M. Krunz. This work was supported in part by the Natural Sciences and Engineering Research Council of Canada, and by the National Science Foun- dation under grants ANI-0117810 and EIA-0127857. A preliminary version of this paper was presented at the IEEE INFOCOM, Hong Kong, March 2004. Y. Zhao was with the Department of Computer Science, University of Saskatchewan, Saskatoon, SK S7N 5C9, Canada. She is now with Asempra Technologies, Sunnyvale, CA 94086 USA (e-mail: [email protected]). D. L. Eager is with the Department of Computer Science, University of Saskatchewan, Saskatoon, SK S7N 5C9, Canada (e-mail: [email protected]). M. K. Vernon is with the Department of Computer Sciences, University of Wisconsin-Madison, Madison, WI 53706-1685 USA (e-mail: [email protected]. edu). Digital Object Identifier 10.1109/TNET.2007.896534 to individual user preferences. Customization has been found desirable in many other content delivery scenarios. For conventional stored video, a number of scalable streaming protocols based on (IP or application level) multicast or broadcast have been developed. Such protocols require server and network bandwidth that grow much slower than linearly with the file request rate. These include immediate service protocols such as patching [3], [8], [10] and hierarchical stream merging [4]–[6], as well as periodic broadcast protocols [1], [7], [9], [11]–[13], [17]. In the immediate service protocols, a new stream is allocated for each incoming client request and streams serving closely spaced requests for the same file are dynamically “merged” by having clients receive and buffer data ahead of when it is needed for playback. A common mecha- nism is for clients to listen to one or more earlier streams in addition to their own stream, enabling them to “catch up” to the earlier clients. In periodic broadcast protocols, the video file is segmented, and each segment is repeatedly broadcast/multicast on one of a number of channels (or IP multicast addresses) according to some protocol-dependent transmission schedule. As in the immediate service protocols, clients receive and buffer data ahead of when it is needed for playback. Unlike the im- mediate service protocols, periodic broadcast protocols require clients to wait before beginning playback. This start-up delay is determined by the duration of the initial segment transmission. For “whole file” requests, the best of the immediate service protocols use server bandwidth that grows logarithmically with the file request rate, while the best of the periodic broadcast protocols have start-up delay that decreases exponentially with the (fixed) server bandwidth allotted to the file. This paper explores scalable multicast streaming techniques for on-demand delivery of nonlinear stored video. We first examine a basic question, namely to what extent does the potential benefit of multicast delivery diminish as the diversity in the data each client receives increases. This question is addressed by developing tight lower bounds on the server band- width required (for any protocol) as a function of file request rate and client start-up delay, for nonlinear media files with varying path diversity. The results indicate that the potential bandwidth savings can be substantial, even for videos with high path diversity. For nonlinear videos, receiving data ahead of when it is needed, as is required in scalable streaming protocols, is com- plicated by uncertainty regarding which branch a client will follow at each branch point. There is a key tradeoff between receiving data that the client might not need, and the server bandwidth reduction arising from receiving (needed) data ahead of its playback point so as to be able to share the transmission with other clients. We investigate this tradeoff by deriving tight lower bounds on the server bandwidth required for various classes of protocols. Each protocol class considered makes use 1063-6692/$25.00 © 2007 IEEE

Scalable On-Demand Streaming of Nonlinear Media

  • Upload
    mary-k

  • View
    213

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Scalable On-Demand Streaming of Nonlinear Media

IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007 1149

Scalable On-Demand Streaming of Nonlinear MediaYanping Zhao, Derek L. Eager, and Mary K. Vernon

Abstract—A conventional video file contains a single temporally-ordered sequence of video frames. Clients requesting on-demandstreaming of such a file receive (all or intervals of) the samecontent. For popular files that receive many requests during a fileplayback time, scalable streaming protocols based on multicast orbroadcast have been devised. Such protocols require server andnetwork bandwidth that grow much slower than linearly with thefile request rate.

This paper considers “nonlinear” video content in which thereare parallel sequences of frames. Clients dynamically select whichbranch of the video they wish to follow, sufficiently ahead of eachbranch point so as to allow the video to be delivered without jitter.An example might be “choose-your-own-ending” movies. Withtraditional scalable delivery architectures such as movie theatersor TV broadcasting, such personalization of the delivered videocontent is very difficult or impossible. It becomes feasible, inprinciple at least, when the video is streamed to individual clientsover a network. For on-demand streaming of nonlinear media,this paper analyzes the minimal server bandwidth requirements,and proposes and evaluates practical scalable delivery protocols.

Index Terms—Hierarchical stream merging, nonlinear media,on-demand streaming, performance evaluation, periodic broad-cast.

I. INTRODUCTION

ACONVENTIONAL video file contains a single tem-porally-ordered sequence of video frames. Clients that

request the same file receive encodings of (all or intervals of)the same frames. We hypothesize here that generalizing thisstructure to that of a tree or graph, so as to allow clients to dy-namically select among alternative parallel sequences of framesduring playback, may enable new streaming media applicationsas well as enrich existing applications. An example is “choose-your-own-ending” entertainment videos, analogous to the manychoose-your-own-ending children’s books. Other possible ex-amples include a video-news service in which clients receivedifferent regional news depending on interest or location, ande-learning applications. In general, the use of nonlinear mediaallows a form of customization of video content according

Manuscript received October 28, 2004; revised August 31, 2005, andSeptember 21, 2006; approved by IEEE/ACM TRANSACTIONS ON NETWORKING

Editor M. Krunz. This work was supported in part by the Natural Sciences andEngineering Research Council of Canada, and by the National Science Foun-dation under grants ANI-0117810 and EIA-0127857. A preliminary version ofthis paper was presented at the IEEE INFOCOM, Hong Kong, March 2004.

Y. Zhao was with the Department of Computer Science, University ofSaskatchewan, Saskatoon, SK S7N 5C9, Canada. She is now with AsempraTechnologies, Sunnyvale, CA 94086 USA (e-mail: [email protected]).

D. L. Eager is with the Department of Computer Science, University ofSaskatchewan, Saskatoon, SK S7N 5C9, Canada (e-mail: [email protected]).

M. K. Vernon is with the Department of Computer Sciences, University ofWisconsin-Madison, Madison, WI 53706-1685 USA (e-mail: [email protected]).

Digital Object Identifier 10.1109/TNET.2007.896534

to individual user preferences. Customization has been founddesirable in many other content delivery scenarios.

For conventional stored video, a number of scalablestreaming protocols based on (IP or application level) multicastor broadcast have been developed. Such protocols requireserver and network bandwidth that grow much slower thanlinearly with the file request rate. These include immediateservice protocols such as patching [3], [8], [10] and hierarchicalstream merging [4]–[6], as well as periodic broadcast protocols[1], [7], [9], [11]–[13], [17]. In the immediate service protocols,a new stream is allocated for each incoming client request andstreams serving closely spaced requests for the same file aredynamically “merged” by having clients receive and buffer dataahead of when it is needed for playback. A common mecha-nism is for clients to listen to one or more earlier streams inaddition to their own stream, enabling them to “catch up” to theearlier clients. In periodic broadcast protocols, the video file issegmented, and each segment is repeatedly broadcast/multicaston one of a number of channels (or IP multicast addresses)according to some protocol-dependent transmission schedule.As in the immediate service protocols, clients receive and bufferdata ahead of when it is needed for playback. Unlike the im-mediate service protocols, periodic broadcast protocols requireclients to wait before beginning playback. This start-up delay isdetermined by the duration of the initial segment transmission.For “whole file” requests, the best of the immediate serviceprotocols use server bandwidth that grows logarithmically withthe file request rate, while the best of the periodic broadcastprotocols have start-up delay that decreases exponentially withthe (fixed) server bandwidth allotted to the file.

This paper explores scalable multicast streaming techniquesfor on-demand delivery of nonlinear stored video. We firstexamine a basic question, namely to what extent does thepotential benefit of multicast delivery diminish as the diversityin the data each client receives increases. This question isaddressed by developing tight lower bounds on the server band-width required (for any protocol) as a function of file requestrate and client start-up delay, for nonlinear media files withvarying path diversity. The results indicate that the potentialbandwidth savings can be substantial, even for videos with highpath diversity.

For nonlinear videos, receiving data ahead of when it isneeded, as is required in scalable streaming protocols, is com-plicated by uncertainty regarding which branch a client willfollow at each branch point. There is a key tradeoff betweenreceiving data that the client might not need, and the serverbandwidth reduction arising from receiving (needed) data aheadof its playback point so as to be able to share the transmissionwith other clients. We investigate this tradeoff by deriving tightlower bounds on the server bandwidth required for variousclasses of protocols. Each protocol class considered makes use

1063-6692/$25.00 © 2007 IEEE

Page 2: Scalable On-Demand Streaming of Nonlinear Media

1150 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

of a specific type of (partial) information about which branch aclient will follow at each branch point. We consider the use ofmeasured (over all clients) branch choice frequencies, as well asclient-specific information as might result from pre-declarationof intended client paths or from client classification.

The server bandwidth bounds for each protocol class showthat fairly precise a priori information regarding client pathselection can dramatically reduce server bandwidth require-ments as well as the overhead of delivering and buffering datathat is never used. In the absence of such information, proto-cols that restrict how much data clients receive in advance ofknowing whether or not it will be needed, based solely on howfar ahead that data is in the video file, can greatly reduce theclient data overhead at relatively small server bandwidth cost.

Using the insights derived from the bounds we designnew immediate service and periodic broadcast protocols fornonlinear video, and evaluate the bandwidth savings that theyprovide. Variants of each type of protocol are developed thatmake differing assumptions concerning the availability of apriori path selection information. As with the lower bounds,precise a priori information regarding client path selectioncan substantially reduce the server bandwidth requirements forpractical scalable protocols.

We assume constant bit rate video. Generalizations for vari-able bit rate video can be developed using similar approaches asfor linear media [14], [15], [19].

The remainder of the paper is organized as follows. Section IIdescribes models of nonlinear media. A tight lower bound on theserver bandwidth required for any protocol as a function of filerequest rate and client start-up delay is derived in Section III.Achieving this lower bound without a priori client path selec-tion information requires that each client listen to every mul-ticast of data that could be subsequently included in the videoplayback; i.e., is from a video portion reachable from the client’scurrent play point. Also derived in Section III is the minimumclient data overhead when clients follow this approach of lis-tening to every potentially useful multicast. Section IV derivesthe server bandwidth bounds and associated client data over-heads for various approaches that restrict the data that clients re-ceive ahead of when it is needed. Section V presents new streammerging and periodic broadcast protocols for nonlinear media,and comparative performance results. Section VI concludes thepaper.

II. NONLINEAR MEDIA MODELS

A. Media Structures

The simplest interesting structure for nonlinear video is that ofa height one tree with root node corresponding to a common ini-tial portion, and child nodes corresponding to alternative endingportions. In a “complete path” playback of the video, the clientplays the common portion followed by one of the ending por-tions. If the desired variant of the ending portion is chosen suf-ficiently ahead of the branch point (i.e., the end of the commoninitial portion), the complete path can be played without jitter.Unless otherwise stated, in our subsequent analyses and simula-tions we assume that selections among alternative video portionsare made just in time to avoid interruption in playback.

A more general structure is an arbitrary tree, where each nodecorresponds to a portion of the video, and child nodes corre-spond to variant subsequent portions. A complete path playbackconsists of the common root portion, plus all other portions onthe path from the root to a leaf node. This structure can be furthergeneralized to a directed acyclic graph (i.e., paths can convergeat shared portions), or even a general graph structure.

The bounds in Sections III and IV are developed for tree struc-tures and assume that each client request is for a complete pathplayback, although the analysis can be generalized. The new im-mediate service protocols developed in Section V-A are appli-cable to nonlinear media having a general graph structure, whilethe new periodic broadcast protocols in Section V-B are appli-cable to general tree structures and to directed acyclic graphsin which the path lengths to any video portion with multipleparents are identical. For clarity in the policy comparisons, wepresent numerical results only for balanced binary trees in whichall video portions have identical playback time, and assumingthat each client request is for a complete path playback.

B. Path Popularities

A key issue concerns the relative frequencies with whichclients select among alternative portions of the video at branchpoints. In the context of balanced binary tree structures andcomplete path playback, we have explored several alternativepopularity models. The model used for most of the numericalresults presented here assigns Zipf-distributed selection proba-bilities to leaves, as follows. First, a leaf is randomly chosen asthe most popular, and assigned the corresponding probability.Then, out of the remaining leaves, a second most popular ischosen randomly, and so on. Once all leaves have been givenselection probabilities, selection probabilities for all interiorvideo portions can be computed by working up from the leaves.

Two other models that were evaluated include: 1) a model inwhich the leaves are assigned Zipf-distributed selection prob-abilities in order, with the leftmost leaf the most popular andthe rightmost the least popular, and 2) a model in which theselection probabilities at each branch point are Zipf-distributed(specifically, for a branch point with two branches, one branch

is selected with probability , and the other with prob-

ability where is the parameter of the Zipf distribu-

tion). These two models differ from the first model in that theyhave more skewed selection probabilities at the branch pointsnear the root of the tree and less skewed probabilities at branchpoints near the leaves. However, as illustrated for one of theseother models in Section IV-C, all three models were found toyield very similar results.

C. An Example

Fig. 1 shows a sample nonlinear video structure. Each por-tion of the video is denoted by a node in the tree, and eachbranch is labelled with its selection probability. The structure inFig. 1 corresponds to a balanced binary tree of height 3. Branchprobabilities in the figure were computed by choosing Zipf-dis-tributed leaf selection probabilities with the popularity orderingrandomly determined, and then working up the tree. Also shown

Page 3: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1151

Fig. 1. Example of a nonlinear media structure.

is the path selected by a particular client, who made the mostpopular selection at the first branch point (followed in 56% ofall client playbacks), and who chose a complete path that is se-lected in 4.6% of all client playbacks.

D. Path Prediction

Three scenarios are of interest with respect to the system’sability to predict a client’s path selection: 1) no a priori knowl-edge is available of a client’s likely path through the video; 2)only the average selection probabilities are known; and 3) moreaccurate client-specific path prediction is possible, as when theprevious behavior of clients is measured, either individually orin aggregate according to some client classification.

In the second scenario, the system might predict that theclient will choose the most popular branch at each branch point,in which case the client’s choice is correctly predicted withprobability equal to the (conditional) selection frequency ofthe most popular branch. For the third scenario, we considerin Section IV-B a simple model of client-specific path pre-diction accuracy in which sufficiently popular branch choicesare always correctly predicted. Whenever the client selectsan unpopular branch, however, the client’s choice is not cor-rectly predicted. This analytically tractable model covers awide spectrum of path prediction accuracy, depending on thequantification of “sufficiently popular”.

III. POTENTIAL FOR SCALABLE DELIVERY

With unicast delivery, server and network bandwidth require-ments for on-demand streaming are linear in the client requestrate. This section analyzes the extent to which server bandwidthrequirements might be reduced through use of multicast-basedprotocols in the context of nonlinear media, and the associatedclient data overheads. Note that we consider only techniquesthat achieve server bandwidth savings without reducing thevideo quality. That is, in the absence of packet loss, each clientreceives exactly the same video data for each video portion thatit receives in a unicast system, and thus quality measures suchas PSNR are unaffected. Packet loss recovery can be achievedusing techniques such as those proposed in previous work formulticast-based on-demand delivery of linear media [13].

All results presented in this section and in Section IV areanalytic. We develop lower bounds on the server bandwidthrequired to serve all requests with given maximum clientstart-up delay (i.e., delay until the client can begin playbackwithout subsequent interruption). These bounds hold for any

TABLE INOTATION FOR TREE-STRUCTURED NONLINEAR MEDIA

scalable on-demand streaming protocol, including both imme-diate service and periodic broadcast protocols, and require noassumptions concerning server and client capabilities (limita-tions of which, for example with respect to client buffer space,can only increase the required server bandwidth). Section III-Adefines the server bandwidth and data overhead performancemetrics and outlines the analysis approach. In Section III-B,a tight lower bound on the server bandwidth requirement isderived. Section III-C derives the client data overhead requiredto achieve the server bandwidth bound when no a priori infor-mation is available regarding client path selection. Classes ofpolicies that reduce the client data overhead are considered inSection IV. Notation is defined in Table I.

A. Metrics and Analysis Approach

The primary performance metric that is considered is theaverage server bandwidth used for “complete path” playbacksof a single video file, for given client start-up delay and requestrate. Our analysis can be extended to network bandwidth ina similar fashion as for linear media [20]. Also of interestis the average client data overhead, which is defined as theaverage amount of data a client receives from video portionson different paths than that taken by the client, and thereforenot used, expressed in units of the amount of video data on acomplete path.

As noted previously, we assume constant bit rate video. Ouranalysis can be extended to variable bit rate video by modellingsuch video using concatenations of constant bit rate sections, asin previous work for linear media [19]. In our assumed contextof constant bit rate video, we can express the required serverbandwidth in units of the playback data rate. (In the contextof variable bit rate video, the required server bandwidth can beexpressed in units of the average playback data rate.)

Our lower bound analysis follows the same basic approach ashas been used previously for linear media [2], [6], [7], [16]. Fora linear media file and an arbitrary client request that arrives attime , the file data at each play position must be delivered nolater than time . If this data is multicast at time ,

Page 4: Scalable On-Demand Streaming of Nonlinear Media

1152 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

Fig. 2. Server bandwidth for nonlinear media (balanced binary tree with height3, � = 1, d = 0).

then (at best) those clients that request the file between timeand can receive the same multicast. Assuming Poissonarrivals, the average time from until the next request forthe file is . Therefore, the minimum frequency of multicastsof the data at time offset is , which yieldsa bound on required server bandwidth, in units of the playbackdata rate, of

(1)

This bound can be generalized to a broad class of non-Poissonarrival processes, yielding a similar result with differencebounded by a constant [6]. Bounds for nonlinear media arederived below by applying similar analyses.

B. Minimum Required Server Bandwidth

Server bandwidth is minimized when a client listens to everymulticast of data that it may need in the future. Note that withouta priori knowledge of client path selection, this requires that theclient listen to every multicast of data in the subtree below itscurrent play point, implying possibly large client data overhead.With perfect a priori knowledge of client path selection, theclient listens only to multicasts of data that it will actually usein the future. In either case, noting that the file data at a position

within a video portion is at (overall) play position , theabove analysis approach yields the tight lower bound

(2)

The solid curve in Fig. 2 shows this bound as a function ofthe normalized request arrival rate , for immediate service

and for a nonlinear media file with a balanced bi-nary tree structure of height 3 and Zipf-distributed leaf selectionprobabilities with . The figure shows results for one par-ticular randomly determined popularity ordering of the leaves.Alternative popularity orderings yield very similar results.

For comparison purposes, the figure also shows the bound forlinear media from (1), and bounds for two approaches in which

delivery techniques for linear media are applied to nonlinearmedia. In one of these (portion), there is no a priori knowledgeof client path selection. In this case, a simple approach is to treateach portion of the nonlinear media file as a separate linearmedia file that is requested time units before it is needed, with

and , , less than or equal to plus the sum of theplayback times for all portions played prior to . A tight lowerbound on the required server bandwidth with this approach isgiven by the sum of the lower bounds for delivering each linearportion, as follows:

For the results shown in Fig. 2, it is assumed that for all, which corresponds to immediate service and no early client

path selection.In the other approach (path), each client path selection is re-

quired to be known a priori, before the client receives the firstvideo segment. In that case, one straightforward approach is toreplicate the video data so that each complete path through thetree structure is stored as a separate linear media file. Each clientrequest is then treated as a request for the file corresponding tothe client’s path selection. The corresponding tight lower boundon the required server bandwidth is given by

where denotes the set of indices of the portions of the videofile that are leaves in the tree structure, and where for notationalconvenience it is assumed that each complete path has the sameplayback time .

The key observations from Fig. 2 are that: 1) multicast-baseddelivery techniques for nonlinear media have the potential toyield large reductions in bandwidth requirements (note that withunicast, the required server bandwidth is ), and 2) fully ex-ploiting this potential requires techniques that exploit the par-ticular nonlinear structure, rather than treating each portion orpath as a separate linear media file.

The potential bandwidth reductions from multicast-based de-livery are dependent on the nonlinear media structure. Fig. 3(a)shows the impact of increasing the height of a balanced binarytree structure, for fixed normalized request rateand immediate service . As the height increases, thenumber of portions of the video file increases exponentially, asdoes the number of possible paths. Furthermore, branch pointsbecome relatively more closely spaced, i.e., the length of eachvideo portion decreases relative to the total length of a path. Notsurprisingly, the potential bandwidth savings of multicast-baseddelivery decrease. However, the potential savings are still sub-stantial even for trees of height ten. Note that the gap betweenthe bandwidth requirements for portion and path, and the lowerbound, increases with the tree height.

Fig. 3(b) shows the impact of increasing the branching factorat each branch point, for fixed tree height and request rate. Thepotential benefits of multicast-based delivery decrease as the

Page 5: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1153

Fig. 3. Impact of the nonlinear media structure (� = 1, N = 1000, d = 0).(a) Impact of tree height (balanced binary tree). (b) Impact of branching factor(a tree height of 3).

branching factor increases, owing to the resulting increase inthe number of paths. Note also that path becomes less efficientthan portion. As the branching factor increases, the potentialfor sharing multicasts of data from the path files used in pathdecreases, but the potential for sharing multicasts from the fileused in portion for the root video portion, which all clients re-ceive, is unaffected.

A key conclusion from these results is that even with a thou-sand possible paths (i.e., a tree height of 10 in Fig. 3(a) or abranching factor of 10 in Fig. 3(b)), multicast-based deliverystill has the potential for an order-of-magnitude reduction inserver bandwidth, assuming immediate service and normalizedrequest rate greater than or equal to 1000. These potential band-width savings are largely due to the potential for shared deliveryof the video portions with the highest selection probabilities(i.e., those along popular paths or near or at the root).

C. Client Data Overhead for Unrestricted Snoop-Ahead

Without a priori knowledge that would rule out some pathchoices, achieving the lower bound of (2) requires that eachclient listen to every multicast of data from a video portion that(at the time of the multicast) could still be on the client’s even-tual path. We call this approach unrestricted snoop-ahead. Notethat a client never receives the same video data twice with thisapproach, if data is multicast at the minimum frequencies usedin the derivation of the lower bound. The average amount of

Fig. 4. Client data overhead for unrestricted snoop-ahead (balanced binary tree,� = 1, d = 0, no a priori knowledge of client path selection).

data received from each video portion not on the client’s even-tual path is given by the rate at which data from that portion ismulticast, times the length of the period over which the clientlistens to such multicasts. The latter quantity for a client thatfollows the path to a leaf video portion and for a video portion

that is not on this path (i.e., is not or an ancestor of ), is equalto the sum of the start-up delay and the playback durations ofall video portions on the chosen path that are also on the pathto . This yields an average client data overhead, in units of theamount of video data on a complete path, of

where denotes the set of indices of those portions that arenot portion or an ancestor of portion , and denotes theset of indices of those portions that are ancestors of both and. Note that this is the minimum client data overhead that would

be incurred with unrestricted snoop-ahead, since it assumes theminimum possible frequency of multicasts of data from eachportion.

Fig. 4 shows the average client data overhead incurred toachieve the lower bound of (2) for balanced binary tree struc-tures of various heights, immediate service, and no a prioriknowledge of client path choices, as computed using the aboveexpression. Note that the average data overhead can be substan-tial. For example, in Fig. 4 it is greater than one (i.e., exceedsthe amount of data on a complete path) when the tree height isat least 4 and is at least 20.

For a given height tree, as the request rate increases the av-erage client data overhead initially increases and then levels offsince the lower bound server bandwidth for portion has finiteasymptote for all . For fixed request rate, as the height in-creases the average client data overhead also initially increasesbut will level off and for eventually decrease. The even-tual decrease is due to the increase in the number of possiblepaths, which decreases the proportion of multicasts that are po-tentially relevant to any particular client. Experiments in whichthe branching factor at each branch point is increased, with fixedtree height and request rate, show similar behavior as those inwhich the tree height is increased.

Page 6: Scalable On-Demand Streaming of Nonlinear Media

1154 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

IV. RESTRICTED SNOOP-AHEAD

Due to client reception rate and/or buffer space limitations,the client data overhead shown in Fig. 4 can be infeasible. Thissection considers approaches in which clients snoop less aggres-sively on multicasts from video portions ahead of their currentplay point, thus reducing the overhead.

Snoop-ahead can be restricted in at least two basic ways.First, as considered in Section IV-A, restrictions can be basedon distance from the current play point. Second, as consideredin Section IV-B, restrictions can be based on 1) overall pathselection probabilities, or 2) client-specific path prediction,according to the past behavior of that client, client classifi-cation, and/or advance selection by the client. Performancecomparisons presented in Section IV-C motivate a hybridapproach that combines both types of restrictions, which isdescribed in Section IV-D.

A. Distance-Based Restricted Snoop-Ahead

A simple approach that restricts snoop-ahead based on dis-tance is to only listen to multicasts from the current video por-tion (but ahead of the current play point), and from all por-tions following the next branch point.1 Thus, with this approach(called allnext), clients listen to multicasts from each video por-tion during playback of that portion, and, if not the initial, rootportion (i.e., ), during the playback of ’s parent in the treestructure. A tight lower bound on the required server bandwidthfor any technique utilizing this approach is given by

where denotes the index of the immediate ancestor (parent)of . Achieving this bound would incur an average client dataoverhead of

where denotes the set of indices of the siblings of inthe tree structure. Corresponding results can be derived for ap-proaches in which clients listen to transmissions from portionsat most branch points ahead, for fixed .

B. Client Path Prediction Approaches

With skewed branch selection probabilities, it may be pos-sible to substantially reduce the client data overhead, with a rel-atively modest cost in increased server bandwidth, by listeningto multicast transmissions from only the most popular portion

1For clarity of presentation, we assume here and for the subsequent restrictedsnoop-ahead approaches, that prior to beginning playback in the case of d > 0,clients only listen to multicasts from the initial, root portion of the video. Thesame analysis approach can be employed with alternative assumptions.

of the video following the next branch point. The correspondingtight lower bound for this approach (called popnext) is given by

where and denote the set of indices of those portions ofthe video file that are the most popular, or not the most popular,among their siblings, respectively (excluding the root portion,which has no siblings). Achieving this bound would incur anaverage client data overhead of

where denotes the index of the most popular sibling of videoportion .

Instead of only listening to multicasts from the most popularvideo portion after the next branch point, clients could listen tomulticasts from all video portions on the most popular path fromthe current position to a leaf. The corresponding tight lowerbound for this approach (called poppath) is given by

where denotes the set of indices of ancestors on the pathback towards the root from (not including itself), up to andincluding the first portion that is not the most popular among itssiblings. (If there is no such portion on this path, the set includesthe indices of all ancestors on the path back to and including theroot.) Achieving this bound would incur an average client dataoverhead of

Page 7: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1155

where denotes the set of indices of video portions onthe most popular path down to a leaf from (but not including)the parent of portion .

Consider now the case in which more accurate client-specificpath prediction is possible, and clients listen to multicasts fromall video portions on their predicted (rather than the overall mostpopular) path from the current position to a leaf. Analysis of thisapproach, called pred, requires a model of path prediction accu-racy. Here we use a very simple model in which branch choiceswith selection frequency (conditional on reaching the respectivebranch point) greater than a parameter are alwayscorrectly predicted. Whenever the client selects a branch withselection frequency at most equal to , however, the client’schoice is not correctly predicted. Note that perfect predictionis achieved for . As increases, prediction accuracy de-creases. For , no branch choices are correctly predicted,and the approach has the same server bandwidth as portion. Inthe case of a binary tree structure and assuming that no two sib-lings have identical popularities, for , the approach isidentical to poppath. The tight lower bound on required serverbandwidth for this approach is given by

where and denote the set of indices of those portions ofthe video file (excluding the root portion) whose conditionalselection frequency is greater than , or no greater than , re-spectively, and denotes the set of indices of ancestors onthe path back towards the root from (not including itself),up to and including the first portion in the set . (If there isno such portion on this path, the set includes the indices of allancestors on the path back to and including the root.) We assumethat the system does not make a branch choice prediction unlessthere is at least one popular branch choice (i.e., with selectionfrequency greater than ). When a branch choice prediction ismade, but it is incorrect (the client selects an unpopular branch),the system is assumed to have erroneously predicted one of thepopular branch choices, with probabilility proportional to its rel-ative popularity. Given these assumptions, achieving the lowerbound server bandwidth for pred would incur an average clientdata overhead of

Here denotes the set of indices of video portions thatare leaves in the collection of pruned subtrees rooted at siblingsof , where the pruning has removed all video portions not inthe set and their descendents, denotes the set ofindices of video portions on the path down to portion beginningfrom (but not including) the parent of , and denotes thebandwidth used for multicasts of portion , as given by the termfor portion in the server bandwidth expression given above.

C. Performance Comparisons

Fig. 5 and Fig. 6 graph the bandwidth expressions derived inSections IV-A and IV-B as functions of the request rate (for thebalanced binary tree structure assumed for Fig. 2), and the treeheight (for fixed request rate ), respectively. Alsoshown is the server bandwidth for the approach (nexttwo) inwhich clients snoop on multicasts from the current video por-tion plus from all portions following the next two branch points,which is derived similarly to that for allnext. For comparisonpurposes, the figures also show the server bandwidth for unre-stricted snoop-ahead (i.e., the lower bound of (2)), and for theapproach in which each portion is treated as a separate linearvideo file (portion). Corresponding results for the client over-head are given in Fig. 7 and Fig. 8.

Consider first the results for the distance-based approaches,allnext and nexttwo. In the portion approach, clients only listento multicasts of data from the video portion currently beingplayed. Listening to multicasts of data from beyond the nextbranch point (allnext) yields a large reduction in server band-width. Listening to multicasts of data from farther ahead, as innexttwo, yields diminishing returns. As seen by the results inFig. 6(a), for trees of low to moderate height nexttwo has min-imum required server bandwidth fairly close to the lower boundof (2). The results in Figs. 5(a), 6(a), 7, and 8 show that the all-next and nexttwo approaches can often achieve large reductionsin client data overhead compared to the unrestricted snoopingapproach, at fairly modest cost in server bandwidth.

The popnext, poppath, and pred approaches usea priori information regarding client path selection in an at-tempt to achieve a better tradeoff between server bandwidthand client overhead. Although popnext and poppath achieve lowclient overhead, as seen in Fig. 7 and Fig. 8, they achieve poorerserver bandwidth scalability than allnext and nexttwo. These re-sults show that very approximate client path prediction, suchas occurs with popnext and poppath at branch points at whichthe branch selection probabilities are not highly skewed, is notas effective in reducing server bandwidth as is listening to allmulticasts of data that could be needed soon, as in allnext. Incontrast, the more accurate pred approach achieveslower client data overhead than allnext and comparable serverbandwidth scaling.

Fig. 9 shows the sensitivity of the above results to the skewin the leaf selection probabilities, more specifically to the valueof the Zipf parameter . Results for nexttwo and popnext areomitted for clarity but have similar form. For pred, the parameter

is varied with such that the percentage of portions in theset remains constant, equal to that with and

. Note that there is relatively little variation in the requiredserver bandwidth and client data overhead for each approach for

Page 8: Scalable On-Demand Streaming of Nonlinear Media

1156 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

Fig. 5. Performance with restricted snoop-ahead (balanced binary tree withheight 3, � = 1, d = 0). (a) Distance-based approaches. (b) Prediction-basedapproaches.

Fig. 6. Impact of tree height on restricted snoop-ahead performance (� = 1,N = 1000, d = 0). (a) Distance-based approaches. (b) Prediction-based ap-proaches.

Fig. 7. Client overhead with restricted snoop-ahead (balanced binary tree withheight 3, � = 1, d = 0).

Fig. 8. Impact of tree height on overhead (� = 1, N = 1000, d = 0).

Fig. 9. Sensitivity to skewness in selection probabilities (balanced binary treewith height 3, N = 1000, d = 0). (a) Server bandwidth. (b) Client overhead.

Page 9: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1157

Fig. 10. Performance with alternative popularity model (balanced binary treewith height 3, N = 1000, d = 0). (a) Server bandwidth. (b) Client overhead.

(i.e., for no skew to moderately high skew). As in-creases beyond one, the server bandwidth and client data over-head for each approach decrease substantially. A key conclu-sion is that the simple allnext approach, and the pred approachwith correct branch choice predictions for at least 75% of thevideo portions, achieve an attractive trade-off between requiredserver bandwidth and client data overhead, over a wide range of

values.Fig. 10 shows the performance of several of the delivery

approaches under an alternative path popularity model, de-scribed in Section II-B, in which the selection frequencies ateach branch point are Zipf-distributed. (For a binary tree, the

selection probabilities at each branch point are and

.) Results for pred are not shown since with this

popularity model as applied to binary trees and the pred modelof path prediction accuracy, it is possible to achieve only threepoints on the prediction accuracy spectrum (all branch choicessuccessfully predicted, no branch choices successfully pre-dicted, and 50% successfully predicted). Although this modelyields a significantly different pattern of path popularities thanthe popularity model used for the previous results, the resultsare very similar as can be seen by comparing Fig. 9 to Fig. 10.

D. Hybrid Approach

The pred approach incurs a high bandwidth cost when a clienttakes a path that is not sufficiently popular to be successfullypredicted. Motivated by the results in the previous section, thiscost might be substantially reduced at relatively low cost in

client data overhead by utilizing the allnext approach for suchpaths. Thus, we consider a hybrid approach (hybrid) that is sim-ilar to pred, except that all clients also listen to multicasts fromall nonpredictable video portions (i.e., those with conditional se-lection frequency no greater than the parameter ) immediatelyfollowing the next branch point. Note that for , the hybridapproach becomes identical to allnext. The corresponding tightlower bound on the required server bandwidth for this approachis given by

Achieving this bound would incur an average client data over-head of

Fig. 11(a) and (b) shows respectively the server bandwidthrequirement and the client data overhead of the hybrid approach,as a function of . In the region of most interest ,hybrid achieves a better trade-off between the required serverbandwidth and the client data overhead than allnext and pred.

V. SCALABLE DELIVERY PROTOCOLS

A. Hierarchical Stream Merging

Hierarchical stream merging (HSM) protocols [4]–[6], as ap-plied to linear media, start a new transmission of the media filefor each client request. In the simplest type of HSM, each clientalso listens to the closest active earlier stream, so that its ownstream can terminate after transmitting the data that was missedin the earlier stream. At that point, the clients associated with thetwo streams are said to be “merged” into a single group, whichcan then go on to merge with other groups.

Extending HSM to nonlinear media requires a more dynamicnotion of client group, since clients that have been merged maysubsequently take different paths at a branch point, thus split-ting the group. In that case, the server will need to start addi-tional stream(s) so that there is one stream per path followed.

Page 10: Scalable On-Demand Streaming of Nonlinear Media

1158 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

Fig. 11. Performance of the Hybrid approach (balanced binary tree with height3, � = 1, N = 1000, d = 0). (a) Server bandwidth. (b) Client overhead.

Also, a more complex policy may be required for determiningwhat earlier stream a client listens to, in the case where theclosest earlier stream is beyond the next branch point. More-over, when a client or group of clients merges with an earliergroup, the clients in the earlier group may restart listening toearlier stream(s) (as in HSM for linear media), or can alterna-tively continue snooping on the previous stream(s). In the lattercase, clients in a single group listening to the same earlier streammay accomplish merges at different times.

Depending on how the above issues are handled, and on theavailability of a priori path selection information, a number ofnonlinear media HSM variants can be defined. The two variantsHSM-Unknown Path (HSM-UP) and HSM-Popular Path (HSM-POP) do not attempt client-specific path prediction. In HSM-UP,clients always listen to the closest earlier stream (on or past thesame video portion, regardless of which branch it may be onif beyond a branch point). In HSM-POP, clients listen to theclosest stream on the most popular branch if the closest ear-lier stream is beyond the next branch point. HSM-Known Next(HSM-KN) assumes that partial knowledge of client path selec-tion, specifically the branch a client will select at the next branchpoint (but not yet the subsequent branch choices), can be knownin advance. HSM-Known Path (HSM-KP) assumes that preciseclient-specific path prediction is possible. In both HSM-KN andHSM-KP, clients listen to the closest earlier stream deliveringdata from the known (partial) path they will select. Note thatwith these two protocols, clients belonging to the same groupmay be listening to different earlier streams.

Fig. 12. Server bandwidth requirements of nonlinear HSM variants (balancedbinary tree with height 3, � = 1).

An HSM protocol simulator was developed to assess the per-formance of the nonlinear media HSM variants described above[18]. The simulator simulates the random arrival of client re-quests, the stream initiation that occurs at each client arrival,the merging and splitting of client groups according to the HSMprotocol being simulated, the stream initiations that occur owingto the splitting of client groups at branch points, and the streamterminations when clients merge or when a stream reaches theend of the video. The input to the simulator is the client requestrate, and the output is the server bandwidth used. Client recep-tion and playback is not simulated, as this does not affect therequired server bandwidth measure, assuming the client has suf-ficient buffer capacity. Previous work on HSM delivery of linearmedia has shown that client buffer sizes on the order of 10% ofthe file size are sufficient to achieve much of the performancegains of HSM delivery in this context [4]. The impact of limitedclient buffer capacity on required server bandwidth for the non-linear media delivery techniques is left for future work.

In the nonlinear HSM simulations whose results are presentedhere, when a client or group of clients merges with an earliergroup, all clients in the earlier group restart listening to earlierstreams. It is also assumed that when a group splits at a branchpoint, the initiation of a stream for each new group is delayeduntil the playback position of the earliest client in that groupreaches the branch point. Other options are investigated in [18].

Fig. 12 presents simulation results for the HSM-UP,HSM-POP, HSM-KN, and HSM-KP HSM variants describedabove, assuming Poisson request arrivals. HSM-UP has essen-tially the same required server bandwidth as HSM-POP, whichis consistent with the result from Section IV that using overallpath selection probabilities to determine which multicasttransmissions to receive may not be a fruitful strategy. On theother hand, precise advance knowledge of client path selectionenables better choices of which earlier stream to listen to inHSM-KN and HSM-KP, yielding substantially reduced serverbandwidth usage.

B. Optimized Periodic Broadcast

The periodic broadcast protocols that we develop here fornonlinear media are based on the optimized periodic broadcast(OPB) protocols described in [13]. In these protocols, as ap-plied to linear media, the media file is partitioned into seg-ments, with each segment being repeatedly multicast on a sep-

Page 11: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1159

Fig. 13. OPB-KP segment partitioning for an example media structure (“S”label is for start of media, “Bi” labels are for branch points, “Ei” labels are forsegment end points, dashed lines indicate segment boundaries, K = 3, s = 2,r = 1).

arate channel at rate . Clients are assumed able to simulta-neously listen to channels. The segment size progression issuch that each segment is received just in time for playback ifclients begin listening to the channels delivering the first seg-ments immediately, begin listening to the channel for segment

immediately after fully receiving segment , andbegin playback after reception of the first segment is complete.

For the case in which client path selection is known a priori,we propose a variant of OPB called OPB-Known Path (OPB-KP). Each complete path through the nonlinear media file is par-titioned using the same segment size progression as in OPB forlinear files. Shared portions of paths share the correspondingsegments. (We assume here that if the file has a directed acyclicgraph structure, then the lengths of the paths to any video por-tion with multiple parents are identical.) If a segment crosses abranch point, the data from each media portion after the branchpoint is delivered on a separate sub-channel at rate . Thus, forsuch a segment, the server will repeatedly first transmit the datafrom before the branch point (at rate ), and then transmit thedata from after the branch point (at total rate times the numberof portions after the branch point). Each client listens to thechannels and sub-channels appropriate to its path. Fig. 14 showsthe channels used in the OPB-KP protocol for the example non-linear video structure shown in Fig. 13, assuming each path ispartitioned into three segments , clients listen to twochannels concurrently , and segments are transmitted atthe playback data rate . Note that in Fig. 13, each videoportion is represented by a line segment rather than by a node, sothat the partitioning of the video into broadcast segments can beshown. Fig. 14 also shows the periods during which an exampleclient listens to the transmissions on each channel, assuming theclient begins reception at the point indicated by the arrow andthat the client takes the path shown in Fig. 13.

For the case in which client path selection decisions areknown only when they are made at the respective branch points,our key insight is that periodic broadcast is still feasible as

Fig. 14. OPB-KP channels for structure of Fig. 13 (shaded areas are listeningperiods of example client, K = 3, s = 2, r = 1).

Fig. 15. OPB-UP segment partitioning for an example media structure (“S”label is for start of media, “Ei” labels are for segment end points, dashed linesindicate segment boundaries, K = 6, s = 2, r = 1).

long as any segment that a client begins to download prior toa branch point, and that includes data from after the branchpoint, includes the respective data from all of the branches.Specifically, suppose that between when a client begins to listento the transmission of a particular segment and the beginningof playback of that segment, video playback does not cross abranch point. If segment itself also does not cross a branchpoint, then it must be part of the same video portion that wasbeing played back during its reception. If, on the other hand,segment does cross a branch point, then it must include someof the video portion prior to the branch point (as determinedby the segment starting position), plus a fraction of each videoportion after the branch point (as determined by the segmentending position). Note that the playback duration of such asegment will be less than suggested by its size in bytes (andcorresponding transmission time), since the client will playonly the data on its chosen path. Suppose now that betweenwhen a client begins to listen to the transmission of a segmentand the beginning of playback of that segment, video playbackdoes cross a branch point. In this case, the entire segmentmultiplexes data from multiple paths, as the segment beginsafter the branch point and it is unknown which branch a clientwill take.

Fig. 16 shows the channels used in this OPB-Unknown Path(OPB-UP) protocol for the example nonlinear video structureshown in Fig. 15, assuming each path is partitioned into six

Page 12: Scalable On-Demand Streaming of Nonlinear Media

1160 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

Fig. 16. OPB-UP channels for structure of Fig. 15 (shaded areas are listeningperiods of example client, striped areas indicate multiplexed transmissions,K = 6, s = 2, r = 1).

segments , clients listen to two channels concurrently, and segments are transmitted at the playback data rate. Also shown are the periods during which an example

client listens to the transmissions on each channel, assuming theclient request arrives at the point indicated in the figure and thatthe client takes the path shown in Fig. 15.

Feasible segment sizes for OPB-UP can be computed usingthe algorithm outlined in Fig. 17. Although this algorithm is de-signed for balanced binary trees, it can be extended for moregeneral types of media structures. Here denotes the playbackduration of segment , denotes the time when a client beginsreception of the segment, measured from the start of the videofile playback, denotes the latest time by which a client canend reception of the segment, measured from the start of videoplayback (also equal to the playback point corresponding to thebeginning of the segment), denotes the segment transmissiontime when the segment is of maximal length, and denotes theplayback point corresponding to the end of the segment in thecase in which the segment does not encounter a branch point.The outer loop attempts to find the start-up delay (transmissiontime of the first segment) such that the cumulative length ofsegments (where is given as an input) matches the length of acomplete path. The algorithm makes the simplifying restrictionthat no segment can have a multiplexing level of more than two(i.e., include data from more than two paths), and the assump-tion that the first segment does not cross any branch points. Itfurther assumes that branch points are never sufficiently closetogether that a zero length is computed for a segment (as wouldoccur in case 2.2 in Fig. 17 when the branch point is at ),although it could be extended to handle this case by simply de-laying beginning reception of the segment until after the nextbranch choice has been made. Such delays could be more gen-erally beneficial, as well, but the algorithm in Fig. 17 simplyassumes that a client begins reception of a new segment (if anyremain) immediately after reception of a previous segment com-pletes. The design of optimal periodic broadcast protocols forvarious types of nonlinear media structures is left for futurework.

For OPB, partial (but perfectly accurate) path predictioncould be exploited using a hybrid of the OPB-KP and OPB-UPprotocols. Errors in path prediction, however, would be difficult

Fig. 17. Algorithm for OPB-UP segment sizes (balanced binary tree).

to recover from. A client whose path is mispredicted willhave listened to transmissions of the wrong data from afterthe mispredicted branch point. Recovery would require eitherinterruption in playback (so as to allow time for the client toreceive the data that it would have received by this point, hadthe branch choice been correctly predicted), or use of a unicaststream that would deliver data sequentially from the branchpoint at rate at least equal to the playback data rate.

C. Performance Comparisons

Figs. 18, 19, and 20 show the server bandwidth used by theHSM and OPB protocols for nonlinear media streaming, to-gether with the analytic lower bound from (2). The results for theOPB variants are computed analytically based on the channelsused (determined as described in Section V-B by the parameters

, , and , and the media structure), and assuming that trans-mission on a channel is stopped whenever no client is listeningto that channel. The fraction of time that no client is listening toa channel can be easily derived given Poisson request arrivals(also assumed in the simulations of the HSM protocols).

For HSM-KP and OPB-KP, path prediction is assumed tobe perfect. For HSM, imperfect or partial path prediction (as

Page 13: Scalable On-Demand Streaming of Nonlinear Media

ZHAO et al.: SCALABLE ON-DEMAND STREAMING OF NONLINEAR MEDIA 1161

Fig. 18. Performance of scalable delivery protocols (balanced binary tree withheight 3, � = 1, d = 0:01 for OPB and lower bound, r = 0:25, s = 8).

Fig. 19. Performance with varying height (� = 1, N = 1000, d = 0:01 forOPB and lower bound, r = 0:25, s = 8).

Fig. 20. Impact of OPB start-up delay (balanced binary tree with height 3,� =

1, N = 1000, r = 0:25, s = 8).

exploited in HSM-KN) yields results intermediate to those forHSM-UP and HSM-KP, as shown in Fig. 12.

The key observations from these figures are: 1) stoppingtransmission on a channel when there are no clients listeningallows periodic broadcast performance to be competitive evenunder light load, 2) precise path prediction yields a large im-provement in performance, 3) OPB-KP outperforms HSM-KPand yields performance as close to the lower bound from (2)as could be expected, given that with each OPB-KPclient receives data at a maximum aggregate rate of twicethe streaming rate, whereas the lower bound places no suchrestriction (see [6], [13] regarding the impact of client receiverate limitations), and 4) the precise relative performance of the

HSM and OPB variants that have incomplete knowledge ofclient paths depends on the request arrival rate and the clientstart-up delay used in OPB (note that HSM provides immediateservice, although variants that use a batching start-up delayhave also been proposed [5]). The results for HSM suggest thatit may be fruitful to investigate HSM variants in which clientscan listen to multiple earlier streams (e.g., one for each possiblechoice at the next branch point, similar to allnext), for use incontexts where accurate client specific path prediction is notpossible.

D. Prototype Implementation

A rudimentary implementation of scalable nonlinear mediastreaming has been added to the SWORD prototype streamingsystem [13]. The SWORD system consists of server and clientcomponents, each built using the open source Apache proxyserver code as a basis. These interpose between Windows Mediaservers and players, and replace the normal unicast delivery withmulticast delivery using hierarchical stream merging. Selectivetermination of streams by the server component and reconstruc-tion of the data received on multiple multicast streams at theclient component allow the use of hierarchical stream mergingto be transparent to the client player.

Our implementation of nonlinear media streaming stores eachportion of the nonlinear structure as a separate file. Modificationof the header fields and spoofing of requests by the SWORDclient component allow this nonlinear structure to be transparentto the client player, to which it appears that only a single videofile is being played. (Transitions between the video portionsare seamless.) These changes are implemented using approxi-mately 500 lines of code. For the SWORD server com-ponent, the main modification is the addition of code imple-menting the possible change in merge target (the earlier streama client is listening to) when a client reaches a branch pointand makes a selection. This addition is realized using about200 lines of code. Dynamic client path selection is cur-rently supported through a web page interface. The present im-plementation uses built-in knowledge of the media file structure;on-going work concerns description of nonlinear media struc-tures in meta files. Our implementation has demonstrated thatnonlinear media streaming can be implemented relatively easily,even in the context of commercial media streaming systems.

VI. CONCLUSION

This paper has considered “nonlinear” video content inwhich clients can tailor their video stream according to indi-vidual preferences, within the constraints of a predefined treeor graph structure. Tight lower bounds on server bandwidthwere developed that show significant potential for bandwidthreduction using multicast delivery in this context. The boundsalso illuminate the advantages and disadvantages of variousapproaches to client snoop-ahead and the benefits of a prioripath knowledge.

The key insights from the bounds analysis are 1) correctbranch choice predictions for more than 75% of the videoportions greatly reduces the required server bandwidth withmodest client data overhead, and 2) in the absence of fairlyprecise hstewa priori information about client path selections, a

Page 14: Scalable On-Demand Streaming of Nonlinear Media

1162 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 15, NO. 5, OCTOBER 2007

simple policy in which clients only listen to transmissions fromtheir current video portion and those immediately following thenext branch point, achieves better server bandwidth scalabilitythan using overall path selection probabilities to determinewhich transmissions to listen to.

New stream merging and periodic broadcast protocols weredevised, in part using insight from our bounds analysis. Thenew protocols achieve much of the potential bandwidth savings.Furthermore, the new periodic broadcast protocols were foundto be competitive with the new stream merging protocols at allrequest rates, assuming that in the former protocols the servertransmits on a channel only when at least one client is listening.

On-going research is focussed on improved stream mergingand periodic broadcast protocols, and further development andexperimentation with the SWORD prototype delivery system.

ACKNOWLEDGMENT

The authors thank D. Sundaram-Stukel and J. Parker for theirwork on the SWORD prototype, P. O’Donovan for his work onimplementing seamless playback of nonlinear media, B. Gall-away for his assistance with the prototype software and hard-ware, and W. Wang and the anonymous referees for their con-structive feedback on the paper.

REFERENCES

[1] C. C. Aggarwal, J. L. Wolf, and P. S. Yu, “A permutation-basedpyramid broadcasting scheme for video-on-demand systems,” in Proc.IEEE ICMCS’96, Hiroshima, Japan, Jun. 1996.

[2] Y. Birk and R. Mondri, “Tailored transmissions for efficientnear-video-on-demand service,” in Proc. IEEE ICMCS’99, Flo-rence, Italy, Jun. 1999.

[3] S. W. Carter and D. D. E. Long, “Improving video-on-demand serverefficiency through stream tapping,” in Proc. IEEE ICCCN’97, LasVegas, NV, Sep. 1997.

[4] D. L. Eager, M. K. Vernon, and J. Zahorjan, “Optimal and efficientmerging schedules for video-on-demand servers,” in Proc. ACM Mul-timedia’99, Orlando, FL, Nov. 1999.

[5] D. L. Eager, M. K. Vernon, and J. Zahorjan, “Bandwidth skimming:A technique for cost-effective video-on-demand,” in Proc. IS&T/SPIEMMCN’00, San Jose, CA, Jan. 2000.

[6] D. L. Eager, M. K. Vernon, and J. Zahorjan, “Minimizing bandwidthrequirements for on-demand data delivery,” IEEE Trans. KnowledgeData Eng., vol. 13, no. 5, pp. 742–757, Sep./Oct. 2001.

[7] L. Gao, J. Kurose, and D. Towsley, “Efficient schemes for broadcastingpopular videos,” in Proc. NOSSDAV’98, Cambridge, U.K., Jul. 1998.

[8] L. Gao and D. Towsley, “Supplying instantaneous video-on-demandservices using controlled multicast,” in Proc. ICMCS’99, Florence,Italy, Jun. 1999.

[9] A. Hu, “Video-on-demand broadcasting protocols: A comprehensivestudy,” in Proc. IEEE INFOCOM’01, Anchorage, AK, Apr. 2001.

[10] K. A. Hua, Y. Cai, and S. Sheu, “Patching: A multicast technique fortrue video-on-demand services,” in Proc. ACM Multimedia’98, Bristol,U.K., Sep. 1998.

[11] K. A. Hua and S. Sheu, “Skyscraper broadcasting: A new broadcastingscheme for metropolitan video-on-demand systems,” in Proc. ACMSIGCOMM’97, Cannes, France, Sep. 1997.

[12] L. Juhn and L. Tseng, “Harmonic broadcasting for video-on-demandservice,” IEEE Trans. Broadcast., vol. 43, no. 3, pp. 268–271, Sep.1997.

[13] A. Mahanti, D. L. Eager, M. K. Vernon, and D. Sundaram-Stukel,“Scalable on-demand media streaming with packet loss recovery,”IEEE/ACM Trans. Networking, vol. 11, no. 2, pp. 195–209, Apr. 2003.

[14] I. Nikolaidis, F. Li, and A. Hu, “An inherently loss-less and band-width-efficient periodic broadcast scheme for VBR video,” in Proc.ACM SIGMETRICS’00, Santa Clara, CA, Jun. 2000.

[15] J.-F. Pâris, “A broadcasting protocol for compressed video,” in Proc.EUROMEDIA’99, Munich, Germany, Apr. 1999.

[16] S. Sen, L. Gao, and D. Towsley, “Frame-based periodic broadcastand fundamental resource tradeoffs,” Comput. Sci. Dept., Univ.Mass.-Amherst, Tech. Rep. 99-78, 1999.

[17] S. Viswanathan and T. Imielinski, “Metropolitan area video-on-de-mand service using pyramid broadcasting,” ACM Multimedia Syst. J.,vol. 4, no. 3, pp. 197–208, Aug. 1996.

[18] Y. Zhao, “Scalable streaming of stored complex multimedia,” Ph.D.dissertation, Univ. Saskatchewan, Saskatoon, SK, Canada, Jul. 2004.

[19] Y. Zhao, D. L. Eager, and M. K. Vernon, “Efficient delivery techniquesfor variable bit rate multimedia,” in Proc. MMCN’02, San Jose, CA,Jan. 2002.

[20] Y. Zhao, D. L. Eager, and M. K. Vernon, “Network bandwidthrequirements for scalable on-demand streaming,” in Proc. IEEEINFOCOM’02, New York, Jun. 2002.

Yanping Zhao received the Ph.D. degree in com-puter science from the University of Saskatchewan,Saskatoon, SK, Canada, in 2004.

She is currently with Asempra Technologies, Sun-nyvale, CA. Her research interests are in the areas ofmultimedia streaming, performance evaluation, anddistributed systems.

Derek L. Eager received the B.Sc. degree in com-puter science from the University of Regina, Regina,SK, Canada, in 1979, and the M.Sc. and Ph.D.degrees in computer science from the University ofToronto, Toronto, ON, Canada, in 1981 and 1984,respectively.

He is currently a Professor in the Departmentof Computer Science, University of Saskatchewan,Saskatoon, SK, Canada. His research interests arein the areas of performance evaluation, streamingmedia and bulk data content distribution, and dis-

tributed systems.

Mary K. Vernon received the B.S. degree withDepartmental Honors in chemistry and the M.S.and Ph.D. degrees in computer science from theUniversity of California at Los Angeles.

In 1983, she joined the Computer Science Depart-ment at the University of Wisconsin-Madison, whereshe is currently Professor of computer science andindustrial engineering. Her research interests includeperformance analysis techniques for evaluating com-puter/communication system design tradeoffs, pro-cessor and memory system architectures, distributed

applications, network protocols, streaming media content distribution, storagesystems, and flexible manufacturing systems.

Prof. Vernon has served on the editorial board of the IEEE TRANSACTIONS ON

PARALLEL AND DISTRIBUTED SYSTEMS, the NSF CISE Advisory Committee,the NSF Blue Ribbon Panel for High Performance Computing, the Board of Di-rectors of the Computing Research Association, the Executive Committee of theNational Computational Science Alliance, and as Chair of the ACM SIGMET-RICS. She is the co-inventor on two U.S. patents for bus arbitration protocolsand three U.S. patents for scalable streaming content distribution. Her most re-cent paper awards include papers that she co-authored for SIGCOMM 2001,INFOCOM 2004, and the 2005 Usenix Security Symposium. She received theNSF Presidential Young Investigator Award in 1985, the ACM Fellow Awardin 1996, and two prestigious University of Wisconsin awards: Vilas Associate(2000) and the Kellett Mid-career Award (2006). She is a member of the ACMand the IFIP WG 7.3 on Information Processing System Modeling, Measure-ment and Evaluation.