Demand Streaming Using Peer Cache Adaption

Print   

02 Nov 2017

Disclaimer:
This essay has been written and submitted by students and is not an example of our work. Please click this link to view samples of our professional work witten by our professional essay writers. Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of EssayCompany.

using Peer Cache Adaption

Abstract— Video-On-Demand (VOD) becomes much more popular on the Internet, such as online theatres and news websites. Since VOD consumes large bandwidth, traditional solutions can only serve very limited number of concurrent demands. So there have been many proposals of systems, mostly based on a peer-to-peer (P2P) solution, to solve this issue. Even though many P2P VOD approaches are proposed, they have not considered the server’s upload bandwidth constraint. In this paper, an Internet P2P VOD with caching on peers is proposed. The number of caches for a segment is made proportional to its request rate so that the upload load for each cache of a segment is the same. The cache capacity of each peer is made proportional to its segment request rate to achieve fairness between upload and download amounts. The cache capacity at each peer is decided by considering the server’s upload bandwidth constraint. A simple distributed reputation and monitoring system is designed to detect selfish peers.

Keywords— Video on-Demand, Peer-to-Peer, Cache adaption, Cache capacity, Selfish Peers

Introduction

As the popularity of broadband internet access increased the number of users who are interested in media streaming services also increased. Streaming media is multimedia that is constantly received by and presented to an end user while being delivered by a provider. Simply video streaming is the process of providing video data or content via a web page. There are two ways to view media on the internet: Downloading and streaming [1]. In downloading, the entire file is saved on your computer (usually in a temporary folder), which you then open and view. But here the user has to wait for the whole file to download before any of it can be viewed. In streaming the end user can start watching the file almost as soon as it begins downloading. In effect, the file is sent to the user in a (more or less) constant stream, and the user watches it as it arrives, no waiting is involved. This true streaming can be used to broadcast live events. There is also a hybrid method known as progressive download. In this method the video clip is downloaded but begins playing as soon as a portion of the file has been received. This progressive download or progressive streaming is the basis for Video-on-Demand Streaming. Video-on-Demand (VoD) is an interactive multimedia service which should enable users to start watching the video of their choice at the time of their choice, after waiting for a small startup delay, and perform VCR-like control operations such as play, pause, fast forward, fast search, reverse search and rewind, while downloading the video in parallel.

Traditional CDN systems offer a means for media delivery and streaming, but they are rather expensive to build and to maintain, and they also pose a significant performance challenge in terms of scalability and service delay as the number of clients increases. P2P technologies have been applied to support the VoD systems to solve this issue. P2P systems allows for extended network coverage in the absence of IP multicast or expensive CDNs. Advantage of P2P systems resides in their ability for self organization, bandwidth scalability, and network path redundancy, which are all very attractive features for effective delivery of media streams over networks. . P2P VOD is scalable and highly cost-effective but do not guarantee high-quality streaming service because of the quality of available data and because the capacities of peers can be heterogeneous and their availabilities can be transient. Mesh-based overlays are based on self organization of nodes in a directed mesh that is used for media delivery to clients. The original media content from a source is distributed among different peers. A peer is connected to the mesh through one or more parent peers, where it retrieves media information, and to a set of child peers to which it serves media packets. The advantages of such architecture reside in the low cost and simplicity of structural maintenance, and in the resilience of the topology to node failure or departure, due to the increased probability of available distinct network paths.

Mesh based Peer to Peer Video on-Demand Streaming approaches can be classified into two: Single Video Approaches and Multiple Video Approaches

In Single Video Approach a single video is requested by several peers at a time. As the number of concurrent requests increases server cannot support the demands of various peers.

In Multiple Video Approach a peer stores videos that have been watched before. A peer first contacts its neighbours when it wants to watch a video, to find it from their caches. Here the upload burden of the server is shared by many other peers. But the previous works based on the multiple video approaches have not considered the server’s upload bandwidth constraint, which is crucial to solve the scalability problem. The fairness in terms of the upload and download amounts has not been studied either, which will permit selfish peers to ride the system freely.

In this paper peer cache adaption is proposed to resolve these problems. It is a novel mesh-based P2P VoD streaming system with a multiple video approach. The server provides each peer with videos and each video consists of many short segments. Each peer caches the segments it watched at its local storage and a distributed hash table (DHT) is used for searching segments interested. To enable each peer to adjust its cache capacity in a distributed manner to meet the server upload constraint and achieve the fairness a cache replacement algorithm is proposed. This new algorithm designs the number of caches of a segment to be proportional to its popularity. So the upload load for each cache of a segment is the same regardless of its popularity.

The fairness between the amounts of upload and download can be achieved if each peer’s cache capacity is proportional to its segment request rate. Each peer’s cache capacity is determined adaptively to meet the server’s upload bandwidth constraint. Selfish peers may not follow the suggested protocol intentionally to increase their payoff. A simple distributed reputation and monitoring system is proposed to detect such selfish peers. Also peer listing all videos which has higher demand and higher popularity (ie most request from the peers) is proposed. Peer listing videos is done based on the availability. The availability of more seeds is maintained in the proposed method.

Related Work

BiToS is a single video approach that basically uses BitTorrent [2]. BitTorrent enables to reproduce a file by exchanging segments with neighbours. In BitTorrent, as the segments for a video may be downloaded in out-of-order, the video cannot be played until the download is complete. So BiToS modifies its segment selection mechanism to choose segments close to the current played one with high priority, which enables a video to be played while downloading.

BASS is also based on BitTorrent where peers exchange segments with each other using BitTorrent [3]. In BASS an external media server is introduced from which, peers download segments in order skipping the segments that have been already downloaded by BitTorrent.

In BulletMedia, all the segments of a video are replicated by overlaying in advance [4]. Distributed hash table DHT is used to locate and download the segments. Digital versatile disk (DVD)-like fast forward and random search functionalities are supported. But in the single video approach the server upload bandwidth should be proportional to the number of concurrently requested videos. This will causes scalability problem.

Multiple video approaches have been proposed to overcome this issue. In multiple video approaches the upload burden of the server is shared with peers. The peer cache scheme is first used by pcVoD [5]. When a peer wants to download a video, it first contacts a tracker. This Tracker provides the address of a peer who caches the video. Then the video is downloaded from that peer.

Push-to-peer is a content placement algorithm that improves content availability and uses each peer’s uplink bandwidth more in a controlled environment [6]. The relationship between the number of peers, the number of videos, and the cache capacity at each peer assuming stationary popularity of the videos in the system was formulated in statistical modelling [7]. But if peers are under the control of a content provider then only this model can be applied.

A content placement strategy to maximize peers’ uplink bandwidth in P2P VoD systems was proposed in optimal content placement [8]. But this method does not consider the fact that peers tend to provide their resource as small as possible.

VMesh which is a scheme close to each peer uses a part of its local storage to cache videos [9]. But in VMesh each peer’s cache size is fixed and the same for all the peers.

All these works have not considered the constraint of the server upload bandwidth. P2P VoD using Peer Cache Adaption tries to meet the server’s upload bandwidth constraint and tries to balance the upload and download amounts of each peer. A selfish peer can easily abuse the network to download much more compared to the amount it uploads if the un-balance is allowed without any restriction. A novel reputation and monitoring system is developed to detect such users.

Proposed System

Structure

The system consists of a video server. Each video is divided into several segments of same length (Bytes). Each video has a unique videoID (32 bits) and each segment has a unique segmentID (48 bits). segmnetID consists of a videoID (32 bits) and a segmentNo (16 bits). When a peer wants to watch a video it makes a request to the system and a search is done among the participating peers. A distributed hash table based search is proposed to implement this. If the requested peer is not cached at any peer then that segment must be directly served by the video server. To accommodate this new segment an existing cache must be replaced. For this a novel cache replacement algorithm is proposed. To meet server’s upload bandwidth constraint cache capacity is decided adaptively. To detect and delete selfish peers in the system a monitoring method is also proposed.

Distributed Hash Table Based Search

The lookup function is implemented using a hash table. System searches for peers that caches desired segments using a distributed hash table (DHT). A peer that stores a corresponding value to the hash key is selected by the DHT.

When Peer A requests for segment i, it first finds a Peer L which manages the list of peers that caches segment i. Then Peer L picks up a Peer B from the list in a round robin way to balance the load at each peer and notifies the result to Peer A.

Now Peer A will search Peer B first for some other segments of the same video. This correlative search technique will reduce search overhead. If Peer A stores a segment, it can store some other segments of the same video with high probability.

When request for a segment is received, all the peers that cache that segment can be listed using search DHT. So availability of seeds can be listed. While downloading a segment a peer can see a list of peers from which it can download subsequent segments of the same video. This peer listing is also implemented using search DHT.

Cache Replacement Algorithm

The request rate of a segment i (Ri) is proportional to the popularity of it (Pi). So a peer which caches a popular video gets more requests. To balance the upload load, the number of cache (ni) for a segment is designed to be proportional to its request rate [10]. When a segment is requested a new cache is created for that segment. So cache creation rate is proportional to Ri. At steady state cache creation rate is equal to cache deletion rate. When a cache replacement is needed, a peer finds all the caches for each cached segment through DHT and a cache is selected in such a way that cache creation rate is proportional to cache deletion rate.

To avoid DHT lookup overhead, local information from Peer L that manages list of peers for each segment can be used.

Decision of Cache Capacity

The cache capacity of a peer is denoted as Cmax when its request rate is 1. Cache capacity of Peer A (CA) is calculated as: CA= RA Cmax. The minimum Cmax is calculated by considering the server’s upload bandwidth constraint. Since R is time varying, Server periodically updates the value of Cmax and the peers are notified.

Monitoring System

A monitoring DHT is used to monitor the upload and download requests. The unique ID, IP address of each peer is hashed using (2m+1) hash functions. The (2m+1) peers thus obtained become the monitors for that peer. Each monitor has an upload counter and a download counter. When Peer A requests segment i, Peer L returns a result as Peer B. At the same time Peer L sends a START message to the monitors of Peer A and Peer B to inform that a request is generated. The monitors of Peer A and B increments the download and upload counters by 1, respectively. Each monitor computes the ratio of upload to download counts. If this ratio is less than Sr that monitor will send a SUSPICIOUS message to the server. Sr is calculated periodically based on the ratio of upload to download count at each peer in the system.

On receiving SUSPICIOUS messages about a peer from more than (m+1) monitors for Peer B, the server decides Peer B does not follow the rule in allocating cache capacity and Peer B is eliminated for some time. If a monitor for Peer B failed to send a SUSPICIOUS message, server assumes that it does not work properly and eliminates it for a while.

Conclusions

A novel cache replacement algorithm and a cache decision method are proposed to meet server’s upload bandwidth constraint. Fairness between upload and download amounts at each peer can be achieved using the proposed system. Peer listing and availability of seeds can be listed using a search DHT. A simple monitoring system is proposed to detect and delete selfish peers.

Acknowledgment

First and foremost, I praise and thank GOD ALMIGHTY for the spiritual support and blessings bestowed on us throughout my work.

I express my sincere thanks to my guide Mrs. Minu Lalitha Madhav for her support throughout this work.

I would like to extend my gratitude to the anonymous referees for their extremely useful comments on an earlier draft of this article.



rev

Our Service Portfolio

jb

Want To Place An Order Quickly?

Then shoot us a message on Whatsapp, WeChat or Gmail. We are available 24/7 to assist you.

whatsapp

Do not panic, you are at the right place

jb

Visit Our essay writting help page to get all the details and guidence on availing our assiatance service.

Get 20% Discount, Now
£19 £14/ Per Page
14 days delivery time

Our writting assistance service is undoubtedly one of the most affordable writting assistance services and we have highly qualified professionls to help you with your work. So what are you waiting for, click below to order now.

Get An Instant Quote

ORDER TODAY!

Our experts are ready to assist you, call us to get a free quote or order now to get succeed in your academics writing.

Get a Free Quote Order Now