0% found this document useful (0 votes)
93 views6 pages

A Cloud-Assisted P2P Video Streaming Architecture For Scalable Video Coding

Cloud computing and peer-to-peer live video streaming are important research topics. Unstable wireless data transmission and peers' joining and leaving behaviors affect users' willingness to watch online videos. A cloud-assisted P2P streaming system is proposed for providing smooth video streaming services to mobile users.

Uploaded by

SDIWC
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
93 views6 pages

A Cloud-Assisted P2P Video Streaming Architecture For Scalable Video Coding

Cloud computing and peer-to-peer live video streaming are important research topics. Unstable wireless data transmission and peers' joining and leaving behaviors affect users' willingness to watch online videos. A cloud-assisted P2P streaming system is proposed for providing smooth video streaming services to mobile users.

Uploaded by

SDIWC
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

A Cloud-assisted P2P Video Streaming Architecture for Scalable Video Coding


Tz-Heng Hsu and Lin-You Wu
Department of Computer Science and Information Engineering
Southern Taiwan University of Science and Technology
No. 1, Nan-Tai Street, Yungkang Dist., Tainan City 710, Taiwan R.O.C.
[email protected]

ABSTRACT
Cloud computing and peer-to-peer live video
streaming are important research topics of Internet
multimedia services. Due to the unstable wireless
data transmission and peers' joining and leaving
behaviors, users often suffer long waiting time and
sudden interrupted downloads, thereby affecting the
willingness to watch the online videos. In this paper,
a cloud-assisted P2P video streaming system is
proposed for providing smooth video streaming
services to mobile users. Simulation results show
that the proposed cloud-assisted P2P streaming
system can provide smooth video streaming
services to mobile users with low-cost than
traditional video streaming approaches.

KEYWORDS
Cloud Computing, P2P Network, Video Streaming.

1 INTRODUCTION
Users want to watch videos anytime,
anywhere, on any computers or mobile devices.
To satisfy users needs, videos need to be
compressed to reduce the size of video bitrates
with or without reducing quality. Scalable
video coding (SVC) technique aims to resolve
problems of multimedia communication
between servers and various clients with
different computational power, transmission
bandwidth, and display resolution. Scalable
video coding (SVC) has three scalable features:
temporal, spatial, and quality scalability. In
SVC, a video bitstream contains a base layer
and several enhancement layers. Different
multimedia services have different bandwidth

ISBN: 978-1-941968-16-1 2015 SDIWC

requirements. SVC enables the content provider


to adapt the bandwidth (BW) of clients by
extracting and sending different video layers.
Peer-to-peer (P2P) networking techniques
can save a lot of bandwidth costs of content
providers by sharing the bandwidth and video
transmissions among the users. However, peers
usually unexpectedly join and leave the peer-topeer networks, which causes the packet loss and
transmission unstable. Cloud computing
provides a solution for delivering video
contents to different devices in heterogeneous
mobile
networks.
Powerful
computing
capability, storage space, and network
bandwidth resources seem to solve all the
problems of Internet multimedia services.
However, cloud computing vendors charge
users according to the processor time, storage
space, and network bandwidth. Compared to
the free resource sharing among peers in P2P
networks, cloud computing has higher cost for
obtaining the powerful computing resources.
In this paper, a cloud-assisted P2P video
streaming system is proposed for providing
smooth video streaming services to mobile
users. Cloud technologies with powerful
computing resources can speed up the process
of scalable video coding. On the other hand,
P2P network techniques can lower the
transmission costs. The proposed architecture
strengthens the stability of the video streaming
transmission and improves the quality of
service (QoS) of Internet multimedia services
via cloud computing and P2P network
techniques. Simulation results show that the
proposed cloud-assisted P2P streaming system
can provide smooth video streaming services to

89

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

mobile users with low-cost then traditional


video streaming approaches.
The remainder of this paper is organized as
follows: Related works are introduced in
Section 2. In Section 3, the proposed system
architecture is described. Section 4 depicts the
details of the simulation results. Section 5
comprises the conclusion.
2 RELATED WORKS
This section introduces cloud computing
technologies and explores P2P video streaming
literatures.
MapReduce is a software framework for
processing vast amounts of data in-parallel on
large clusters in a reliable and fault-tolerant
manner [1]. There have been scholars proposed
cloud services for image and video transcoding.
In [2], Rainer and Matthias proposed an
approach that utilizes the MapReduce
programming model for the processing of
audiovisual content. The implementation relies
on Apache Hadoop. Meanwhile, the proposed
approach automates data compression and
decomposition by using native codec libraries
and parallel processing based on file partitions,
which speeds up execution time and data
throughput. Experiment results show that the
proposed system can dramatically reduce the
video processing time. In [3], Lee et al.
proposed
a
MapReduce-based
image
conversion module in cloud computing
environment for reducing the burden of
computing power. The proposed image
conversion module can process image data in
distributed and parallel cloud computing
environments,
thereby
minimizing
the
computing infrastructure overhead.
In [4], Kim et al. proposed SMCCSE
(Social Media Cloud Computing Service
Environment) that supports the development
and construction of Social Networking Service
(SNS) based on large amounts of social media
including audio, video, and image in earlier
publication. The authors introduced a partially
functional image conversion module based on

ISBN: 978-1-941968-16-1 2015 SDIWC

Figure 1. The proposed system architecture

Hadoop in SMCCSE, which is able to reduce


the executing time for converting image
datasets into specific formats suitable for
various devices. In [5], Payberah et al. proposed
a cloud-assisted P2P live streaming system
named CLIVE that rents cloud resources
(helpers) on demand to increase the amount of
total available bandwidth and the probability of
receiving the video on time. CLIVE estimates
the available capacity in the system through a
gossip-based aggregation protocol and provides
the required resources from the cloud to
guarantee a given level of QoS at low cost.
3 SYSTEM ARCHITECTURE
Figure 1 shows the proposed video
streaming architecture based on cloud
computing and P2P mesh overlay network
technologies. At first, a video content provider
uploads a video into a cloud storage space; the
cloud service controller then notifies Hadoop's
Master/Reducer nodes to split the video into
segments and to transcode the video into SVCcoded format. A video segment is transcoded
into base layer and enhancement layers; the
transcoded video segments with different layers
are then merged back to the cloud storage space.
After the start-up segment is transcoded, the
cloud service controller launches cloud
streamers to deliver the transcoded video

90

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

streams to peers. The cloud streamers deliver


video data according to the requirements of
video layers, which can be classified into (1)
base layer cloud streamer and (2) enhancement
layer cloud streamer. By using the start-up
segment transcoding first algorithm, the cloud
streamers can start video steaming as soon as
the first transcoded segment is ready.
Figure 2 illustrates the timing diagram of
the proposed cloud-assisted live streaming
architecture, where Tstartup_delay denotes the
waiting time required by a peer to receive the
first byte of video streaming data after initiating
the transcoding on the cloud; Ttransmission_delay
denotes the waiting time required by the peer to
receive the first byte of video streaming data
after initiating the video transmission from the
cloud; Ttranscode denotes the SVC transcoding
time require by the Hadoop's Master/Reducer
nodes; Ts denotes the time that start of first
video segment transcoding on the Hadoop's
Master/Reducer nodes; Te denotes the time that
end of first video segment transcoding on the
Hadoop's Master/Reducer nodes; Tcloud_root
denotes the transmission time that a subtree
root node receives first byte of video streaming
data from cloud streamers; Tr denotes the time
that the subtrees root peer receives first byte of
video streaming data; Tpeer denotes the
transmission time that the peer receives first
byte of video streaming data from other peers;
Tp denotes the latest time that the peer receives
first byte of video streaming data from other
peers; Tcloud_patching denotes the transmission
time required for that the peer to recover lost
video streaming data from the cloud patching
streamer; Tw denotes the latest time that the
peer starts to watch video.
The transcoding time Ttranscode of the first
video segment is starting from Ts to Te. Assume
that the bandwidth from cloud streamers to the
subtrees root peer is denoted as BWcloud_root
and the average size of a transcoded video
frame is denoted as Fsize , then the time of
Tcloud_root can be calculated as TPropagation
+Fsize/BWcloud_root, where TPropagation denotes the
time required for a data byte to travel from the

ISBN: 978-1-941968-16-1 2015 SDIWC

Figure 2. The timing diagram of the cloud-assisted


live streaming architecture.

cloud to the subtrees root peer. While


transmitting a video stream, some packets of
video frames may be lost due to various
wireless network conditions, e.g., random
channel errors. Within the Tpeer time, adjacent
peers that have different video frames can
provide the missing video data to deal with
video frames loss via push-pull transmission
approach. A peer can send requests for
retransmission of lost video frames to multiple
parents or siblings.
In the proposed cloud-assisted live
streaming architecture over mesh-based P2P
overlay networks; there have multiple delivery
trees that deliver different layers of video
streams simultaneously to different peers.
Auxiliary cloud streaming servers, named cloud
patching streamers, are used to provide lost
video frames when the time difference between
current point-of-download and point-of-playout
is less than the Tcloud_patching threshold value. The
cloud patching streamer can complement
missing video frames to prevent the playback
interrupt caused by insufficient video frames in
the users play-out buffer.
3.1 Modeling of Mesh-based P2P Overlay
Network
According to researches on mesh overlay
adaptions [6][7], underutilizing the available
upload bandwidth at peers limits the network
throughput of completely random mesh
overlays, which may reduce video streaming
rates and the corresponding video quality. In [8],

91

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

Biskupski et al. optimize the network


throughput of mesh overlays with the
requirements of that each peer maintains two
sets of neighbors: children and parents. The
network throughput is optimized in such a
directed mesh overlay when each peer has a
constant number of parents and has a number of
children proportional to its upload bandwidth.
The authors analyze properties of diffusion
trees and compare them to those of multipletree-based overlays. In this paper, we adopt the
tree-based view of mesh overlays in [8] to
model the peers behaviors under the cloud.
Mesh overlays are vibrant and dicult to
analyze. Assume that the bandwidth of all peers
remain constant over time and that the chunk
selection algorithm is deterministic, meshes can
be understood as a structure of multiple
delivery trees. Assume that all peers have the
same upload capacity in a homogeneous
environment, optimal K distribution trees can
be created by placing each peer as an inner
node in exactly one tree and as a leaf node in
the other K 1 trees [8]. In the optimal K
distribution trees, the out-degree d of each peer
is equal to K. Assume that there are M nodes in
the original mesh overlay, these nodes will be
mapped and expanded into N nodes in the
optimal K distribution trees, where N = d*(M1)+1. The height of a balanced homogeneous
tree is defined as:
H(d, N) logd d 1 * N 1 1 (3.1)
Assume that a peer's average upload
bandwidth is denoted as Uploadavg, the average
upload bandwidth is equal to
upload (3.2)
N

Upload

avg

( N 1)

Since the root peer only uploads video


frames, the average upload bandwidth is
divided by N-1. When the upload bandwidth of
each peer is saturated and the upload rate of
each link is the same, the average upload
bandwidth of each parent of a peer is equal to
(3.3)
upload
N

Parent

avg

Let Fsize denote the average video frame


size, Tframe denote the average transmission time
for a video frame on a link, which is equal to
(3.4)
* ( N 1) * K
T

frame

F
Parent

size

avg

F
upload
size
N
i

According to equations (4.1) to (4.4), the


average transmission delay of a video frame
from root to the leaf node in the distribution
tree is equal to
H (d , N ) * F * K * ( N 1) (3.5)
Delay

size

upload
N

While a mobile peer is watching a video


stream, the peer will use the push-pull
mechanism to request the desired video frame
from other peers if there doesnt have enough
video frames in the peers play-out buffer.
When the time difference between current
point-of-download and point-of-playout is less
than the Tcloud_patching threshold value at the
watching peer, the peer can send a patch
request to the cloud patching streamer for
complementing the missing video frames in
order to prevent the playback interrupt caused
by insufficient video frames in the peers playout buffer.
Patching streamers are bounded by the
time available to the dissemination process.
Assume that a video frame f is generated at
time t(f) at the cloud, the video frame must be
played at peers no later than t(f)+Ttransmission_delay.
Otherwise, users will have bad watching
experience. Meanwhile, the video frame f is
available at a root peer at time t(f)+Tcloud_root,
and it should be available in the play-out buffer
of a watching peer by time t(f)+Ttransmission_delayTcloud_patching, otherwise the video frame f will be
downloaded from the patching streamer. The
lifetime of a video frame from the cloud to the
peer is equal to:
T T
T transmission _ delay T
(3.6)
cloud _ root

peer

cloud _ patching

4 PERFORMANCE EVALUATION

( N 1) * K

For gathering simulation parameters, the


Joint Scalable Video Model (JSVM) software,

ISBN: 978-1-941968-16-1 2015 SDIWC

92

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

developed by the Joint Video Team (JVT) [9],


is used to encode and decode the video files.
For scalable video coding, JSVM can encode a
high quality video bit stream with one or more
low-quality video sub-streams. In default, the
JSVM decoder only extracts the highest quality
layer included in a video file. The proposed
system uses the JSVM BitStreamExtractor tool
to extract the base layer and enhance layers for
further video delivery. Users can switch to
suitable layers to watch the video bit stream
according to their bandwidth conditions.
FFmpeg is a project with programs that
can be used to convert many multimedia
formats to different formats. FFProbe is a
simple multimedia streams analyzer based on
the FFmpeg project. The extracted base layer
and enhanced layer are then segmented and
analyzed by FFmpeg and FFprobe tools [10].
The experiment uses test video sequences with
different resolutions, CITY 704x576 (4CIF)
and CITY 352x288 (CIF) [11], for scalable
video coding.
The simulation relies on the assumptions
outlined in Section 3. In the simulation
environment setup, the peer number changed
from 5,000 to 35,000 for investigating the
system performance. The upload bandwidth of
a cloud streamer is set to 100Mbps; all peers
have 8 upload slots, the upload and download
bandwidth of a peer is set to 500kbps; a BL
video frame size of low resolution is set to
13kbps and an EL video frame size of high
resolution is set to 38kbps. For performance
comparisons, each streamer is set to serve up to
5,000 connections. In the cloud environment, a
BL streamer can serve more peers than an EL
streamer due to the bandwidth requirement of a
low-resolution video frame is less than a highresolution video frame; therefore, a BL
streamer and two EL streamers are set to
cooperatively serve the peers requests.
Figure 3 shows the average transmission
delay, compared with client-server, pure P2P,
and cloud-assisted P2P architectures. Cloudassisted P2P (30%) means the simulation of
that 30% of all peers cannot download video

ISBN: 978-1-941968-16-1 2015 SDIWC

Figure 3. The data transmission delay.

streaming due to network errors. In Figure 3, it


shows that the client-server architecture cannot
serve more than 5,000 nodes due to the
environment setting, i.e., a streamer is set to
serve up to 5,000 connections. In the clientserver architecture, the servers work load has
exceeded its capacity; therefore, the average
transmission delay is unable to be calculated for
node number over 5,000. The average
transmission delay of the pure P2P architecture
is higher than that in other architectures. When
the number of peers increases, coupled with the
limited bandwidth, resulting in gradually
increasing of transmission delay in pure P2P
architecture. In real network environment, the
waiting time to select a relay node can be quite
long and a large number of unnecessary probes
are generated, which increases the network
transmission delay in pure P2P architecture.
5 CONCLUSIONS
In this paper, we present a cloud-assisted
P2P video streaming system that supports the
SVC-coded videos. When the cloud streamers
receive requests for different quality of video
transmissions from different root peers in
underlying P2P networks, the cloud streamers
transmit different video frames, i.e., a base
layer and more enhanced layers, to different
root peers and then these root peers forward the
different video frames to their children's peers.
Performance evaluations show that the
proposed cloud-assisted P2P architecture can

93

Proceedings of The Fourth International Conference on Informatics & Applications, Takamatsu, Japan, 2015

have shorter transmission delay than that in the


pure P2P architecture. Pure P2P and cloudassisted P2P architectures have same data
throughput because of the virtue of P2P
scalability. Compared with client-Server, pure
P2P, and cloud-assisted P2P architectures,
simulation results show that the proposed
cloud-assisted P2P streaming system can
provide smooth video streaming services to
mobile users with low-cost then traditional
video streaming approaches.

and Interoperable Systems,Vol. 5053, 2008, pp. 126139.


[9] JSVM
Software Manual http://ube.ege.edu.tr/
~boztok/JSVM/SoftwareManual.pdf, 2014.
[10] ffprobe
Documentation, http://www.ffmpeg.org/
ffprobe.html, 2014.
[11] Xiph.org Video Test Media [derf's collection]
https://media.xiph.org/video/derf/, 2014.

ACKNOWLEDGMENTS
This research is supported by the Ministry of
Science and Technology of the Republic of
China under the grant MOST 103-2221-E-218 018 -.
REFERENCES
[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

The Apache Software Foundation, MapReduce


Tutorial,
https://hadoop.apache.org/docs/r1.2.1
/mapred_tutorial.html, 2014.
Rainer, S., Matthias, R., An Approach for
Processing Large and Non-uniform Media Objects
on MapReduce-Based Clusters, SpringerLink For
Cultural Heritage, Knowledge Dissemination and
Future Creation, Vol. 7008, 2011, pp. 172-181.
Lee, H., Kim, M., Her, J., Lee, H., "Implementation
of MapReduce-based Image Conversion Module in
Cloud Computing Environment," 2012 International
Conference on Information Networking (ICOIN),
pp.234,238, 1-3 Feb. 2012
Kim, M., Lee., H., Cui, Y., "Performance Evaluation
of Image Conversion Module Based on MapReduce
for Transcoding and Transmoding in SMCCSE,"
2011 IEEE Ninth International Conference on
Dependable, Autonomic and Secure Computing
(DASC), pp.396,403, 12-14 Dec. 2011.
Payberah, A. H., Kavalionak, H., Kumaresan, V.,
Montresor, A., Haridi, S., CLive:Cloud-Assisted
P2P Live Streaming, IEEE 12th International
Conference on Peer-to-Peer Computing(P2P), pp.
79-90, 2012.
Biskupski, B., Cunningham, R., Dowling, J., Meier,
R. High-bandwidth Mesh-based Overlay Multicast
in Heterogeneous Environments, the 2nd
International Workshop on Advanced Architectures
and Algorithms for Internet Delivery and
Applications (AAA-IDEA), pp. 1-7, 2006.
Biskupski, B., Cunningham, R., Meier, R.
Improving Throughput and Node Proximity of P2P
Live
Video
Streaming
Through
Overlay
Adaptation, Ninth IEEE International Symposium
Multimedia (ISM), pp. 245-253, 2007.
Bartosz, B., Marc, S., Pascal, F., Rene, M., TreeBased Analysis of Mesh Overlays for Peer-to-Peer
Streaming, SpringerLink Distributed Applications

ISBN: 978-1-941968-16-1 2015 SDIWC

94

You might also like