Abstract

Due to the advancement of network technology, video-on-demand (VoD) services are growing in popularity. However, individual stream allocation for client requests easily causes a VoD system overload; when its network and disk bandwidth cannot match client growth. This study thus presents a fundamentally different approach by focusing solely on a class of applications identified as latency tolerant applications. Because video broadcasting does not provide interactive (i.e., VCR) functions, a client is able to tolerate playback latency from a video server. One efficient broadcasting method is periodic broadcasting, which divides a video into smaller segments and broadcasts these segments periodically on multiple channels. However, numerous practical systems, such as digital video broadcasting-handheld (DVB-H), do not allow clients to download video data from multiple channels because clients usually only have one tuner. To resolve this problem in multiple-channel broadcasting, this study proposes a novel single-channel broadcasting scheme, which leverages segment-broadcasting capability further for more efficient video delivery. The comparison results show that, with the same settings of broadcasting bandwidth, the proposed scheme outperforms the alternative broadcasting scheme, the hopping insertion scheme, SingBroad, PAS, and the reverse-order scheduling scheme for the maximal waiting time.

1. Introduction

Due to the advancement of network technology, video-on-demand (VoD) services are growing in popularity. Clients can watch their desired videos at anytime without waiting or visiting a video rental store. Because of the online access provided by VoD services, several studies have predicted the success of VoD [1, 2]. VoD is inherently a personalized service because of its characteristic one-to-one interaction. Therefore, a VoD system typically allocates a dedicated stream for each incoming video request [3]. However, individual stream allocation easily causes a VoD system overload when its network and disk bandwidth cannot match client growth. This study thus presents a fundamentally different approach by focusing solely on a class of applications identified as latency tolerant applications. The key feature of latency tolerant applications is that they are unconcerned with latency between video servers and clients. Broadcast video streaming is perhaps the most important example of this class of applications [4]. Because video broadcasting does not provide interactive (i.e., VCR) functions, a client is able to tolerate playback latency from a video server. One efficient broadcasting method is periodic broadcasting, which divides a video into smaller segments and broadcasts them periodically on a set of communication channels. This method enhances bandwidth usage by allowing various clients to share the same channel bandwidths. Because periodic broadcasting typically requires a client to wait for the beginning of the first segment before starting playback, this scheme cannot support real-time VoD services.

The fast broadcasting (FB) [5] scheme divides a video into a geometrical series of , where is the number of broadcasting channels. An implementation of the FB scheme on IP multicasting was reported in [6]. To achieve minimal latency, the harmonic broadcasting (HB) scheme [7] partitions a video into multiple segments, and each segment is divided into subsegments. The subsegments of the same segment are then broadcast on the same channel. The recursive frequency-splitting (RFS) scheme [8] achieves a near-minimal waiting time by periodically broadcasting each segment at a frequency that can guarantee continuous video playback. In modifying the FB scheme, the reverse fast broadcasting (RFB) scheme [9] buffers 25% of video length, merely half of what is required by the FB scheme. By combining RFB and RFS, the hybrid broadcasting scheme (HyB) [10] requires the same client buffering space as that of RFB; however, it achieves smaller waiting time. The study in [11] integrates the fixed-delay pagoda broadcasting scheme [12] and RFB to reduce client waiting time and buffer demand. A generalized reverse sequence-based model [13] was proposed to clarify why broadcasting segments in reverse order can reduce buffer requirements. A scalable binomial broadcasting scheme [14] transfers live videos using constant bandwidth, regardless of video length.

The mentioned schemes transfer video segments on multiple channels simultaneously and periodically, and a client typically must receive segments from these channels concurrently. To perform multiple-channel segment broadcasting, a server must multiplex video segments into multiple channels and synchronize these segments across these channels. Segment multiplexing and synchronization are difficult, because packet transmissions are varied with network traffic. In addition, numerous practical systems, such as digital video broadcasting-handheld (DVB-H) and integrated services digital broadcasting-handheld (ISDBH), do not permit a client to download video data from multiple channels, because the client typically has only one tuner [15, 16]. To solve these problems caused by multiple-channel broadcasting, many studies were proposed to broadcast segments over a single channel, such as the alternative broadcasting (AB) scheme [15], the hopping insertion (HI) scheme [16], SingBroad [17], PAS [18], and the reverse-order scheduling (ROS) scheme [19]. The basic concept behind these schemes is to partition a video into equal-sized segments, which are classified into several groups and transferred over a single channel according to a predefined arrangement.

This study proposes a single-channel broadcasting scheme to yield short waiting time. Let be the bandwidth of a single channel, where is a positive integer and is the playback rate of a video. The proposed scheme partitions the single channel as an infinite set of time slots. Each time slot is further composed of smaller subslots. A video of length is equally divided into segments, which are then arranged to groups, denoted by . A segment of group is split into equal subsegments, which are then placed to individual subslots. The mathematical analysis shows that the maximal client waiting time of the scheme is . This study also verifies the workability of the scheme and compares it with several current approaches. The comparison results show that, with the same settings of broadcasting bandwidth, the proposed scheme outperforms AB, HI, SingBroad, PAS, and ROS for the maximal waiting time. Extensive simulations also indicate that the proposed scheme requires smaller client buffering space than AB and SingBroad for .

The remainder of this study is organized as follows. Section 2 reviews AB, HI, SingBroad, PAS, and ROS. Section 3 introduces the proposed scheme and verifies its accuracy. Section 4 shows the evaluations of the performance of the scheme, and Section 5 makes a brief conclusion.

This section introduces AB [15], HI [16], SingBroad [17], PAS [18], and ROS [19]. Table 1 defines the terms used in this study. As mentioned previously, this study divides a single channel into an infinite set of time slots.

The AB scheme [15] splits a video into segments. This scheme proposes two modes for determining the value of . One is the mechanism-dominant (MD) mode, and the other is the waiting time-dominant (WD) mode. In the MD mode, , and clients start playing video data when they receive segment . The AB scheme with WD obtains . In this mode, the starting time of video playback is determined by whether each segment can be played continuously, rather than the downloading of segment . For both modes, the AB scheme broadcasts segment on the single channel at time slot if . The rest of segments are broadcast sequentially and periodically on the remaining time slots. Figure 1 shows an example to demonstrate the segment downloading and playing for AB, where . The segments downloaded and played by a client are gray. The AB scheme with MD divides a video into three segments, as shown in Figure 1(a). A client starts to play video data at the beginning of segment . In addition, the AB scheme with WD partitions the same video into four segments, as presented in Figure 1(b). Note that if the client started playing segment on time slot , segment would not be played continuously. Therefore, the client begins to play video data on time slot to guaranteecontinuous playback.

The HI scheme [16] divides a video into even segments, where is an arbitrary positive integer. This scheme then classifies the segments into groups, where . Group contains segments to , where . The last group includes the remaining segments. Initially, HI puts the segments of group together in order. The segments of the remaining groups are then inserted into the segments of in a hopping way to obtain the final broadcasting schedule [16].

SingBroad [17] partitions a video into segments that are arranged into groups. Group contains segments to , where . Segment of group is broadcast on time slot , where and is zero or a positive integer. For example, for , SingBroad divides a video into seven segments, which are then arranged to three groups. Group contains segments to . Segment is broadcast on time slot (e.g., time slots , , , and so on), where and . When a video request arrives, the client must wait for the beginning of the nearest segment to start video downloading and playing.

Like the SingBroad scheme, the PAS scheme [18] splits a video into segments and classifies these segments into groups. Group contains segments to , where . Unlike SingBroad, PAS further divides each segment of into even subsegments. Each time slot is split into subslots that are used to place subsegments. For instance, for , PAS partitions a video into segments to , which are arranged to three groups. Segment of is divided into four subsegments , , , and that are broadcast across various subslots. A client must wait for the nearest segment to begin video downloading and playing.

The ROS scheme [19] divides a video into segments that are classified into groups. Groups and contain and , respectively. The remaining group includes segments to where . Let be zero or a positive integer. Segment of is broadcast on time slot . This scheme then puts segments and of on time slots and , respectively. The ROS scheme transmits segment of the remaining group on time slot , where and . For example, segment of group is broadcast on time slot because and . For , ROS puts segment on time slots , , , and others. When a client wants to watch a video, the client must wait for the beginning of the nearest segment to start downloading. In addition, segments and must be received in order. For the segments of the remaining groups, the client downloads them according to the following process. Suppose that is the segment that a client is currently playing, and segment of is the segment that appears on the channel and is not received by the client. If , the client does not download segment . Otherwise, the client receives it. When downloading segment is complete, the client starts video playback.

3. Proposed Scheme

According to the mentioned schemes [1519], the number of video segments mainly determines client waiting time. Therefore, the key to minimizing the waiting time is to partition a video into as many segments as possible, under the condition that ensures continuous playback. To maximize the segment number, the proposed scheme broadcasts video data over a single channel according to the following step.: Divide a video into (i.e., ) equal-length segments, denoted by , , … ,  in sequence. The length of each segment, , thus equals . For example, in Figure 2, a server allocates a single channel with a bandwidth of to broadcast a video of length . The video is equally divided into segments, denoted by , , … , . The length of each segment equals . Classify these segments into groups, denoted by . Assemble segments to into group sequentially. Figure 2 shows that the segments are then classified into three groups , , and . Each segment of group is further partitioned into subsegments, denoted by . As shown in Figure 2, segment of group is split into four subsegments , , , and . Partition a single channel as an infinite set of time slots, denoted by , , , and so on. Each time slot is used to deliver segment data at a bandwidth of , and the length of each time slot equals A time slot is further divided into subslots, denoted by , if . The length of a subslot of time slot thus equals . For example, Figure 2 shows that the length of each time slot equals because . Time slot is further partitioned into four subslots , , , and because . Put the segment data of each group on each time slot in sequence. For example, the segment data of groups , , and are sequentially broadcast on time slots , , , and so on, as indicated in Figure 2. In general, the segment data of group are put on time slot , because there are groups, where is zero or a positive integer. Furthermore, the scheme sequentially broadcasts the subsegments of the segments of group on the subslots of time slot . For example, Figure 2 shows that the subsegments of segments to of group are sequentially put on the subslots of , , , , and others. Note that only a subsegment of a segment of the same group is put on a subslot of a time slot. Because the segment data of group are broadcast once every time slots and each segment consists of subsegments, each subsegment is transmitted once every time slots. Therefore, the scheme broadcasts subsegment of group on subslot where and .For example, Figure 2 shows that the proposed scheme puts subsegment of group on subslot (e.g., , , and ) because , , , and .

This study next presents how to download video segments on the client side. A client is assumed to have a sufficient buffer to store downloaded segments. Suppose that a client can download and play the same segment concurrently, because the downloading bandwidth is equal to or larger than the playback rate. This study also assumes that a client desires to watch a video at time . Let be the subslot that is nearest to time . The segment downloading and playing are as the following.(1)The client must wait for subslot before receiving subsegments. Once the subslot is up, the client starts downloading the subsegment from this subslot. (2)After this downloading is complete, the client continues to receive the remaining subsegments from the following subslots. If a subsegment has been downloaded, the client simply skips it.(3)When all the subsegments are received, the client stops the segment downloading.(4)The client assembles the received subsegments to form complete segments and starts playing them at the beginning of subslot .

Figure 3 shows an example for demonstrating how to download and play video segments, where the subsegments downloaded and played by a client are gray. Because subslot is closest to the client arrival time , the client starts downloading subsegment on subslot . The client then continues to receive subsegments from subslots to . Because subsegment has been downloaded on subslot , the client does not receive it again on subslot . Similarly, the client does not download subsegments , , , and on subslots , , , and , respectively. When the client finishes receiving all the subsegments at the end of subslot , the client stops downloading subsegments. The client assembles the received subsegments to form complete segments and plays them at the start of subslot , as shown in Figure 3.

3.1. Workable Verification

Suppose that segment is in group , where . The mentioned broadcasting process transfers a subsegment of segment once every time slots. Because the number of subsegments of segment equals , the broadcasting process can transmit all the subsegments of segment once every time slots. According to the downloading process, a client starts segment downloading at the beginning of subslot . Therefore, the client can receive all the subsegments of at the beginning of subslot . In addition, the client begins segment playback at the beginning of subslot . Because the playback length of a segment equals time slots according to (1), the start time to play segment is the beginning of subslot . To guarantee continuous playback for the client, the end time of downloading segment must be earlier than the start time of its playback. That is, the beginning of subslot must be later than the beginning of subslot . This study evaluates

The end time of downloading segment is earlier than the start time of its playback. Therefore, the proposed scheme ensures continuous video playback on the client side.

4. Performance Analysis and Comparison

This study primarily selected client waiting time and buffer demand as the performance criteria. The proposed scheme was compared with AB, HI, SingBroad, PAS, and ROS. According to the downloading process, when a client exactly arrives at the beginning of a subslot, the waiting time equals timeslots (i.e., ) because of (1). If the client just misses the startup of a subsegment on the channel, the client must additionally wait for the length of the subsegment. Because subsegment is the longest subsegment, the maximal waiting time equals time slots. That is,

Table 2 summarizes the maximal waiting time incurred by AB [15], HI [16], SingBroad [17], PAS [18], ROS [19], and the proposed scheme. The results show that the number of segments mainly determines the maximal waiting times for all the schemes. The increase of the server bandwidth (i.e., the value of ) enlarges the number of segments and thus reduces the waiting time.

To clarify the performance advantages of the proposed scheme, this study calculated the maximal waiting times of AB, HI, SingBroad, PAS, ROS, and the proposed scheme at various values of , where the value of for HI equals 10000. Figure 4 shows the performance results. As the server bandwidth increases, the waiting times under all the schemes are sharply reduced. In addition, the proposed scheme yields the shortest waiting time. For example, when the server bandwidth equals (i.e., ), the scheme reduces the broadcast latency to less than . In contrast, AB-MD, AB-WD, HI, SingBroad, PAS, and ROS yield 0.057, 0.057, 0.019, 0.014, 0.014, and 0.012, respectively. The proposed scheme reduces the waiting times by 84%, 84%, 53%, 36%, 36%, and 25%. Assume that the video length is 120 min. Figure 5 shows the maximal waiting time for all the schemes in seconds. For , the waiting times of AB-MD, AB-WD, HI, SingBroad, PAS, ROS, and the proposed scheme are 600, 480, 240, 194, 194, 175, and 133 s, respectively. In this case, the waiting times for the proposed scheme are 78%, 72%, 45%, 31%, 31%, and 24% smaller than those of AB-MD, AB-WD, HI, SingBroad, PAS, and ROS, respectively.

With low cost and large capacity of storage disks, client buffer demand is no longer a substantial concern. However, for completeness, this work studies the required buffer size under AB-MD, AB-WD, SingBroad, PAS, ROS, and the proposed scheme (the comparison does not include HI, because its buffer requirements are not provided in [16]). Because this study did not derive a close formula for the required buffering space of the proposed scheme, a simulator in Perl [20] was developed to exhaustively search all possibilities to determine the maximum buffering space required at various broadcasting bandwidths. Figure 6 shows the client buffer requirements regarding video length , where the server bandwidth is varied from to . The proposed scheme initially requires the largest buffering space. However, as the server bandwidth increases, the client buffer requirements drop and approach 50% of video size. Therefore, the proposed scheme yields smaller buffer requirements than AB and SingBroad.

5. Conclusion

A VoD system typically allocates a dedicated stream for each incoming video request; however, individual stream allocation easily causes the system overloaded. This study thus presents a fundamentally different approach by focusing solely on a class of applications identified as latency tolerant applications. Because video broadcasting does not provide interactive functions, a client is able to tolerate playback latency. One efficient broadcasting method is periodic broadcasting, which divides a video into smaller segments and broadcasts them periodically on multiple channels. However, the implementation of multiple-channel broadcasting is difficult and complicated. Therefore, this study proposes a novel single-channel broadcasting scheme for more efficient video delivery. The correctness of the scheme is verified mathematically. The performance comparisons show that, with the same settings of broadcasting bandwidth, the proposed scheme yields the shortest waiting time when compared with AB, HI, SingBroad, PAS, and ROS.

Acknowledgment

This work was financially supported by National Science Council, Taiwan, under a Research Grant no. NSC 101-2221-E-152-004.