SlideShare une entreprise Scribd logo
1  sur  6
Télécharger pour lire hors ligne
P2P VIDEO BROADCAST BASED ON PER-PEER TRANSCODING AND ITS
                    EVALUATION ON PLANETLAB
                       Naoki Shibata, Masaaki Mori                           Keiichi Yasumoto
                 Dept. Info. Processing & Management             Graduate School of Information Science
                             Shiga University                    Nara Institute of Science and Technology
                 1-1-1 Bamba, Hikone 522-8522, Japan            8916-5 Takayama, Ikoma 630-0192, Japan
               email: {shibata, mori}@biwako.shiga-u.ac.jp             email: yasumoto@is.naist.jp


ABSTRACT                                                        trees to the receiver nodes while the server load is high.
We have previously proposed a P2P video broadcast               OMNI and CoopNet, unfortunately, do not treat heteroge-
method called MTcast for simultaneously delivering video        neous quality requirements.
to user peers with different quality requirements. In this            There are some approaches for heterogeneous quality
paper, we design and implement a prototype system of MT-        video delivery on P2P network. PAT [8] is a method to re-
cast and report the results of its performance evaluation in    duce computation resources necessary for on-line transcod-
the real Internet environment. MTcast relies on each peer       ing in P2P network by making peers share the part of data
to transcode and forward video to other peers. We con-          generated during encoding and decoding of video. We have
ducted experiments on 20 PlanetLab nodes, evaluated start-      also proposed MTcast (Multiple Transcode based video
up delay and recovery time from peer leaving/failure, and       multicast)[9] which achieves efficient and robust video
confirmed that MTcast achieves practical performance in a        broadcast to multiple heterogeneous users by relying on
real environment.                                               user peers to transcode and forward video. MTcast con-
                                                                structs a tree whose root is the sender of the original video
KEY WORDS                                                       content as a variation of a perfect n-ary tree, where peers
P2P, Video, Broadcast, Transcoding, Overlay Network             with higher quality requirements are located near the root
                                                                of the tree.
                                                                      In this paper, aiming to validate practicability and ef-
1    Introduction                                               fectiveness of MTcast in the real Internet environment, we
                                                                design and implement MTcast system with a more effi-
Recently, many types of computing terminals ranging from        cient tree construction mechanism than the original MT-
cell phone to HDTV are connected to the Internet, and con-      cast. In the new tree construction mechanism, parent-child
sequently efficient video delivery method for many termi-        relationship between peers is decided based on bandwidth
nals with different computation powers, display sizes and       and topology measurement on physical path. We have
available bandwidths is required. There are some studies        also designed and implemented a prototype system of MT-
on simultaneously delivering video to multiple users with       cast. With the prototype, we have conducted experiments
different quality requirements. In the multiversion tech-       on the PlanetLab[10], and confirmed that MTcast achieves
nique [1], multiple versions of a video with different bi-      reasonably short start-up latency, small channel switching
trates are stored at a server so that the most appropriate      time, and small recovery time from peer leaving/failure.
video can be delivered to each user within resource limi-
tation. In the on-line transcoding method [2], the original     2     MTcast Overview
video is transcoded at a server or one of intermediate nodes
(i.e. proxy) to videos with various quality, according to re-   In this section, we provide an overview of MTcast [9].
ceivers’ requests, and forwarded to the receivers. However,
large computation power is required for transcoding by a        2.1   Target Environment
server or an intermediate node. In the layered multicast
method [3, 4], video is encoded with layered coding tech-       MTcast is a peer-to-peer based video broadcast method for
niques such as the ones in [5] so that each user can decode     heterogeneous peers whose available bandwidths, compu-
the video by receiving arbitrary number of layers, although     tation powers, screen sizes, etc. are different. The target
splitting into many layers imposes computation overhead         environment of MTcast is shown in Table 1.
on user nodes.                                                        MTcast does not treat the VoD (Video on Demand)
       Furthermore, there are many studies on video stream-     service. Instead, it provides a service of broadcasting a
ing in peer to peer networks such as OMNI[6] and the            video during the scheduled time to peers requiring the
CoopNet[7]. In OMNI(Overlay Multicast Network Infras-           video, which is very similar to ordinary TV broadcasts. Af-
tructure), each user node works as a service provider as        ter a video broadcast starts, new users can join to receive
well as a service user, and a multicast tree is composed of     the video delivery from the scene currently on broadcast.
user nodes so that the video delivery service is provided
                                                                2.2   Definitions
to all the user nodes through the tree. OMNI can adapt to
the change of the user node distribution and the network        Let s denote a video server, and U = {u1 , ..., uN } de-
conditions. In CoopNet, user nodes cache parts of stream        note a set of user nodes. We assume that for each ui ,
data, and deliver them through multiple diverse distribution    available upstream (i.e., node to network) bandwidth and
internal layer
                    Table 1. Target Environment                                               1500               leaf layer
                                                                                    1300             700
 Item                          Explanation
                                                                             1100          900 500         300
 Types of peers                Desktop PC, laptop PC,
                               PDA, cell phone, etc
 Peer’s home network           ADSL,      CATV,      FTTH,               1400 1200 1000 800 600 400 200 100
                               WLAN, cellular network,
                               etc connected to the Internet             1100 1100 900          500
 Number of peers               up to 100,000
 Contents for broad-           pre-recorded video                            Figure 2. Layer Tree Construction
 cast

                                      800kbps
                                                                2.4   Construction of Transcode Tree
            700kbps                             600kbps
                                                                In MTcast, the transcode tree is calculated in a centralized
                                                                way by a peer uC ∈ U . We assume that the server s de-
                                                                cides uC or behaves as uC . The tree construction algorithm
          400kbps        300kbps      200kbps     500kbps       consists of the following three steps.
                                                                Step 1: For each peer u ∈ U , the algorithm checks if u
Figure 1. Video Broadcast through a Transcode Tree (n =         can transcode one or more video streams in real time by
2, k = 6)                                                       inequality (1), and can transmit n + 1 video streams at the
                                                                same time by inequality (2).
downstream (i.e., network to node) bandwidth can be mea-
sured. We denote them by ui .upper bw and ui .lower bw,                             u.ntrans (u.q) ≥ 1                            (1)
respectively. Let ui .q denote ui ’s video quality require-                      u.nlink (u.q) ≥ n + 1                            (2)
ment. We assume that ui .q is given by the bitrate of video
calculated by the required picture size and frame rate. Let     If the above two inequalities hold for u, then u is put into
ui .ntrans (q) denote the maximum number of simultaneous        UI which is the set of internal peers, otherwise put into UL
transcoding which can be executed by ui for videos with         which is the set of leaf peers. s is always put into UI . If
quality q. Let ui .nlink (q) denote the maximum number          |UI | < n |U |, the whole network resource is not sufficient
                                                                          1
of simultaneous forwarding of videos with quality q which       to satisfy the quality requirements of all peers. In such a
can be performed by ui . ui .ntrans (q) and ui .nlink (q) are   case, we let |UL | − n−1 |U | peers in UL with larger up-
                                                                                         n
calculated from computation power of ui , ui .upper bw and      stream bandwidths to reduce their quality requirements so
video quality.                                                  that the inequalities (1) and (2) hold. Then, those peers are
      MTcast constructs an overlay multicast tree where s is    moved to UI . By the above procedure, |UI | ≥ n |U | always
                                                                                                                 1
the root node and user peers in U are intermediate (internal)   holds.
or leaf nodes. Hereafter, this multicast tree is called the     Step 2: Peers of UI are sorted in decreasing order of their
transcode tree.                                                 quality requirements and every bunch of k peers is packed
                                                                to an internal layer, where k is the constant defined in 2.3.
2.3   Structure of Transcode Tree                               Here, we select the first and second peers of each layer as
Internal nodes in the transcode tree transmit a video stream    the responsible peer and the sub-responsible peer of the
to children nodes. In MTcast, each internal node basically      layer, respectively. The average value of quality require-
has n children nodes. The value of n is decided based on        ments in each layer is called the layer quality, and all peers
the available resource of peers as explained in Sect. 2.4. In   in the layer adjust their quality requirements to the value.
order to reduce the start-up delay for video playback and       For the set of leaf nodes UL , elements are similarly packed
the number of transcoding applied to video, the transcode       to leaf layers.
tree is constructed as a modified complete n-ary tree where      Step 3: The algorithm sorts internal layers in decreasing
degree of the root node is k instead of n (k is a constant      order of the layer quality, and constructs the complete n-
and explained later). The transcode tree is constructed so      ary tree called the layer tree consisting of those internal
that for each node ui and each of its children nodes uj ,       layers where the layer quality of each layer does not ex-
ui .q ≥ uj .q holds. That is, from the root node to each leaf   ceeds that of its parent layer. In MTcast, we use the depth
node, the nodes are ordered in decreasing order of quality      first search order to assign internal layers to the layer tree
requirements. In order to tolerate node leave/failures, ev-     as shown in Fig. 2. Next, the algorithm attaches each leaf
ery k nodes in U are bunched up into one group. We call         layer L to the internal layer whose layer quality is closest to
each group a layer, where k is a predetermined constant.        L. If the layer quality of L exceeds that of L’s parent layer,
In MTcast, peers in the same layer receive video with the       the layer quality of L is adjusted to that of L’s parent. Fi-
same quality. This quality is called the layer quality. A       nally, the transcode tree is obtained by assigning internal
representative peer is selected for each layer. Parent-child    nodes and leaf nodes to the corresponding internal layers
relationship among all layers on the transcode tree is called   and leaf layers in decreasing order of their required qual-
the layer tree. An example of the transcode tree with n = 2     ity, respectively, and assigning parent-child relationships
and k = 6 is shown in Fig. 1, where, small circles and big      between peers according to the layer tree.
ovals represent peers and layers, respectively.                 How to decide transcode tree degree n and layer size k
In MTcast, the transcode tree is constructed as a mod-
ified complete n-ary tree. So, as the value of n becomes
large, the tree height (i.e., the number of transcoding) also
decreases. Since the required upstream bandwidth of each
node increases in proportion of n’s value, the value of n
must be carefully decided considering upstream bandwidth
limitation of each node. In order to avoid reducing the qual-
ity requirements in Step 1, we should decide the value of n                  (a) before failure          (b) after recovery
so that the number of peers satisfying the inequality (2) is
no less than U .
              n                                                            Figure 3. Recovery from Node Failure
      The value of k affects the tolerance of leave/failure of
peers. If f peers may leave from a layer at the same time
before the transcode tree is reconstructed, the remaining        using its extra upstream bandwidths similarly to the case of
k − f nodes in the layer must transmit video streams to          processing new delivery requests. An example is shown in
n · k children nodes. So, the following inequalities must        Fig. 3.
hold in order to recover from f simultaneous failures in         (3) Reconstruction of Transcode Tree           The transcode
each layer.Thus, the appropriate value of k can be decided       tree is periodically reconstructed to adjust tentatively in-
from values of n and f .                                         creased degree (n + 1) to normal one (n). Peer uc recon-
                                                                 structs the transcode tree in the following steps.
                 (k − f )u.nlink (q) ≥ n · k              (3)          First, uC collects quality requirements effective after
                                   k                             time tr from all peers along the layer tree. Then, it calcu-
         (k − f )u.ntrans ≥                n              (4)    lates the new transcode tree with the algorithm in Sect. 2.4,
                              u.nlink (q)                        and distributes the information of the transcode tree to all
                                                                 peers.
2.5   MTcast Protocols                                                 At time tr , all nodes stop receiving streams from
                                                                 current parent nodes and the nodes in the root layer of
Start-up Behavior       Let t denote the time of video de-       the new transcode tree starts to deliver video streams.
livery. Each user who wants to receive video stream sends        Nodes in internal layers also forward video streams after
a video delivery request to the video server s before time       receiving them. The video stream transmitted along the
t − δ. At time t − δ, s calculates the transcode tree with       new transcode tree arrives after a certain time lag due to
the algorithm explained in Sect. 2.4. Here, δ is the time        transcode and link latency. During the time lag, each node
to calculate the transcode tree and distribute the necessary     plays back video from its buffer. For the next reconstruc-
information to all nodes. Next, s distributes the following      tion of the transcode tree, the buffer of each node must be
information I or I to all peers along T .                        filled with video data of the above time lag. This process
                                                                 is done by transmitting the video stream slightly faster than
  • I: information distributed to a responsible peer uR of       its playback speed.
    a layer L
    All information of T including addresses of peers
    and their parent-child relationship, the structure of the    3     Implementation of MTcast System
    layer tree and the membership of peers, the addresses
    of responsible/sub-responsible peers, the layer quality      In the original MTcast in [9], parent-child relationship of
    in each layer, and the next reconstruction time tr .         peers in the transcode tree is decided without consideration
                                                                 of property of overlay links. However, in the Internet, an
  • I : information distributed to each peer p of layer L        overlay link could be a long path with many hops in the
    other than L’s responsible peer                              physical network. So, first, we have designed and imple-
    The addresses of L’s responsible peer, p’s children          mented effective decision of parent-child relationship be-
    peers, the responsible peer and sub-responsible peers        tween peers. Then, aiming to investigate usefulness of MT-
    of L’s parent layer, and the next reconstruction time        cast in the real Internet environment, we have implemented
    tr . belongs,                                                MTcast system. We address details of the implementation
                                                                 in the following subsections.
(2) Protocols for peer joining and leaving As explained
before, each peer in an internal layer has an extra upstream     3.1   Decision of parent-child relationship between
bandwidth for forwarding one more video stream. A user                 peers
peer unew who has requested video delivery after time t can
use this extra bandwidth to receive a video stream instantly.    As we already explained, the algorithm in Sect. 2.4 does
Here, the fan-out of the forwarding peer uf which sends a        not make a distinction between overlay links over different
stream to unew is allowed to be n + 1 tentatively.               ASs (autonomous systems) and those within an AS. In this
      If one or more peers in a layer fail or suddenly leave     subsection, we propose a technique to save bandwidths of
from the transcode tree, all of their descendant nodes called    inter-AS links without spoiling the advantages of MTcast.
orphan peers will not be able to receive video streams. In             As our basic policy, we consider the physical network
MTcast, each orphan peer can find an alternative parent           topology to decide the parent-child relationship of peers in
peer by asking the responsible peer of the parent layer. The     the transcode tree.
responsible peer received such a request ask one of peers              Let C and P be the sets of peers which belong to a
in the layer to forward video stream to the orphan node by       layer and its parent layer, respectively. For each pair of
peers between the child layer and the parent layer, the phys-   modules like lost connection or the amount of buffered data
ical path and the available bandwidth can be obtained with      exceeding a threshold. In our design, the central process
tools such as traceroute and Abing, respectively. Fro peers     is informed of these changes through a queue for status
c ∈ C and p ∈ P , let bw(c, p) and L(c, p) denote the           change message arranged in the central process. In case
available bandwidth measured with such tools (called mea-       of status change, the corresponding module puts a message
sured available bandwidth, hereafter) and the set of phys-      into the queue, and the central process takes an appropriate
ical links between c and p except for links connected to        action according to the incoming message.
nodes c and p, respectively.
      Next, we estimate the available bandwidth of each         3.3   Devices to facilitate video stream handling
overlay link (called estimated available bandwidth, here-       Although a mechanism similar to InputStream and Output-
after) by considering some of links are shared among mul-       Stream classes in the standard Java library can be used to
tiple overlay links. For each link l ∈ L(c, p), the estimated   exchange video streams between modules, it would be trou-
available bandwidth dl and the sharing degree dl are de-        blesome to realize a procedure like restarting transcoder
fined as follows.                                                with different parameters during processing a successive
                                                                stream. In the prototype system design, we made an orig-
 ml    = M in{ bw(c, p) | l ∈ L(c, p), c ∈ C, p ∈ P }
                                                                inal class whereby each end of frame data is explicitly de-
 dl    = | { c | l ∈ L(c, p), c ∈ C, p ∈ P } |                  clared by transmitter, and receiver reads data until end of
                                                                frame data as usual, but after that, the read method returns
       Based on the measured available bandwidth ml and         -2 like when it reaches EOF, and then the receiver contin-
the sharing degree dl of each physical link, we decide the      ues reading data of the next frame. With this specification,
parent node of each child node as follows.                      each end of frame data can be easily processed without de-
       For each p ∈ P and c ∈ C, we investigate if c can re-    stroying and remaking module instances.
ceive video stream with the required quality. If only a peer          Stream processing can be realized using JMF(Java
(say, p1 ) in P can transmit a video stream with the required   Media Framework), but it is known that there will be a large
quality to c, then the p1 is assigned as the parent node of     processing delay due to buffers placed on each processing
c. If some of peers in P can transmit the video stream to       module. In the prototype system, we tried to minimize pro-
c, M axp∈P M inl∈L(c,p) mll which represents the peer with
                           d                                    cessing delay by reducing buffering on each module. In
maximum available bandwidth per share, is assigned as c’s       the system, while each module basically corresponds to a
parent node.                                                    thread, we made the write method to block until the cor-
       We designed the prototype system with emphasis on        responding reader thread reads all of written data by that
the following two points: (i) ease of implementation and        call. By this design, processing delay is reduced since
(ii) reusablility of the finished software; when we change       when a module invokes write method, control is immedi-
the proposed method, the prototype system should be easily      ately passed to the reader thread, and thus there is no pro-
modified to comply with the new specification, and a large        cessing delay due to thread switching interval of operating
part of the software should be able to be reused in other       system.
similar projects. With these two requirements satisfied, we
devised the prototype system not to sacrifice performance.       3.4   Devices to facilitate evaluation on many PlanetLab
By adopting modular design, which is described below, we              nodes
made the process which runs on each node a generic pro-
gram, and its functionality can be changed by changing the      In order to facilitate evaluation using several tens of Plan-
code for central server process.                                etLab nodes, we devised the following manner. Conditions
                                                                of PlanetLab nodes momently change, and good nodes fre-
3.2   Modular design                                            quently becomes unavailable after short period of time. In
                                                                order to cope with this situation, we made a set of scripts
In order to flexibly change formation of process on each         which checks currently installed files on each node, and up-
node and facilitate performance evaluation under various        date them if necessary. The scripts consist of ones run on
configurations, we designed the process on each node to          the operator’s host, and ones run on PlanetLab nodes. The
be a set of modules like buffer or transcoder. Process on       former scripts copies necessary scripts and files on Planet-
each node makes instance of these modules and connects          Lab nodes using scp command, and execute them. This
them according to commands from the central server pro-         operation is executed in parallel. The latter scripts check
cess. The central server process can also issue commands        the version of installed files, and if necessary, download
for particular modules on each node. We made these mech-        and install them using wget command. We used these
anisms using Java language and RMI(Remote Method In-            scripts, and confirmed that it takes less than 30 minutes
vocation). The modules include transcoder, video player,        to install java run time environment to 30 PlanetLab nodes.
network data receiver, transmitter, buffer, user interface,     We also confirmed that installing java class files for the pro-
configuration file reader, etc, and each of these modules         totype system on these nodes takes about 1 minute.
corresponds to one class. Each instance of the modules
corresponds to one thread so that the modules can be pro-
grammed more easily than event-driven style code.               4     Performance Evaluation
      Each instance made by commands from the central
server process is registered in a hash table on the node with   In order to show practicality of MTcast, we need to val-
a unique key. Methods of these instances can be invoked         idate (1) overhead of real-time transcoding by user peers
later by referring this hash table. The prototype system        and (2) network and processing overhead for constructing a
should make some action according to status changes on          transcode tree, (3) recovery time after peer leaving/failure.
For the usefulness of MTcast, we also need to validate (4)                   Table 3. Time required for starting up
user satisfaction (i.e., whether each user can receive and
play back video at his/her requested quality), (5) efficiency        # of nodes    establishing connection      receiving data
of the transcode tree (in terms of overlay link lengths), and            4               10,871ms                19,040ms
(6) start-up delay (i.e., the time delay for video to be dis-            8               11,681ms                16,993ms
played after its request).                                              12               15,307ms                15,307ms
      In [9], we already showed that the validity of the                16               11,317ms                18,781ms
above (1), (2) and (4), and confirmed that desktop PCs and               20               12,144ms                17,562ms
lap-top PCs have enough power for real-time transcoding
of a video stream (for (1)), an ordinary PC can calculate                  Table 4. Delay introduced by forwarding
the transcode tree with 100,000 peers in 1.5 second and the
tree size is within 300Kbyte (for (2)), and MTcast achieves                         # of nodes       delay
higher user satisfaction than layered multicast using 10 lay-                           14         7,002 ms
ers through computer simulation (for (4)).                                              16         8,603 ms
      In Sect. 4.1, we present the detailed experimental re-                            20         20,573 ms
sults of applying our prototype system to show the validity                             23         10,024 ms
of the above (3), (5), and (6).                                                         27         9,435 ms


4.1   Evaluation on PlanetLab nodes                               Time required for start-up

In order to evaluate the performance of proposed method           Table 3 shows the times required for starting up. The
in the real environment, we operated our prototype system         columns for establishing connection and receiving data in-
on PlanetLab nodes. In this section, we describe the result       dicate the required times since start of the system until
of measurement for time required to join, delay introduced        the last node establishes connection and until the last node
by successive forwarding and transcoding, the behavior in         receives first byte of data, respectively. Please note that
case of abrupt departure of node, and effectiveness of band-      these times include Java JIT compiler to compile byte code.
width saving method for backbone links.                           Since all nodes establish connections in parallel, the ob-
                                                                  tained time is the maximum time required for nodes to es-
                                                                  tablish connection. Since leaf nodes have to receive data
Configuration                                                      via their descendant nodes, the time to receive data is con-
                                                                  sidered to be proportional to the height of tree. But actually,
We used video with pixel size of 180 × 120 and frame              increase of time is not observed as the height of tree grows.
rate of 15fps, without audio. We used motion JPEG as the          This is because the time required to establish connection is
CODEC of video.                                                   dominant. Anyway, these times are less than 20 seconds,
      We used TCP to transmit video data between nodes.           and thus these values are practical.
In order to evaluate scalability, we constructed the
transcode tree as a cascade of layers with two nodes, in-
stead of the modified n-ary tree. In the experiments,              Delay introduced by successive forwarding and
we used several tens of PlanetLab nodes including nodes           transcoding
showed in Table 2. We also used katsuo.naist.jp and
wakame.naist.jp, which do not belong to PlanetLab. We             Table 4 shows the time since the first node receives first
executed the originating video server at katsuo.naist.jp, and     byte of data until the last node receives first byte of data.
one user node process on each other nodes. Due to constant        The result is similar to the result of start-up delay measure-
high processing load on PlanetLab nodes, it was difficult to       ment. The times are less than 21 seconds, and thus these
allocate processing power required for transcoding, and so        values are practical.
we did not performed transcoding on each node. Instead,
we make each node just buffer data for one frame, and
transmit it unprocessed. We believe that when our method
is used for practical use, the processing power for transcod-     Behavior in case of abrupt node departure
ing is surely available.
                                                                  Table 5 shows the time to reestablish connection after node
            Table 2. Nodes used in experiments                    departure. The time to reconnect and restarting receiving
                                                                  data are the time since the departure node sends depar-
      katsuo.naist.jp          pl1-higashi.ics.es.osaka-u.ac.jp   ture request until its child node reestablishes connection to
      wakame.naist.jp          planetlab3.netmedia.gist.ac.kr
      planet0.jaist.ac.jp      planetlab1.netmedia.gist.ac.kr     a new parent node, and the child node receives first byte
      planetlab-01.naist.jp    planetlab2.iii.u-tokyo.ac.jp       of data from the new parent node, respectively. We used
      planetlab-02.naist.jp    planetlab1.iii.u-tokyo.ac.jp       the cascading transcode tree topology which is same as the
      planetlab-03.naist.jp    planetlab5.ie.cuhk.edu.hk          last measurement, and made the node indicated in the ta-
      planetlab-04.naist.jp    planetlab4.ie.cuhk.edu.hk
      planetlab1.tmit.bme.hu   planetlab-02.ece.uprm.edu          ble leave the system. The measured times are less than two
      planetlab2.tmit.bme.hu   planetlab-01.ece.uprm.edu          seconds, and users see video uninterruptedly in this period
                               planetlab02.cnds.unibe.ch          since video stream data is buffered in each node. Thus, the
                               planetlab01.cnds.unibe.ch          results are practical.
Table 5. Behavior in case of node departure
                            departure node                   new parent node                     time to    time to
                                                                                              reconnect      restart
                            planetlab1.netmedia.gist.ac.kr   thu1.6planetlab.edu.cn            1,471ms     1,805ms
                            planetlab4.ie.cuhk.edu.hk        planetlab1.netmedia.gist.ac.kr       288ms      411ms
                            planetlab-01.ece.uprm.edu        planetlab5.ie.cuhk.edu.hk         1,114ms     1,657ms
                            planetlab1.tmit.bme.hu           planetlab-02.ece.uprm.edu         1,383ms     1,626ms
                            planetlab01.cnds.unibe.ch        planetlab1.tmit.bme.hu            1,541ms     1,841ms
                            planetlab2.iii.u-tokyo.ac.jp     planet0.jaist.ac.jp                   61ms    1,004ms


Effectiveness of bandwidth saving method for backbone                           [2] S. Jacobs and A. Eleftheriadis: “Streaming Video
links                                                                               using Dynamic Rate Shaping and TCP Flow Con-
                                                                                    trol,” Visual Communication and Image Representa-
In order to evaluate the effectiveness of bandwidth saving                          tion Journal, 1998. (invited paper).
method for backbone links described in 3.1, we compared
the number of total hops in the transcode tree when the sys-                    [3] J. Liu, B. Li, and Y.-Q. Zhang: “An End-to-End
tem chooses parent nodes for each node at random, using                             Adaptation Protocol for Layered Video Multicast Us-
the method in 3.1, and using a method to choose nearest                             ing Optimal Rate Allocation,” IEEE Trans. on Multi-
hop parent. In this experiment, we set the number of nodes                          media, Vol. 6, No. 1, 2004.
per layer to be 4, and used cascaded transcode tree. We                         [4] B. Vickers, C. Albuquerque and T. Suda : “Source-
make the system obtain route between nodes and available                            Adaptive Multilayered Multicast Algorithms for
bandwidth between nodes using traceroute and Abing[11],                             Real-Time Video Distribution,” IEEE/ACM Trans. on
respectively. Some routers between nodes did not respond                            Networking, Vol.8, No.6, pp.720-733, 2000.
to ICMP Echo message, and these routers are treated as
different routers for each route between nodes. Routes                          [5] H. Radha, M. Shaar, Y. Chen: “The MPEG-4 Fine-
and available bandwidth are obtained before constructing                            Grained-Scalable video coding method for multime-
transcode tree, and these are performed in parallel for each                        dia streaming over IP,” IEEE Trans. on Multimedia,
route, and this took about 30 seconds. Table 6 shows the                            Vol. 3, No. 1, 2001.
total hop counts in the transcode tree measured three times.
Note that even if we used the method in 3.1, the resulting                      [6] S. Banerjee, C. Kommareddy, K. Kar, B. Bhattachar-
transcode tree differs each time since the results of mea-                          jee and S. Khuller : “Construction of an Efficient
surement for available bandwidth differs each time. The                             Overlay Multicast Infrastructure for Real-time Ap-
results indicate that using the method in 3.1 leads to 16%                          plications,” Proc. of IEEE Inforcom 2003, pp.1521-
fewer hop count, and choosing nearest hop parent leads to                           1531, 2003.
41% fewer hop count.
                                                                                [7] V. Padmanabhan, H. Wang, P. Chow and K. Sripanid-
    Table 6. Effectiveness of backbone bandwidth saving                             kulchai : “Distributiong streaming media content us-
                                                                                    ing cooperative networking,” Proc. of the 12th Int’l
                method                # of hops                                     Workshop on Network and Operating Systems Sup-
                random              343, 361, 335                                   port for Digital Audio and Video (NOSSDAV 2002),
             method in 3.1          314, 280, 277                                   pp.177-186, 2002.
           minimum hop count        204, 204, 204
                                                                                [8] D. Liu, E. Setton, B. Shen and S. Chen : “PAT: Peer-
                                                                                    Assisted Transcoding for Overlay Streaming to Het-
                                                                                    erogeneous Devices,” Proc. of 17th Int’l Workshop on
5    Conclusion                                                                     Network and Operating Systems Support for Digital
                                                                                    Audio and Video (NOSSDAV 2007), pp.51-53, 2007.
In this paper, we have implemented the algorithm and pro-
                                                                                [9] T. Sun, M. Tamai, K. Yasumoto, N. Shibata, M.
tocols of MTcast proposed in [9] and showed the practical-
                                                                                    Ito and M. Mori : “MTcast : Robust and Efficient
ity and performance of MTcast through experiments made
                                                                                    P2P-Based Video Delivery for Heterogeneous Users,”
on PlanetLab.
                                                                                    Proc. of the 9th Int’l. Conf. on Principles of Dis-
      In the future work, we will extend the algorithm of                           tributed Systems (OPODIS 2005), pp.176-190, 2005.
MTcast to treat multi-dimensional quality requests includ-
ing picture size, frame rate, and bit rate, and transcode each                 [10] PlanetLab: “An open platform for developing, de-
quality factor independently of others.                                             ploying, and accessing planetary-scale services,”
                                                                                    https://www.planet-lab.org/.
References                                                                     [11] J.Navratil and R. L. Cottrell : “ABwE: A Practical
                                                                                    Approach to Available Bandwidth Estimation,”
 [1] G. Conklin, G. Greenbaum, K. Lillevold, and A.                                 http://www-iepm.slac.stanford.edu
     Lippman: “Video Coding for Streaming Media De-                                 /tools/abing/
     livery on the Internet,” IEEE Trans. on Circuits and
     Systems for Video Technology, Vol. 11, No. 3, 2001.

Contenu connexe

Tendances

Chapter 10.slides
Chapter 10.slidesChapter 10.slides
Chapter 10.slideslara_ays
 
Brief vss
Brief vssBrief vss
Brief vssignaky
 
Chapter 3 slides
Chapter 3 slidesChapter 3 slides
Chapter 3 slideslara_ays
 
P2P-Next: Future Internet Media Delivery to CE Devices
P2P-Next: Future Internet Media Delivery to CE DevicesP2P-Next: Future Internet Media Delivery to CE Devices
P2P-Next: Future Internet Media Delivery to CE DevicesMark Stuart
 
Application independent based multicast routing protocols in mobile ad hoc ne...
Application independent based multicast routing protocols in mobile ad hoc ne...Application independent based multicast routing protocols in mobile ad hoc ne...
Application independent based multicast routing protocols in mobile ad hoc ne...Alexander Decker
 
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...Videoguy
 
Ethernet Alliance Tech Exploration Forum Keynote
Ethernet Alliance Tech Exploration Forum KeynoteEthernet Alliance Tech Exploration Forum Keynote
Ethernet Alliance Tech Exploration Forum Keynotebkoley
 
Chapter 3 a
Chapter 3 aChapter 3 a
Chapter 3 alara_ays
 
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...IDES Editor
 
Latency on a_switched_ethernet_network
Latency on a_switched_ethernet_networkLatency on a_switched_ethernet_network
Latency on a_switched_ethernet_networkzeedoui2
 
Summer Training In Dotnet
Summer Training In DotnetSummer Training In Dotnet
Summer Training In DotnetDUCC Systems
 
High-speed Distributed Video Transcoding for Multiple Rates ...
High-speed Distributed Video Transcoding for Multiple Rates ...High-speed Distributed Video Transcoding for Multiple Rates ...
High-speed Distributed Video Transcoding for Multiple Rates ...Videoguy
 
Chapter 7 slides
Chapter 7 slidesChapter 7 slides
Chapter 7 slideslara_ays
 

Tendances (20)

Chapter 10.slides
Chapter 10.slidesChapter 10.slides
Chapter 10.slides
 
Brief vss
Brief vssBrief vss
Brief vss
 
Networks
NetworksNetworks
Networks
 
Chapter 3 slides
Chapter 3 slidesChapter 3 slides
Chapter 3 slides
 
P2P-Next: Future Internet Media Delivery to CE Devices
P2P-Next: Future Internet Media Delivery to CE DevicesP2P-Next: Future Internet Media Delivery to CE Devices
P2P-Next: Future Internet Media Delivery to CE Devices
 
ieee title
ieee titleieee title
ieee title
 
Application independent based multicast routing protocols in mobile ad hoc ne...
Application independent based multicast routing protocols in mobile ad hoc ne...Application independent based multicast routing protocols in mobile ad hoc ne...
Application independent based multicast routing protocols in mobile ad hoc ne...
 
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...
EXPERIENCES WITH HIGH DEFINITION INTERACTIVE VIDEO ...
 
Threads 2x[1]
Threads 2x[1]Threads 2x[1]
Threads 2x[1]
 
Ethernet Alliance Tech Exploration Forum Keynote
Ethernet Alliance Tech Exploration Forum KeynoteEthernet Alliance Tech Exploration Forum Keynote
Ethernet Alliance Tech Exploration Forum Keynote
 
Chapter 3 a
Chapter 3 aChapter 3 a
Chapter 3 a
 
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...
Performance analysis of Multiband - OFDM systems using LDPC coder in pulsed -...
 
Delay Tolerant Streaming Services, Thomas Plagemann, UiO
Delay Tolerant Streaming Services, Thomas Plagemann, UiODelay Tolerant Streaming Services, Thomas Plagemann, UiO
Delay Tolerant Streaming Services, Thomas Plagemann, UiO
 
Osi 7 layer
Osi 7 layerOsi 7 layer
Osi 7 layer
 
Latency on a_switched_ethernet_network
Latency on a_switched_ethernet_networkLatency on a_switched_ethernet_network
Latency on a_switched_ethernet_network
 
60 64
60 6460 64
60 64
 
Summer Training In Dotnet
Summer Training In DotnetSummer Training In Dotnet
Summer Training In Dotnet
 
High-speed Distributed Video Transcoding for Multiple Rates ...
High-speed Distributed Video Transcoding for Multiple Rates ...High-speed Distributed Video Transcoding for Multiple Rates ...
High-speed Distributed Video Transcoding for Multiple Rates ...
 
Chapter 7 slides
Chapter 7 slidesChapter 7 slides
Chapter 7 slides
 
Lecture03 H
Lecture03 HLecture03 H
Lecture03 H
 

En vedette

(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...
(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...
(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...Naoki Shibata
 
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...Naoki Shibata
 
GPGPU-Assisted Subpixel Tracking Method for Fiducial Markers
GPGPU-Assisted Subpixel Tracking Method for Fiducial MarkersGPGPU-Assisted Subpixel Tracking Method for Fiducial Markers
GPGPU-Assisted Subpixel Tracking Method for Fiducial MarkersNaoki Shibata
 
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISMNaoki Shibata
 
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...Naoki Shibata
 
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...Naoki Shibata
 
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...Naoki Shibata
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
 
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...Naoki Shibata
 
(Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
 (Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm... (Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...Naoki Shibata
 
(Paper) Self adaptive island GA
(Paper) Self adaptive island GA(Paper) Self adaptive island GA
(Paper) Self adaptive island GANaoki Shibata
 
(Paper) An Endorsement Based Mobile Payment System for a Disaster Area
(Paper) An Endorsement Based Mobile Payment System for a Disaster Area(Paper) An Endorsement Based Mobile Payment System for a Disaster Area
(Paper) An Endorsement Based Mobile Payment System for a Disaster AreaNaoki Shibata
 
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...Naoki Shibata
 
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...Naoki Shibata
 
Circular barcode design resistant to linear motion blur (preliminary slides)
Circular barcode design resistant to linear motion blur (preliminary slides)Circular barcode design resistant to linear motion blur (preliminary slides)
Circular barcode design resistant to linear motion blur (preliminary slides)Naoki Shibata
 

En vedette (16)

(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...
(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...
(Paper) MTcast: Robust and Efficient P2P-based Video Delivery for Heterogeneo...
 
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...
(Paper) BalloonNet: A Deploying Method for a Three-Dimensional Wireless Netwo...
 
GPGPU-Assisted Subpixel Tracking Method for Fiducial Markers
GPGPU-Assisted Subpixel Tracking Method for Fiducial MarkersGPGPU-Assisted Subpixel Tracking Method for Fiducial Markers
GPGPU-Assisted Subpixel Tracking Method for Fiducial Markers
 
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM
(Paper) P-Tour: A PERSONAL NAVIGATION SYSTEM FOR TOURISM
 
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
(Paper) A Method for Overlay Network Latency Estimation from Previous Observa...
 
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...
(Paper) Emergency Medical Support System for Visualizing Locations and Vital ...
 
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...
(Paper) Efficient Evaluation Methods of Elementary Functions Suitable for SIM...
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...
(Paper) Parking Navigation for Alleviating Congestion in Multilevel Parking F...
 
(Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
 (Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm... (Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Paper) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
 
(Paper) Self adaptive island GA
(Paper) Self adaptive island GA(Paper) Self adaptive island GA
(Paper) Self adaptive island GA
 
(Paper) An Endorsement Based Mobile Payment System for a Disaster Area
(Paper) An Endorsement Based Mobile Payment System for a Disaster Area(Paper) An Endorsement Based Mobile Payment System for a Disaster Area
(Paper) An Endorsement Based Mobile Payment System for a Disaster Area
 
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...
(Paper) A Method for Sharing Traffic Jam Information using Inter-Vehicle Comm...
 
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...
(Slides) Efficient Evaluation Methods of Elementary Functions Suitable for SI...
 
Circular barcode design resistant to linear motion blur (preliminary slides)
Circular barcode design resistant to linear motion blur (preliminary slides)Circular barcode design resistant to linear motion blur (preliminary slides)
Circular barcode design resistant to linear motion blur (preliminary slides)
 
Mathematical analysis
Mathematical analysisMathematical analysis
Mathematical analysis
 

Similaire à (Paper) P2P VIDEO BROADCAST BASED ON PER-PEER TRANSCODING AND ITS EVALUATION ON PLANETLAB

(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...
(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...
(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...Naoki Shibata
 
Impact of Video Encoding Parameters on Dynamic Video Transcoding
Impact of Video Encoding Parameters on Dynamic Video TranscodingImpact of Video Encoding Parameters on Dynamic Video Transcoding
Impact of Video Encoding Parameters on Dynamic Video TranscodingVideoguy
 
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...Videoguy
 
Quality of Service for Video Streaming using EDCA in MANET
Quality of Service for Video Streaming using EDCA in MANETQuality of Service for Video Streaming using EDCA in MANET
Quality of Service for Video Streaming using EDCA in MANETijsrd.com
 
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKS
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKSRESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKS
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKSijwmn
 
Collaboration and Grid Technologies
Collaboration and Grid TechnologiesCollaboration and Grid Technologies
Collaboration and Grid TechnologiesVideoguy
 
Equinix Network Edge virtual network services demonstrated strong performance...
Equinix Network Edge virtual network services demonstrated strong performance...Equinix Network Edge virtual network services demonstrated strong performance...
Equinix Network Edge virtual network services demonstrated strong performance...Principled Technologies
 
6NEAT project and IP..
6NEAT project and IP..6NEAT project and IP..
6NEAT project and IP..Videoguy
 
Wimax Emulator to Enhance Media and Video Quality
Wimax Emulator to Enhance Media and Video QualityWimax Emulator to Enhance Media and Video Quality
Wimax Emulator to Enhance Media and Video Qualityijceronline
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGVideoguy
 
An Insight Into The Qos Techniques
An Insight Into The Qos TechniquesAn Insight Into The Qos Techniques
An Insight Into The Qos TechniquesKatie Gulley
 
Optimizing cloud resources for delivering iptv services through virtualization
Optimizing cloud resources for delivering iptv services through virtualizationOptimizing cloud resources for delivering iptv services through virtualization
Optimizing cloud resources for delivering iptv services through virtualizationMadan Golla
 
A QoS-Adaptive Framework for Screen Sharing Over Internet
A QoS-Adaptive Framework for Screen Sharing Over InternetA QoS-Adaptive Framework for Screen Sharing Over Internet
A QoS-Adaptive Framework for Screen Sharing Over InternetDuc Nguyen
 
Optimal Streaming Protocol for VoD Using Clients' Residual Bandwidth
Optimal Streaming Protocol for VoD Using Clients' Residual BandwidthOptimal Streaming Protocol for VoD Using Clients' Residual Bandwidth
Optimal Streaming Protocol for VoD Using Clients' Residual BandwidthIDES Editor
 
Supporting Real-time Traffic: Preparing Your IP Network for ...
Supporting Real-time Traffic: Preparing Your IP Network for ...Supporting Real-time Traffic: Preparing Your IP Network for ...
Supporting Real-time Traffic: Preparing Your IP Network for ...Videoguy
 

Similaire à (Paper) P2P VIDEO BROADCAST BASED ON PER-PEER TRANSCODING AND ITS EVALUATION ON PLANETLAB (20)

(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...
(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...
(Slides) P2P video broadcast based on per-peer transcoding and its evaluatio...
 
Impact of Video Encoding Parameters on Dynamic Video Transcoding
Impact of Video Encoding Parameters on Dynamic Video TranscodingImpact of Video Encoding Parameters on Dynamic Video Transcoding
Impact of Video Encoding Parameters on Dynamic Video Transcoding
 
report
reportreport
report
 
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...
DYNAMIC REGION OF INTEREST TRANSCODING FOR MULTIPOINT VIDEO ...
 
[32]
[32][32]
[32]
 
Quality of Service for Video Streaming using EDCA in MANET
Quality of Service for Video Streaming using EDCA in MANETQuality of Service for Video Streaming using EDCA in MANET
Quality of Service for Video Streaming using EDCA in MANET
 
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKS
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKSRESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKS
RESOURCE ALLOCATION ALGORITHMS FOR QOS OPTIMIZATION IN MOBILE WIMAX NETWORKS
 
Collaboration and Grid Technologies
Collaboration and Grid TechnologiesCollaboration and Grid Technologies
Collaboration and Grid Technologies
 
Equinix Network Edge virtual network services demonstrated strong performance...
Equinix Network Edge virtual network services demonstrated strong performance...Equinix Network Edge virtual network services demonstrated strong performance...
Equinix Network Edge virtual network services demonstrated strong performance...
 
2 han
2 han2 han
2 han
 
6NEAT project and IP..
6NEAT project and IP..6NEAT project and IP..
6NEAT project and IP..
 
Wimax Emulator to Enhance Media and Video Quality
Wimax Emulator to Enhance Media and Video QualityWimax Emulator to Enhance Media and Video Quality
Wimax Emulator to Enhance Media and Video Quality
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
 
An Insight Into The Qos Techniques
An Insight Into The Qos TechniquesAn Insight Into The Qos Techniques
An Insight Into The Qos Techniques
 
Optimizing cloud resources for delivering iptv services through virtualization
Optimizing cloud resources for delivering iptv services through virtualizationOptimizing cloud resources for delivering iptv services through virtualization
Optimizing cloud resources for delivering iptv services through virtualization
 
A QoS-Adaptive Framework for Screen Sharing Over Internet
A QoS-Adaptive Framework for Screen Sharing Over InternetA QoS-Adaptive Framework for Screen Sharing Over Internet
A QoS-Adaptive Framework for Screen Sharing Over Internet
 
Optimal Streaming Protocol for VoD Using Clients' Residual Bandwidth
Optimal Streaming Protocol for VoD Using Clients' Residual BandwidthOptimal Streaming Protocol for VoD Using Clients' Residual Bandwidth
Optimal Streaming Protocol for VoD Using Clients' Residual Bandwidth
 
Supporting Real-time Traffic: Preparing Your IP Network for ...
Supporting Real-time Traffic: Preparing Your IP Network for ...Supporting Real-time Traffic: Preparing Your IP Network for ...
Supporting Real-time Traffic: Preparing Your IP Network for ...
 
Ijcatr04051003
Ijcatr04051003Ijcatr04051003
Ijcatr04051003
 
ICT Lab Overview
ICT Lab OverviewICT Lab Overview
ICT Lab Overview
 

Plus de Naoki Shibata

BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...
BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...
BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...Naoki Shibata
 
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...Naoki Shibata
 
An Endorsement Based Mobile Payment System for A Disaster Area
An Endorsement Based Mobile Payment System for A Disaster AreaAn Endorsement Based Mobile Payment System for A Disaster Area
An Endorsement Based Mobile Payment System for A Disaster AreaNaoki Shibata
 
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...Naoki Shibata
 
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...Naoki Shibata
 
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNsNaoki Shibata
 
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
 
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...Naoki Shibata
 
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...(Slides) A Personal Navigation System with a Schedule Planning Facility Based...
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...Naoki Shibata
 
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...Naoki Shibata
 
(Slides) A demand-oriented information retrieval method on MANET
(Slides) A demand-oriented information retrieval method on MANET(Slides) A demand-oriented information retrieval method on MANET
(Slides) A demand-oriented information retrieval method on MANETNaoki Shibata
 
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...Naoki Shibata
 
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...Naoki Shibata
 
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...Naoki Shibata
 
(Slides) P-Tour: A Personal Navigation System for Tourist
(Slides) P-Tour: A Personal Navigation System for Tourist(Slides) P-Tour: A Personal Navigation System for Tourist
(Slides) P-Tour: A Personal Navigation System for TouristNaoki Shibata
 

Plus de Naoki Shibata (15)

BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...
BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...
BalloonNet: A Deploying Method for a Three-Dimensional Wireless Network Surro...
 
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...
Congestion Alleviation Scheduling Technique for Car Drivers Based on Predicti...
 
An Endorsement Based Mobile Payment System for A Disaster Area
An Endorsement Based Mobile Payment System for A Disaster AreaAn Endorsement Based Mobile Payment System for A Disaster Area
An Endorsement Based Mobile Payment System for A Disaster Area
 
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...
GreenSwirl: Combining Traffic Signal Control and Route Guidance for Reducing ...
 
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...
Task Scheduling Algorithm for Multicore Processor Systems with Turbo Boost an...
 
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs
(Slides) A Decentralized Method for Maximizing k-coverage Lifetime in WSNs
 
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...(Slides) Task scheduling algorithm for multicore processor system for minimiz...
(Slides) Task scheduling algorithm for multicore processor system for minimiz...
 
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...
(Slides) A Technique for Information Sharing using Inter-Vehicle Communicatio...
 
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...(Slides) A Personal Navigation System with a Schedule Planning Facility Based...
(Slides) A Personal Navigation System with a Schedule Planning Facility Based...
 
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
(Slides) A Method for Distributed Computaion of Semi-Optimal Multicast Tree i...
 
(Slides) A demand-oriented information retrieval method on MANET
(Slides) A demand-oriented information retrieval method on MANET(Slides) A demand-oriented information retrieval method on MANET
(Slides) A demand-oriented information retrieval method on MANET
 
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...
(Slides) Inter-Vehicle Communication Protocol for Cooperatively Capturing and...
 
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...
(Slides) UbiREMOTE: Framework for Remotely Controlling Networked Appliances t...
 
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
(Slides) A Method for Pedestrian Position Estimation using Inter-Vehicle Comm...
 
(Slides) P-Tour: A Personal Navigation System for Tourist
(Slides) P-Tour: A Personal Navigation System for Tourist(Slides) P-Tour: A Personal Navigation System for Tourist
(Slides) P-Tour: A Personal Navigation System for Tourist
 

Dernier

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Dernier (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

(Paper) P2P VIDEO BROADCAST BASED ON PER-PEER TRANSCODING AND ITS EVALUATION ON PLANETLAB

  • 1. P2P VIDEO BROADCAST BASED ON PER-PEER TRANSCODING AND ITS EVALUATION ON PLANETLAB Naoki Shibata, Masaaki Mori Keiichi Yasumoto Dept. Info. Processing & Management Graduate School of Information Science Shiga University Nara Institute of Science and Technology 1-1-1 Bamba, Hikone 522-8522, Japan 8916-5 Takayama, Ikoma 630-0192, Japan email: {shibata, mori}@biwako.shiga-u.ac.jp email: yasumoto@is.naist.jp ABSTRACT trees to the receiver nodes while the server load is high. We have previously proposed a P2P video broadcast OMNI and CoopNet, unfortunately, do not treat heteroge- method called MTcast for simultaneously delivering video neous quality requirements. to user peers with different quality requirements. In this There are some approaches for heterogeneous quality paper, we design and implement a prototype system of MT- video delivery on P2P network. PAT [8] is a method to re- cast and report the results of its performance evaluation in duce computation resources necessary for on-line transcod- the real Internet environment. MTcast relies on each peer ing in P2P network by making peers share the part of data to transcode and forward video to other peers. We con- generated during encoding and decoding of video. We have ducted experiments on 20 PlanetLab nodes, evaluated start- also proposed MTcast (Multiple Transcode based video up delay and recovery time from peer leaving/failure, and multicast)[9] which achieves efficient and robust video confirmed that MTcast achieves practical performance in a broadcast to multiple heterogeneous users by relying on real environment. user peers to transcode and forward video. MTcast con- structs a tree whose root is the sender of the original video KEY WORDS content as a variation of a perfect n-ary tree, where peers P2P, Video, Broadcast, Transcoding, Overlay Network with higher quality requirements are located near the root of the tree. In this paper, aiming to validate practicability and ef- 1 Introduction fectiveness of MTcast in the real Internet environment, we design and implement MTcast system with a more effi- Recently, many types of computing terminals ranging from cient tree construction mechanism than the original MT- cell phone to HDTV are connected to the Internet, and con- cast. In the new tree construction mechanism, parent-child sequently efficient video delivery method for many termi- relationship between peers is decided based on bandwidth nals with different computation powers, display sizes and and topology measurement on physical path. We have available bandwidths is required. There are some studies also designed and implemented a prototype system of MT- on simultaneously delivering video to multiple users with cast. With the prototype, we have conducted experiments different quality requirements. In the multiversion tech- on the PlanetLab[10], and confirmed that MTcast achieves nique [1], multiple versions of a video with different bi- reasonably short start-up latency, small channel switching trates are stored at a server so that the most appropriate time, and small recovery time from peer leaving/failure. video can be delivered to each user within resource limi- tation. In the on-line transcoding method [2], the original 2 MTcast Overview video is transcoded at a server or one of intermediate nodes (i.e. proxy) to videos with various quality, according to re- In this section, we provide an overview of MTcast [9]. ceivers’ requests, and forwarded to the receivers. However, large computation power is required for transcoding by a 2.1 Target Environment server or an intermediate node. In the layered multicast method [3, 4], video is encoded with layered coding tech- MTcast is a peer-to-peer based video broadcast method for niques such as the ones in [5] so that each user can decode heterogeneous peers whose available bandwidths, compu- the video by receiving arbitrary number of layers, although tation powers, screen sizes, etc. are different. The target splitting into many layers imposes computation overhead environment of MTcast is shown in Table 1. on user nodes. MTcast does not treat the VoD (Video on Demand) Furthermore, there are many studies on video stream- service. Instead, it provides a service of broadcasting a ing in peer to peer networks such as OMNI[6] and the video during the scheduled time to peers requiring the CoopNet[7]. In OMNI(Overlay Multicast Network Infras- video, which is very similar to ordinary TV broadcasts. Af- tructure), each user node works as a service provider as ter a video broadcast starts, new users can join to receive well as a service user, and a multicast tree is composed of the video delivery from the scene currently on broadcast. user nodes so that the video delivery service is provided 2.2 Definitions to all the user nodes through the tree. OMNI can adapt to the change of the user node distribution and the network Let s denote a video server, and U = {u1 , ..., uN } de- conditions. In CoopNet, user nodes cache parts of stream note a set of user nodes. We assume that for each ui , data, and deliver them through multiple diverse distribution available upstream (i.e., node to network) bandwidth and
  • 2. internal layer Table 1. Target Environment 1500 leaf layer 1300 700 Item Explanation 1100 900 500 300 Types of peers Desktop PC, laptop PC, PDA, cell phone, etc Peer’s home network ADSL, CATV, FTTH, 1400 1200 1000 800 600 400 200 100 WLAN, cellular network, etc connected to the Internet 1100 1100 900 500 Number of peers up to 100,000 Contents for broad- pre-recorded video Figure 2. Layer Tree Construction cast 800kbps 2.4 Construction of Transcode Tree 700kbps 600kbps In MTcast, the transcode tree is calculated in a centralized way by a peer uC ∈ U . We assume that the server s de- cides uC or behaves as uC . The tree construction algorithm 400kbps 300kbps 200kbps 500kbps consists of the following three steps. Step 1: For each peer u ∈ U , the algorithm checks if u Figure 1. Video Broadcast through a Transcode Tree (n = can transcode one or more video streams in real time by 2, k = 6) inequality (1), and can transmit n + 1 video streams at the same time by inequality (2). downstream (i.e., network to node) bandwidth can be mea- sured. We denote them by ui .upper bw and ui .lower bw, u.ntrans (u.q) ≥ 1 (1) respectively. Let ui .q denote ui ’s video quality require- u.nlink (u.q) ≥ n + 1 (2) ment. We assume that ui .q is given by the bitrate of video calculated by the required picture size and frame rate. Let If the above two inequalities hold for u, then u is put into ui .ntrans (q) denote the maximum number of simultaneous UI which is the set of internal peers, otherwise put into UL transcoding which can be executed by ui for videos with which is the set of leaf peers. s is always put into UI . If quality q. Let ui .nlink (q) denote the maximum number |UI | < n |U |, the whole network resource is not sufficient 1 of simultaneous forwarding of videos with quality q which to satisfy the quality requirements of all peers. In such a can be performed by ui . ui .ntrans (q) and ui .nlink (q) are case, we let |UL | − n−1 |U | peers in UL with larger up- n calculated from computation power of ui , ui .upper bw and stream bandwidths to reduce their quality requirements so video quality. that the inequalities (1) and (2) hold. Then, those peers are MTcast constructs an overlay multicast tree where s is moved to UI . By the above procedure, |UI | ≥ n |U | always 1 the root node and user peers in U are intermediate (internal) holds. or leaf nodes. Hereafter, this multicast tree is called the Step 2: Peers of UI are sorted in decreasing order of their transcode tree. quality requirements and every bunch of k peers is packed to an internal layer, where k is the constant defined in 2.3. 2.3 Structure of Transcode Tree Here, we select the first and second peers of each layer as Internal nodes in the transcode tree transmit a video stream the responsible peer and the sub-responsible peer of the to children nodes. In MTcast, each internal node basically layer, respectively. The average value of quality require- has n children nodes. The value of n is decided based on ments in each layer is called the layer quality, and all peers the available resource of peers as explained in Sect. 2.4. In in the layer adjust their quality requirements to the value. order to reduce the start-up delay for video playback and For the set of leaf nodes UL , elements are similarly packed the number of transcoding applied to video, the transcode to leaf layers. tree is constructed as a modified complete n-ary tree where Step 3: The algorithm sorts internal layers in decreasing degree of the root node is k instead of n (k is a constant order of the layer quality, and constructs the complete n- and explained later). The transcode tree is constructed so ary tree called the layer tree consisting of those internal that for each node ui and each of its children nodes uj , layers where the layer quality of each layer does not ex- ui .q ≥ uj .q holds. That is, from the root node to each leaf ceeds that of its parent layer. In MTcast, we use the depth node, the nodes are ordered in decreasing order of quality first search order to assign internal layers to the layer tree requirements. In order to tolerate node leave/failures, ev- as shown in Fig. 2. Next, the algorithm attaches each leaf ery k nodes in U are bunched up into one group. We call layer L to the internal layer whose layer quality is closest to each group a layer, where k is a predetermined constant. L. If the layer quality of L exceeds that of L’s parent layer, In MTcast, peers in the same layer receive video with the the layer quality of L is adjusted to that of L’s parent. Fi- same quality. This quality is called the layer quality. A nally, the transcode tree is obtained by assigning internal representative peer is selected for each layer. Parent-child nodes and leaf nodes to the corresponding internal layers relationship among all layers on the transcode tree is called and leaf layers in decreasing order of their required qual- the layer tree. An example of the transcode tree with n = 2 ity, respectively, and assigning parent-child relationships and k = 6 is shown in Fig. 1, where, small circles and big between peers according to the layer tree. ovals represent peers and layers, respectively. How to decide transcode tree degree n and layer size k
  • 3. In MTcast, the transcode tree is constructed as a mod- ified complete n-ary tree. So, as the value of n becomes large, the tree height (i.e., the number of transcoding) also decreases. Since the required upstream bandwidth of each node increases in proportion of n’s value, the value of n must be carefully decided considering upstream bandwidth limitation of each node. In order to avoid reducing the qual- ity requirements in Step 1, we should decide the value of n (a) before failure (b) after recovery so that the number of peers satisfying the inequality (2) is no less than U . n Figure 3. Recovery from Node Failure The value of k affects the tolerance of leave/failure of peers. If f peers may leave from a layer at the same time before the transcode tree is reconstructed, the remaining using its extra upstream bandwidths similarly to the case of k − f nodes in the layer must transmit video streams to processing new delivery requests. An example is shown in n · k children nodes. So, the following inequalities must Fig. 3. hold in order to recover from f simultaneous failures in (3) Reconstruction of Transcode Tree The transcode each layer.Thus, the appropriate value of k can be decided tree is periodically reconstructed to adjust tentatively in- from values of n and f . creased degree (n + 1) to normal one (n). Peer uc recon- structs the transcode tree in the following steps. (k − f )u.nlink (q) ≥ n · k (3) First, uC collects quality requirements effective after k time tr from all peers along the layer tree. Then, it calcu- (k − f )u.ntrans ≥ n (4) lates the new transcode tree with the algorithm in Sect. 2.4, u.nlink (q) and distributes the information of the transcode tree to all peers. 2.5 MTcast Protocols At time tr , all nodes stop receiving streams from current parent nodes and the nodes in the root layer of Start-up Behavior Let t denote the time of video de- the new transcode tree starts to deliver video streams. livery. Each user who wants to receive video stream sends Nodes in internal layers also forward video streams after a video delivery request to the video server s before time receiving them. The video stream transmitted along the t − δ. At time t − δ, s calculates the transcode tree with new transcode tree arrives after a certain time lag due to the algorithm explained in Sect. 2.4. Here, δ is the time transcode and link latency. During the time lag, each node to calculate the transcode tree and distribute the necessary plays back video from its buffer. For the next reconstruc- information to all nodes. Next, s distributes the following tion of the transcode tree, the buffer of each node must be information I or I to all peers along T . filled with video data of the above time lag. This process is done by transmitting the video stream slightly faster than • I: information distributed to a responsible peer uR of its playback speed. a layer L All information of T including addresses of peers and their parent-child relationship, the structure of the 3 Implementation of MTcast System layer tree and the membership of peers, the addresses of responsible/sub-responsible peers, the layer quality In the original MTcast in [9], parent-child relationship of in each layer, and the next reconstruction time tr . peers in the transcode tree is decided without consideration of property of overlay links. However, in the Internet, an • I : information distributed to each peer p of layer L overlay link could be a long path with many hops in the other than L’s responsible peer physical network. So, first, we have designed and imple- The addresses of L’s responsible peer, p’s children mented effective decision of parent-child relationship be- peers, the responsible peer and sub-responsible peers tween peers. Then, aiming to investigate usefulness of MT- of L’s parent layer, and the next reconstruction time cast in the real Internet environment, we have implemented tr . belongs, MTcast system. We address details of the implementation in the following subsections. (2) Protocols for peer joining and leaving As explained before, each peer in an internal layer has an extra upstream 3.1 Decision of parent-child relationship between bandwidth for forwarding one more video stream. A user peers peer unew who has requested video delivery after time t can use this extra bandwidth to receive a video stream instantly. As we already explained, the algorithm in Sect. 2.4 does Here, the fan-out of the forwarding peer uf which sends a not make a distinction between overlay links over different stream to unew is allowed to be n + 1 tentatively. ASs (autonomous systems) and those within an AS. In this If one or more peers in a layer fail or suddenly leave subsection, we propose a technique to save bandwidths of from the transcode tree, all of their descendant nodes called inter-AS links without spoiling the advantages of MTcast. orphan peers will not be able to receive video streams. In As our basic policy, we consider the physical network MTcast, each orphan peer can find an alternative parent topology to decide the parent-child relationship of peers in peer by asking the responsible peer of the parent layer. The the transcode tree. responsible peer received such a request ask one of peers Let C and P be the sets of peers which belong to a in the layer to forward video stream to the orphan node by layer and its parent layer, respectively. For each pair of
  • 4. peers between the child layer and the parent layer, the phys- modules like lost connection or the amount of buffered data ical path and the available bandwidth can be obtained with exceeding a threshold. In our design, the central process tools such as traceroute and Abing, respectively. Fro peers is informed of these changes through a queue for status c ∈ C and p ∈ P , let bw(c, p) and L(c, p) denote the change message arranged in the central process. In case available bandwidth measured with such tools (called mea- of status change, the corresponding module puts a message sured available bandwidth, hereafter) and the set of phys- into the queue, and the central process takes an appropriate ical links between c and p except for links connected to action according to the incoming message. nodes c and p, respectively. Next, we estimate the available bandwidth of each 3.3 Devices to facilitate video stream handling overlay link (called estimated available bandwidth, here- Although a mechanism similar to InputStream and Output- after) by considering some of links are shared among mul- Stream classes in the standard Java library can be used to tiple overlay links. For each link l ∈ L(c, p), the estimated exchange video streams between modules, it would be trou- available bandwidth dl and the sharing degree dl are de- blesome to realize a procedure like restarting transcoder fined as follows. with different parameters during processing a successive stream. In the prototype system design, we made an orig- ml = M in{ bw(c, p) | l ∈ L(c, p), c ∈ C, p ∈ P } inal class whereby each end of frame data is explicitly de- dl = | { c | l ∈ L(c, p), c ∈ C, p ∈ P } | clared by transmitter, and receiver reads data until end of frame data as usual, but after that, the read method returns Based on the measured available bandwidth ml and -2 like when it reaches EOF, and then the receiver contin- the sharing degree dl of each physical link, we decide the ues reading data of the next frame. With this specification, parent node of each child node as follows. each end of frame data can be easily processed without de- For each p ∈ P and c ∈ C, we investigate if c can re- stroying and remaking module instances. ceive video stream with the required quality. If only a peer Stream processing can be realized using JMF(Java (say, p1 ) in P can transmit a video stream with the required Media Framework), but it is known that there will be a large quality to c, then the p1 is assigned as the parent node of processing delay due to buffers placed on each processing c. If some of peers in P can transmit the video stream to module. In the prototype system, we tried to minimize pro- c, M axp∈P M inl∈L(c,p) mll which represents the peer with d cessing delay by reducing buffering on each module. In maximum available bandwidth per share, is assigned as c’s the system, while each module basically corresponds to a parent node. thread, we made the write method to block until the cor- We designed the prototype system with emphasis on responding reader thread reads all of written data by that the following two points: (i) ease of implementation and call. By this design, processing delay is reduced since (ii) reusablility of the finished software; when we change when a module invokes write method, control is immedi- the proposed method, the prototype system should be easily ately passed to the reader thread, and thus there is no pro- modified to comply with the new specification, and a large cessing delay due to thread switching interval of operating part of the software should be able to be reused in other system. similar projects. With these two requirements satisfied, we devised the prototype system not to sacrifice performance. 3.4 Devices to facilitate evaluation on many PlanetLab By adopting modular design, which is described below, we nodes made the process which runs on each node a generic pro- gram, and its functionality can be changed by changing the In order to facilitate evaluation using several tens of Plan- code for central server process. etLab nodes, we devised the following manner. Conditions of PlanetLab nodes momently change, and good nodes fre- 3.2 Modular design quently becomes unavailable after short period of time. In order to cope with this situation, we made a set of scripts In order to flexibly change formation of process on each which checks currently installed files on each node, and up- node and facilitate performance evaluation under various date them if necessary. The scripts consist of ones run on configurations, we designed the process on each node to the operator’s host, and ones run on PlanetLab nodes. The be a set of modules like buffer or transcoder. Process on former scripts copies necessary scripts and files on Planet- each node makes instance of these modules and connects Lab nodes using scp command, and execute them. This them according to commands from the central server pro- operation is executed in parallel. The latter scripts check cess. The central server process can also issue commands the version of installed files, and if necessary, download for particular modules on each node. We made these mech- and install them using wget command. We used these anisms using Java language and RMI(Remote Method In- scripts, and confirmed that it takes less than 30 minutes vocation). The modules include transcoder, video player, to install java run time environment to 30 PlanetLab nodes. network data receiver, transmitter, buffer, user interface, We also confirmed that installing java class files for the pro- configuration file reader, etc, and each of these modules totype system on these nodes takes about 1 minute. corresponds to one class. Each instance of the modules corresponds to one thread so that the modules can be pro- grammed more easily than event-driven style code. 4 Performance Evaluation Each instance made by commands from the central server process is registered in a hash table on the node with In order to show practicality of MTcast, we need to val- a unique key. Methods of these instances can be invoked idate (1) overhead of real-time transcoding by user peers later by referring this hash table. The prototype system and (2) network and processing overhead for constructing a should make some action according to status changes on transcode tree, (3) recovery time after peer leaving/failure.
  • 5. For the usefulness of MTcast, we also need to validate (4) Table 3. Time required for starting up user satisfaction (i.e., whether each user can receive and play back video at his/her requested quality), (5) efficiency # of nodes establishing connection receiving data of the transcode tree (in terms of overlay link lengths), and 4 10,871ms 19,040ms (6) start-up delay (i.e., the time delay for video to be dis- 8 11,681ms 16,993ms played after its request). 12 15,307ms 15,307ms In [9], we already showed that the validity of the 16 11,317ms 18,781ms above (1), (2) and (4), and confirmed that desktop PCs and 20 12,144ms 17,562ms lap-top PCs have enough power for real-time transcoding of a video stream (for (1)), an ordinary PC can calculate Table 4. Delay introduced by forwarding the transcode tree with 100,000 peers in 1.5 second and the tree size is within 300Kbyte (for (2)), and MTcast achieves # of nodes delay higher user satisfaction than layered multicast using 10 lay- 14 7,002 ms ers through computer simulation (for (4)). 16 8,603 ms In Sect. 4.1, we present the detailed experimental re- 20 20,573 ms sults of applying our prototype system to show the validity 23 10,024 ms of the above (3), (5), and (6). 27 9,435 ms 4.1 Evaluation on PlanetLab nodes Time required for start-up In order to evaluate the performance of proposed method Table 3 shows the times required for starting up. The in the real environment, we operated our prototype system columns for establishing connection and receiving data in- on PlanetLab nodes. In this section, we describe the result dicate the required times since start of the system until of measurement for time required to join, delay introduced the last node establishes connection and until the last node by successive forwarding and transcoding, the behavior in receives first byte of data, respectively. Please note that case of abrupt departure of node, and effectiveness of band- these times include Java JIT compiler to compile byte code. width saving method for backbone links. Since all nodes establish connections in parallel, the ob- tained time is the maximum time required for nodes to es- tablish connection. Since leaf nodes have to receive data Configuration via their descendant nodes, the time to receive data is con- sidered to be proportional to the height of tree. But actually, We used video with pixel size of 180 × 120 and frame increase of time is not observed as the height of tree grows. rate of 15fps, without audio. We used motion JPEG as the This is because the time required to establish connection is CODEC of video. dominant. Anyway, these times are less than 20 seconds, We used TCP to transmit video data between nodes. and thus these values are practical. In order to evaluate scalability, we constructed the transcode tree as a cascade of layers with two nodes, in- stead of the modified n-ary tree. In the experiments, Delay introduced by successive forwarding and we used several tens of PlanetLab nodes including nodes transcoding showed in Table 2. We also used katsuo.naist.jp and wakame.naist.jp, which do not belong to PlanetLab. We Table 4 shows the time since the first node receives first executed the originating video server at katsuo.naist.jp, and byte of data until the last node receives first byte of data. one user node process on each other nodes. Due to constant The result is similar to the result of start-up delay measure- high processing load on PlanetLab nodes, it was difficult to ment. The times are less than 21 seconds, and thus these allocate processing power required for transcoding, and so values are practical. we did not performed transcoding on each node. Instead, we make each node just buffer data for one frame, and transmit it unprocessed. We believe that when our method is used for practical use, the processing power for transcod- Behavior in case of abrupt node departure ing is surely available. Table 5 shows the time to reestablish connection after node Table 2. Nodes used in experiments departure. The time to reconnect and restarting receiving data are the time since the departure node sends depar- katsuo.naist.jp pl1-higashi.ics.es.osaka-u.ac.jp ture request until its child node reestablishes connection to wakame.naist.jp planetlab3.netmedia.gist.ac.kr planet0.jaist.ac.jp planetlab1.netmedia.gist.ac.kr a new parent node, and the child node receives first byte planetlab-01.naist.jp planetlab2.iii.u-tokyo.ac.jp of data from the new parent node, respectively. We used planetlab-02.naist.jp planetlab1.iii.u-tokyo.ac.jp the cascading transcode tree topology which is same as the planetlab-03.naist.jp planetlab5.ie.cuhk.edu.hk last measurement, and made the node indicated in the ta- planetlab-04.naist.jp planetlab4.ie.cuhk.edu.hk planetlab1.tmit.bme.hu planetlab-02.ece.uprm.edu ble leave the system. The measured times are less than two planetlab2.tmit.bme.hu planetlab-01.ece.uprm.edu seconds, and users see video uninterruptedly in this period planetlab02.cnds.unibe.ch since video stream data is buffered in each node. Thus, the planetlab01.cnds.unibe.ch results are practical.
  • 6. Table 5. Behavior in case of node departure departure node new parent node time to time to reconnect restart planetlab1.netmedia.gist.ac.kr thu1.6planetlab.edu.cn 1,471ms 1,805ms planetlab4.ie.cuhk.edu.hk planetlab1.netmedia.gist.ac.kr 288ms 411ms planetlab-01.ece.uprm.edu planetlab5.ie.cuhk.edu.hk 1,114ms 1,657ms planetlab1.tmit.bme.hu planetlab-02.ece.uprm.edu 1,383ms 1,626ms planetlab01.cnds.unibe.ch planetlab1.tmit.bme.hu 1,541ms 1,841ms planetlab2.iii.u-tokyo.ac.jp planet0.jaist.ac.jp 61ms 1,004ms Effectiveness of bandwidth saving method for backbone [2] S. Jacobs and A. Eleftheriadis: “Streaming Video links using Dynamic Rate Shaping and TCP Flow Con- trol,” Visual Communication and Image Representa- In order to evaluate the effectiveness of bandwidth saving tion Journal, 1998. (invited paper). method for backbone links described in 3.1, we compared the number of total hops in the transcode tree when the sys- [3] J. Liu, B. Li, and Y.-Q. Zhang: “An End-to-End tem chooses parent nodes for each node at random, using Adaptation Protocol for Layered Video Multicast Us- the method in 3.1, and using a method to choose nearest ing Optimal Rate Allocation,” IEEE Trans. on Multi- hop parent. In this experiment, we set the number of nodes media, Vol. 6, No. 1, 2004. per layer to be 4, and used cascaded transcode tree. We [4] B. Vickers, C. Albuquerque and T. Suda : “Source- make the system obtain route between nodes and available Adaptive Multilayered Multicast Algorithms for bandwidth between nodes using traceroute and Abing[11], Real-Time Video Distribution,” IEEE/ACM Trans. on respectively. Some routers between nodes did not respond Networking, Vol.8, No.6, pp.720-733, 2000. to ICMP Echo message, and these routers are treated as different routers for each route between nodes. Routes [5] H. Radha, M. Shaar, Y. Chen: “The MPEG-4 Fine- and available bandwidth are obtained before constructing Grained-Scalable video coding method for multime- transcode tree, and these are performed in parallel for each dia streaming over IP,” IEEE Trans. on Multimedia, route, and this took about 30 seconds. Table 6 shows the Vol. 3, No. 1, 2001. total hop counts in the transcode tree measured three times. Note that even if we used the method in 3.1, the resulting [6] S. Banerjee, C. Kommareddy, K. Kar, B. Bhattachar- transcode tree differs each time since the results of mea- jee and S. Khuller : “Construction of an Efficient surement for available bandwidth differs each time. The Overlay Multicast Infrastructure for Real-time Ap- results indicate that using the method in 3.1 leads to 16% plications,” Proc. of IEEE Inforcom 2003, pp.1521- fewer hop count, and choosing nearest hop parent leads to 1531, 2003. 41% fewer hop count. [7] V. Padmanabhan, H. Wang, P. Chow and K. Sripanid- Table 6. Effectiveness of backbone bandwidth saving kulchai : “Distributiong streaming media content us- ing cooperative networking,” Proc. of the 12th Int’l method # of hops Workshop on Network and Operating Systems Sup- random 343, 361, 335 port for Digital Audio and Video (NOSSDAV 2002), method in 3.1 314, 280, 277 pp.177-186, 2002. minimum hop count 204, 204, 204 [8] D. Liu, E. Setton, B. Shen and S. Chen : “PAT: Peer- Assisted Transcoding for Overlay Streaming to Het- erogeneous Devices,” Proc. of 17th Int’l Workshop on 5 Conclusion Network and Operating Systems Support for Digital Audio and Video (NOSSDAV 2007), pp.51-53, 2007. In this paper, we have implemented the algorithm and pro- [9] T. Sun, M. Tamai, K. Yasumoto, N. Shibata, M. tocols of MTcast proposed in [9] and showed the practical- Ito and M. Mori : “MTcast : Robust and Efficient ity and performance of MTcast through experiments made P2P-Based Video Delivery for Heterogeneous Users,” on PlanetLab. Proc. of the 9th Int’l. Conf. on Principles of Dis- In the future work, we will extend the algorithm of tributed Systems (OPODIS 2005), pp.176-190, 2005. MTcast to treat multi-dimensional quality requests includ- ing picture size, frame rate, and bit rate, and transcode each [10] PlanetLab: “An open platform for developing, de- quality factor independently of others. ploying, and accessing planetary-scale services,” https://www.planet-lab.org/. References [11] J.Navratil and R. L. Cottrell : “ABwE: A Practical Approach to Available Bandwidth Estimation,” [1] G. Conklin, G. Greenbaum, K. Lillevold, and A. http://www-iepm.slac.stanford.edu Lippman: “Video Coding for Streaming Media De- /tools/abing/ livery on the Internet,” IEEE Trans. on Circuits and Systems for Video Technology, Vol. 11, No. 3, 2001.