- Access to this full-text is provided by Hindawi.
- Learn more
Download available
Content available from Journal of Computer Networks and Communications
This content is subject to copyright. Terms and conditions apply.
Hindawi Publishing Corporation
Journal of Computer Networks and Communications
Volume , Article ID , pages
http://dx.doi.org/.//
Research Article
Peer-to-Peer Multicasting Inspired by Huffman Coding
Bartosz Polaczyk, Piotr ChoBda, and Andrzej Jajszczyk
AGH University of Science and Technology, Department of Telecommunications, Al. Mickiewicza 30, 30-059 Krak´
ow, Poland
Correspondence should be addressed to Piotr Chołda; piotr.cholda@agh.edu.pl
Received January ; Revised April ; Accepted May
Academic Editor: Zhiyong Xu
Copyright © Bartosz Polaczyk et al. is is an open access article distributed under the Creative Commons Attribution
License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly
cited.
Stringent QoS requirements of video streaming are not addressed by the delay characteristics of highly dynamic peer-to-peer (PP)
networks. To solve this problem, a novel locality-aware method for choosing optimal neighbors in live streaming multicast PP
overlays is presented in this paper. To create the appropriate multicast tree topology, a round-trip-time (RTT ) value is used as a
parameter distinguishing peers capabilities. e multicast tree construction is based on the Human source coding algorithm. First,
a centrally managed version is presented, and then an eective use of a distributed paradigm is shown. Performance evaluation
results prove that the proposed approach considerably improves the overlay eciency from the viewpoint of end-users and
content providers. Moreover, the proposed technique ensures a high level of resilience against gateway-link failures and adaptively
reorganizes the overlay topology in case of dynamic, transient network uctuations.
1. Introduction
For previous few years peer-to-peer (PP) related ows
(overlay trac) have represented a vast majority of the
wholeInternettrac.us,PPnetworkinghasbecomean
important branch of today’s telecommunications. It involves
not only le-sharing (BitTorrent, Ares Galaxy, Gnutella),
butalsomultimediastreaming(PPLive,SopCast),Internet
telephony (Skype), anonymous routing (Tor), and many
aspects of content distribution networks or cloud networking.
With the increased interest in quality-requiring applica-
tions, the problem of the quality of service (QoS) assurance
is a real challenge in PP-based streaming. Live streaming
transfers based on the PP paradigm impose strict constraints
on latency between a video server and peers (end-users).
Since the requirements are not fully addressed by the charac-
teristics of PP networking, a considerable attention has been
put on the overcoming techniques. One of the most basic
parameters that highly inuence the quality experienced
by end-users is the eective downloading speed and its
stability over time. A buering process, observed by end-
users as a transient interruption of content delivery, can
be minimized, or even avoided, when oscillations of the
downloading speed are small. To accomplish the gapless
playback, the PP application-layer links should be set over
short distances with additional care about the available
capacity. is task is a nontrivial problem as PP systems were
invented to be underlay-agnostic. In practice, they have not
usually recognized proximity between the candidate peers
norestimateattainablebandwidth.issituationhaschanged
and the focus has been brought to the so-called localization-
aware overlays.
Here, we elaborate on the localization-aware PP over-
lays: an organization of the transmission tree is not spon-
taneous (following the owing process of the peers to the
overlay), but instead it uses the underlying information on
theInternetpaths.Ineect,thevideoqualityisimproved.
Our method is called “Humies” due to its inspiration by the
Human source coding. e Human algorithm constructs
a tree representing a code of the shortest average codeword
length, calculated as the sum of the paths from the root to
the leaves (messages). e elements of the sum are weighted
by the probabilities associated with the leaves. In Humies,
a similar mechanism is used to create a multicast streaming
tree, where the root is a video server and leaves represent the
peers. We aim at generating the shortest average path from
the root to a leaf, while the weight of a leaf is related to a
measure based on the underlay-related knowledge, namely,
Journal of Computer Networks and Communications
round-trip-time, . With the relationship of our algorithm
totheHumanmethodprovidingtheoptimaltree,weare
able to show the optimality of Humies.
e remainder of this paper is organized as follows:
Section overviews the context and the related literature on
the covered topic. Section refreshes Human coding de-
nitions and notations necessary to understand the proposed
solution. Section , the main part of this paper, describes
our novel approach in detail. Section analyzes simulation
results, verifying that the proposed approach is a promising
alternative. Finally, the paper is summarized, and a few
challenges of the proposed method are discussed.
2. Background and Previous Works
With regard to the routing topology, there are the following
three types of PP streaming systems used in practice:
(a)push:structured,basedmainlyonmulticasting
tree(s);
(b) pull: unstructured, similar to the mesh-based le-
sharing BitTorrent system;
(c)hybrid:combinedpush-pull,basedonatwo-layeror
two-phased mesh-tree architecture.
Currently, the majority of existing implementations and
methods are related to the second type [–]. is stems
from their exibility and the high fault tolerance. However,
we focus on the tree-based multicasting. It has also received
strong research attention [–] due to its control potential.
Additionally, by the usage of the tree-like approach, we are
able to prove the bound optimality with the inspiration
of the Human source-coding algorithm. Additionally, we
study the reliability performance of our method to prove its
usefulness in the case of random failures.
e challenge related to PP networks is to nd the opti-
mal topology able to satisfy each of the three entities involved
in the overlay content delivery: (a) peers, (b) the Internet
service providers (ISPs), and (c) content providers. Each of
them has its own requirements and prominent objectives. A
peer requires the high streaming rate of the content, short
start-up times, and lack of prefetching. In particular, in live
video transmissions, small delays between the content source
and end-users are of vital importance. While interdomain
trac load is essential to ISPs, a reduction of that load should
not aect the quality experienced by customers. Finally, goals
of a content provider are in-between the end-users and ISPs’
needs. e content provider appreciates a high customer
satisfaction (enhanced video quality) and favorable network
resource utilization, as it enables a successful cooperation
with operators. Our method pays to the end-user QoS
satisfaction; however it reconciles also other entities’ matters
which are respected and considered in the simulation study.
A lot of eort has been put to improve the operation of
PP systems by taking into account the network constraints;
for review see [,]. Sometimes, even a strong coopera-
tion between an overlay operator and a network carrier is
assumed. e topic has been recognized as an important issue
for the Internet community []. e research was mainly
focused on le-sharing with introduction of methods like the
so-called biased neighbor selection in the BitTorrent context.
ey rely on centrally managed devices impeding dynamic
and quick decisions in case of nodes departure or network
partitions. erefore, their application prospects in video
multicast networks are limited, especially when failures are
considered.
A classication of approaches using locality awareness
in PP overlays can be found in [] (a) awareness of the
ISPs network, to which a peer is assigned to; (b) storage of
some additional information on other peers, for example,
when they serve as supernodes; (c) delay assessments; (d)
geolocation information as a base for the peer node selection.
Our research follows the third avenue; that is, we base on
the latency measured by . is group of approach is
quite well represented. e streaming tree construction idea
presented in [] involved just a delay-aware technique to
buildanetworkfriendlytree(NFT).Inthisscheme,an
arriving peer contacts and requests a streaming ow from the
node that has the smallest among all peers in the overlay
swarm. In contrast to our approach, the tree is constructed
in a receiver-centric way and it does not adapt to transient
network conditions. A similar concept of grouping peers into
clustered trees, based on , was presented in []. However,
this method assumes evaluating between an end-user
and static landmarks (like DNS servers), instead of ordinary
overlaypeers.Ourapproachisbasedonthe between
peers.
On the other hand, a proposal of Kovaˇ
cevi´
cetal.[]
was based on the geolocation system, introducing zones and
a two-layered, distance-aware system to accomplish strict
QoS requirements. We do not assume such a sophisticated
method, but base on the “application-layer ping,” w h i c h i s
very simple to implement. e authors of []proposedto
construct an optimized multicasting PP tree, assuming that
the coordination data is given in advance. Again, we decided
to use a much easier method.
3. Overview of Huffman Coding
AHumancode[] is the minimum redundancy source
code,whereeachmessage(outofmessages) is represented
as a prex-free codeword (a “message code”). (),acodeword
length, equal to the number of symbols in codeword ,
depends on an occurrence probability () of the th message
generation,sothattheaveragemessagelength
=
𝑖∈𝑁()()()
is minimized. Each codeword is constructed using symbols
from an alphabet of letters (the -ary alphabet). We skip
the details of the code construction, but we remind that the
ultimateideaisbasedonthefactthatmessageswithhigher
() are represented with shorter codewords. A Human
ensemble code (see Figure ), that is an agreement between
the source encoder and the decoder about corresponding
messages and codewords, can be presented in the tree form.
us, an ensemble code and its tree are equivalent. In such
Journal of Computer Networks and Communications
Human source encoder
Message Codeword
Source:
𝑁, a set of
messages
Ensemble code, 𝒯
F : e Human coding concept.
1.00
0.19
0
0.36
1
0.45
0.15
01
0.03
0
0.03
1
0.09
2
2
2
Implicit numbering
with 0, 1, and 2
0.15 0.15
F : Example of a ternary Human tree T. Numbers in ovals
represent probabilities.
a labeled tree T,calledhereaHuman tree (an example
is presented in Figure ), the internal and leaf nodes have
dierent meanings. e leaf corresponds to a single message,
labeled with its occurrence probability ().einternalnode
is just an auxiliary vertex with labels equal to the sum of its
children’s label values. In tree T, the edges are also uniquely
labeled with one of symbols. Edge labels over a path from
thetreeroottoagivenleafdeneacodewordrepresenting
the respective message. Such a denition of tree Tis used
also in [,]tocreateanadaptiveHumanalgorithm.
e original static (two-pass) and newer adaptive (one-pass)
Human algorithms dier in the ensemble code construction
method and its exchange between the encoder and decoder.
However, both ensemble codes have the same structure
and the value. erefore, for the sake of interpretation
purposes, we can use the static and adaptive algorithms
interchangeably, since results for those approaches are the
same.
4. Huffmies Design
Below, we present “Humies,” the centralized and distributed
approaches that create a streaming topology for a multicast
tree-enabled PP overlay network. Both approaches are
inspired by the Human algorithm. e summary of the
notation related to the Human coding and Humies is given
in Table .
4.1. Centralized Humies. Each PP streaming network uses
acontentserver, which can upload to only a limited
number of nodes simultaneously due to the bandwidth
and computing resource limits. Among all the active peers
subscribed to the stream, the server has to choose at most
peers that will receive the data directly from it. e
centralized Humies algorithm uses a single device managing
all connections between the peer nodes in the entire overlay
swarm. For the rest of this subsection we assume that server
, which is a reliable, rich in resources, and credible node, can
take responsibility of the overlay network construction and
control. Hence, the terms “centralized device” and “server”
will be used interchangeably here.
e Humies method introduces () value, namely, peer
aggravation. It forms a concise representation of peer ’s
network resources in such a way that higher values indicate
inferior resources due to a tight bandwidth limit or high
latency of the network access. Finding strict and accurate
value of () is not a trivial problem, since it is inuenced
by many unpredictable parameters (the location, available
capacity, congestion). We simply use the round-trip-time
metric () between a peer and the server or between a peer
and another peer. e high value suggests that the given peer
has considerably limited network resources or can be located
in a long distance from the source node (or another peer).
Nonetheless, more complex and sophisticated metrics can be
involved here as well. Furthermore, as a peer receives data
using a multiple-hop path, the sum of all () values over this
path emphasizes service aggravation of the connection.
In the centralized scheme, only the streaming server
gathers all individual () values, independently measured
by the peers and sent to the server. e nal value of () is
denedasanaggregatedsumofs between peer and all
other peers in the swarm, including the server:
()=
𝑗∈(𝑁\{𝑖})∪{𝑠}𝑖𝑗,()
where 𝑖𝑗 represents the evaluated to node observed
from the peer ’s point of view (we set () ≡ 0). All
probing packets are analyzed individually by each node in
a swarm and the computed result of () is forwarded to
the server. As the central device has the entire () map, it
builds a Hu man tree, analogously to the Human coding
with Vitter’s algorithm Λextension [], in a manner that
() is treated like a probability of message generation. In
atransmission tree we are constructing, a codeword length
() is dened as a path length from the root (the streaming
server )toleaf:
()=
T(,).()
Let us remind that the Human tree Tis a form, where only
leaves represent something real (i.e., the messages). ere-
fore, in order to transform a Human tree to a transmission
tree ,aprocesscalledclimbing is introduced (see Figure ).
It consists in using the internal vertices as something of real
meaning, that is, as the peers that are indeed present in the
multicasttreetobothdownloadthedataandsimultaneously
upload it to other peers. e climbing starts from the most
Journal of Computer Networks and Communications
T : e relation of the basic notions for the Human coding and the Humies concept.
Not. Human Humies
Root node Streaming server
TEnsemble code (Human tree) —
— Transmission tree
Message Peer
Setofallmessages Setofallpeersintheoverlayswarm
() Probability of message generation Probability of peer being a bad relay (peer
aggravation)
Number of the source alphabet symbols Maximum number of simultaneous upload
connections (slots)
—Codeword Aroutefromtherootserverto a leaf in a
transmission tree
() Length of a codeword representing message Peer level in a transmission tree, () = T(,)
(hop distance between and in the tree)
— Leaf: a message; internal vertex: auxiliary Leaf: a downloading peer; internal vertex: a
downloading and uploading peer
𝑖— Peers downloading from peer , the ospring of
bottom layer where each internal node, noted as “X” in
Figures (b)-(c), is replaced by the node with the lowest ()
value beneath this auxiliary node. While going upward, it can
happen that the minimum value of () characterizes a node
that already has downstream nodes (a node with () = 1
in Figure (c)). In such a case, peer ’s child w i t h a m in i m u m
peer aggravation has to take its place (a peer with () = 2
in Figures (c)-(d))andthenodeis free to jump into an
upper layer. Such a process creates a transmission tree with
a bounding number of children equal to . Hence, parameter
is considered as a maximum number of simultaneous unicast
connections that a given peer can serve simultaneously. To
simplify, we assume the same value for all peers. However,
a dynamic adjustment of this value, for instance depending
on the swarm size, streaming ratio, or peer’s resources, is also
possible.
4.2. Optimality of the Centralized Humies. In general, PP
tree-based streaming dissemination has to cope with con-
icting objectives to design either a narrow or a short trans-
mission tree. A wide tree, where each peer has to send data
to numerous neighbors, divides the peer’s upload capacity
among all children. is can inict the degradation of quality
of experience (QoE), that is, the perceived quality, for the
downstream peers. On the other hand, a high tree involves
long paths between the streaming source and the peers. Such
a tree should be averted since it imposes additional delays
and decreases the system reliability in case of an intermediate
node fault or departure. us, a convenient trade-o between
thewidthandheightshouldbefound.eHumiesmethod
involves optimization of the worst-case peer aggravation
sueredbyanentireoverlayswarm.Weprovethisfactbelow.
In general, each peer that arises on a path from the
streaming server to a single destination node introduces
bandwidth and delay limits that inict a higher probability
of service quality degradation for downstream nodes. Sum
of all intermediate nodes’ () on a path from the server
to a destination node is called a service aggravation ().We
model a deteriorated QoE caused by a multihop overlay path
and observed by peer ,as(),where
()def
=
()+
𝑗∈𝑑𝑇(𝑠,𝑖), ()
where 𝑇(,) is a path from the server to the destination
peer in a transmission tree .emaingoaloftheHumies
method is to minimize this parameter for the entire overlay
swarm.
We can note the two following fundamental facts.
eorem 1. e Humies algorithm presented in Section 4.1
ensures that each peer receives the data from a node that has a
smaller or equal peer aggravation () value.
Proof. We show it by a contradiction. Assuming that peer
receives data from node such that () > (),leadstoa
contradictory statement, since peer , as a peer with smaller
()valueamongothersiblings,wouldbeelectedforclimbing
instead of .
eorem 2. An upper bound for service aggravation ()
suered by peer in the centralized Humies is ()().
Proof. Fromthefactthattheclimbing process performed on
theHumantreeT, as described in Section .,onlyuplis
some nodes into higher layers, then () is an upper bound
for the length of the transmission path from the server to the
peer ,𝑇(,).Onthebasisofeorem we also state that
() bounds the maximum peer aggravation of nodes that can
occur over this path. at provides the upper bound () ≤
()().
According to the Human coding algorithm, which min-
imizes average message length (given in ()), and eorem
we can see that the centralized Humies algorithm minimizes
Journal of Computer Networks and Communications
11 15
45 6
1 2 3
17
𝑠
(a)
11
45
1 2 3
17
𝑠
𝑋
𝑋
(b)
11
451
23
17
𝑠
𝑋
(c)
11 1
452
3
17
𝑠
(d)
F : A climbing process: evolution from a Human tree (a) to a transmission tree (d) with two intermediate steps: (b) and (c). =3,
numbers labeling vertices denote peers’ aggravation ().
the service aggravation boundforallnodesintheoverlay
swarm.
4.3. Distributed Humies. Application of Humies in a huge
swarm inicts a ping packet ood, since each peer has to
evaluate between all other network members. Indeed,
a number of such probes at the order of O(2)limit
the practicality of the centralized scheme. Overview of the
consecutivestagesinthedistributedHumiesalgorithmis
presented in Figure . e principal dierence between the
distributed and centralized version consists in a subjective
estimation of the () value accomplished by a single node
in a PP network. In the rst step, the server estimates
to each member in a swarm, which is assumed as its ().
en, on the basis of peers’ () values, the server forms
disjoint groups of peers. Among all the members of each
group, the server elects a single peer to which it will upload
the stream directly. Such a peer is called the group leader and
it has to replicate the data towards the rest of the group nodes
called an ospring of a given leader. e decision criteria
used by the leaders to disseminate the data are completely
independent and the server does not have any inuence or
authority regarding this issue. Practically, a leader performs
the same steps as those of the server in the rst step; that is, it
selects the best leaders among its ospring and assigns them
a next-level ospring (i.e., ospring of those nodes). A leader
bases its decision on independently obtained () values. In
the next steps, such a procedure is consecutively repeated
until a pool of all peers in the overlay network is exhausted.
ekeypoint,wheretheHumanalgorithmisengaged,
concerns the selection of the leader nodes and assigning
them appropriate peers to disseminate data downstream. To
accomplish this task, each leader assigns a codeword for
all of peers of its ospring 𝑘,analogouslytothecentralized
approach. us, it is necessary to calculate the Human
tree in each group. Note that in this case, contrary to the
centralized Humies, () is assessed only from a group
leader (or the server) to each peer, but not between all pairs
of peers. e corresponding probabilities (),∈
𝑘,are
equal to evaluated over the individual probe between the
leader and peer .Aerapplyingacodewordforeachpeerin
𝑘, all peers whose rst digit is the same constitute one group,
obviouslydisjointwithothergroups.Amongallmembersof
a group, a peer with the lowest value ()is selected as a group
leader. Now, this leader is fully responsible for dissemination
of data towards other members of its group. Looking at this
issue from the Human tree viewpoint, a group is constituted
byallpeers,whosecorrespondingleavesbelongtothesame
root’s subtree. Figure presents two Human trees (with
omitted edge labels) for =2(binary tree) and =3(ternary
tree) with group borders for the same set of peers and the
same measurements.
Such a distributed algorithm signicantly diminishes
aggregated number of links that are engaged in the
probing process. While the streaming server has to evaluate
all pings to all nodes in the swarm, other peers in lower
transmission tree layers make a decision about much smaller
groups, whose cardinality deteriorates at the order of O(−𝑙𝑖),
where 𝑖is a peer’s layer index in a transmission tree.
e Humies method clusters peers into groups, so that
the sum of members’ aggravation is almost equal for all
groups.atmeansthatpeerswithlargevaluesof() will
be present in groups of smaller number of members. is is
a very advantageous and practical property. Let us remind
that a low () value for a given peer means that it inicts
a small negative eect on other children. We argue that it is
highly recommended to create groups with a comparable sum
of aggravation indicators. For instance, one group consisting
Journal of Computer Networks and Communications
Server
9C
11 E
29 L
19 A17 H
10 G
9J
15 Z
15 K
C
Level 1
leaders EZ
12 F6A
8J11 G
Ospring
of peer C,
with RTT
perceived by C 22 K12 H
Humies
in level 1
leaders
C
Level 1
leaders E Z
A
Level 2
leaders G J
𝑠
𝑠
𝑠
All peers
in the swarm
with RTT
perceived by 𝑠
Hum ies
in 𝑠
...and others...
···
···
···
···
···
······
···
Ospring
of peer E...
Ospring
of peer A...
Ospring
of peer G...
Ospring
of peer J...
Iterate the Humies on the next level leaders until the cardinality of all
𝑡...
ospring sets is not greater than
Disjoint
with other
ospring sets
F : Overview of the consecutive stages in the fully distributed
Humies approach. Values in circles denote ().
of peers that are fast, reliable, and localized in a short distance
from the source (all those parameters result in low ())can
aggregate a higher number of peers and the transmission
quality will not be reduced. On the contrary, a high () value
of a member in a group prevents from accepting too many
other peers. It prevents from low QoS parameters (like high
delay and low streaming rate), experienced by many peers,
when peer (with poor resources) becomes a relay point.
In particular, when a peer has a notably higher () (with
comparison to the values of () for other peers), caused
by low-quality transmission (e.g., wireless access), it will
constitute an independent group receiving data directly from
the server to alleviate the negative eects related to this peer’s
poor resources.
4.4. Churn Eect. e considerations presented above
assume the static environment: all peers are permanently
on-line. However, in a real overlay, peers can freely join and
depart the PP network. In result, the population of the
swarm and the connections within it oen change, what
is known as the churn eect. To avoid frequent chaotic
rearrangements of connections in case of every peer joining
or departure, we assume that the overlay members apply
the Humies algorithm only in a specied point of time,
called reorganization. In the interim, every new peer is
temporarily serviced by a random node. On the other hand,
for each leader of a group, a backup leader is dened. It is
selected as a peer with the second lowest () value in the
group. e backup leader takescareofagroupincaseofthe
leader departure. erefore, a single peer departure does not
destroy the existing multicast tree.
5. Numerical Results: Simulations
To evaluate benets of the Humies concept in a video
streaming network, we carried out simulations, obtained
using a C simulator developed by us. Two scenarios
for performance investigation and one scenario for fault
resilience were examined. For all simulations, a core network
has been randomly constructed according to the model
presented in [], with symmetric Mbit/s links between
selected routers. Peers were grouped into ve ISP networks
(ISP A–E), where each ISP was connected to one of the
backbone routers with a symmetric speed of Mbit/s. To
mimic a real-world environment, a number of customers and
their access bandwidths were generated taking into account
statistics oered by a connection speed estimation web
service (http://www.netmeter.eu/). An interdomain network
topology contains nine domains connected via fourteen links.
A network topology, used for simulations, is presented in
Figure . e content server (located in the biggest ISP A) had
Mbit/s uplink and Mbit/s downlink bitrates. Moreover,
eachpeercouldhandleatmostfoursimultaneousupload
connections (=4). To limit frequent reorganization of the
network transmission tree, due to the churn eect, Humies
reorganizations were separated with minutes long space. All
results are presented with % condence intervals.
To investigate the overlay streaming eciency and exhibit
the Humies features, we exploited various overlay creation
concepts, such as
(i) Humies (H),
(ii) centralized Humies (H-C),
(iii) random (R),
(iv) Network Friendly Tree (NFT),
(v) minimum tree (M).
e distributed Humies algorithm, described in Section .,
is denoted as the Humies (H) concept to distinguish it from
the centralized Humies (H-C). e simplest random (R)
method assumes that an entering peer connects to one of
the randomly selected peers. It also pays attention to the
maximum number of the upload connections to be handled.
Journal of Computer Networks and Communications
16
8 8
3
0 3
5
24
10 14
𝐺1
𝐺1
𝐺1
𝐺2𝐺2
𝑠
(a) Binary tree
10 14
16
3
0 0 3
5 8
𝐺1𝐺2
𝐺3𝐺3
𝐺3
𝑠
(b) Ternary tree
F : Example of binary and ternary Human trees.Labels𝑖given beneath nodes indicate to which group a given peer should belong.
e dotted circles indicate group borders. e values in circles denote ().
ISP A ISP B
ISP C ISP D ISP E
F : e interdomain network topology used in the simula-
tions.
. e R concept can be treated as a reference idea due to its
underlay agnostic principle. In the NFT, the receiver-centric
algorithm chooses a neighbor achieving the minimum value
of across all peers in the swarm. e minimum tree (M)
is similar to the Humies concept; however, it diers with the
grouping scheme: the peers sorted according to () in the
decreasing order are consecutively pooled (with the round-
robin technique) into groups. Similarly to the Humies, a
peer with the lowest () valueinagroupisselectedasagroup
leader.edataisalwaystransferredtopeers with the lowest
value. Figure gives examples with (i) a Human tree
and (ii) a minimum tree for the same values.
We analyze four types of relative metrics which span
requirements of all entities involved in the PP transfer:
(i) speed: average end-user download speed,
(ii) delay: average delay of the content playback,
(iii) network eciency: the ratio between the total load
received by all peers to the total inter-ISP trac,
(iv) fault immunity: the percentage volume of peers that
suerdatalossincaseofafailureofagateway
(intradomain) ISP link.
All the aforementioned parameters, except for the network
eciency, are relevant for an end-user, since they inuence
QoE. e network eciency shows how ecient the over-
lay network is in utilizing expensive inter-ISP links and,
therefore, this factor is related to the ISP objective. e last
interested player, a content/streaming provider, wishes to
provide a streaming service with a high reliability and high
quality for an end-user, while optimal utilization of network
devices is also prominent. erefore, the content provider is
interested in all the studied metrics.
5.1. Scenario I: Basic Performance Evaluation. In Scenario I,
we compared the Humies approaches, both centralized and
distributed, with NFT and underlay oblivious R concepts.
Live streaming content uses kbit/s rate. Peers’ lifetimes
follow a normal distribution with mean equal to and
standard deviation equal to minutes, while their oine
times follow a normal distribution with mean equal to and
standard deviation equal to minutes. Each simulation took
minutes and was repeated times to accomplish credible
and representative results. e warm-up period, determined
according to a standard method presented by Tyszer [,
Chapter ..], oscillated in vicinity of minutes.
Figure presents the average download speed with vari-
ousnumbersofpeersinaswarm.ecentralizedHumies
(H-C) achieves the best result for small swarms and with
increasing number of peers the downloading speed drastically
deteriorates. Most likely it is caused by ping packets ood
in case of a new peer joining, which has to estimate s
to all on-line nodes in a swarm. e churn eect does not
inict such degradation in case of the distributed Humies
(H) method. Its results are slightly worse for small swarms;
nonetheless it copes with scaling problems and the churn
eect much better than the centralized algorithm. e NFT
and R concepts achieve lower downloading speedsforall
inspected swarms. It is also interesting to note that the R
approach also suers from the churn eect in a bigger swarm,
like the centralized Humies (H-C). Figure shows the speed
uctuations.elargedisadvantageofNFTcanbeespecially
observed with this plot.
e network eciency results are plotted in Figure ,
where NFT signicantly outperforms other considered
schemes.isiscausedbyahighclusterizationofpeers
within each ISP network as a consequence of a mere delay-
aware neighbor selection process. Other approaches obtain
Journal of Computer Networks and Communications
10 14 16
3
0 0 3
5 8
𝑠
(a) Human tree
3
10
5
14
8
𝑠
(b) Minimum tree
F : Human and Minimum trees for the same peers with selected s (values , , , , and ). Members of each group are placed
within dotted circles. =3.
0 100 200 300
100
150
200
250
Swarm size
Average peer speed (kbit/s)
H
H-C
NFT
R
F : Average peer speed in Scenario I.
0100 200 300
0
25
50
75
Swarm size
Speed std (%)
H
H-C
NFT
R
F : Average peer speed uctuations in Scenario I.
stable results along various swarm sizes. Altogether, both
Humies algorithms inict a lower inter-ISP load than a
simpleRapproach.enetwork eciency for the distributed
HumiesisalmostdoubledincomparisontotheRcase.
e delay between the server and end-users is relevant for
0100 200 300
50
100
Swarm size
Network efficiency (bit/bit)
H
H-C
NFT
R
F : Average network eciency in Scenario I.
0 100 200 300
250
500
750
1000
1250
1500
Swarm size
Average peer delay (ms)
H
H-C
NFT
R
F : Average peer delay in Scenario I.
multimedia streaming, in particular when live content is
involved. Figure showsthattheHumiesapproachkeeps
low delay for various swarm sizes, contrary to other concepts
that notably increase the content lag as a swarm size increases.
A considerable growth of the delay for NFT, which we observe
Journal of Computer Networks and Communications
T : Parameters of the performance evaluation cases in Scenario
II.
Case Switch on time Lifetime Oine time
NC (no churn) – minutes Innite —
C (churn) – minutes – minutes – minutes
between networks with and nodes (although in the
case of le-sharing, such a size is very large, for live streaming
such an extension of the peer set is quite real or even quite
small, e.g., football league match), is caused by a long average
path from the server to a peer. For other concepts, a mean
number of overlay hops is smaller than three, but NFT creates
atopologywherethedatahastoberelayedtoreacha
destination by more than ve other peers on average. Every
overlay hop introduces additional delay, that is, why NFT
achieves high values. Based on the previous results we noticed
that the centralized Humies provides better results for small
swarms. However when the number of nodes in the overlay
exceeds a threshold level, its eciency deteriorates drastically.
On the other hand, NFT gracefully utilizes inter-ISP links, but
it introduces a huge delay between the server and peers and
this method achieves low streaming rates. us, for Scenario
II investigating head-to-head comparison with the reference
R approach and involving bigger swarms, we decided to
omit the centralized Humies (H-C) and NFT schemes as
evidently inferior.
5.2. Scenario II: Extensive Performance Evaluation. In Sce-
nario II, each simulation took hours. e streaming
content rate was equal to kbit/s. To explore the churn
eect impact, we exploited two cases. e rst case dealt
with all peers joining the overlay according to the uniform
distribution during rst minutes and are kept on until the
end of the simulation (no departures). In the second case, the
peer’s lifetime and oine time were obtained from a uniform
distribution between to minutes and to minutes,
respectively. e parameters of those cases are presented in
Table .
An improvement, against the reference R concept, of the
speed (Figure (a))andthenetwork eciency (Figure (b))
is presented. We can see that the both speed and network
eciency results are better for the Humies approach (com-
pared to the R and M concepts). e dierence is greater
when the swarm becomes larger, due to the fact that the
Humies approach serves more trac inside one operator
domain; thus inter-ISP links (which become bottlenecks) are
not heavily occupied. From Figure ,wherethespeed for
all approaches is presented, we can observe that for swarms
larger than peers average speed signicantly decreases
for the R and M methods. At the same time, the Humies
approach still achieves a very good transfer speed. A relatively
stable streaming rate among various swarm sizes proves
that the distributed Humies has good scalability abilities
since a bigger swarm does not result in the downloading
speed degradation. Although the minimum (M) alternative is
characterized by a higher network eciency in comparison
to the reference R scheme (Figure (b)), the average speed
100 200 300 400 500
0
20
40
60
Swarm size
Speed improvement (%)
H, case NC H, case C
M, case NC M, case C
−20
(a) Speed change
0 100 200 300 400 500
0
100
200
300
400
Swarm size
Network efficiency improvement (%)
H, case NC H, case C
M, case NC M, case C
(b) Network eciency change
F : Scenario II: improvement against the reference R tree
creation scheme.
received by peers is oen lower than that in the case of the
simple R method (Figure (a)).
One of the main challenges the Humies concept still
has to cope with its resilience against the churn eect.
Figure illustrates that the improvement of both the speed
and network eciency decreases when peers join or depart
theoverlaynetworkatwill(caseC).Notethatinspiteofthat
decrease, the Humies approach immensely outperforms
other methods from the viewpoint of those two metrics.
5.3. Scenario III: Fault Resilience. e Humies approach
is characterized by a decreased number of backbone links
involved in the transmission. Keep in mind that the usage
of additional network nodes (i.e., routers in the IP multicast
applications) when the data unnecessarily traverses several
times over the same link leads to single points of failure
that can noticeably aect the system reliability. Here, in
Scenario III, we also investigate the number of nodes that
Journal of Computer Networks and Communications
0 100 200 300 400 500
75
100
125
Swarm size
Average peer speed (kbit/s)
H
M
R
Plain server
F : Scenario II: average peer speed depending on a swarm
size.
suer data loss when a (randomly selected) ISP gateway-link
fault occurs. e results presented in Figure are obtained
from simulations, where suddenly all peers from one of the
ve ISP networks are pulled apart from the rest of the overlay
network, resulting in the tree decay. To prevent the overlay
network from the content server isolation (in case of ISP
A fault), the server is located in a separate network which
permanently services the content streaming. In case of the
Humies algorithm, the percentage of suering peers was
usually –% less than that in the M and R approaches,
respectively.WeenvisionedthattheNFTconcept,charac-
terized with a good clusterization observed in Scenario I,
will achieve low number of decoupled nodes in case of an
ISP break. However, it achieved values higher by only –
% than the proposed approach and oscillated in vicinity
of %. e reason for it can arise from a long average path
from the server to a peer as we observed in Section ..e
accomplished results show that when using the Humies
method,connectionsaredenselyandecientlyclustered
within ISP networks. us, isolating one region from the
entire community has a smaller impact on the rest of overlay
nodes, proving that network resilience against ISP gateway-
link faults, using Humies, is higher than that in the other
considered concepts.
6. Summary
We present a novel method, “Humies,” to be used in PP
video live streaming networks. It leverages the Human cod-
ingmethodtocreateaconnectiongraphttedtotheunderlay
network properties and peers heterogeneous network access.
First we show the optimal centralized algorithm, dicult to
implement in a real world due to the scalability problems and
intricate probing process. en, the distributed algorithm, a
main contribution of this work, is elaborated as a practical
application. e Humies concept emphasizes the following
three issues: (a) minimizing delays between the content
serverandend-users,(b)maximizingthetransmissionspeed,
and (c) enhancing ISP gateway-link fault immunity. Based on
10 20 40 75
0
10
20
30
Swarm size
Volume of peers (%)
H M
RNFT
(a)
H M
RNFT
100 200 350 500
0
10
20
30
Swarm size
Volume of peers (%)
(b)
F : Peers suering data loss in case of an ISP gateway-link
fault.
the presented simulations, we illustrated that the proposed
distributed Humies approach achieves better results than
other concepts, especially when a swarm aggregates more
peers and the ISP networks become congested. Since the
approach is benecial for end-users, content providers and
alsoISPs,wecanarguethattheusageofHumiesistforall
entities involved in the overlay video multicast.
e properties of our approach are based on its similarity
totheHumansourcecodingprovidingtheoptimal-ary
tree. Likewise, we provide the optimal transmission tree for
the PP video streaming basing on the measurements.
ere are two main challenges related to such an approach.
()enodeaggravation,thatis,thecounterpartofthe
probability in the Human algorithm, calculated on
the basis of the measurements, might change in
time due to the well-known measurement problems
(e.g., the results are unstable). We counteract the neg-
ative consequences by repeating the measurements
and rebuilding the tree. Additionally, the nodes are
grouped in the distributed version of Hummies in
such a way that the delay measurements are more
precise, since they are related to peers located close
to each other.
() e Human coding assumes that each intermediate
node should have children to attain the optimality,
but in the case of some peers in the Humies tree, the
assumednumberoftheattachedchildrenmightharm
Journal of Computer Networks and Communications
the performance due to lack of resources. is prob-
lem can be dealt with by letting the nodes “cheat” if
they have insucient resources. e cheating consists
in informing that some of their transmission slots
areused,whileinfacttheyarenot.
Acknowledgment
is paper is an extended version of []. e work is
supported by the Polish National Science Centre under Grant
N N .
References
[] S. Tang, Y. Lu, J. M. Hern´
andez, F. Kuipers, and P. van Mieghem,
“Topology dynamics in a PPTV network,” in Proceedings of the
IFIP-TC6 International Conference on Networking (NETWORK-
ING ’09),Aachen,Germany,May.
[] R.J.Lobb,A.P.CoutodaSilva,E.Leonardi,M.Mellia,and
M. Meo, “Adaptive overlay topology for mesh-based PP-TV
systems,” in Proceedings of the 19th International Workshop on
Network and Operating Systems Support for Digital Audio and
Video (NOSS DAV ’09) , pp. –, Williamsburg, Va, USA, June
.
[] F. Picconi and L. Massouli´
e, “ISP-friend or foe? Making PP
live streaming ISP-aware,” in Proceedings of the 29th IEEE
International Conference on Distributed Computing Systems
(ICDCS ’09),Montreal,Canada,June.
[]W.Liang,J.Bi,R.Wu,Z.Li,andC.Li,“Oncharacterizing
PPStream: measurement and analysis of PP IPTV under
large-scale broadcasting,” in Proceedings of the IEEE Global
Telecommunications Conference (GLOBECOM ’09), Honlulu,
Hawaii, USA, November-December .
[] E.K.Lua,X.Zhou,J.Crowcro,andP.vanMieghem,“Scalable
multicasting with network-aware geometric overlay,” Computer
Communications, vol. , no. , pp. –, .
[] T.Peng,Q.Zheng,W.Lv,S.Jiang,andJ.Gao,“Networkfriendly
tree for peer-to-peer streaming,” in Proceedings of the 12th
International Conference on Computer Supported Cooperative
Work in Design (CSCWD ’08), pp. –, Xi’an, China, April
.
[] R. Besharati, M. Bag-Mohammadi, and M. A. Dezfouli, “A
topology-aware application layer multicast protocol,” in Pro-
ceedings of the 7th IEEE Consumer Communications and Net-
working Conference (CCNC ’10), Las Vegas, Nev, USA, January
.
[] T. Kikkawa, T. Miyata, and K. Yamaoka, “Maximum-bandwidth
ALM tree on tree network,” in Proceedings of the 7th IEEE
Consumer Communications and Networking Conference (CCNC
’10), Las Vegas, Nev, USA, January .
[] I.Rimac,V.Hilt,M.Tomsu,V.Gurbani,andE.Marocco,“ASur-
vey on Research on the Application-Layer Trac Optimization
(ALTO) Problem,” IETF RFC , October .
[] G. D´
an,T.Hoßfeld,S.Oechsneretal.,“Interactionpatterns
between PP content distribution systems and ISPs,” IEEE
Communications Magazine,vol.,no.,pp.–,.
[] J. Seedorf and E. W. Burger, “Application-Layer Trac Opti-
mization (ALTO) Problem Statement,” IETF RFC , October
.
[] O.Abboud,A.Kova
ˇ
cevi´
c,K.Gra,K.Pussep,andR.Steinmetz,
“Underlay awareness in PP systems: techniques and chal-
lenges,” in Proceedings of the 23rd IEEE International Parallel
and Distributed Processing Symposium (IPDPS ’09),Rome,Italy,
May .
[] A. Kovaˇ
cevi´
c, O. Heckmann, N. C. Liebau, and R. Steinmetz,
“Location awareness-improving distributed multimedia com-
munication,” Proceedings of the IEEE,vol.,no.,pp.–,
.
[]X.Tu,H.Jin,X.Liao,andJ.Cao,“Nearcast:alocality-aware
PP live streaming approach for distance education,” ACM
Transac tion s on Inte r n et Tec hno logy,vol.,no.,.
[] D. A. Human, “A method for the construction of minimum-
redundancy codes,” Proceedings of the IRE,vol.,no.,pp.
–, .
[] R. Gallager, “Variations on a theme by Human,” IEEE Trans-
actions on Information eory,vol.,no.,pp.–,.
[] D. E. Knuth, “Dynamic Human coding,” JournalofAlgorithms,
vol. , no. , pp. –, .
[] J. S. Vitter, “Design and analysis of dynamic Human codes,”
Journal of the ACM,vol.,no.,pp.–,.
[]E.W.Zegura,K.L.Calvert,andS.Bhattacharjee,“Howto
model an internetwork,” in Proceedings of the 15th Annual Joint
Conference of the IEEE Computer and Communications Societies
(INFOCOM ’96), San Francisco, Calif, USA, March .
[] J. Tyszer, Object-Oriented Computer Simulation of Discrete-
Event Systems, Kluwer Academic Publishers, Dordrecht, e
Netherlands, .
[] B. Polaczyk, P. Chołda, and A. Jajszczyk, “Human coding
inspired peer-to-peer multicasting,” in Proceedings of the 10th
International Symposium on Electronics and Telecommunica-
tions (ISETC ’12), Timisoara, Romania, November .
Available via license: CC BY
Content may be subject to copyright.