You are on page 1of 6

2018 International Conference on Frontiers of Information Technology (FIT)

Performance Comparison of Chunk and Peer Scheduling Algorithms of Peer-to-Peer


Streaming Systems

Syed Saddam Hussain Shah, Naina Said1, Aysha Nayab, Waleed Khan, Zaryab Ali Shinwari, M. Jawad, Nasru Minallah
Department of Computer Systems Engineering (DCSE),
University of Engineering and Technology (UET)
Peshawar, Pakistan
1
Naina_dcse@yahoo.com

Abstract— With increasing popularity of Peer to Peer systems for peer. Scheduling is one of the most important performance
video streaming, it is important that the expectations of the users parameter for the evaluation of a P2P based system because,
regarding the quality of such systems are being met. In a P2P 1. It is among the main drivers of the performance of
system, the media stream is divided into small data units known
system.
as chunks. Each peer in a Peer to Peer (P2P) system has to take
two important decisions at a given time. First, which chunks are 2. The networking resources required for these systems
to be shared and second with which peer. This paper compares is large so efficiency is crucial and of great
the performance of different combinations of chunk/peer importance.
schedulers in terms of chunk diffusion delay, average chunk 3. Because of a topology of dynamic nature and tight
distribution delay and max chunk distribution delay. By doing so,
deadlines of the real time systems, robust and
the best possible combination of the two schedulers for the given
experimental setup is explored. The results obtained under the performing solutions are difficult to find.
specified experimental setup show that when chunk scheduling The purpose of implementing P2P streaming is to have
algorithm Deadline Based Chunk Scheduler (DLc) is combined scalability and as well as at the same time meet real-time
with different peer scheduling algorithms, the best results are playback requirements [1]. Some other serious challenges
obtained by its combination with Chunk Earliest Free Pair include long transmission delays as well as the poor quality of
Scheduler (CEFp). For a constant peer scheduler CEFp service [2]. Mesh pull algorithm is seen as one of the
combined with different chunk schedulers, the best results are promising solutions for peer to peer chunk scheduling by some
obtained by combining it with Latest Blind Chunk Scheduler
(LBc). Finally, with varying neighborhood size, the best results
of the researchers [3,4]. Another popular method is the
are obtained by the combination of DLC and Chunk Almost Free differentiated chunk scheduling [1]. While Luca Abeni et al.,
Peer Scheduler (CAFp). [5] discuss various combinations of peer and chunk scheduling
methods, commenting that most methods are not robust
Keywords— Peer to Peer systems; Chunk Scheduler; Peer enough to fulfill the needs of changing conditions. Proposing
Scheduler ; flexibility ; scalability; performance ; SSSim their own scheduling combination for heterogeneous
distribution of peers with fixed bandwidth, to achieve
I. INTRODUCTION robustness [6]. Yipeng, [7] proposes a simple stochastic model
The increasing growth of the video based services puts a high to analyze tradeoffs among buffer size, playback continuity
demand on the service providers to take into account the and the supported peer population. The authors in [3,4] study
quality expectations of the end users. In most researches, the the scheduling problem of pull based Peer to Peer streaming
researchers were more concerned to increase the perpetual application and consider the problem as an assignment
quality for the user by carefully selecting the Quality of problem. Thus in order to optimize the throughput and
Service (QOS) parameters. Some of these parameters were delivery of the system, they propose ArcShed, a new
video compression optimization and network bandwidth scheduling algorithm for layered video streaming. Similarly,
allocation. Even though optimizing and controlling the QOS they also propose NAasched for non-layered video streaming
parameters of a video transmission system is crucial for the [8]. The purpose of the proposed scheduling algorithm is to
increasing its performance, an even more important factor is to send request for the missing chunks in the sliding window of
evaluate the quality of the video from users perspective. This the receiver in an optimal fashion. This optimality concerned
type of evaluation is called Quality of Experience (QOE) of a the fact that the higher priority chunks are ordered first
video streaming system. However, QOE based assessment of a whereas the lower ones afterwards while taking full benefit of
video is difficult because the user experience is subjective and the networks capacity [9]. In the next sections we discuss
usually hard to quantify and measure. effects of scheduling on performance of P2P systems followed
One of the major challenge in P2P based video streaming by system model in section III, while experimental setup is
system is the scheduling strategy in a mesh based system explained in section IV and section V includes the conclusion
which due to their robustness and resilience are the most of this paper.
widely used. Video streams in P2P based systems are split into
small units known as chunks. Scheduling refers to the decision
that at a given point, which chunk would be sent to which

978-1-5386-9355-1/18/$31.00 ©2018 IEEE 361


DOI 10.1109/FIT.2018.00070
II. EFFECTS OF SCHEDULING ON PERFORMANCE OF P2P chunk first scheduling while applying Y first and X afterwards
SYSTEM is called peer first scheduling [11]. In mesh pull systems, each
Unstructured P2P system can be modeled as a set S= {P 1, chunk of media has a corresponding playback deadline.
P2,……,PN) of N peers Pi . The aim of all these peers is Therefore, the timely delivery of the chunks requires proper
receiving a media stream from the source peer. The media is video scheduling. Scheduling the transfer of information is
divided into small units Mc chunks. Each peer in the system one of the most important functions which affect the
receives chunk Cj from other peers and then sends the chunks performance of P2P system. First, the peers need to share the
out at a rate of S(Pi). information about their current status of the chunk buffer so
For P2P system, the content retrieval mechanism is that the scheduling can be enabled. This is a requirement for
responsible to allow the user to receive these data chunks from an unstructured topology (mesh) because in such system, the
other nodes by using the constructed overlay. This process stream does not strictly follow the overlay topology, such
plays a very important role in the streaming and has an effect information is shared by the help of scheduling messages
on the global performance of the system. Usually, there are which have already been discussed in the previous section.
two types of mechanism that are used for this process, push Regardless of the scheduling strategy that is being used, the
and pull based retrieval. Push method is used in Tree-based core function of the scheduler is to select the chunks for
systems, in which the parent peer push the data or media trading and the peer that would act as a target. In the context
content to the entire child nodes. As there is no specific of video streaming, scheduling is complicated because the
organization of peer in mesh-based systems, any peer can chunks which are received after video playback deadline are
blindly pushes the contents it has to the neighbor peers. A peer not played and are considered useless. An additional constraint
may receive the same chunk more than once from multiple called the layer dependency should be taken in consideration
peers which can result in redundancy. This problem is avoided in case of layered video which makes the task even more
by using Pull Method in mesh-based systems. In pull complicated. Therefore, in the layered video coding technique,
mechanism, the peers pull the requested media content from video gets encoded into a base layer as well as several
other peers. All the peers maintain buffer maps which contain enhancement layers, where a higher layer can be only be
information about the chunks a peer has. Peers exchange decoded if all related lower layers are available. This is called
buffer maps with each other. In case of a meshed based the layers’ dependency.
system, the way in which overlay is constructed satisfy some The arguments made so far explains the importance of
quality measures of the system. Some of these measures scheduling techniques for improving the performance of P2P
include increasing throughput and adding resilience and system. For a P2P system to be efficient, optimal scheduling
robustness to the system. However, it does not impose how the techniques are needed to be employed. Figure 1 below shows
overlay should be used. For instance, a particular node may the example of optimal chunk scheduling as given in [6]. As
have parent’s node having a very high upload bandwidth, but depicted in the figure 1, node 1 is the receiver node.
if they do not have suitable contents to send (chunks in this Therefore, it tries to request the missing chunks from the
case), the throughput that is obtained would be lower than nodes in its neighborhood 2, 3and 4.
what is expected or receiver nodes will receive useless
content. In another scenario where node is always requesting
chunks from a particular parent, it will be more prone to
failure if that parent departs. This will highly degrade the
quality of the video received. This implies the need for proper
scheduling techniques which dictate which data has to be
offered/requested from which peer. Once the overlay has been
built, the next step is the scheduling decisions. The receiver
node exchange information about the available data chunks
and also assign the task of assigning every neighbor a chunk.
For a P2P system to be efficient, the scheduling algorithm
must take full advantage of the available bandwidth while
taking into consideration the availability of particular chunks
in the neighborhood [9].
While streaming, chunks that need to be sent or received and
the peers with which such exchange is required are selected by
peers and chunks scheduler. Scheduling decisions depend on
the chunk trading protocols of the application. In Epidemic
approach the chunks are periodically sent to neighbors.
Therefore it requires the chunk scheduler for selection of
chunk to be sent and the peer scheduler for the selection of the
target peers [10]. Given an X chunk scheduler and Y peer Figure 1. Example of Optimal Chunk Scheduling [6]
Scheduler, applying X first and Y afterwards is known as

362
Chunks situation might not seem very realistic, it is found to relevant
1 2 3 4 5 for the theoretical point of view. This kind of system is
Nodes important to simulate when analyzing the performance of
different P2P scheduling algorithms. For this scenario, at time
2 1 1 1 0 1 t, a source generates a media chunk Cj and sends this chunk to
a peer. Every peer Pi also sends a chunk that it receives. Cj, to
peers Pk. All of these chunks are assumed to be received at
3 0 0 0 1 1 time t+1.
When a given peer receives a chunk Ch, it has to then select a
target peer Pj to which this chunk has to be sent. In addition,
the peer also has to select which chunk to send to other peers.
4 1 0 0 1 0
These type of decisions are taken by the peer scheduling and
the chunk scheduling algorithms implemented in the system.
For peer selection purposes, the target peers are not all the
peers from the set S but rather a small subset from S. This is
Figure 2. Optimal Chunk scheduling for figure 1 (0 represents missing called the neighborhood of the peer Pi. For our simulation
chunk while 1 represents an available chunk) [6] setup, the size of neighborhood is indicated by D.
The selection of chunk and peer scheduling techniques highly
Each neighbor node has a buffer map to express its available impact the performance of a P2P systems and therefore it is
chunks. The numbers written over the arc represent the valuable to evaluate the performance of different techniques
amount of bandwidth that each node can give to the receiver both in simulation as well as by analytical.
node in term of chunks per unit. Figure 2 shows the optimal For the purpose of performance evaluation of P2P systems, we
scheduling that is proposed for this particular example which applied different combination of chunk and peer schedulers
takes complete benefits of the available bandwidth. Chunk 1 is and the results are reported in terms of average distribution
requested from node 4, chunks 2 and 3 from node 2, while delay, maximum distribution delay and average diffusion
chunks 4 and 5 are requested from node 3. delay. For all these experiments, the chunk size is kept
constant at 1024 bytes. In order to simulate the real time
III. EXPERIMENTAL SETUP scenario, we perform these experiments using raw data
For the selection of appropriate simulator for evaluation of the thereby not restricting the type of dataset. In the first run, the
scheduling algorithms [14]. We need to consider some of the chunk scheduler is kept constant and different peer schedulers
most important factors of the simulators in order to obtain are combined with it. The results are generated with respect to
results that meet our requirement in reasonable time. increasing number of peers. The details of this run are given in
Following are some of the properties which have been table 1.
considered while selection of the simulator.
TABLE I COMBINATION OF DEADLINE BASED CHUNK
SCHEDULER WITH DIFFERENT PEER SCHEDULERS AND OTHER
x Flexibility SYSTEM PARAMETERS (RUN 1)
A simulator must have flexibility to modify existing and No of Peers = From 20 to 1010 , Neighborhood =20, No of
addition of new scheduling algorithms. Chunks=2000,Chunk Buffer =64
Chunk Peer Schedulers
x Scalability
Scheduler
It should have scalability in terms of simulation properties. Deadline based Chunk Free/Deadline Peer Scheduler (CFDp)
One can simulate a particular system with its particular Chunk Chunk Earliest Free Peer Scheduler (CEFp)
properties. Scheduler Chunk Most Deprived Peer Scheduler (CMDp)
(DLc) Chunk Useful Peer Scheduler (Cup)
x Performance Chunk Almost Free Peer Scheduler (CAFp)
It should be efficient in terms of memory consumption and
execution time For the second run, a single peer scheduler was selected and
then combined with different chunk schedulers with respect to
Based on the all of the factors and properties that need to be increasing number of peers. The results are obtained in terms
considered while selection of the simulator, we have selected of average distribution delay, maximum distribution delay and
SSSim [10] (Simple and Scalable Simulator) based on our average diffusion delay. The details of this run are given in
requirements. table 2.
The system is modeled as a set S = {P1,…, PN} of N peers Pi,
plus a special node Ps called source. The source is not included
in S and generates the chunks at fixed rate λ. Each peer P i
receives a chunk Cj from other peers and then sends this chunk
out to other peers at a rate S(Pi). In addition, it is assumed that
all the peers have infinite download bandwidth and also
infinite upload bandwidth as the source. Although this

363
TABLE 2 COMBINATION OF CHUNK EARLIEST FREE PEER
SCHEDULER WITH DIFFERENT CHUNK SCHEDULERS AND OTHER
SYSTEM PARAMETERS (RUN 2)
No of Peers = From 10 to 1010 , Neighborhood =20, No of
Chunks=2000,Chunk Buffer Size=64
Peer Scheduler Chunk Schedulers
Chunk Earliest Latest Utility Chunk Scheduler (Luc)
Free Peer Latest Blind Chunk Scheduler ( LBc)
Scheduler
(CEFp) Random Useful Chunk Scheduler (RUc)
Earliest Useful Chunk Scheduler (EUc)

For the third run, the number of peers were kept constant and
the neighborhood size is increased from 20 to 210 for all the Figure 3. Average chunk diffusion delays with respect to
Number of peers Deadline Based Chunk Scheduler
above mentioned combinations of chunk and peer schedulers.
The results are obtained in terms of average distribution delay,
maximum distribution delay and average diffusion delay. The
details of this run are given in table 3.

TABLE 3 COMBINATION OF DIFFERENT CHUNK/PEER


SCHEDULERS WITH VARYING NEIGHBORHOOD SIZE AND OTHER
SYSTEM PARAMETERS (RUN 3)
No of Peers = 1010 , Neighborhood =20 to 210, No of Chunks=2000,Chunk
Buffer Size=64
Constant Varying Schedulers
Scheduler
Chunk Earliest Latest Utility Chunk Scheduler (Luc)
Free Peer Latest Blind Chunk Scheduler ( LBc)
Scheduler Figure 4. Average chunk distribution delay with respect to number of peers
(CEFp) Random Useful Chunk Scheduler (RUc) through Deadline Based Chunk Scheduler
Earliest Useful Chunk Scheduler (EUc)
Deadline based Chunk Free/Deadline Peer Scheduler (CFDp)
Chunk Chunk Earliest Free Peer Scheduler (CEFp)
Scheduler
(DLc) Chunk Most Deprived Peer Scheduler (CMDp)
Chunk Useful Peer Scheduler (Cup)
Chunk Almost Free Peer Scheduler (CAFp)

IV. RESULTS AND DISCUSSION


As stated earlier, the results for all the runs are reported in
terms of Average Chunk diffusion delay, Average Chunk
Distribution delay and Maximum Chunk Distribution Delay. Figure 5. Max chunk distribution delay with respect to number of peers
The upcoming sub-sections gives details about the obtained through Deadline Based Chunk Scheduler
results.
A. DLc Vs different Peer Schedulers As shown in the graphs, for the first run, the highest average
chunk distribution delay with increasing number of peers was
The graphs for the cases where chunk scheduler is kept obtained by the combination of DLc/Cup and the lowest
constant (Deadline based scheduler) and various peer values of this metric was observed by DLc/CEFp combination.
schedulers are tried in combination to it, are shown in figure 3, In case of average chunk distribution delay, DLc/LUp
4 and 5. The graphs below show the curves which were combination yields high values constantly with increasing
obtained for these tests. As can be seen in the graphs, for number of peers whereas DLC/CEFp gives the lowest values.
different number of peers, DLc combined with CEFp gives the The same trends are also observed for max chunk distribution
lowest values for all three matrices while Cup gives the delay matric. Therefore, for the given parameters, the
highest values. The rest of the schedulers show fluctuating combination of DLC/CEFp is recommended. This is because
results for different number of peers. DLc selects the chunks which lie within the deadline for those
peers who request the required chunks first. Therefore, all the
peers have the required chunks on time thus reducing the
overall delays in the system

364
B. CEFp Vs different Chunk Schedulers EUc/CEFp whereas the lowest were obtained for LBc/CEFp
The graphs for the cases where peer scheduler is kept constant as in the first case. Finally, the same trends as for average
CEFp and various chunk schedulers are tried in combination chunk distribution delay were also obtained for max chunk
to it, are shown in figure 6,7and 8. The graphs below show the distribution delay. Therefore, for the given parameters, the
curves which were obtained for these tests. As can be seen in combination of LBc/CEFp is recommended. In absence of
the graphs, for different number of peers, CEFp combined DLc which selects the peer with shortest deadline and requires
with LBc gives the lowest values for all three matrices while a monitoring system for chunks, peer scheduler CEFp
LUc gives the highest values. combined with different chunk schedulers, the best results are
obtained by combining it with LBc which blindly sends latest
arrived chunks to the peer who made the request.

C. Chunk/Peer Schedulers Vs varying neighborhood size


The graphs for the case of varying neighborhood sizes with
different combinations of chunk and peer schedulers are
shown in figure 9,10and 11. The graphs show the curves
which were obtained for these tests. As can be seen in the
graphs, the lowest values of all the three matrices are obtained
by combination of DLc/CAFp. For varying neighborhood
sizes, CEFp combined with DLc gives the highest values
while the combination DLc/CAFp gives the lowest values for
average chunk diffusion delay. However, in case of average
Figure 6. Average chunk diffusion delays with respect to number of peers
through Chunk Earliest Free Pair Scheduler chunk distribution delay, the highest values are obtained for
CEFp/Luc and the lowest values are obtained for DLC/CAFp.
Finally, for maximum chunk distribution delay, DLc/Cup
yields the highest values while DLc/CAFp gives the lowest
values. Therefore, for the given parameters, the combination
of DLC/CAFp is recommended. This is because it selects
those peers for exchange which do not have chunks thereby
increasing the contribution of all the peers in the system.

Figure 7. Average chunk distribution delays with respect to number of peers


through Chunk Earliest Free Pair Scheduler

Figure 9. Average chunk diffusion delays with respect to neighborhood size

Figure 8. Max chunk distribution delay with respect to number of peers


through Chunk Earliest Free Pair Scheduler

For the second run, the combination of LUc/CEFp gave the


highest values of average chunk diffusion delay whereas the
lowest values were obtained for LBc/CEFp. In case of average
chunk distribution, the highest values were observed for

365
ACKNOWLEDGMENT
We are thankful for the support of IGNITE National
Technology Fund (formerly known as ICT and R&D)
REFERENCES
[1] Sanu C , Deepa S S,” Chunk Scheduling Strategies In Peer to Peer
System-A Review” International Journal of Advanced Research in
Computer Engineering & Technology (IJARCET) Volume 2, Issue 3,
March 2013
[2] Hatem Fetoh, Waleed M. Bahgat, Ahmed Atwan, “A Proposed Peer
Selection Algorithm for Transmission Scheduling in P2P-VOD
Systems”, (IJACSA) International Journal of Advanced Computer
Science and Applications,Vol. 6, No. 8, 2015
[3] Hongyun Yang, Ruimin Hu and Xuhui Chen,” Priority-based Chunk
Figure 10. Max chunk distribution delay with respect to neighborhood size Scheduling Algorithm for Large Scale P2P Live Streaming System,”
[4] Bradai, Abbas, and Toufik Ahmed. "On the Optimal Scheduling in Pull-
based Real-Time P2P Streaming Systems: Layered and Non-Layered
Streaming." arXiv preprint arXiv:1310.5557 (2013).
[5] Abeni, Luca, Csaba Kiraly, and Renato Lo Cigno. "Scheduling P2P
multimedia streams: Can we achieve performance and
robustness?." Internet Multimedia Services Architecture and
Applications (IMSAA), 2009 IEEE International Conference on. IEEE,
2009.
[6] V. Agarwal and R. Rejaie, “Adaptive multi-source streaming in
heterogeneous peer-to-peer networks,” in Proc. of ACM/SPIE
Multimedia Computing and Networking (MMCN’05), San Jose, CA, pp.
13–25, January 2005.
[7] Yipeng Zhou, Dah-Ming Chiu, “A Simple Model for Chunk-Scheduling
Strategies in P2P Streaming,” IEEE/ACM TRANSACTIONS ON
Figure 11. Average chunk distribution delays with respect to NETWORKING, VOL. 19, NO. 1, FEBRUARY 2011.
Neighborhood size [8] Y. Zhou, T. Z. Fu, and D. M. Chiu, “A unifying model and analysis of
p2p vod replication and scheduling,” IEEE/ACM Transactions on
V. CONCLUSION Networking, vol. 23, no. 4, pp. 1163–1175, 2015.
[9] M. Meskovic, M. Kos, and A. Meskovic, “Optimal chunk scheduling
This research study explored different combination of algorithm based on taboo search for adaptive live video streaming in
peer/chunk scheduling algorithms for a peer to peer system. cdn-p2p,” in Software, Telecommunications and Computer Networks
Three different runs of experiments were performed and the (SoftCOM), 2015 23rd International Conference on. IEEE, 2015, pp.
205–209.
results are reported in terms of chunk diffusion delay, max
[10] Y. Zhou, T. Z. Fu, and D. M. Chiu, “A unifying model and analysis of
chunk distribution delay and average chunk distribution delay. p2p vod replication and scheduling,” IEEE/ACM Transactions on
When chunk scheduling algorithm (DLc) is combined with Networking, vol. 23, no. 4, pp. 1163–1175, 2015.
different peer scheduling algorithms, the best results are [11] Abeni, Luca, Csaba Kiraly, and Renato Lo Cigno. "SSSim: a Simple
obtained by its combination with CEFp. This is because DLc and Scalable Simulator for P2P Streaming Systems." CAMAD. 2009.
selects the chunks which lie within the deadline for those
peers who request the required chunks first.. Therefore, all the [12] Bin Cheng,Research on “Data Dissemination for Peer-to-Peer Video-on-
Demand Systems,” Ph.D Dissertation, Huazhong University of Science
peers have the required chunks on time thus reducing the and Technology, 2009,54-58.
overall delays in the system However, this combination
[13] 11 Robert Birke, Csaba Kiraly, Emilio Leonardi et al.,Hose” Rate
requires that the deadline of all the chunks be monitored . In Control for P2p-Tv Streaming Systems””.2011 IEEE International
absence of such monitoring system, peer scheduler CEFp Conference on Peer- to-Peer Computing (P2P) IEEE Press, New
combined with different chunk schedulers, the best results are York(2011), 202-205.
obtained by combining it with LBc which blindly sends latest [14] 12 Hefeeda, M., Habib, A.,Collectcast: “A Peer-to-Peer Service for
arrived chunks to the peer which made the request. Finally, Media Streaming”. J. ACM/Springer Multimedia Systems. 11:1(2005),
68-81.
when neighborhood size is taken into account the best results
[15] Chao, L., Yang, G., Yong, L.,”Is Random Scheduling Sufficient in P2p
are obtained by the combination of DLc/CAFp. So we Video Streaming?” The 28th International Conference on Distributed
conclude that the optimal combination of chunk and peer Computing Systems, IEEE Press, New York (2008), 53-60.
scheduler depends on system requirements.

366

You might also like