Printer Friendly

Status based segment oriented caching in P2p video streaming.


In recent years, Peer-to-Peer (P2P) streaming gains significant attention and also become the predominant part of transporting the live video or stored video in real time multimedia applications. In P2P assisted video streaming, peers can effectively stream the multimedia files over the Internet with high quality and less communication cost (Yong Liu, 2008). However, in the case of multiple concurrent streaming sessions, streaming server gets overloaded due to the limited bandwidth resources in the network (Bommaiah, 2000). However, pure P2P streaming solutions are challenging due to the continuous streaming of large media objects towards to the client demand. Therefore, Content Distribution Network (CDN) is evolved that can efficiently stream the video to provide high quality streaming service. CDN is very expensive due to the installation and maintenance of large number of servers for continuous video streaming (Bing Wang, 2004). So, proxy is installed closest to clients for the effective utilization of server and network resources. It is cost effective but not scalable because large media streams can quickly exhaust the storage space of a standalone proxy. For continuous large video P2P streaming, allows clients to store the video streaming contents in its local cache in full or partial formats. Each client peer distributively caches the video segments in order to meet the future request. It is very difficult to maintain cached content among the client peers in the network.

To utilize the aggregate cache space efficiently, a proxy assisted overlay network is constructed with a number of proxies combined together (Ulas, 2009). For content discovery, user generates and forwards the query request to its connected home proxy. Then, the proxy processes the query request by serving the requested video either from its own local cache or the streaming server. Clearly, the transmission of the video from a proxy server to the client peers only acquires negligible latency because proxy resides in the same domain of client peers (Dapeng, 2001). On the other hand, latency between the proxy server and the streaming server is comparatively high, therefore, it requires high bandwidth, but it is highly expensive in the scarce resource environment. However, video files are always larger than conventional text and image files. Therefore, proxies and clients can't cache all versions of all videos even under a cooperative environment due to limited storage constraints. Thus, the proxy only caches the requested valuable segments based on popularity. Therefore, segment-based proxy caching (Mohamed Hefeeda, 2011) strategies are evolved where proxies in the overlay cache the fetched content in the form of the number of small segments instead of caching the whole video content. It completely reduces the number of server access and the volume of data transmitted over the network.

The existing segment based caching approaches deploys a fixed segmentation approach that divides a video into a number of segments of fixed size. Therefore, the size of the segment is independent of the size of the video object. It leads to highly unbearable initial latency even for the small video object with a large number of segments. In order to improve the effectiveness of video segmentation, this paper proposes adaptive chunk size segmentation to divide the media file adaptively into variable sized segments based on segment popularity. Further, the entire cache is managed by a single cache management algorithm that might lead to improper cache admission and replacement policy. In order to improve the effectiveness of video segmentation and caching mechanisms, this paper proposes a novel popularity oriented buffering which is a good candidate for cache admission and replacement policies.

1.1 Contribution of the Paper:

This paper proposes an Adaptive Chunk Size Segmentation (ACSS) approach to divide a media file into a number of variable size segments adaptively using two segmentation schemes such as Fixed Chunk Segmentation (FCS) and Exponential Chunk Segmentation (ECS) based on two crucial factors such as video size and requested frequencies.

Proposes an effective caching mechanism based on two-level popularity oriented caching, where proxy cache consists of two buffers such as Long term buffer (LTB) and short Term Buffer (STB) to store the video segments based on the segment popularity rather than whole video popularity in order to utilize the limited storage constraints effectively under a large video size.

This proposed Caching mechanism deploys two functional units namely request scheduler and cache instructor. In order to achieve continuous streaming, Request scheduler schedules the transmission of the proper video segment to the number of client devices in the network. The cache instructor allocates the proxy's storage resources efficiently to the cached video objects and also helps to achieve effective cache management policies.

In cache admission control, the cache instructor allows to cache the most frequently requested segments rather than all video segments of media objects.

Cache replacement policy evicts the cached objects of low popularity to maintain the proxy cache space when it becomes full.

1.2 Organization:

This paper is organized as follows. Section 2 provides the discussion of existing works related to the segment based caching schemes. Section 3 portrays the overview of the proposed Adaptive Popularity oriented Segment Based Caching (APoSC) in P2P Video Streaming and also clearly explains the segmentation and caching technique involved in this approach to achieve continuous and scalable media streaming service. Section 4 provides the experimental evaluation of the proposed approach and the conclusions are drawn in Section 5.

2. Related Work:

The main focus of this work is to achieve load balancing and an optimal cache distribution among peers under a high dynamic mobility and server workload. A variety of video streaming techniques have been proposed on P2P video streaming recently. In the literature, most of the papers formulate the effective video streaming basis of the optimized caching strategy to attain high hit ratio with less access latency. Lixin et al. (2003) proposed a Proxy assisted selective caching which is the hybrid combination of both proxy-assisted catching and controlled multicast (Lei Guo, 2006). Here, video objects are classified into two types such as popular (hot) and unpopular (cold) objects based on the patterns requested by the user. Depending on the nature of video objects, a suitable multicast scheme is deployed with either proxy-assisted catching or a controlled multicast separately that completely reduces service latency and resource requirements. If the user is interested to broadcast the popular video objects (hot) then the proxy assisted caching is used. In the case of the unpopular video objects, proxy-assisted controlled multicast relies client-pull technique to broadcast the video objects efficiently. In this approach, video objects are partitioned into specific segments which are periodically broadcasted using greedy disk-conserving broadcast scheme. It ensures continuous playback of the video object through dedicated channels. Danqi et al proposed a high reliable and fast content discovery mechanism called the SUpeRchunk-based eFficient search Network (SURFNet) in P2P video-on-demand systems (Susie Wee, 2007). SURFNet divides video into two types of segments such as super chunk and chunk to support different search granularities. The main enhancement in this approach is the Adelson-Velskii and Landis' tree (AVL) tree construction using stable peers that improve data availability among the super chunk-level. In the AVL tree, peers possess the same super chunk is combined altogether into a holder-chain. The constructed holder chain is connected to the corresponding leaf node in the chunk tree. In order to ensure continuous streaming, the segment based caching approach caches large media objects as segments that reduce the startup latency. However, the primary drawback of this approach is that difficult to stream the complicated data format. Therefore, it is very challenging to coordinate the streaming of media data, and caching discrete object segments in a continuous manner.

In order to overcome the problem of aforementioned approaches, Chen et al designed segment-based streaming media proxy (Alan, 2007) that deploys an intelligent prefetching technique to assist high quality streaming. It deploys an automatic segmentation using a segment-aware file I/O system to handle the complex media content transparently according to continuous delivery demands. However, it does not handle the scalability issues raised due to the load imbalance and a dynamic churn of the network. Lei Guo, et al proposed a system that collaborates and coordinates the PROxy and its P2P clients (PROP) in the same intranet (Wei, 2009). This approach addresses the scalability problem in existing proxy caching schemes and delivers the high quality media in a reliable manner. It effectively maintains the system performance even under peer failure due to a dynamic churn. Furthermore, this approach achieves high byte ratio than any other existing client-based or proxy based P2P systems.

Alan et al proposed an innovative approach called as Cooperative Proxy-Client Caching (COPACC) where proxy and client cooperatively cache the media objects in order to balance the load, and also improves fault tolerance. In COPACC, Proxy assisted P2P overlay is constructed in two-level where the first level consists of a set of proxies and then second level consists of client peers connected to its home proxy (Danqi Wang 2011). This approach achieves high scalability and performance due to the high cooperation of the proxies in the network. Kozat et al., proposed a hybrid P2P architecture that integrates both content distribution networks and P2P techniques to achieve continuous streaming. In this, each peer provides its cache space to store video segment and also serves the cached video segment over the other peers in the network. In this approach, Control server directs the requested peer to discover the desired video segments (Masahiro Kobayashi, 2009). It deploys a Cache prefetching technique where peer fetches and caches the segments upon its arrival to the system. Subsequently, serves the prefetched segment to the requested peers before it departs from the system. However, it may incur a single point of failure due to centralized control and increase the load on their links and routers which leads to high P2P network traffic. To reduce the network traffic, Hefeeda et al., designed a pCache mechanism to serve traffic from the different P2P system without impairing the traffic from other Internet applications. In this mechanism, a storage system is used in web proxy caches efficiently to reduce the P2P traffic. pCache is highly scalable that provides benefits for both the ISP and the clients, without any performance degradation of the P2P networks. In (Keqiu, 2007), Hafeeda et al develops a set of algorithms to reduce the network traffic workload on ISPs and the Internet. This approach achieves highly scalable video streaming with reduced network traffic that does not address the node failure under high dynamic mobility.

Latterly, Zhenyu et al., proposed Churn Resilient Protocol (CRP) to achieve efficient performance even under high dynamic mobility (James Wang, 2007). This protocol is applied to CRP enabled overlay network where extra chord link is provided to each peer in a network. This method is very much effective if any node failure occurs and also provides high scalability. All of the above approaches effectively reduce the server workload, network traffic, network resource utilization and cache space. Some schemes eliminate the single point failure under the dynamic churn. Moreover, none of the approaches jointly addresses the effective utilization of network resources with the reduced server workload under the dynamic churn.

3. Overview Of The Proposed Approach:

This section portrays the detailed description of the proposed APoSC with relevant definitions of the algorithm. First, it presents the construction of the proxy assisted overlay network for effectively organizing the set of proxies and its associated client peers in a network Second, introduces a two-level caching framework named as a popularity oriented segment based caching to cache the media content as variable sized segments. It stores segments in two buffers based on the segment popularity rather than video popularity. Efficient cache management schemes such as cache admission policy and cache replacement policy is developed to cache cooperatively and manage the media content among the peers in the network. This proposed approach accomplishes the user satisfaction by improving the byte hit ratio and start latency.

3.1 Proxy Overlay Assisted P2P Network Construction:

Fig. 1 illustrates the internal architecture of the proxy assisted overlay network that consists two layers to perform efficient content discovery. In the upper layer, a set of proxies are logically connected directly or indirectly to form a virtual overlay network on top of the internet. It can communicate with the streaming server located in a remote location and serves as the home proxy for a set of local clients. Furthermore, the lower layer consists of a set of client peers within a certain geographical region are connected to the proxy.


This architecture mainly composes three main components such as Streaming Server, Proxy Overlay and the Client Peers. i) Streaming Server: A set of videos are stored at a geographically dispersed streaming server that delivers the video streams to a number of clients across the Internet. ii) Proxy Overlay: A set of proxies deployed at the gateway of the domain are logically connected and formed into a proxy overlay. Here, proxy server is placed geographically in the local access networks where clients reside. iii) Client peers: A group of client peers form a self-organized P2P overlay network with proxy in its same domain. It can generate the request and receive the media streaming service. In addition to, client peers independently maintain a local cache to store the initial segment of the video it downloaded rather than an entire video. The home proxy process the client request, and provide services to the client, if any peer need to download the video content. Moreover, client peers maintain the initial segments of videos watched previously.

3.2 Adaptive Chunk Size Segmentation:

Instead of using a fixed-segment structure as in (Mohamed Hefeeda, 2011), this paper proposes a more flexible Adaptive Chunk Size Segmentation (ACSS) approach to divide a media file into a number of variable size segments based on two significant factors such as video size and requested frequencies. Generally, video objects are divided into the multiple number of media blocks. Multiple blocks of a media object are combined together into variable sized segments based on requested frequencies and video objects size. In fact, the size of the segment increases exponential order from the initial segment (Jussi Kangasharju, 2002). So that, the video of high popularity and small size is divided into smaller size segments that lead to no initial delay and an early start. On the other hand, the video is divided into larger segments for those with low popularity and high size.
Algorithm 1 Adaptive Chunk Size Segmentation:

For a video V

// [V.sub.s] is video size, [V.sub.sth] is threshold video size,
NOR is number of times requested, NORth is threshold value,
[seg.sub.s] is segment size, [seg.sub.minsize] is minimum segment
size, [] is threshold segment size and [Seg.sub.maxsize]
is maximum segment size.
  [V.sub.s] < [V.sub.sth] & NOR > [] {
    Follows Fixed Segmentation //small size & low popularity
  [V.sub.s] < [V.sub.sth] & NOR > [] {
    Follows Fixed Segmentation //small size & high popularity
    Size of segments = [Seg.sub.minsize] [less than or equal to]
    [Seg.sub.s] [less than or equal to] [];
    [V.sub.s] > [V.sub.sth] & NOR > [] {
      Follows Exponential segmentation // large size & high popularity

  [V.sub.s] > [V.sub.sth] & NOR < [] {
    Follow Fixed Segmentation // large size & low popularity
    Size of Segments =[] [less than or equal to] [Seg.sub.s]
    [less than or equal to] [Seg.sub.maxsize];

This approach performs either exponential or fixed segmentation scheme based on two crucial factors such as video size and popularity to ensure efficient utilization of cache space and low initial delay. If the video object size (Vs) and number of times requested frequencies (NOR) is greater than the threshold then the system follows an exponential segmentation where the size of segment i+1 is twice as large as segment i. On the contrary, the video object size (Vs) and NOR is less than the threshold then the system follows a fixed segmentation where the size of the segment is relied on the video size. If the size of a video is large then the segment size is greater than the threshold. Otherwise, the segment size must be less than a threshold size.

3.2.1 Variable Segment Structure:

This section depicts the variable segment based structure that encompasses a number of segments of exponentially increasing variable size. As illustrated, a set of media block forms segments and a combination of the group of segments form a video. Such that, the number of blocks grouped in a segment (i) is [2.sup.i-1] (Jussi Kangasharju, 2002). Each segment composed of a number of media blocks composes two parts such as a prefix and a suffix. In each segment, the first block is a prefix and then remaining parts are the suffix of a video. The length of prefix and suffix of a video is expressed as the number of GOPs it contains.


In Fig. 2, the second segment (seg2) consists of one prefix and three suffixes whereas the third segment (seg3) comprise of one prefix and seven suffixes. Thus, it is clearly represented that the number of segment increases, the number of blocks composed in segments also increases exponentially. The length of the prefix in each segment is decided from the network condition between the streaming server and the proxy. Therefore, prefix in each segment consists of an equal number of blocks because the video is retrieved from the single streaming server in a system. Thus, the network condition while accessing segments is same for all of the segments in a video. For simplicity, this work considers the prefix length as one. Furthermore, this variable size segment structure supports effective cache management scheme based popularity distribution to achieve the finest access granularity. Thus, video fragment with high popularity and small size follows exponential segmentation whereas video fragment with low popularity and large size follows fixed the segmentation to adjust the segment size for effective video streaming.

3.3 Popularity Oriented Segment Caching:

The adaptive chunk size segmentation is a transparent scheme for making effective cache management such as cache admission and replacement policies. In proposed two-level popularity oriented caching, proxies and clients are cooperatively caches the video segment based on the segment popularity rather than a whole video popularity in order to utilize the limited storage under a large video size. Fig. 3 shows the internal proxy architecture that consists of a request scheduler and a cache instructor (Zhenyu, 2011). The request scheduler schedule the transmission of a proper video segment for the number of client peers to achieve continuous streaming. The cache instructor allocates the proxy's storage resources to the cached video segments and also manages the cached objects. It only performs effective cache management policies to maintain the storage resources when the cache space is full.


3.3.1 Two level Cache admission Policy:

As end users randomly access the video content, the viewing popularity of the different segments within a single video is different. Therefore, a segment based caching is performed based on the popularity of every segment instead of the entire video popularity during a predefined time interval. The cache admission control permits to cache the most frequently requested segments rather than all video segments of media objects. Therefore, the cache admission control considers the requested frequencies as a main criterion to cache the different segments of the same media object.

i) Initial Segment caching across clients:

Generally, the initial segments have a significant impact on the initial delay because it is mostly requested by the client peers in the network. If the initial segments are cached, the video may be streamed right away to the requested client peers without any initial delay. However, the proxy will not initiate request for video streaming until initial segments with a sufficient number of blocks are cached locally. Therefore, client peer acquires small latency to fetch the cached content from its home proxy for initial segments at the start up. In order for a client device to immediately playing back the video, client peer should cache the beginning segment, which is more significant than the later portion to mask the latency between it and the proxy.

ii) Two-level caching across proxy:

The segments are progressively larger, and proxy cache can be maintained as a two level cache structure in a more effective and reliable manner. It consists of two buffers, namely Long Term buffer (LTB) and Short Term Buffer (STB) that effectively cache and manage the remaining segments of a video cached if they are requested frequently enough (high Popularity) (Man-Fung Leung 2007). For instance, when the user generates a request for the first time, then STB caches all segments of the video temporarily, which passes through before it is forwarded to the requested client peer. Among that, the video segment which is requested frequently enough greater than the threshold ([NOR.sub.sth]), are shifted to the LTB because mostly requested (popular) segments are maintained in the LTB for a long time to improve the cache hit rate for cached segments. On the other hand, a video segment which is occasionally requested smaller than the threshold (NORsth), then it will be in the STB itself. Thus, proxy performs this shifting of cached objects from STB to LTB for a periodic interval of [T.sup.shift]. To facilitate the content discovery, proxy and client maintain the hash table that contains the indexed information (key, value) about the cached segment. The key is the identifier of the segment that contains the list of segment ids and the Location contains the location of the segments corresponding to the segment id. Proxy caches the number of segments fetched from the server for its connected client peers and also maintains the index information which will be useful to reduce the server workload.

3.3.2 Popularity oriented cache replacement policy:

Popularity oriented cache replacement policy effectively replaces the low popular cached media objects with high popular media objects for a regular maintenance of the proxy cache when it becomes full. The STB becomes full then Least Recently Used (LRU) mechanism is used to replace the rarely requested cached objects as soon as possible within a short interval of time ([T.sub.STB]) in order to provide cache space for newly arrived video content. The LTB is efficiently managed based on the proposed popularity oriented cache replacement policy. In that, the popularity of the segment ([S.sub.i]) cached in the LTB is computed using the requested frequency of the segments within a particular time as follows

Popularity([S.sub.i]) = 1/[T.sub.Current] - [T.sub.Access] (1)

Where, [T.sub.current] is the present time and [T.sub.access] is the last access time. If the popularity of the segment ([S.sub.i]) is close to 1, then it represents that the segment ([S.sub.i]) is mostly requested by the client peers in the network. Therefore, high popular segments have high priority to be cached and maintained in the cache rather than low popular segments. Like that, the popularity is computed using the above equation (1) for each cached segment in the LTB and saves it to an array. Once the popularity of all segments is calculated, cache replacement algorithm sort all popularity values of the segments in ascending order. The segments which have high popularity that is greater than threshold requested frequencies are retained in the LTB itself. Moreover, the segment which has low popularity is completely removed to provide the cache space for the new media content fetched from the server. Mostly, LTB maintains popular segments. Therefore, it will be retained for a longer interval of time ([T.sub.LTB] >>> [T.sub.STB]).

3.4 Segment Request Retrieval Algorithm:

When the client wants to play a video, it will first lookup its own cache where it caches the initial segment of already watched video. If there is a cache hit, then the client plays the initial segments of the video and then proxy formulates a streaming schedule to stream the remaining video from the streaming server. Otherwise, the client directly submits the playback request as Request (Video V, URL) to its home proxy that is responsible to fetch and serve the requested video to the client. When a client request arrives at the home proxy, it captures and processes the request as follows i) It checks both the LTB and STB cache as a whole whether the requested data is already cached in it. If there is a cache hit, the proxy will transmit the video content right away to the corresponding client peer. ii) Otherwise, it gives the lookup request to other proxies which are present in the proxy overlay network. If the requested data present in the other proxies of the overlay, the home proxy retrieves the video content from that proxy which is then streamed to the requested client peer. In order to play a video in the media player of the client, proxy first fetched the requested video and then broadcasted to the client playing device. While transmitting the requested video to the client, proxy caches the media content in its STB cache and then the client only caches the initial segment of the video. If the requested video is not available in any of the proxies in the overlay network, proxy has two options whether it generates a request for the missing segments to the streaming server or start from the cached segment which is very closest to the requested segment. In the first case, it fetches the missing segment from the streaming server. The second case is to forward the closest segment that is available with it before that of the requested segment.
Algorithm 2 Segment Request Retrieval Algorithm:

#client C= {[C.sub.1], [C.sub.2], ... [C.sub.n]}, Proxies P =
  {[P.sub.1], [P.sub.2], ... [P.sub.k]} Vidoe V,
Segments = {[S.sub.1], [S.sub.2], ... [S.sub.3]}, Hash table H =
  {[H.sub.1], [H.sub.2], ... [H.sub.k]} [S.sub.1] is initial
Segments, Home proxy Pi, Requested client [C.sub.1]
Client [C.sub.1] generates request (V, S[j], URL) {
Lookup into its own cache
  If (true) {
             Play (S[i] of a video);
Continuous Streaming (s[j]) {
  for (i=i;i<j;i++){
  [P.sub.1] [left arrow] CACHE S[i];
  [C.sub.1] [left arrow] RETRIEVE S[i] from [P.sub.1];
  Play (S[i] of a video)
else {
  Forward (Request (V, S[j], URL) [right arrow] [P.sub.1])
    If (S[j] is in [P.sub.1]) {
    Streaming (S[j] of video V) {
    [P.sub.1] SENDS S[1] [right arrow] Ci
    [C.sub.1] [left arrow] RETRIEVE & CACHE [S.sub.1];
  PLAY (S[i] of a video)
  Continuous streaming (S[j]);
else {
  Forward (Request (V, S[j], URL) [right arrow] P)
  Lookup (S[j] in H) {
  Return [P.sub.3] having S[j]});
  Home Proxy [left arrow] RETRIEVE segments S[j] form [P.sub.3];
  Streaming (S[j] of video V);
else {
  Forward (Request (V, S[j], URL) [right arrow] streaming server)
  Lookup (S[j] in server)
  If (true) {
  Streaming (S[j] of video V);

4. Performance Evaluation:

This section evaluates the performance of the proposed APoSCA approach under different parameters such as a percentage of total cached video content and varying video length. Proxy deploys two buffers such as LTB and STB to cache the media objects on its cache based on popularity. In this scheme, STB buffer caches less popular segments and LTB buffer caches high popular segments. In order to reduce the initial start up, client stores the initial segments have already viewed in its local cache. To simulate the performance of the proposed APoSCA approach, it is assumed that the peer arrival and departure are random. The size of video is between 5 MB and 35 MB. The playing time for a video is about 1 to 10 minutes. The default proxy cache size is between 1 GB and 7 GB.

4.1 Performance Metrics:

4.1.1 Byte Hit Ratio:

Byte hit ratio is defined as the total number bytes of video content cooperatively served by the proxy and client peers, and the total bytes of video content consumed by the requested peers in a network.

4.1.2 Delayed Start Requested Ratio:

Delayed start request ratio is defined as the ratio between the number of requests suffering startup delays and the total number of generated requests in a system.

4.1.3 User satisfaction score:

User satisfaction score is computed from the overall performance of the VoD system in terms of the initial delay, transmission cost and video quality.

4.2 Experimental Results:

4.2.1 Byte Hit Ratio:


Fig. 4 shows that the byte hit ratio of the proposed APoSC approach improves significantly with the increase of cache size than existing PROP approach. APoSC deploys the variable sized segment approach and two-level popularity oriented segment caching to utilize the storage resources effectively. It also reduces the outgoing network traffic of the system. The byte hit ratio of APoSC is significantly high even for small cache size. For instance, the byte-hit ratio for the APOSC is 15% better for a smaller cache size of 3 GB and 6% better for a much larger cache size of 7 GB. As a result, it can reduce the transmission cost and storage requirement, but significantly improves the byte hit ratio to achieve effective video streaming.

4.2.2 Effect of Video Length on Byte Hit Ratio:

Fig. 5 shows the impact of video length on the byte-hit ratio. Generally, the byte hit ratio decreases according to the increasing size of a media file. Notice that, the proposed APoSC scheme attains considerable byte hit ratio even for large media files than the existing PROP mechanism. For example, the APoSC scheme achieves 38% byte hit ratio for the video size of 35 MB, whereas the existing PROP scheme attains byte hit ratio of 24% for the same video size. This shows that the proposed APoSC approach is particularly useful in proxy caching of large media streams.


4.2.3 Delayed Start Request Ratio:


Fig. 6 shows that the delayed start requested ratio of proposed APoSC approach reduces significantly with the increasing cache size than existing PROP approach. In APoSC approach, the size of the initial segment is varied adaptively in accordance to the video size and its popularity. Therefore, client peers in APoSC can immediately start the video without an initial start even under the small amount of cache capacity dedicated to store the initial block. However, the existing PROP approach has a large number of requests with delayed starts. For example, PROP approach can't start instantly because delayed start request ratio is 58% for a cache size of 3 GB. On the other hand, proposed scheme delays only 38% requests under the same cache size.

4.2.4 Reduction of Server Workload:


Fig. 7 shows that the proposed APoSC scheme performs effectively better than PROP according to the increasing proxy cache size. In PROP, Video is divided into a fixed size of prefix and suffixes, whereas the proposed APoSC divides the video file into variable sized segments of exponentially increasing in size. Therefore, proxy and client effectively caches the variable size segments based on dynamic popularity over time. As a result, cached segments within the proxy and client cache can provide the requested object without the involvement of the streaming server. It reduces the server workload as an increasing cache size in the proposed approach.

4.2.5 User Satisfaction of ApoSC:

Fig. 8 shows the user satisfaction score for both approaches and also illustrates that the proposed APoSC scheme can effectively satisfy the user request in terms of a high byte hit ratio, reduced start delay and transmission cost. As the increasing value of the cache percentage, the proposed scheme correspondingly improves the user satisfaction because of the effective cache management based on the dynamic segment popularity over time.



This paper presented Adaptive Popularity oriented Segment based Caching (APoSC) mechanism to cache the large video streams as variable sized segments based on segment popularity. Instead of caching the whole video as a single object, the proposed approach caches the individual variable sized segments based on its popularity rather than whole video popularity. It introduces Adaptive Chunk Size Segmentation (ACSS) to adjust the segment size according to its size and video popularity. Moreover, the popularity oriented segment caching is employed to improve the caching efficiently. In addition, this approach performs cache management by taking reference frequency to utilize the limited storage constraints even for large video size and also reduces the transmission cost. Experimental results show that the proposed approach (1) improves the user satisfaction by not only increasing the byte-hit ratio but also reduces the number of delayed start requests according to the increasing cache size. (2) Effective video streaming even under limited cache size, varying popularity over time and large media files. (3) Reduces the server workload according to the increasing cache size. Experimental evaluation illustrated that the proposed approach significantly improves the user satisfaction in terms of high byte hit ratio and reduced delay when compared to conventional caching schemes.


Article history:

Received 23 July 2015

Accepted 28 August 2015

Available online 25 September 2015


Alan, T.S. 2007. Ip, Jiangchuan Liu, and John Chi-Shing Lui, "COPACC: An Architecture of Cooperative Proxy-Client Caching System for On-Demand Media Streaming", IEEE Transactions on Parallel and Distributed Systems, 18(1): 70-83.

Bing Wang, Subhabrata Sen, Micah Adler and Don Towsley, 2004. "Optimal Proxy Cache Allocation for Efficient Streaming Media Distribution", IEEE Transactions on Multimedia, 6(2): 366-374.

Bommaiah, K. Guo, M. Hofmann and S. Paul, 2000. "Design and Implementation of a Caching System for Streaming Media over the Internet," Proceedings of 6th IEEE Real Time Technology and Applications Symposium, pp: 111-121.

Danqi Wang and Chai Kiat Yeo, 2011. "Superchunk-Based Efficient Search in P2P-VoD System", IEEE Transactions on Multimedia, 13(2): 376-387.

Dapeng, Wu., Yiwei Thomas Hou, Wenwu Zhu, Ya-Qin Zhang, Jon M.Peha, 2001. "Streaming Video over the Internet: Approaches and Directions", IEEE Transactions on Circuits and Systems for Video Technology, 11(1): 282-300.

James Wang, Z. and S. Philip Yu, 2007. "Fragmental Proxy Caching for Streaming Multimedia Objects", IEEE Transactions on Multimedia, 9(1): 147-156.

Jussi Kangasharju, Felix Hartanto, Martin Reisslein and Keith W. Ross, 2002. "Distributing Layered Encoded Video through Caches", IEEE Transactions on Computers, 51(6): 622-636.

Keqiu, Li., Hong Shen, Y.L. Francis Chin and Weishi Zhang, 2007. "Multimedia Object Placement for Transparent Data Replication", IEEE Transactions on Parallel and Distributed Systems, 18(2): 212-224.

Lei Guo, Student Member, Computer Society, Songqing Chen and Xiaodong Zhang, 2006. "Design and Evaluation of a Scalable and Reliable P2P Assisted Proxy for On-Demand Streaming Media Delivery", IEEE Transactions on Knowledge and Data Engineering, 18(5): 669-682.

Lixin Gao, Zhi-Li Zhang, and Don Towsley, 2003. "Proxy-Assisted Techniques for Delivering Continuous Multimedia Streams", IEEE/ACM Transactions on Networking, 11(6): 884-894.

Man-Fung Leung and S.H. Gary Chan, 2007. "Broadcast-Based Peer-to-Peer Collaborative Video Streaming Among Mobiles", IEEE Transactions on Broadcasting, 53(1): 350-361.

Masahiro Kobayashi, Hidehisa Nakayama, Nirwan Ansari and Nei Kato, 2009. "Robust and Efficient Stream Delivery for Application Layer Multicasting in Heterogeneous Networks", IEEE Transaction on Multimedia, 11(1): 166-176.

Mohamed Hefeeda, Cheng-Hsin Hsu and Kianoosh Mokhtarian, 2011. "Design and Evaluation of a Proxy Cache for Peer-to-Peer Traffic", IEEE Transaction on Computers, 60(7): 964-977.

Susie Wee, Xiaodong Zhang, 2007. "Sproxy : A Caching Infrastructure to Support Internet Streaming", IEEE Transactions on Multimedia, 9(5): 1062-1072.

Ulas, C. Kozat, 2009. Oztan Harmanci, Sandeep Kanumuri, Mehmet Umut Demircin and M. Reha Civanlar, "Peer Assisted Video Streaming With Supply-Demand-Based Cache Optimization", IEEE Transactions on multimedia, 11(3): 494-508.

Wei, Tu, Eckehard Steinbach Muhammad and Li. Xiaoling, 2009. "Proxy Caching for Video-on-Demand Using Flexible Starting Point Selection", IEEE Transactions on Multimedia, 11(4): 716-729.

Yong Liu, Yang Guo, Chao Liang, 2008. "A survey on peer-to-peer video streaming systems", Peer-to-Peer Networks and Applications, 1(1): 18-28.

Zhenyu, Li, Member, Gaogang Xie, Kai Hwang and Li. Zhongcheng, 2011. "Churn Resilient Protocol for Massive Data Dissemination in P2P Networks", IEEE Transactions on Parallel And Distributed Systems, 22(8): 1342-1349.

(1) Dr. T.Suresh and (2) Dr. A.M. Sameeullah

(1) Department of Computer Science & Engineering, Annamalai University Annamalainagar--608 002, Tamil Nadu, India.

(2) Department of Computer Science & Engineering, Sri Sairam Institute of Technology Sai Leo Nagar, West Tambaram,--600 044, Chennai, Tamil Nadu, India.

Corresponding Author: Dr. T.Suresh, Department of Computer Science & Engineering, Annamalai University Annamalainagar--608 002, Tamil Nadu, India.

COPYRIGHT 2015 American-Eurasian Network for Scientific Information
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2015 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Suresh, T.; Sameeullah, A.M.
Publication:Advances in Natural and Applied Sciences
Date:Sep 1, 2015
Previous Article:Preliminary phytochemical screening of five plant parts used in Bangladesh for treatment of rheumatoid arthritis.
Next Article:Relevant quality of service (QoS) factors in IPTV.

Terms of use | Privacy policy | Copyright © 2020 Farlex, Inc. | Feedback | For webmasters