• 沒有找到結果。

A fast video-on-demand broadcasting scheme for popular videos

N/A
N/A
Protected

Academic year: 2021

Share "A fast video-on-demand broadcasting scheme for popular videos"

Copied!
6
0
0

加載中.... (立即查看全文)

全文

(1)

A Fast Video-on-Demand Broadcasting Scheme for

Popular Videos

Jang-Ping Sheu, Han-Lih Wang, Chi-He Chang, and Yu-Chee Tseng

Abstract—Broadcasting is a prospective approach to support near video-on-demand services with light communication over-head. By letting clients share channels, such approaches involve partitioning a video into segments and repeatedly broadcasting these segments in multiple channels. An early paper proposed a broadcasting scheme called RFS (recursive frequency splitting), which can significantly reduce clients’ waiting time. While efficient, RFS suffers from a high computational complexity of

( log ), where is the number of segments of the video, which is typically very large. This paper proposes an efficient segmentation scheme, which can significantly reduce the compu-tational overhead by slightly sacrificing the number of segments that can be arranged as compared to RFS.

Index Terms—Broadcasting, broadband networks, cable TV, video-on-demand.

I. INTRODUCTION

A

DVANCES in broadband networking and multimedia technologies offer easy, daily access to multimedia services through high-speed communication networks. One example is the Video-on-demand (VoD) service, which allows customers to connect to an on-line video server and watch videos asynchronously. A VoD system is typically implemented by a client-server architecture. However, so far VoD has not been commercially successful. One of the reasons is that it may require a number of channels (and thus communication bandwidth) proportional to the number of requests, which is infeasible when the demand is high. For example, a video in MPEG-2 compressed format requires a bandwidth of 0.5 MB/sec [17]. Times the number of requests, extremely high disk I/O and communication bandwidth are needed.

To reduce the cost, many broadcast-based approaches are proposed to provide near-VoD services. The batching approach collects a group of requests that arrive close in time, and serves them altogether when a channel is available [1], [3], [4]. Two patching schemes [5], [7] are proposed on top of the batching Manuscript received December 31, 2003; revised January 5, 2004. The work of J. P. Sheu was sponsored by the NSC of the Republic of China under Grant Number 91-2213-E-008-025. The work of Y. C. Tseng was co-sponsored by the MOE Program for Promoting Academic Excellence of Universities under Grant Number 89-E-FA04-1-4, by NSC of Taiwan under Grant Numbers NSC92-2213-E009-076 and NSC92-2219-E009-013, by the Institute for Information Industry and MOEA, R.O.C., under the Handheld Device Embedded System Software Technology Development Project, and by the Lee and MTI Center of NCTU.

J.-P. Sheu and H.-L. Wang are with the Department of Computer Science and Information Engineering, National Central University, Chung-Li 32054, Taiwan (e-mail: [email protected]).

C.-H. Chang and Y.-C. Tseng are with the Department of Computer Sci-ence and Information Engineering, National Chiao-Tung University, Hsin-Chu 30050, Taiwan.

Digital Object Identifier 10.1109/TBC.2004.828754

approach to allow late-coming clients to join the service. Adaptive batching schemes are proposed in [12], [13]. One prospective direction is to partition a video into multiple seg-ments and broadcast them cooperatively by multiple channels [2], [6], [8]–[11], [14]–[16]. Since the server’s broadcasting activity is independent of the arrivals of requests, such solu-tions are more appropriate for popular or hot videos that may attract many viewers at a certain period of time. The pyramid scheme [2], [16] can reduce clients’ maximum waiting time in an exponential ratio with respect to the number of channels used. The Fast Broadcasting (FB) scheme [8], [9] only incurs waiting time when using channels, where is the length of the video. The PAGODA scheme [10], [11] can

further reduce the waiting time to if

is even, and if is odd. In [6], Hu gives

a comprehensive study of existing broadcasting protocols, and proposes a generalized analytical approach to evaluate such protocols. The recently proposed Recursive Frequency Splitting (RFS) scheme [14] can further reduce the waiting time significantly.

While efficient, the RFS scheme [14] suffers from a high computational complexity of , where is the number of segments that the video is partitioned into. Since is typically very large, reducing the overhead is desirable. In this paper, we propose an efficient segmentation scheme, which can signifi-cantly reduce the computational overhead by slightly sacrificing the number of segments (i.e., ) that can be arranged.

The rest of this paper is organized as follows. Our new scheme is proposed in Section II. A further refinement is presented in Section III. Performance comparison is in Section IV.

II. THEPROPOSEDBROADCASTINGSCHEME

Consider a video of length . We are given channels, , each of a bandwidth capable of supporting broadcasting . The problem is to find a largest possible such that is partitioned into equal-length segments and to obtain a placement of these segments on the given channels such that any client, after waiting no longer than time, can start enjoying viewing without any disruption.

Note that at this point, the value of is not known yet. Its value will be an output of our algorithm. Once is known, we can partition the channels into time slots of length . A client has to wait no longer than one time slot to start viewing . Therefore, the maximum waiting time is . A general guideline to guarantee a nondisrupted playback is given in [14]. Lemma 1: The -th segment , must be broad-cast with a period such that .

(2)

Fig. 1. (a) Splitting slot sequence SS(C ; 3; 5) by a factor of 3, and (b) splittingSS(C ; 3; 7) by a factor of 2.

Our goal is to assign for each segment a sequence of period-ical time slots as defined below.

Definition 1: A slot sequence is an infinite

se-quence of time slots belonging to channel

, beginning at slot , and repeating infinitely with a period of slots, where is one of the channels, is an integer (i.e., offset), and is an integer (i.e., period), . In this work, we will count time slots of a channel starting from 0, instead of 1. Several examples of slot sequences are shown in Fig. 1.

The most bandwidth-efficient slot assignment, according to Lemma 1, is to assign a slot sequence of period to . How-ever, this is not always feasible since two slot sequences on the same channels with periods that are mutually prime will eventu-ally collide with each other. For example, given any two slot

se-quences and such and are

mutu-ally prime, it is a simple result in number theory that we can find

two integers and such that . Thus, and

cannot be placed in the same channel unless some bandwidth is sacrificed. When assigning a slot sequence to such that , we say that the amount of waste is . So we should make as large as possible to reduce the waste.

Our scheme is based on a concept called “frequency-split-ting” to generate slot sequences of different periods, as formu-lated below.

Lemma 2: A slot sequence can be split by a factor of into slot sequences

Two splitting examples are in Fig. 1. Below we further gen-eralize the result by grouping multiple slot sequences into a set, as defined below.

Definition 2: The union of slot sequences

with the same period , namely

, can be written as a slot

sequence set .

Lemma 3: A slot sequence set

can be split by a factor of into a slot sequence set .

For example, the in Fig. 1(b) can be split

by a factor of 3 into .

The basic idea of our scheme is to represent available slots as slot sequence sets and store them in a resource pool. We will use above lemma to split slot sequences, and multiple video seg-ments will be assigned in groups, until the resource pool is ex-hausted. The scheme is formally derived below. The outputs are

an and the assignment of each segment , to one

slot sequence.

1) Let the resource pool, denoted by a set POOL, be

where and is the -th prime number when

(e.g., , and ).

Intu-itively, this represents the set of all free slot sequences at the beginning.

2) Assign to , and delete

these slot sequences from POOL.

3) Let be the smallest index such that segment is not assigned to any slot sequence yet. Let

be the slot sequence set in POOL such that its period, , is the smallest (in case that POOL doesn’t have any slot sequence set remaining, we can simply imagine that

). Also, let be the slot sequence set in

POOL such that its period, , is the second smallest (in case that POOL has only one slot sequence set remaining, we simply let ). We consider the relationship between and . There are three cases:

a) If , then no slot sequence in POOL can ac-commodate segment . So we terminate this algo-rithm.

b) If , then we sequentially assign the

slot sequences in to segments

until either all segments are successfully assigned or the slot sequences in have been exhausted. Then go back to the beginning of step 3.

c) If , then we split the slot

se-quence set by a factor of

two into, say , by applying

Lemma 3. Then we sequentially assign the slot

sequences in to segments

until either all segments are successfully assigned or the slot sequences in have been exhausted. Then go back to the beginning of step 3.

(3)

TABLE I

THEASSIGNMENTEXAMPLEWHENk = 4 CHANNELS.

Note that step 3a is the only exit of the algorithm. Steps 3b and 3c are where we assign multiple segments in one step. Ac-cording to our experience, in most cases step 3c will be executed as opposed to step 3b. The following is an example for channels.

1) In the beginning, we separate channels

, and into slot sequence sets

,

and .

2) Then we assign to to

to , and to .

3) In the first iteration, , and . We split

into and then assign

to .

4) In the second iteration, , and . We

split into and

then assign to .

5) In the third iteration, , and . We split

into and then assign

to .

6) In the fourth iteration, , and

. We split into

and then assign

to .

7) In the fifth iteration, , and . We

split into

and then assign to

. Note that in this case we have exhausted all slot sequences available in

.

8) In the sixth iteration, , and

. In this case, we will enter step 3b and

assign to .

9) In the seventh iteration, ,

and . Again, we will enter

step 3b, which will split

into and then assign

to .

10) In the eighth iteration, since all slot sequences have been

exhausted, , and . We will enter

step 3a, and the assignment will be terminated. III. A FURTHERREFINEMENT

We make two observations on the above scheme. First, after the initial assignment in steps 1 and 2, POOL has slot sequences

of periods . Second, since slot sequence

sets are always split by a factor of 2, the only periods that may

appear in POOL is for some .

For example, in Table I, the possible periods in POOL are 2, 3, 4, 5, 6, 8, 10, 12, 20, etc.

The basic idea in the refinement is to change the initial value of POOL so that there are more choices of periods in POOL. As

noted earlier, assigning to causes a bandwidth

waste of . A more variety of periods may incur less waste. Given channels, the refined scheme works as follows.

1) Still, let the resource pool, denoted by a set POOL, be

Then, for each

, keep the first slot sequences un-changed, and for each of the remaining slot sequences, split it by a factor of such that

.

2) For each value of that appears in POOL as a period of some slot sequence set, allocate one slot sequence from the corresponding SSS and assign it to segment . Then delete the slot sequence from POOL.

3) Repeat steps 3 in the original scheme in Section II. Table II illustrates the refined assignment example with 4 channels. Since the difference between the refined assignment and the original assignment only happens at the first two steps, we only discuss the first few iterations below:

1) In the beginning, we separate channels

, and into slot sequence sets

,

and .

2) Then, we separate into

, separate into , and separate into . 3) Assign to to to to to to , and to .

4) The following steps are quite similar to the original scheme. Note that in the ninth iteration, we have

, and . Although the slot

sequences have not been exhausted yet, we have to enter step 3a and terminate the algorithm.

(4)

TABLE II

THEREFINEDASSIGNMENTEXAMPLEWHENk = 4 CHANNELS.

TABLE III

THENUMBERS OFMAXIMUMSEGMENTS(n) OFFERED BYDIFFERENTSCHEMES.

Fig. 2. Comparison of computational overhead of our and RFS schemes. IV. PERFORMANCEANALYSIS ANDCOMPARISON Table III compares the number of segments that can be ar-ranged (i.e., ) by different schemes. The inverse of represents clients’ waiting time. As can be seen, our schemes outperform the FB, PAGODA, and new PAGODA schemes as enlarges, but slightly fall behind the RFS scheme. Also note that the new PAGODA scheme is built purely by heuristic and thus a general result for is not available.

The buffer requirement at the client side is also an important issue for video broadcasting. Since the server side broadcasts

segments every time slot when using channels, we have to buffer at most more segments but consume only one segment from the buffer after every time slot. However, we do not need to buffer at the -th time slot such that . So, the maximum buffer requirement at the client side when using channels must be bounded by:

(5)

where the time period of the slot sequence assigned to the segment when using channel.

Next, we analyze the time complexity of our schemes. In each assignment we only scan POOL for the smallest and second smallest periods. Also observe that the size of POOL is for the basic scheme, and for the refined scheme. If POOL is maintained by a heap tree, then both deletion and insertion operations to the heap will incur a cost of for both schemes. So the time complexity for both the basic and refined

schemes is .

In comparison, the RFS scheme is also derived based on the concept of frequency splitting. However, segments are assigned one at a time in RFS. To assign a segment, the whole POOL has to be scanned to minimize the bandwidth waste. The overall computational cost is . Further, in practice our schemes assign multiple segments at a time. The actual computational overhead should be much smaller than . Fig. 2 shows our simulation result on computational cost when running the segment assignments on a Pentium III, 450 MHz, IBM-com-patible PC with 128 Mb RAM. As can be seen, the overhead of the proposed schemes are much smaller than that of RFS. Even when is quite large, only a few milliseconds are needed.

V. CONCLUSION

We have proposed efficient segment-scheduling schemes to support video broadcasting. The schemes effectively arrange segments by assigning multiple segments at one time. It sig-nificantly reduces the computational overhead by slightly sacri-ficing clients’ waiting time as compared to the RFS scheme.

REFERENCES

[1] C. C. Aggarwal, J. L. Wolf, and P. S. Yu, “On optimal batching poli-cies for video-on-demand storage servers,” in Int’l. Conf. on Multimedia Computing and Systems, June 1996, pp. 253–258.

[2] , “A permutation-based pyramid broadcasting scheme for video-on-demand systems,” in Int’l. Conf. on Multimedia Computing and Systems, June 1996, pp. 118–126.

[3] A. Dan, D. Sitaram, and P. Shahabuddin, “Scheduling policies for an on-demand video server with batching,” in Proc. of ACM Multimedia, 1994, pp. 15–23.

[4] , “Dynamic batching policies for an on-demand video server,” Mul-timedia Systems, vol. 4, no. 3, pp. 112–121, June 1996.

[5] L. Gao and D. Towsley, “Supplying instantaneous video-on-demand services using controlled multicast,” in IEEE Multimedia, 1999, pp. 117–121.

[6] A. Hu, “Video-on-demand broadcasting protocols: A comprehensive study,” in INFOCOM, Apr. 2001, pp. 508–517.

[7] K. Hua, Y. Cai, and S. Sheu, “Patching: A multicast technique for true video-on-demand services,” in ACM Multimedia, Sept. 1998, pp. 191–200.

[8] L.-S. Juhn and L.-M. Tseng, “Fast broadcasting for hot video access,” Real-Time Computing Systems and Applications, pp. 237–243, Oct. 1997.

[9] , “Fast data broadcasting and receiving scheme for popular video service,” IEEE Trans. on Broadcasting, vol. 44, no. 1, pp. 100–105, Mar. 1998.

[10] J.-F. Paris, “A simple low-bandwidth broadcasting protocol for video-on-demand,” in Int’l. Conf. on Computer Communication and Network, 1999, pp. 118–123.

[11] J.-F. Paris, S.-W. Carter, and D.-D. Long, “A hybrid broadcasting pro-tocol for video on demand,” in Multimedia Computing and Networking Conference, 1999, pp. 317–326.

[12] W. F. Poon and K. T. Lo, “New batching policy for providing true video-on-demand (T-VoD) in multicast system,” in IEEE ICC, 1999, pp. 983–987.

[13] W. F. Poon, K. T. Lo, and J. Feng, “Adaptive batching scheme for multi-cast video-on-demand systems,” IEEE Trans. on Broadmulti-casting, vol. 47, no. 1, pp. 66–70, Mar. 2001.

[14] Y.-C. Tseng, M.-H. Yang, and C.-H. Chang, “A recursive fre-quency-splitting scheme for broadcasting hot videos in VoD service,” IEEE Trans. on Communications, pp. 1348–1355, Aug. 2002. [15] Y.-C. Tseng, M.-H. Yang, C.-M. Hsieh, W.-H. Liao, and J.-P. Sheu,

“Data broadcasting and seamless channel transition for highly-de-manded videos,” IEEE Trans. on Communications, vol. 49, no. 5, pp. 863–874, May 2001.

[16] S. Viswanathan and T. Imielinski, “Metropolitan area video-on-demand service using pyramid broadcasting,” IEEE Multimedia Systems, vol. 4, pp. 197–208, 1996.

[17] W. E. Wright, “An efficient video-on-demand model,” IEEE Computer, vol. 34, no. 5, pp. 64–70, May 2001.

Jang-Ping Sheu received the B.S. degree in

com-puter science from Tamkang University, Taiwan, Re-public of China, in 1981, and the M.S. and Ph.D. de-grees in computer science from National Tsing Hua University, Taiwan, Republic of China, in 1983 and 1987, respectively.

He joined the faculty of the Department of Electrical Engineering, National Central University, Taiwan, Republic of China, as an Associate Pro-fessor in 1987. He is currently a ProPro-fessor of the Department of Computer Science and Information Engineering, National Central University. He was a Chair of Department of Computer Science and Information Engineering, National Central University from August 1997 to July 1999. He was a visiting professor at the Department of Electrical and Computer Engineering, University of California, Irvine from July 1999 to April 2000. His current research interests include wireless communications, mobile computing, parallel processing, and distributed computing Systems. He was an associate editor of Journal of the Chinese Institute of Electrical Engineering, from August 1996 to July 2000. He was an associate editor of Journal of Information Science and Engineering from August 1996 to July 2002. He is an associate editor of Journal of the Chinese Institute of Engineers. He was a Guest Editor of Special Issue for Wireless Communications and Mobil Computing Journal. He was a Program Chair of IEEE ICPADS’2002. He was a Vice-Program Chair of ICPP 2003.

He received the Distinguished Research Awards of the National Science Council of the Republic of China in 1993–1994, 1995–1996, and 1997–1998. He was the Specially Granted Researchers, National Science Council, from 1999 to 2002. He received the Distinguished Engineering Professor Award of the Chinese Institute of Engineers in 2003. Dr. Sheu is a senior member of the IEEE, a member of the ACM and Phi Tau Phi Society.

Han-Lih Wang received the B.S. and M.S. degrees in

computer science and information engineering from the National Central University, Taiwan, Republic of China, in 1999 and 2001, respectively. He is a senior engineer in Electronic Commerce Universal Inc.

(6)

Chi-He Chang received the B.S. degree in

com-puter science from the Chung Yuan Christian University and M.S. degree in computer science and information engineering from National Central University, Taiwan in 1998 and 2000, respectively. He is currently a Ph.D. student at the Department of Computer Science and Information Engineering, National Chiao-Tung University, Taiwan. His re-search interests include video on demand, interactive multimedia, and wireless networks.

Yu-Chee Tseng received his B.S. and M.S. degrees

in computer science from the National Taiwan University and the National Tsing-Hua University in 1985 and 1987, respectively. He worked for the D-LINK Inc., as an engineer in 1990. He obtained his Ph.D. in computer and information science from the Ohio State University in January of 1994. He was an Associate Professor at the Chung-Hua University (1994–1996) and at the National Central University (1996–1999), and a Full Professor at the National Central University (1999–2000). Since 2000, he has been a Full Professor at the Department of Computer Science and Information Engineering, National Chiao-Tung University, Taiwan.

Dr. Tseng served as a Program Chair in the Wireless Networks and Mobile Computing Workshop, 2000 and 2001, as a Vice Program Chair in the Inter-national Conference on Distributed Computing Systems (ICDCS), 2004, as a Vice Program Chair in the IEEE Int’l. Conf. on Mobile Ad-hoc and Sensor Systems (MASS), 2004, as an Associate Editor for The Computer Journal, as a Guest Editor for ACM Wireless Networks special issue on “Advances in Mo-bile and Wireless Systems”, as a Guest Editor for IEEE Transactions on Com-puters special on “Wireless Internet”, as a Guest Editor for Journal of Internet Technology special issue on “Wireless Internet: Applications and Systems”, as a Guest Editor for Wireless Communications and Mobile Computing special issue on “Research in Ad Hoc Networking, Smart Sensing, and Pervasive Com-puting”, as an Editor for Journal of Information Science and Engineering, as a Guest Editor for Telecommunication Systems special issue on “Wireless Sensor Networks”, and as a Guest Editor for Journal of Information Science and Engineering special issue on “Mobile Computing”.

He is a two-time recipient of the Outstanding Research Award, National Sci-ence Council, ROC, in 2001–2002 and 2003–2005, and a recipient of the Best Paper Award in International Conference on Parallel Processing, 2003. Several of his papers have been chosen as Selected/Distinguished Papers in conferences and been included for publications in journals. He has guided students to par-ticipate in several national programming contests and received several awards. His research interests include mobile computing, wireless communication, net-work security, and parallel and distributed computing. Dr. Tseng is a member of ACM and a Senior Member of IEEE.

數據

Fig. 1. (a) Splitting slot sequence SS(C ; 3; 5) by a factor of 3, and (b) splitting SS(C ; 3; 7) by a factor of 2.
TABLE III

參考文獻

相關文件

Shih, “On Demand QoS Multicast Routing Protocol for Mobile Ad Hoc Networks”, Special Session on Graph Theory and Applications, The 9th International Conference on Computer Science

A Very good. You are able to apply your understanding of how endogenetic processes leading to the formation of major landform features along plate boundaries to explain the

“Ad-Hoc On Demand Distance Vector Routing”, Proceedings of the IEEE Workshop on Mobile Computing Systems and Applications (WMCSA), pages 90-100, 1999.. “Ad-Hoc On Demand

In an ad-hoc mobile network where mobile hosts (MHs) are acting as routers and where routes are made inconsistent by MHs’ movement, we employ an associativity-based routing scheme

• As RREP travels backwards, each node sets pointer to sending node and updates destination sequence number and timeout entry for source and destination routes.. “Ad-Hoc On

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

A decision scheme based on OWA operator for an evaluation programme: an approximate reasoning approach. A decision scheme based on OWA operator for an evaluation programme:

Krishnamachari and V.K Prasanna, “Energy-latency tradeoffs for data gathering in wireless sensor networks,” Twenty-third Annual Joint Conference of the IEEE Computer