SlideShare a Scribd company logo
1 of 12
Download to read offline
Cooperative Architectures and Algorithms
              for Discovery and Transcoding of Multi-version Content
                  Claudia Canali                      Valeria Cardellini                 Michele Colajanni
                University of Parma             University of Roma “Tor Vergata”         University of Modena
            claudia@weblab.ing.unimo.it            cardellini@ing.uniroma2.it             colajanni@unimo.it
                            Riccardo Lancellotti                            Philip S. Yu
                       University of Roma “Tor Vergata”           IBM T.J. Watson Research Center
                        riccardo@weblab.ing.unimo.it                    psyu@us.ibm.com



Abstract                                                       these diverse destination devices.
                                                                  The content adaptation mechanism, called transcod-
A clear trend of the Web is that a variety of new consumer     ing, can be applied to transformations within media types
devices with diverse processing powers, display capabili-      (e.g., reducing the color depth of an image), across media
ties, and network connections is gaining access to the In-     types (e.g., video clip to image set) or to both of them.
ternet. Tailoring Web content to match the device char-        The existing approaches to deploy Web content adapta-
acteristics requires functionalities for content transforma-   tion fall into three broad categories depending on the en-
tion, namely transcoding, that are typically carried out by    tity that performs the adaptation process [1, 12]: client-
the content provider or by some proxy server at the edge.      based, edge-based (also called proxy-based), and server-
In this paper, we propose an alternative solution consist-     based adaptation. A comprehensive analysis on related
ing of an intermediate infrastructure of distributed servers   work is in Section 2. The edge-based approach uses the
which collaborate in discovering, transcoding, and deliv-      proxy server to analyze and adapt the content on-the-fly,
ering multiple versions of Web resources to the clients.       before delivering the result to the user. This component is
We investigate different algorithms for cooperative dis-       often called edge server as in the delivery chain between
covery and transcoding in the context of this intermediate     the client device and the content server it is generally lo-
infrastructure where the servers are organized in hierar-      cated close to the client. So far, the edge-based approach
chical and flat peer-to-peer topologies. We compare the         has been typically carried out by some edge server that
performance of the proposed schemes through a flexible          directly connects to the clients. In this paper, we ex-
prototype that implements all proposed mechanisms.             plore a different alternative that considers a distributed
                                                               system of cooperative servers which collaborate in dis-
                                                               covering, transcoding, and delivering Web content. Mini-
1    Introduction                                              mizing the user response time and bounding its variability
                                                               are the main goals of this distributed cooperative architec-
The Web is rapidly evolving towards a highly heteroge-         ture. Indeed, the computational cost of transcoding can
neous accessed environment, due to the variety of con-         be notably reduced by discovering the desired resource in
sumer devices that are increasingly gaining access to the      other servers and also by involving some other servers to
Internet. The emerging Web-connected devices, such as          perform the task of content adaptation. Although the co-
handheld computers, PDAs, mobile phones, differ consid-        operative transcoding is based on distributed schemes, it
erably in network connectivity, processing power, storage,     is not a simple extension to cooperative caching because
display, and format handling capabilities. Hence, there is     two main issues have to be addressed to achieve a suit-
a growing demand for solutions that enable the transfor-       able solution. First, the presence of diverse consumer de-
mation of Web content for adapting and delivering it to        vices requires to recognize, discover, and cache the multi-
ple variants of the same resource obtained by transcoding      2    Related work
operations. Moreover, the transcoding process is expen-
sive in terms of server computing resources. Issues related    The client-based approach to content adaptation seems
to workload distribution, which are not usually considered     not suitable for all the cases in which clients offer lim-
in Web caching, can become of fundamental importance           ited processing power and connection bandwidth. The
in the case of cooperative transcoding.                        server-based approach, that adds content adaptation ser-
                                                               vices to traditional Web server functionalities [14], in-
   In this paper, we propose and investigate some architec-    creases the complexity of the server platform and soft-
tures and algorithms for cooperative discovery, transcod-      ware, but remains a valid alternative. However, in this
ing, and delivery, including servers organized in hier-        paper we will focus on content adaptation carried out by
archical and flat topologies. We compare their perfor-          an intermediate architecture of distributed servers. The
mance through a prototype called ColTrES (Collabora-           advantages of proxy-based content adaptation have been
tive Transcoder Edge Services), which is a flexible testbed     explored by many recent studies [4, 3, 5, 7, 9, 10, 13, 18].
based on Squid [19]. ColTrES implements all consid-            This scheme can use one [10, 13, 18] or more [4, 3, 9]
ered mechanisms by extending the traditional cooperative       servers to analyze and adapt the content on-the-fly, up
caching systems to an environment characterized by het-        to fully distributed peer-to-peer networks as in [17] (al-
erogeneous client devices. The first extension transforms       though the study of Shi et al. is more focused on personal-
a traditional cache server into an active intermediary,        ized contents). An intermediate adaptation can shift load
which not only caches Web objects but also transcodes          from content-providing servers and simplify their design.
them, stores the results, and allows multi-version lookup      Moreover, this solution is also viable because the large
operations [7, 18]. The second novel extension allows the      majority of consumer devices requires some proxy to ac-
cooperation of the active intermediaries for caching and       cess the Web. A transcoding service located at intermedi-
transcoding. We take advantage of the scalability oppor-       ary points of the network can also tailor resources coming
tunities provided by cooperation to reduce the response        from different content servers. The intermediate server
time experienced by the users of a heterogeneous client        plays also another important role that is, it can cache the
environment.                                                   results of content adaptation, thus avoiding some round-
   We are not aware of any other research work deal-           trips to the content server and costly transcoding opera-
ing with the study and implementation of cooperative           tions when resources can be served from the cache [9, 18].
transcoding and caching systems with both hierarchical            Most research has focused on handling the variations in
and flat topologies. Through our prototypes, we demon-          client bandwidth and display capabilities (e.g., [5, 9, 10]),
strate that all proposed algorithms and cooperative ar-        without focusing on caching aspects. In these proposals,
chitecture are immediately applicable to the Web infras-       the edge server that directly connects to the clients typ-
tructure. The real testbed allows us to evaluate the re-       ically reduces the object size (thus reducing bandwidth
duction of the user response time achievable by different      consumption), apart from providing a version that fits the
cooperative discovery and transcoding schemes. More-           client device capabilities. A limited number of recent pro-
over, we clearly demonstrate the advantages of coopera-        posals have also exploited techniques to combine both
tive transcoding through flat topologies over hierarchical      adaptation and caching to reduce the resource usage at the
schemes.                                                       edge server [7, 13, 18].
                                                                  The large majority of research efforts have been de-
   The rest of this paper is organized as follows. Section 2   voted to the investigation of solutions in which the adap-
analyzes related work. Section 3 discusses the main fea-       tation and caching functionalities are provided on stand-
tures of a distributed system for cooperative transcoding.     alone edge servers that do not cooperate among them. The
Sections 4 and 5 explore different topologies and proto-       main motivation that leaded us to study distributed archi-
cols for cooperative discovery, transcoding, and delivery.     tectures for intermediate services of caching and adap-
Section 6 describes the workload model used to exercise        tation is the limited scalability of a single proxy-based
the prototype. Section 7 presents the experimental results.    approach because of significant computational costs of
Section 8 concludes the paper with some final remarks.          adaptation operations [12]. Fox et al. [9] address this scal-
ability issue by proposing a cluster of locally distributed    found (or generated), the delivery phase transfers the re-
edge servers. This approach may solve the CPU-resource         source to the client. The final delivery is always carried
constraint, but it tends to move the system bottleneck from    out by the edge server first contacted by the client. Hence,
the server CPU to the interconnection of the cluster. On       if the resource is found in another node, the delivery phase
the other hand, the proposes infrastructure is designed to     includes its transmission to the edge server. Although for
be distributed over a wide area network thus preventing        some applications a request can be satisfied with a lower
network bottlenecks.                                           quality resource than that specified by the client, we do
   In recent works we have started to examine how to ex-       not consider such possibility in this paper.
tend traditional caching architectures to the active support       The transcoding phase is specific to the problem here
of cooperative transcoding. In [4] the authors have ob-        considered. We assume that any server of the coopera-
tained some preliminary simulation results that demon-         tive system is equipped with software that can perform
strated the importance of distributing the computational       the transcoding operations required by any type of client
load of transcoding in a cooperative hierarchical scheme.      device that contacts an edge server. The features of client
Some preliminary experimental results on flat topologies        devices vary widely in screen size and colors, process-
have been presented in [3], in which the authors demon-        ing power, storage, user interface, software, and network
strate that a cooperative distributed system consistently      connections. Recently, the WAP Forum and the W3C
outperforms in terms of user response times a system of        have also proposed the standards CC/PP and UAProf for
non-cooperative servers.                                       describing the client capabilities [1]. The client may
                                                               also include the resource type it can consume as a meta-
                                                               information in the HTTP request header. Hereafter, we
3 Main features of the intermediate in-                        will refer to the information describing the capabilities of
  frastructure                                                 the requesting client as the requester-specific capability
                                                               information (RCI). An object which has been previously
The servers of a distributed system can be organized           transcoded may be further adapted to yield a lower qual-
and cooperate through a large set of alternatives. Each        ity object. In particular, each version may be transcoded
node of the intermediate infrastructure may have one or        from a subset of the higher quality versions. Different
more functionalities that is, it can act as a transcoder, a    versions of the same object (and the allowed transcod-
cache or an edge server. Edge servers receive requests         ing operations among them) can be represented through
directly from the clients and deliver the requested re-        a transcoding relation graph [4].
sources. Cache servers provide caching functionalities             It is worth to observe that we consider a generic in-
for both original and transcoded resources. Transcoder         frastructure that does not involve the content-providing
servers perform content adaptation. In this paper we con-      server in the transcoding process as the proposal of server-
sider hierarchical and flat topologies. In flat topologies all   directed transcoding [11]. Hence, we assume that the
nodes are peers and provide all functions, while in hier-      content server always returns the original version of the
archical topologies the nodes may provide different func-      requested resource. Our cooperative architectures for
tionalities. In this section we outline the main common        transcoding and caching can be integrated with content
operations that characterize an intermediate infrastructure    server decisions or not, without altering main perfor-
for cooperative transcoding, while the specific features of     mance considerations and conclusions of this paper.
hierarchical and flat organizations are described in Sec-           During the discovery phase, the servers may cooperate
tions 4 and 5, respectively.                                   to search for the version of the Web object requested by
   We identify three main phases that may require some         the client. Since multiple versions of the same object typ-
cooperation among the nodes of the intermediate infras-        ically exist in the caches, in this phase it is necessary to
tructure, namely discovery, transcoding, and delivery          carry out a multi-version lookup process that may require
phases. Even the traditional phases differ from the corre-     cooperation among the servers. The discovery phase in-
sponding ones of a standard cooperative caching scheme.        cludes a local lookup and may include an external lookup.
We describe the three phases in a reverse order.               Once the edge server has determined the client capabili-
   Once the desired version of the requested object is         ties, it looks for a copy of the requested resource in its
cache. The local lookup may generate one of the fol-            and international network providers.
lowing three events. (1) Local exact hit: the cache con-           Some schemes for distributing the transcoding load
tains the exact version of the requested object, that can       among the servers organized in a hierarchy have been de-
be immediately delivered to the client. (2) Local useful        scribed in [4]. In this paper we consider two approaches,
hit: the cache contains a more detailed and transcodable        called Hierarchical root and Hierarchical leaf coopera-
version of the object that can be transformed to match the      tion schemes. In the Hierarchical root scheme, each node
client request. Depending on the transcoding cooperation        is both a transcoder and a cache server. In the case of
scheme, the edge server can decide either to perform the        local miss, the request is forwarded by the edge server up
transcoding task locally or to activate an external lookup,     to the hierarchy, until it is satisfied with either an exact or
which is carried out through some cooperative discovery         useful hit. In the case of global miss (that is, no level holds
protocol. (3) Local miss: the cache does not contain any        a valid copy of the requested resource), the root node re-
valid copy of the requested object. The edge server must        trieves the original resource from the content provider, if
activate an external lookup to fulfill the request.              necessary adapts it, and sends the exact version of the ob-
   When both exact and useful hits are found in the lo-         ject to the lower-level server. Each node experiencing a
cal cache, the former is preferred because it does not re-      local exact hit responds by sending the resource to the
quire any adaptation task, and no external lookup is nec-       requesting entity, which can be a client or a lower-level
essary. We recognize that our architectures opens many          server. In the case of useful hit, the contacted server per-
novel possibilities for push caching and object replace-        forms locally the content adaptation before sending the
ment [7], that we do not consider in this paper.                exact version of the resource downwards the hierarchy. A
   In the case of local miss and sometimes of useful hit,       copy of the object is stored in the caches of all the nodes
the edge server may activate some cooperative discovery         along the request path.
mechanism to locate a version on some other server. The            As the root node must perform the transcoding ser-
external lookup may provide one of the following results.       vice for every global miss and content adaptation may
(1) Remote exact hit: a remote server holds the exact ver-      involve costly operations, there is a great risk of over-
sion of the requested object, which is transferred to the       loading this server. Indeed, different studies have shown
requesting server. (2) Remote useful hit: a remote server       that pure hierarchical architectures, even when applied to
contains a more detailed and transcodable version of the        traditional cooperative caching, may suffer from scalabil-
requested object that can be transformed to meet the re-        ity and coverage problems, especially when the number
quest. Depending on the transcoding cooperation scheme,         of nodes is large (e.g., [8, 20]). This situation can dra-
the cooperating server can decide either to perform the         matically worsen in the case of cooperative transcoding.
transcoding task locally or to provide the useful version       For this reason, we propose the Hierarchical leaf scheme,
to the requesting server, which will execute the transcod-      that differentiates the roles of the nodes in the interme-
ing process. (3) Remote miss: no remote server contains         diate infrastructure. The leaf nodes maintain the roles of
any valid copy of the object, that is a global cache miss oc-   edge, cache and transcoding servers, while the upper-level
curs. The original version of the requested resource must       nodes provide just cache services for original versions of
be fetched from the content server.                             the resources. When necessary, content adaptation is per-
                                                                formed locally by the leaf nodes.

4    Hierarchical topologies
                                                                5    Flat topologies
In this paper, we consider a pure hierarchical architecture
where sibling servers do not cooperate, and only the bot-       An alternative to hierarchical topology is the flat organi-
tom level nodes (called leaf nodes) are edge servers that       zation, in which all nodes are peers and provide the func-
can be contacted by the clients [15]. We use the com-           tionalities of transcoder, cache, and edge server. This flat
monly adopted three-level tree from leaf nodes to the root      organization allows us to explore various algorithms for
node, because hierarchical architectures follow the idea        cooperative discovery and cooperative transcoding, which
of hierarchical Internet organization, with local, regional,    are discussed in the following sections.
5.1 Cooperative discovery                                         Directory-based protocols are conceptually more com-
                                                               plex than query-based schemes, especially because they
Although the discovery phase in a flat topology can be          include a large class of alternatives, being the the two
based on different protocols, we limit the research space      most important ones the presence of one centralized direc-
of alternatives to the most interesting and widely used sys-   tory vs. multiple directories disseminated over the peers,
tems. It is worth to remark that the cooperation protocols     and the frequency for communicating a local change to
for object discovery and delivery considered in this sec-      the directory/ies. It is impossible to discuss here all the
tion differ from the traditional ones because multiple ver-    alternatives that have been the topics of many studies. We
sions of the same object may be present in the caches of       consider distributed directory-based schemes because it is
the cooperative edge servers. Moreover, there are three        a common view that in a geographically distributed sys-
possible results of the external lookup process: miss, ex-     tem any centralized solution does not scale, the central
act hit, and useful hit.                                       directory server may represent a bottleneck and a single
   Cooperative lookup among distributed servers requires       point of failure, and it does not avoid the query delays
a protocol to exchange local state information, which ba-      during the lookup process.
sically refers to the cache content, although when we con-        In a distributed directory-based scheme, each edge
sider a CPU-bound task such as transcoding, other data         server keeps a directory of the resources that are cached
can be useful (e.g., server load). Cooperative resource dis-   in every other peer, and uses the directory as a filter to
covery has been studied for a while and many mechanisms        reduce the number of queries. Distributing the directory
have been proposed to address the related issues [15].         among all the cooperating peers avoids the polling of mul-
Most of those mechanisms can be adapted to the lookup of       tiple edge servers during the discovery phase, and, in the
multiple versions. The two main and opposite approaches        ideal case, makes object lookup extremely efficient. How-
for disseminating state information are well defined in the     ever, the ideal case is affected by large traffic overheads to
literature on distributed systems: query-based protocols       keep the directories up-to-date. Hence, real implementa-
in which exchanges of state information occur only in          tions use multiple relaxations, such as compressed direc-
response to an explicit request by a peer, and directory-      tories (namely, summary) and less frequent information
based protocols in which state information is exchanged        exchanges for saving memory space and network band-
among the peers in a periodic way or at the occurrence         width. Examples of compression that reduce the message
of a significant event, with many possible variants in be-      size are the Bloom filters, used by Summary Cache [8]
tween. In the following, we consider a query-based pro-        and Cache Digests [16], that compress the cache indexes
tocol and a summary-based protocol (a simplified version        so that a certain amount of false hits is allowed. For our
of the directory-based protocols).                             experiments, we choose Cache Digests as a representative
   Query-based protocols are conceptually simple. When         of the summary-based architectures, because of its popu-
an edge server experiences a local miss or even a useful hit   larity and its implementation in the Squid software. Sup-
(depending on the cooperative transcoding algorithm), it       port for caching and discovery of multiple versions has
sends a query message to all the peers to discover whether     been added to our ColTrES prototype into the summary-
any of them caches a copy of the requested resource. In        based lookup process through URL-encoding the resource
the positive case, the recipient edge server replies with an   version identifier. Therefore, the basic mechanism of
exact hit or with a useful hit message; otherwise, it may      Cache Digests cooperation is preserved. However, the
reply with a miss message or not reply at all. In the case     lookup process becomes more expensive because it has
of useful hit, the response message should provide some        to carry out a search for every possible useful version.
information about the available version of the resource to
allow its retrieval. As the protocol for our query-based       5.2 Cooperative transcoding algorithms
cooperation, we use the popular ICP adopted in NetCache
and Squid [19]. In our ColTrES prototype we added the          Cooperative transcoding is necessary only when a local or
support for multi-version lookup into the Squid version of     a remote useful hit occurs, while misses and exact hits are
ICP by including the version identifier to the URL con-         handled as described in Section 3 and they are unrelated to
tained into the messages.                                      the cooperative transcoding algorithms. We can identify
Local lookup

                                                                   Local exact hit              Miss
                       Local lookup
                                                                                      Local
                                                                                      useful
           Local exact hit            Miss or                       Delivery           hit
                                       local
                                       useful
                                        hit                                    Transcoding
            Delivery                                                           & delivery



                              Cooperative                                                Cooperative
                                 lookup                                                    lookup

                 Remote exact hit               Miss                     Remote exact hit                Miss

             Retrieval                      Retrieval from orig.     Retrieval                         Retrieval from orig.
             & delivery                     server, transcoding      & delivery                        server, transcoding
                             Remote              & delivery                            Remote               & delivery
                             useful                                                    useful
                              hit                                                       hit

                          Remote transcoding,                                             Retrieval,
                              retrieval &                                             local transcoding
                               delivery                                                   & delivery



                          (a) Blind-lazy algorithm.                               (b) Blind-active algorithm.


                                                  Figure 1: Load-blind algorithms.

some alternatives in the case of local and remote useful           wise, a (guaranteed) local useful hit may be preferable to
hits. Since transcoding a useful hit may be computation-           a (possible) remote exact hit.
ally expensive, several load-balancing algorithms can be
used. In particular, we distinguish between load-blind           The blind-active algorithm, shown in Figure 1(b), fol-
algorithms that do not take into account any load state in-   lows an approach opposite to its blind-lazy counterpart.
formation and local load-aware algorithms, that use load      Whenever possible, it saves network usage for the exter-
information about the local server itself to decide which     nal lookup at the price of local computation. In the case
node will perform the transcoding task. We propose two        of a local useful hit, the edge server transcodes the useful
load-blind algorithms and a local load-aware algorithm.       version found in its cache without continuing the discov-
                                                              ery phase. In the case of a remote useful hit, the resource
   The two load-blind algorithms are called blind-lazy and is retrieved from the peer and transcoded locally.
blind-active. The blind-lazy algorithm, whose flow dia-
gram is shown in Figure 1(a), tends to limit the compu-          The load-aware algorithm we propose in this paper is
tational costs of transcoding by taking most advantage of based on load information at the local server. When a lo-
the cooperative peers. In the case of a local useful hit, the cal or a remote useful hit occurs, the node decides whether
edge server continues the discovery phase by activating an to perform locally the transcoding operation or to continue
external lookup process to look for an exact version of the the discovery phase on the basis of its current load. This
requested object in some peer proxy. In case of a remote is a typical threshold-based algorithm that follows one of
useful hit, the edge server always delegates the transcod- the two previous algorithms depending on the server load
ing task to the peer server that reported the useful hit. The (i.e., CPU utilization). When the CPU utilization of the
rational behind this approach is to exploit as much as pos- edge server surpasses a certain threshold, it behaves in a
sible the remote exact hits and to distribute in a nearly lazy mode, as the lazy approach tends to save local CPU
random way the transcoding process. The price of the ex- resources. Otherwise, the edge server adopts the active
ternal lookup process is worth when the remote exact hit approach, because there is enough spare CPU power to
is found and the network links are not saturated; other- perform transcoding.
6 Workload model                                                 especially for the light trans-load working set.
                                                                    From the file list of each workload model, we obtained
In this section we describe the client and workload mod-         80 different traces that were used in parallel during the
els used to evaluate the performance of the cooperative          experiments. Each trace consists of 1000 requests with a
schemes. We consider a classification of the client devices       random delay that elapses between two consecutive re-
on the basis of their capabilities of displaying different ob-   quests. The total size of the original resources for all
jects and connecting to the assigned edge server [4, 7].         workloads is similar. It is 10% higher than the sum of the
The classes of devices range from high-end worksta-              cache sizes of the nodes used in our experiments. On the
tions/PCs which can consume every object in its original         other hand, the mean file size of the two workloads dif-
form, to cellular phones with very limited bandwidth and         fers considerably. Hence, the light workload determines
display capabilities. We introduced six classes of clients;      higher cache hit rates than the heavy one. We have also
the description of the devices capabilities and the values       introduced a popularity resource distribution by defining a
of their popularity can be found in [2]. In this paper, we       set of hot resources (corresponding to 1% of the working
consider that most transcoding operations are applied to         set): 10% of requests refers to this hot set.
image objects (GIF, JPEG, and BMP formats), as more                 To study the performance of the cooperative transcod-
than 70% of the files requested in the Web still belong           ing algorithms, we had to consider a scenario where the
to this class [6]. In our experiments we also consider a         servers of the intermediate infrastructure are under heavy
workload scenario where the transcoding operations have          stress. To this purpose, we used two workload models
higher costs. This may be found in a near future when            (called uniform and bimodal) which are based on the
the Web will provide a larger percentage of multimedia           heavy trans-load, but are characterized by different client
resources.                                                       request distributions. In the uniform scenario each edge
   The first workload, namely light trans-load, aims              server receives the same number of requests, while the
at capturing a realistic Web scenario with a reduced             bimodal scenario is characterized by an uneven request
transcoding load. The set of resources used in this work-        distribution among the edge servers, where 50% of the
load are based on proxy traces belonging to the nodes of         servers receive 90% of the client requests and the remain-
the IRCache infrastructure. Some characterizations per-          ing half of the nodes handle only 10% of the traffic.
formed on the images of this workload, such as file size,
JPEG quality factor, and colors of GIF images, evidenced
that they are very close to the characteristics reported         7    Experimental results
in [6]. The measured costs of transcoding operations re-
quired by this set of resources on the machines used for         In this section we first outline the performance metrics
our experiments gave the following results: 0.04 and 0.22        and the server-side experimental setup and then discuss
seconds for the median and the 90-percentile service time,       the experimental results. As main performance metrics
respectively.                                                    we consider the cache hit rates (local, global, exact, use-
   The second workload model (called heavy trans-load)           ful), the CPU utilization of the servers, and the system
aims at denoting a scenario where the transcoding process        response time that corresponds to the interval elapsed be-
has a major cost. As the trend of the Web is towards a           tween the instant in which the client sends a request to the
growing demand for multimedia resources, this workload           edge server and the instant in which the client receives all
can represent a situation with a large amount of multime-        the response.
dia objects, such as video and audio. In this scenario, the         As our main target is to enable heterogeneous devices
costs for transcoding operations are 0.27 and 1.72 seconds       to access Web content, the servers transcode the object
for the median and the 90-percentile service time, respec-       to best fit the client capabilities, while we do not explore
tively. In both workload models, the client request distri-      object compression to reduce transmission time as done
bution among the edge servers is uniform, with each node         in [10]. We also consider only complete transcoding re-
receiving the same number of client requests. However,           lation graphs, where each version can be obtained from
the types of requests in each trace can differ substantially,    any higher quality version [4]. In our experiments we set
because the file size follows a heavy-tailed distribution,        up a system of 16 servers. The servers are equipped with
ColTrES and configured to cooperate through different
architectures and discovery protocols.                                Table 1: Cache hit rates (light trans-load).
                                                                                     Local   Local    Remote   Remote   Global
                                                                                     exact   useful    exact   useful
                                                                 Flat query-based    19.4%   16.9%    13.8%    19.3%    69.4%
7.1 Comparison of the architectures                            Flat summary-based    21.2%   11.9%    11.5%    11.5%    56.1%
                                                                Hierarchical root    17.9%    6.8%     7.1%     7.7%    39.5%
In this section we compare the performance of the hier-          Hierarchical leaf   10.2%    8.2%    19.6%      n/a    38.0%
archical and flat architectures of servers that collaborate
in discovering, transcoding, and delivering Web objects.      confirm our observations or to evidence differences. From
We set up a scenario where all servers are well connected     the last column of Table 1 we can observe that there are
among them and with the clients. The content servers          some significant differences in the global hit rates, de-
are placed in a remote location, connected through a geo-     pending on the used cooperation mechanism. In partic-
graphic link with 14 hops in between, a mean round-trip       ular, Flat query-based provides the best results, while Flat
time of 60 ms, and a maximum bandwidth of 2Mb/sec.            summary-based turns out to be less effective in finding
We verified that in this scenario the network path to the      hits. Flat summary-based performance deteriorates be-
content servers (reached in case of global miss) was a pos-   cause the Cache Digests protocol tends to become impre-
sible system bottleneck. Hence, the global cache hit rate     cise (i.e., the accuracy of the exchanged cache digests de-
may impact the response time.                                 creases) and its remote hit rates diminish. This is partic-
   We consider the Hierarchical leaf and Hierarchical         ularly evident for the heavy workload, but it can be also
root schemes for the hierarchical architecture, the query-    observed for the light workload: the presence of larger
based (Flat query-based) and summary-based (Flat              objects causes faster changes in the caches, having as a
summary-based) for the flat architecture.                      consequence a reduction of the accuracy of the exchanged
   The hierarchical architectures are configured on the ba-    digests. Columns 4 and 5 in Table 1 show that the reduc-
sis of a three-level hierarchy with 12 leaves, 3 intermedi-   tion in the global hit rate is caused by a reduction of the
ate servers (with a nodal out-degree of 4), and one root      remote hit rate.
node. The client are redistributed to let only the leave
nodes receive their requests. The configuration for Flat
                                                                     Table 2: Cache hit rates (heavy trans-load).
query-based and Flat summary-based are based on ICP                                  Local   Local    Remote   Remote   Global
and Cache Digests protocols, respectively, and a flat co-                             exact   useful    exact   useful
operation scheme, where all edge servers have sibling re-        Flat query-based    5.1%    4.7%     20.3%    22.1%    52.2%
                                                               Flat summary-based    5.3%    4.6%     10.3%     8.9%    29.1%
lationships among them. For a fair comparison, in this set      Hierarchical root    6.3%    4.7%      5.2 %    4.4 %   20.6%
of experiments the flat schemes use the blind-active algo-        Hierarchical leaf   6.1%    4.3%     11.6%      n/a    22.0%
rithm as the hierarchical schemes.
   In these experiments we use both light trans-load and         The two hierarchical schemes achieve similar global hit
heavy trans-load workloads. First, we evaluate the cache      rates (last column of Table 1). However, their global hit
hit rates, and then we focus on the system response time,     rates are lower than those of flat architectures. The most
which is the crucial performance metric to the end users.     evident and expected result observed from comparing Ta-
   Tables 1 and 2 show the cache hit rates for light trans-   bles 1 and 2 is the higher hit rates obtained under the light
load and heavy trans-load workloads, respectively. For        trans-load model, because the object sizes in the heavy
each cooperation scheme, we report the local exact and        trans-load model are much larger. The lower hit rate of
useful hit rates (columns 2 and 3, respectively) as well as   the heavy trans-load model increases the replacement ac-
the remote hit rates (columns 4 and 5). The last column       tivity, thus reducing the hit rate of Flat summary-based.
shows the global hit rate, which is the sum of the vari-      For this reason, the reduction in remote hit rates of this
ous hit rates. For the hierarchical leaf scheme, we do not    scheme, which has been already observed for the light
report the remote useful hits, because the requests to the    trans-load model, is even more evident from columns 4
parent nodes refer only to the original version of the re-    and 5 of Table 2.
sources.                                                         We now pass to consider the response time. Figures 2
   We describe Table 1 and use the results in Table 2 to      and 3 show the cumulative distribution of system response
1                                                                                       1
                                                                                                                                           Flat query-based
                                     0.9                                                                                     0.9       Flat summary-based
                                                                                                                                            Hierarchical leaf
                                                                                                                                            Hierarchical root
                                     0.8                                                                                     0.8

                                     0.7                                                                                     0.7
           Cumulative distribution




                                                                                                   Cumulative distribution
                                     0.6                                                                                     0.6

                                     0.5                                                                                     0.5

                                     0.4                                                                                     0.4

                                     0.3                                                                                     0.3

                                     0.2                                                                                     0.2
                                                                       Flat query-based
                                     0.1                           Flat summary-based                                        0.1
                                                                        Hierarchical leaf
                                                                        Hierarchical root
                                      0                                                                                       0
                                           0   200   400           600            800       1000                                   0                500         1000         1500    2000   2500
                                                     Response time [ms]                                                                                         Response time [ms]



          Figure 2: Cumulative distributions of system                                             Figure 3: Cumulative distributions of system
          response times (light trans-load).                                                       response times (heavy trans-load).

time for the considered schemes under the light trans-load                                         mance: the response times in Figures 2 and 3 are much
and heavy trans-load workloads, respectively. Most of the                                          lower than those obtained by the hierarchical root. How-
curves shows several steps as a consequence of the differ-                                         ever, even the hierarchical leaf scheme is penalized with
ent kinds of cache hit (that is, remote vs local, and useful                                       respect to the flat schemes. There are two reasons for this
vs exact) during the discovery phase. All the schemes                                              result. In hierarchical leaf scheme, the upper hierarchy
present a first step (located on the left side of each graph)                                       levels can only act as pure cache servers (in our testbed
due to local exact hits that are nearly instantaneous with                                         prototypes, 4 nodes over 16 do not contribute in transcod-
respect to other hits and misses. Useful local hits have                                           ing operations). Moreover, as shown in the Tables 1 and 2,
longer response times, which are typically comparable to                                           the flat cooperation schemes achieve the highest cache hit
the ones of remote exact hits. Remote useful hits have                                             rates.
even longer response times, but do not show evident steps                                             Flat architectures offer the best results. A prelimi-
on the response time curve because of the larger variance                                          nary performance comparison between Flat query-based
in the response time. Misses generate the highest response                                         and Flat summary-based is in [3]. With the experiments
times, hence they are typically located in the right side of                                       carried out in this paper we confirm the previous obser-
each curve.                                                                                        vations: the higher global hit rates of Flat query-based
   The two figures confirm that the hierarchical leaf                                                tend to reduce the response time of the resources that
scheme clearly outperforms the hierarchical root archi-                                            are found in the nodes of the intermediate architecture.
tecture. However, none of the hierarchical schemes can                                             On the other hand, due to the faster lookup mechanism
compete with flat architectures. The expected bad per-                                              of Flat summary-based, remote hits are typically served
formance of the hierarchical root scheme is due to the                                             faster than those of Flat query-based. For this reason, it
bottleneck of the root node. We observed that the higher                                           seems interesting to analyze the cumulative distribution
levels of the hierarchy are often overloaded because they                                          of the response time. Table 3 provides a summary of data
have to handle transcoding operations of all misses from                                           in Figures 2 and 3. It shows the median (50-percentile)
the lower levels. Measurements on the CPU load show                                                and 90-percentile of the response time for each coopera-
that the mean load of the root node is nearly 0.90 and                                             tion scheme and both workload models.
0.99 for light trans-load and heavy trans-load model, re-                                             Figure 2 shows that the difference between the two
spectively, as this node has to process every miss occurred                                        curves of Flat query-based and Flat summary-based is
in the lower levels. On the other hand, leaf edge servers                                          slight, with the former only slightly superior to the lat-
are often idle (the corresponding mean CPU load is less                                            ter on the right side of the graph. This result occurs even
than 0.02 for both workload models), thus waiting for the                                          if the global hit rate of the two flat schemes differs sig-
upper-level nodes to process their requests.                                                       nificantly (69.4% vs. 56.1%). Moreover, if we analyze
   The hierarchical leaf scheme achieves better perfor-                                            the median response time, we can see that Flat summary-
workload. It is worth to note that the load-aware algo-
Table 3: Median and 90-percentile of system response rithm is a typical threshold-based policy that uses the CPU
times [sec].                                                utilization as the activation parameter. We performed ex-
                        Light trans-load  Heavy trans-load
                       median    90-perc. median   90-perc. periments for different thresholds ranging from 0.1 to 0.9
     Flat query-based   0.11       0.64    0.62      2.24   and found that for bimodal workload the typical common-
   Flat summary-based   0.07       0.78    0.56      3.76
     Hierarchical root  0.86       2.82    5.52     14.57   sense value of 0.66 for the threshold offers the most sta-
     Hierarchical leaf  0.30       1.74    1.07      5.11   ble performance in terms of the 90-percentile of response
                                                            time. Therefore, Figure 4 shows only the curve related to
based is faster than Flat query-based (also shown in the this threshold value. On the other hand, for the uniform
column 2 of Table 3). This can be explained by the high workload we found that no “best” threshold value exists:
lookup time required by the Flat query-based scheme. On the 90-percentile of the response time grows monoton-
the other hand, under the heavy trans-load model (Fig- ically as the threshold value decreases from 0.9 to 0.1.
ure 3) the curves of response times are more differenti- In Figure 5 the curve of the load-aware algorithm corre-
ated, with Flat query-based outperforming Flat summary- sponds to the same load threshold value (0.66) used in
based. This result is due to the higher difference in their Figure 4. Under the uniform workload, the curve corre-
cache hit rates (52.2% vs. 29.1%) that cannot be compen- sponding to the best threshold value (0.9) is in between
sated by the faster lookup of Flat summary-based. How- the curve of the blind-active algorithm and the one for
ever, even in this case the median response time for Flat threshold equal to 0.66.
summary-based is the lowest.                                   Response time curves achieved by blind-active and
   Table 3 summarizes the results that can be get from the  load-aware algorithms are similar, with the load-aware
previous figures: the hierarchical root scheme is the slow- algorithm providing better response times in the case of
est; flat architectures outperform hierarchical schemes; bimodal workload and the blind-active algorithm being
Flat query-based is the fastest scheme to serve the large faster in the case of uniform workload. On the other hand,
majority of the requests, even if Flat summary-based can the blind-lazy algorithm shows a different behavior. It is
be faster than Flat query-based to serve half of the re- able to reduce the response time for most requests, but it
quests for both workloads.                                  becomes unacceptably slow for up 30% of the requests,
                                                            depending on the workload.
                                                               To better present the performance differences, in Ta-
7.2 Cooperative transcoding algorithms
                                                            ble 4 we report the median and the 90-percentile of the
In this section we compare the performance of the coop- response time.
erative transcoding algorithms for flat architectures de-
scribed in Section 5.2. For this set of experiments we Table 4: System response times for load-blind and load-
choose the Flat flat-based scheme, because it typically of- aware algorithms [sec].
fers the highest cache hit rates and lowest response times.                   Bimodal workload       Uniform workload
Indeed, the flat-based scheme performs well for a wide                       median   90-percentile median   90-percentile
                                                               Blind-active  1.03        4.88       0.36        1.56
range of workload models, at least until the system is un-      Blind-lazy   0.25       121.12      0.07       239.79
der heavy stress, as noted in [3]. Under low and medium        Load-aware    0.89        3.98       0.46        1.90
load, the difference between the various transcoding al-
gorithms is very small. Therefore, it is more interesting      The blind-lazy algorithm bets on finding either a use-
to explore the performance gain achievable with the pro- ful hit or an exact remote hit on a less loaded peer. If it
posed cooperative transcoding algorithms when the server succeeds, it can reduce the response time. However, if
CPUs are nearly always busy due to transcoding opera- no remote hit is found or, even worse, if the peer having
tions. To this purpose, we used the bimodal and uniform a remote useful hit is overloaded, the response time can
workloads described in Section 6.                           increase significantly. This explain why the blind-lazy al-
   Figure 4 shows the cumulative distribution of response gorithm can successfully reduce the median response time
time for the load-blind and load-aware algorithms with the (as shown in columns 2 and 4 of Table 4), but it tends
bimodal workload, while Figure 5 refers to the uniform to have poor performance when considering 90-percentile
1                                                                                                          1

                                     0.9                                                                                                        0.9

                                     0.8                                                                                                        0.8

                                     0.7                                                                                                        0.7
           Cumulative distribution




                                                                                                                      Cumulative distribution
                                     0.6                                                                                                        0.6

                                     0.5                                                                                                        0.5

                                     0.4                                                                                                        0.4

                                     0.3                                                                                                        0.3

                                     0.2                                                                                                        0.2

                                     0.1                                                 Blind-active                                           0.1                                                 Blind-active
                                                                                           Blind-lazy                                                                                                 Blind-lazy
                                                                                         Load-aware                                                                                                 Load-aware
                                      0                                                                                                          0
                                           0   500   1000   1500   2000   2500   3000   3500   4000     4500   5000                                   0   500   1000   1500   2000   2500   3000   3500   4000     4500   5000
                                                                   Response time [ms]                                                                                         Response time [ms]



          Figure 4: Cumulative distributions of system                                                                Figure 5: Cumulative distributions of system
          response times (bimodal workload).                                                                          response times (uniform workload).

due to the high number of pathological cases (columns 3                                                               transcoding that can be implemented in the existing Web
and 5 of Table 4). The problem is more evident when the                                                               infrastructure. We have investigated various schemes
load is evenly distributed (column 5 of Table 4), because                                                             that use different server organizations (hierarchical, flat),
in this case there is a higher probability of finding a peer                                                           and different cooperation mechanisms for resource dis-
with a heavier load. On the other hand, the blind-active                                                              covery (query-based, summary-based) and transcoding
algorithm seems to offer better performance because the                                                               (load-blind, load aware). We have compared their per-
transcoding load is only related to the client requests be-                                                           formance through ColTrES , a flexible prototype testbed
ing served and not to the requests directed to other peers.                                                           based on Squid that implements all proposed mechanisms.
The response time has a more definite upper bound, thus                                                                From the performance evaluation, we have found that flat
reducing the 90-percentile of the response time with re-                                                              peer-to-peer topologies are always better than hierarchi-
spect to the blind-lazy algorithm. On the other hand, the                                                             cal schemes, because of bottleneck risks in the higher
median response is higher than that of the lazy policy.                                                               levels of the hierarchy combined with limited cache hit
   The load-aware algorithm offers some performance                                                                   rates. Among the flat cooperation schemes, we evalu-
gains when the load is unevenly distributed (bimodal                                                                  ated multi-version lookup extensions of Cache Digests
workload), because it can act smarter than the load-blind                                                             and ICP and found that, ICP tends to have better perfor-
algorithms. In particular, it reduces of about 22% the 90-                                                            mance due to the lower cache hit rates of Cache Digests.
percentile (as shown in column 3 of Table 4) and about                                                                As a further contribution of this paper, we verified that
14% the median response time (column 2 of Table 4) with                                                               the proposed load-aware algorithm can achieve some per-
respect to the blind-active algorithm. On the other hand,                                                             formance gains only when the client load is unevenly dis-
in the case of uniform workload the load-aware algorithm                                                              tributed among the edge servers of the intermediate infras-
is ineffective in reducing the response time, and there is                                                            tructure. On the other hand, in the case of rather uniform
a performance loss on both 90-percentile and median re-                                                               load distribution, the load-aware algorithm does not seem
sponse time. Indeed, when the skew of the workload                                                                    to achieve any significant improvement.
is low, we need a more sophisticate algorithm, possibly An intermediate infrastructure of distributed servers
based on information on the load of a larger (maybe en-
                                                     that cooperate in multi-version content caching, discov-
tire) set of servers of the intermediate architecture.
                                                     ery, and transcoding opens many research topics. A lim-
                                                     ited number of issues have been investigated in this work,
                                                     that to the best of our knowledge represents the first im-
8 Conclusions                                        plementation of cooperative transcoding and caching sys-
                                                     tems for both hierarchical and flat topologies. There are
In this paper, we have proposed an intermediate other research issues that this paper opens up, such as
distributed architecture for cooperative caching and cooperative cache replacement policies for multi-version
content, transcoding policies based on global information       [9] A. Fox, S. D. Gribble, Y. Chawathe, E. A. Brewer, and
on server load and available network bandwidths, and in-            P. Gauthier. Cluster-based scalable network services. In
tegration with server-direct transcoding to preserve the            Proc. of 16th ACM Symp. on Operating Systems Princ.,
                                                                    pages 78–91, Oct. 1997.
end-to-end content semantics.
                                                               [10] R. Han, P. Bhagwat, R. LaMaire, T. Mummert, V. Perret,
                                                                    and J. Rubas. Dynamic adaptation in an image transcod-
Acknowledgements                                                    ing proxy for mobile Web browsing. IEEE Personal Com-
                                                                    munications, 5(6):8–17, Dec. 1998.
The first four authors acknowledge the support of MIUR- [11] B. Knutsson, H. Lu, and J. Mogul. Architectures and
Cofin 2001 “High-quality Web systems” and MIUR-FIRB          pragmatics of server-directed transcoding. In Proc. of 7th
“Wide-scale, Broadband, Middleware for Network Dis-         Int’l Workshop on Web Content Caching and Distribution,
tributed Services”.                                         Aug. 2002.
                                                               [12] W. Y. Lum and F. C. M. Lau. On balancing between
                                                                    transcoding overhead and spatial consumption in content
References                                                          adaptation. In Proc. of ACM Mobicom 2002, pages 239–
                                                                    250, Sept. 2002.
 [1] M. Butler, F. Giannetti, R. Gimson, and T. Wiley. Device
     independence and the Web. IEEE Internet Computing, [13] A. Maheshwari, A. Sharma, K. Ramamritham, and
     6(5):81–86, Sept./Oct. 2002.                              P. Shenoy. TransSquid: Transcoding and caching proxy
                                                               for heterogeneous e-commerce environments. In Proc. of
 [2] C. Canali, V. Cardellini, and R. Lancellotti. Squid-based 12th IEEE Int’l Workshop on Research Issues in Data En-
     proxy server for content adaptation. Technical Report     gineering, pages 50–59, Feb. 2002.
     TR-2003-03, Dept. of Comp. Eng., Univ. of Roma “Tor [14] R. Mohan, J. R. Smith, and C.-S. Li. Adapting multime-
     Vergata”, Jan. 2003. http://weblab.ing.unimo.             dia Internet content for universal access. IEEE Trans. on
     it/research/trans_caching.shtml.                          Multimedia, 1(1):104–114, Mar. 1999.
 [3] V. Cardellini, M. Colajanni, R. Lancellotti, and P. S. Yu. [15] M. Rabinovich and O. Spatscheck. Web Caching and
     A distributed architecture of edge proxy servers for coop-      Replication. Addison Wesley, 2002.
     erative transcoding. In Proc. of 3rd IEEE Workshop on
     Internet Applications, pages 66–70, June 2003.             [16] A. Rousskov and D. Wessels. Cache Digests. Computer
                                                                     Networks, 30(22-23):2155–2168, 1998.
 [4] V. Cardellini, P. S. Yu, and Y. W. Huang. Collaborative
                                                                [17] W. Shi, K. Shah, Y. Mao, and V. Chaudhary. Tuxedo: a
     proxy system for distributed Web content transcoding. In
                                                                     peer-to-peer caching system. In Proc. of the 2003 Int’l
     Proc. of 9th ACM Int’l Conf. on Information and Knowl-
                                                                     Conf. on Parallel and Distributed Processing Techniques
     edge Management, pages 520–527, Nov. 2000.
                                                                     and Applications (PDPTA’03), Las Vegas, NV, June 2003.
 [5] S. Chandra, C. S. Ellis, and A. Vahdat. Application- [18] A. Singh, A. Trivedi, K. Ramamritham, and P. Shenoy.
     level differentiated multimedia Web services using qual-      PTC: Proxies that transcode and cache in heterogeneous
     ity aware transcoding. IEEE J. on Selected Areas in Com-      Web client environments. World Wide Web, 2003.
     munication, 18(12):2544–2465, Dec. 2000.
                                                              [19] Squid Internet Object Cache.            http://www.
 [6] S. Chandra, A. Gehani, C. S. Ellis, and A. Vahdat.            squid-cache.org.
     Transcoding characteristics of Web images. In Proc. of
                                                              [20] A. Wolman, G. M. Voelker, N. Sharma, N. Cardwell,
     Multimedia Computing and Net. Conf., Jan. 2001.
                                                                   A. Karlin, and H. M. Levy. On the scale and performance
 [7] C.-Y. Chang and M.-S. Chen. On exploring aggregate ef-        of cooperative Web proxy caching. In Proc. of 17th ACM
     fect for efficient cache replacement in transcoding prox-      Symp. On Operating Systems Princ., Dec. 1999.
     ies. IEEE Trans. on Parallel and Distributed Systems,
     14(6):611–624, June 2003.

 [8] L. Fan, P. Cao, J. Almeida, and A. Z. Broder. Summary
     cache: A scalable wide-area Web cache sharing proto-
     col. IEEE/ACM Trans. on Networking, 8(3):281–293,
     June 2000.

More Related Content

What's hot

Part 2: Efficient Multimedia Delivery in Content-Centric Mobile Networks
Part 2: Efficient Multimedia Delivery in Content-Centric Mobile NetworksPart 2: Efficient Multimedia Delivery in Content-Centric Mobile Networks
Part 2: Efficient Multimedia Delivery in Content-Centric Mobile NetworksDr. Mahfuzur Rahman Bosunia
 
Ijmer 46068390
Ijmer 46068390Ijmer 46068390
Ijmer 46068390IJMER
 
Hybrid web caching framework for reduction of web
Hybrid web caching framework for reduction of webHybrid web caching framework for reduction of web
Hybrid web caching framework for reduction of webeSAT Publishing House
 
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...Editor IJCATR
 
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...cscpconf
 
An Investigation into Convergence of Networking and Storage Solutions
An Investigation into Convergence of Networking and Storage Solutions An Investigation into Convergence of Networking and Storage Solutions
An Investigation into Convergence of Networking and Storage Solutions Blesson Babu
 
Defeating jamming with the power of silence a gametheoretic analysis
Defeating jamming with the power of silence a gametheoretic analysisDefeating jamming with the power of silence a gametheoretic analysis
Defeating jamming with the power of silence a gametheoretic analysisranjith kumar
 
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...csandit
 
M phil-computer-science-wireless-communication-projects
M phil-computer-science-wireless-communication-projectsM phil-computer-science-wireless-communication-projects
M phil-computer-science-wireless-communication-projectsVijay Karan
 
Dynamic control of coding for progressive packet arrivals in dt ns
Dynamic control of coding for progressive packet arrivals in dt nsDynamic control of coding for progressive packet arrivals in dt ns
Dynamic control of coding for progressive packet arrivals in dt nsIEEEFINALYEARPROJECTS
 
A New Approach to Volunteer Cloud Computing
A New Approach to Volunteer Cloud ComputingA New Approach to Volunteer Cloud Computing
A New Approach to Volunteer Cloud ComputingIOSR Journals
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...ijgca
 
Ieeepro techno solutions 2014 ieee java project - distributed, concurrent, ...
Ieeepro techno solutions   2014 ieee java project - distributed, concurrent, ...Ieeepro techno solutions   2014 ieee java project - distributed, concurrent, ...
Ieeepro techno solutions 2014 ieee java project - distributed, concurrent, ...hemanthbbc
 

What's hot (15)

Mn3422372248
Mn3422372248Mn3422372248
Mn3422372248
 
Part 2: Efficient Multimedia Delivery in Content-Centric Mobile Networks
Part 2: Efficient Multimedia Delivery in Content-Centric Mobile NetworksPart 2: Efficient Multimedia Delivery in Content-Centric Mobile Networks
Part 2: Efficient Multimedia Delivery in Content-Centric Mobile Networks
 
Ijmer 46068390
Ijmer 46068390Ijmer 46068390
Ijmer 46068390
 
Hybrid web caching framework for reduction of web
Hybrid web caching framework for reduction of webHybrid web caching framework for reduction of web
Hybrid web caching framework for reduction of web
 
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...
Content Distribution for Peer-To-Peer Overlays on Mobile Adhoc Networks to Fu...
 
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...
Achieving Optimum Value of k in a K-fold Multicast Network with Buffer using ...
 
An Investigation into Convergence of Networking and Storage Solutions
An Investigation into Convergence of Networking and Storage Solutions An Investigation into Convergence of Networking and Storage Solutions
An Investigation into Convergence of Networking and Storage Solutions
 
Defeating jamming with the power of silence a gametheoretic analysis
Defeating jamming with the power of silence a gametheoretic analysisDefeating jamming with the power of silence a gametheoretic analysis
Defeating jamming with the power of silence a gametheoretic analysis
 
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...
A NEW ALGORITHM FOR CONSTRUCTION OF A P2P MULTICAST HYBRID OVERLAY TREE BASED...
 
M phil-computer-science-wireless-communication-projects
M phil-computer-science-wireless-communication-projectsM phil-computer-science-wireless-communication-projects
M phil-computer-science-wireless-communication-projects
 
Dynamic control of coding for progressive packet arrivals in dt ns
Dynamic control of coding for progressive packet arrivals in dt nsDynamic control of coding for progressive packet arrivals in dt ns
Dynamic control of coding for progressive packet arrivals in dt ns
 
A New Approach to Volunteer Cloud Computing
A New Approach to Volunteer Cloud ComputingA New Approach to Volunteer Cloud Computing
A New Approach to Volunteer Cloud Computing
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...
CONTENT BASED DATA TRANSFER MECHANISM FOR EFFICIENT BULK DATA TRANSFER IN GRI...
 
Ieeepro techno solutions 2014 ieee java project - distributed, concurrent, ...
Ieeepro techno solutions   2014 ieee java project - distributed, concurrent, ...Ieeepro techno solutions   2014 ieee java project - distributed, concurrent, ...
Ieeepro techno solutions 2014 ieee java project - distributed, concurrent, ...
 

Viewers also liked

WWE Legend "Rowdy" Roddy Piper Teams Up with Stand for the Silent for Timely...
WWE Legend "Rowdy" Roddy Piper Teams Up with  Stand for the Silent for Timely...WWE Legend "Rowdy" Roddy Piper Teams Up with  Stand for the Silent for Timely...
WWE Legend "Rowdy" Roddy Piper Teams Up with Stand for the Silent for Timely...Paige Guyan
 
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LED
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LEDLED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LED
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LEDThorne & Derrick International
 
7 Day Introductary Course to Well-being - Day One.
7 Day Introductary Course to Well-being - Day One.7 Day Introductary Course to Well-being - Day One.
7 Day Introductary Course to Well-being - Day One.DB Business Consulting
 
Mediawiki for oer and learning analytics - understanding learning resources a...
Mediawiki for oer and learning analytics - understanding learning resources a...Mediawiki for oer and learning analytics - understanding learning resources a...
Mediawiki for oer and learning analytics - understanding learning resources a...Simon Knight
 
One should have thick skin to survive in corporate world
One should have thick skin to survive in corporate worldOne should have thick skin to survive in corporate world
One should have thick skin to survive in corporate worldjigar jain
 
My Name Is John Lee
My Name Is John LeeMy Name Is John Lee
My Name Is John Leejkleee215
 
2010 Hyundai Tucson Annapolis
2010 Hyundai Tucson Annapolis2010 Hyundai Tucson Annapolis
2010 Hyundai Tucson AnnapolisPreston Hyundai
 
The Resurrection of our Lord
The Resurrection of our LordThe Resurrection of our Lord
The Resurrection of our LordSaby R
 
Past Special Grant
Past Special GrantPast Special Grant
Past Special Grantguest941bb5
 

Viewers also liked (16)

WWE Legend "Rowdy" Roddy Piper Teams Up with Stand for the Silent for Timely...
WWE Legend "Rowdy" Roddy Piper Teams Up with  Stand for the Silent for Timely...WWE Legend "Rowdy" Roddy Piper Teams Up with  Stand for the Silent for Timely...
WWE Legend "Rowdy" Roddy Piper Teams Up with Stand for the Silent for Timely...
 
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LED
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LEDLED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LED
LED Floodlight Zone 1 Hazardous Area (ATEX) - Hadar HDL106, 96 x 1.2 Watts LED
 
7 Day Introductary Course to Well-being - Day One.
7 Day Introductary Course to Well-being - Day One.7 Day Introductary Course to Well-being - Day One.
7 Day Introductary Course to Well-being - Day One.
 
Introducing KC Health: Marketing With Women
Introducing KC Health: Marketing With WomenIntroducing KC Health: Marketing With Women
Introducing KC Health: Marketing With Women
 
Mediawiki for oer and learning analytics - understanding learning resources a...
Mediawiki for oer and learning analytics - understanding learning resources a...Mediawiki for oer and learning analytics - understanding learning resources a...
Mediawiki for oer and learning analytics - understanding learning resources a...
 
Transport equipment
Transport equipment Transport equipment
Transport equipment
 
Task 6
Task 6Task 6
Task 6
 
One should have thick skin to survive in corporate world
One should have thick skin to survive in corporate worldOne should have thick skin to survive in corporate world
One should have thick skin to survive in corporate world
 
My Name Is John Lee
My Name Is John LeeMy Name Is John Lee
My Name Is John Lee
 
Audience
AudienceAudience
Audience
 
2010 Hyundai Tucson Annapolis
2010 Hyundai Tucson Annapolis2010 Hyundai Tucson Annapolis
2010 Hyundai Tucson Annapolis
 
The Resurrection of our Lord
The Resurrection of our LordThe Resurrection of our Lord
The Resurrection of our Lord
 
Past Special Grant
Past Special GrantPast Special Grant
Past Special Grant
 
Taking Care of the Soil in your School Garden
Taking Care of the Soil in your School GardenTaking Care of the Soil in your School Garden
Taking Care of the Soil in your School Garden
 
Machine tool
Machine tool Machine tool
Machine tool
 
liposuction procedure as a means of removing fat from body
liposuction procedure as a means of removing fat from bodyliposuction procedure as a means of removing fat from body
liposuction procedure as a means of removing fat from body
 

Similar to Cooperative Architectures and Algorithms for Discovery and ...

An Efficient Distributed Control Law for Load Balancing in Content Delivery N...
An Efficient Distributed Control Law for Load Balancing in Content Delivery N...An Efficient Distributed Control Law for Load Balancing in Content Delivery N...
An Efficient Distributed Control Law for Load Balancing in Content Delivery N...IJMER
 
Iaetsd decentralized coordinated cooperative cache
Iaetsd decentralized coordinated cooperative cacheIaetsd decentralized coordinated cooperative cache
Iaetsd decentralized coordinated cooperative cacheIaetsd Iaetsd
 
Fast Distribution of Replicated Content to Multi- Homed Clients
Fast Distribution of Replicated Content to Multi- Homed ClientsFast Distribution of Replicated Content to Multi- Homed Clients
Fast Distribution of Replicated Content to Multi- Homed ClientsIDES Editor
 
A Study on Replication and Failover Cluster to Maximize System Uptime
A Study on Replication and Failover Cluster to Maximize System UptimeA Study on Replication and Failover Cluster to Maximize System Uptime
A Study on Replication and Failover Cluster to Maximize System UptimeYogeshIJTSRD
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...1crore projects
 
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ijp2p
 
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ijp2p
 
Technical analysis of content placement algorithms for content delivery netwo...
Technical analysis of content placement algorithms for content delivery netwo...Technical analysis of content placement algorithms for content delivery netwo...
Technical analysis of content placement algorithms for content delivery netwo...IJECEIAES
 
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...IDES Editor
 
Efficient Resource Sharing In Cloud Using Neural Network
Efficient Resource Sharing In Cloud Using Neural NetworkEfficient Resource Sharing In Cloud Using Neural Network
Efficient Resource Sharing In Cloud Using Neural NetworkIJERA Editor
 
35 content distribution with dynamic migration of services for minimum cost u...
35 content distribution with dynamic migration of services for minimum cost u...35 content distribution with dynamic migration of services for minimum cost u...
35 content distribution with dynamic migration of services for minimum cost u...INFOGAIN PUBLICATION
 
Resource usage optimization in cloud based networks
Resource usage optimization in cloud based networksResource usage optimization in cloud based networks
Resource usage optimization in cloud based networksDimo Iliev
 
IRJET- Improving Data Availability by using VPC Strategy in Cloud Environ...
IRJET-  	  Improving Data Availability by using VPC Strategy in Cloud Environ...IRJET-  	  Improving Data Availability by using VPC Strategy in Cloud Environ...
IRJET- Improving Data Availability by using VPC Strategy in Cloud Environ...IRJET Journal
 
Autonomic Cache Management In Information-Centric Networks
Autonomic Cache Management In Information-Centric NetworksAutonomic Cache Management In Information-Centric Networks
Autonomic Cache Management In Information-Centric NetworksHeather Strinden
 
COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...
 COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR... COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...
COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...Nexgen Technology
 
Cost minimizing dynamic migration of content
Cost minimizing dynamic migration of contentCost minimizing dynamic migration of content
Cost minimizing dynamic migration of contentnexgentech15
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...nexgentechnology
 
COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING
 COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING
COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCINGnexgentechnology
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)inventionjournals
 

Similar to Cooperative Architectures and Algorithms for Discovery and ... (20)

An Efficient Distributed Control Law for Load Balancing in Content Delivery N...
An Efficient Distributed Control Law for Load Balancing in Content Delivery N...An Efficient Distributed Control Law for Load Balancing in Content Delivery N...
An Efficient Distributed Control Law for Load Balancing in Content Delivery N...
 
Iaetsd decentralized coordinated cooperative cache
Iaetsd decentralized coordinated cooperative cacheIaetsd decentralized coordinated cooperative cache
Iaetsd decentralized coordinated cooperative cache
 
Fast Distribution of Replicated Content to Multi- Homed Clients
Fast Distribution of Replicated Content to Multi- Homed ClientsFast Distribution of Replicated Content to Multi- Homed Clients
Fast Distribution of Replicated Content to Multi- Homed Clients
 
A Study on Replication and Failover Cluster to Maximize System Uptime
A Study on Replication and Failover Cluster to Maximize System UptimeA Study on Replication and Failover Cluster to Maximize System Uptime
A Study on Replication and Failover Cluster to Maximize System Uptime
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
 
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
 
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
ANALYSIS STUDY ON CACHING AND REPLICA PLACEMENT ALGORITHM FOR CONTENT DISTRIB...
 
Technical analysis of content placement algorithms for content delivery netwo...
Technical analysis of content placement algorithms for content delivery netwo...Technical analysis of content placement algorithms for content delivery netwo...
Technical analysis of content placement algorithms for content delivery netwo...
 
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...
Design of Equitable Dominating Set Based Semantic Overlay Networks with Optim...
 
Efficient Resource Sharing In Cloud Using Neural Network
Efficient Resource Sharing In Cloud Using Neural NetworkEfficient Resource Sharing In Cloud Using Neural Network
Efficient Resource Sharing In Cloud Using Neural Network
 
35 content distribution with dynamic migration of services for minimum cost u...
35 content distribution with dynamic migration of services for minimum cost u...35 content distribution with dynamic migration of services for minimum cost u...
35 content distribution with dynamic migration of services for minimum cost u...
 
Resource usage optimization in cloud based networks
Resource usage optimization in cloud based networksResource usage optimization in cloud based networks
Resource usage optimization in cloud based networks
 
IRJET- Improving Data Availability by using VPC Strategy in Cloud Environ...
IRJET-  	  Improving Data Availability by using VPC Strategy in Cloud Environ...IRJET-  	  Improving Data Availability by using VPC Strategy in Cloud Environ...
IRJET- Improving Data Availability by using VPC Strategy in Cloud Environ...
 
Autonomic Cache Management In Information-Centric Networks
Autonomic Cache Management In Information-Centric NetworksAutonomic Cache Management In Information-Centric Networks
Autonomic Cache Management In Information-Centric Networks
 
COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...
 COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR... COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...
COST-MINIMIZING DYNAMIC MIGRATION OF CONTENT DISTRIBUTION SERVICES INTO HYBR...
 
Cost minimizing dynamic migration of content
Cost minimizing dynamic migration of contentCost minimizing dynamic migration of content
Cost minimizing dynamic migration of content
 
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
Cost-Minimizing Dynamic Migration of Content Distribution Services into Hybri...
 
COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING
 COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING
COST-EFFECTIVE LOW-DELAY DESIGN FOR MULTI-PARTY CLOUD VIDEO CONFERENCING
 
International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)International Journal of Engineering and Science Invention (IJESI)
International Journal of Engineering and Science Invention (IJESI)
 
B03410609
B03410609B03410609
B03410609
 

More from Videoguy

Energy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingEnergy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingVideoguy
 
Microsoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresMicrosoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresVideoguy
 
Proxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingProxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingVideoguy
 
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksFree-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksVideoguy
 
Instant video streaming
Instant video streamingInstant video streaming
Instant video streamingVideoguy
 
Video Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideo Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideoguy
 
Video Streaming
Video StreamingVideo Streaming
Video StreamingVideoguy
 
Reaching a Broader Audience
Reaching a Broader AudienceReaching a Broader Audience
Reaching a Broader AudienceVideoguy
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Videoguy
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGVideoguy
 
Impact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingImpact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingVideoguy
 
Application Brief
Application BriefApplication Brief
Application BriefVideoguy
 
Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Videoguy
 
Streaming Video into Second Life
Streaming Video into Second LifeStreaming Video into Second Life
Streaming Video into Second LifeVideoguy
 
Flash Live Video Streaming Software
Flash Live Video Streaming SoftwareFlash Live Video Streaming Software
Flash Live Video Streaming SoftwareVideoguy
 
Videoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoguy
 
Streaming Video Formaten
Streaming Video FormatenStreaming Video Formaten
Streaming Video FormatenVideoguy
 
iPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareiPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareVideoguy
 
Glow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxGlow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxVideoguy
 

More from Videoguy (20)

Energy-Aware Wireless Video Streaming
Energy-Aware Wireless Video StreamingEnergy-Aware Wireless Video Streaming
Energy-Aware Wireless Video Streaming
 
Microsoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_PresMicrosoft PowerPoint - WirelessCluster_Pres
Microsoft PowerPoint - WirelessCluster_Pres
 
Proxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video StreamingProxy Cache Management for Fine-Grained Scalable Video Streaming
Proxy Cache Management for Fine-Grained Scalable Video Streaming
 
Adobe
AdobeAdobe
Adobe
 
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer NetworksFree-riding Resilient Video Streaming in Peer-to-Peer Networks
Free-riding Resilient Video Streaming in Peer-to-Peer Networks
 
Instant video streaming
Instant video streamingInstant video streaming
Instant video streaming
 
Video Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A SurveyVideo Streaming over Bluetooth: A Survey
Video Streaming over Bluetooth: A Survey
 
Video Streaming
Video StreamingVideo Streaming
Video Streaming
 
Reaching a Broader Audience
Reaching a Broader AudienceReaching a Broader Audience
Reaching a Broader Audience
 
Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...Considerations for Creating Streamed Video Content over 3G ...
Considerations for Creating Streamed Video Content over 3G ...
 
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMINGADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
ADVANCES IN CHANNEL-ADAPTIVE VIDEO STREAMING
 
Impact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video StreamingImpact of FEC Overhead on Scalable Video Streaming
Impact of FEC Overhead on Scalable Video Streaming
 
Application Brief
Application BriefApplication Brief
Application Brief
 
Video Streaming Services – Stage 1
Video Streaming Services – Stage 1Video Streaming Services – Stage 1
Video Streaming Services – Stage 1
 
Streaming Video into Second Life
Streaming Video into Second LifeStreaming Video into Second Life
Streaming Video into Second Life
 
Flash Live Video Streaming Software
Flash Live Video Streaming SoftwareFlash Live Video Streaming Software
Flash Live Video Streaming Software
 
Videoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions CookbookVideoconference Streaming Solutions Cookbook
Videoconference Streaming Solutions Cookbook
 
Streaming Video Formaten
Streaming Video FormatenStreaming Video Formaten
Streaming Video Formaten
 
iPhone Live Video Streaming Software
iPhone Live Video Streaming SoftwareiPhone Live Video Streaming Software
iPhone Live Video Streaming Software
 
Glow: Video streaming training guide - Firefox
Glow: Video streaming training guide - FirefoxGlow: Video streaming training guide - Firefox
Glow: Video streaming training guide - Firefox
 

Cooperative Architectures and Algorithms for Discovery and ...

  • 1. Cooperative Architectures and Algorithms for Discovery and Transcoding of Multi-version Content Claudia Canali Valeria Cardellini Michele Colajanni University of Parma University of Roma “Tor Vergata” University of Modena claudia@weblab.ing.unimo.it cardellini@ing.uniroma2.it colajanni@unimo.it Riccardo Lancellotti Philip S. Yu University of Roma “Tor Vergata” IBM T.J. Watson Research Center riccardo@weblab.ing.unimo.it psyu@us.ibm.com Abstract these diverse destination devices. The content adaptation mechanism, called transcod- A clear trend of the Web is that a variety of new consumer ing, can be applied to transformations within media types devices with diverse processing powers, display capabili- (e.g., reducing the color depth of an image), across media ties, and network connections is gaining access to the In- types (e.g., video clip to image set) or to both of them. ternet. Tailoring Web content to match the device char- The existing approaches to deploy Web content adapta- acteristics requires functionalities for content transforma- tion fall into three broad categories depending on the en- tion, namely transcoding, that are typically carried out by tity that performs the adaptation process [1, 12]: client- the content provider or by some proxy server at the edge. based, edge-based (also called proxy-based), and server- In this paper, we propose an alternative solution consist- based adaptation. A comprehensive analysis on related ing of an intermediate infrastructure of distributed servers work is in Section 2. The edge-based approach uses the which collaborate in discovering, transcoding, and deliv- proxy server to analyze and adapt the content on-the-fly, ering multiple versions of Web resources to the clients. before delivering the result to the user. This component is We investigate different algorithms for cooperative dis- often called edge server as in the delivery chain between covery and transcoding in the context of this intermediate the client device and the content server it is generally lo- infrastructure where the servers are organized in hierar- cated close to the client. So far, the edge-based approach chical and flat peer-to-peer topologies. We compare the has been typically carried out by some edge server that performance of the proposed schemes through a flexible directly connects to the clients. In this paper, we ex- prototype that implements all proposed mechanisms. plore a different alternative that considers a distributed system of cooperative servers which collaborate in dis- covering, transcoding, and delivering Web content. Mini- 1 Introduction mizing the user response time and bounding its variability are the main goals of this distributed cooperative architec- The Web is rapidly evolving towards a highly heteroge- ture. Indeed, the computational cost of transcoding can neous accessed environment, due to the variety of con- be notably reduced by discovering the desired resource in sumer devices that are increasingly gaining access to the other servers and also by involving some other servers to Internet. The emerging Web-connected devices, such as perform the task of content adaptation. Although the co- handheld computers, PDAs, mobile phones, differ consid- operative transcoding is based on distributed schemes, it erably in network connectivity, processing power, storage, is not a simple extension to cooperative caching because display, and format handling capabilities. Hence, there is two main issues have to be addressed to achieve a suit- a growing demand for solutions that enable the transfor- able solution. First, the presence of diverse consumer de- mation of Web content for adapting and delivering it to vices requires to recognize, discover, and cache the multi-
  • 2. ple variants of the same resource obtained by transcoding 2 Related work operations. Moreover, the transcoding process is expen- sive in terms of server computing resources. Issues related The client-based approach to content adaptation seems to workload distribution, which are not usually considered not suitable for all the cases in which clients offer lim- in Web caching, can become of fundamental importance ited processing power and connection bandwidth. The in the case of cooperative transcoding. server-based approach, that adds content adaptation ser- vices to traditional Web server functionalities [14], in- In this paper, we propose and investigate some architec- creases the complexity of the server platform and soft- tures and algorithms for cooperative discovery, transcod- ware, but remains a valid alternative. However, in this ing, and delivery, including servers organized in hier- paper we will focus on content adaptation carried out by archical and flat topologies. We compare their perfor- an intermediate architecture of distributed servers. The mance through a prototype called ColTrES (Collabora- advantages of proxy-based content adaptation have been tive Transcoder Edge Services), which is a flexible testbed explored by many recent studies [4, 3, 5, 7, 9, 10, 13, 18]. based on Squid [19]. ColTrES implements all consid- This scheme can use one [10, 13, 18] or more [4, 3, 9] ered mechanisms by extending the traditional cooperative servers to analyze and adapt the content on-the-fly, up caching systems to an environment characterized by het- to fully distributed peer-to-peer networks as in [17] (al- erogeneous client devices. The first extension transforms though the study of Shi et al. is more focused on personal- a traditional cache server into an active intermediary, ized contents). An intermediate adaptation can shift load which not only caches Web objects but also transcodes from content-providing servers and simplify their design. them, stores the results, and allows multi-version lookup Moreover, this solution is also viable because the large operations [7, 18]. The second novel extension allows the majority of consumer devices requires some proxy to ac- cooperation of the active intermediaries for caching and cess the Web. A transcoding service located at intermedi- transcoding. We take advantage of the scalability oppor- ary points of the network can also tailor resources coming tunities provided by cooperation to reduce the response from different content servers. The intermediate server time experienced by the users of a heterogeneous client plays also another important role that is, it can cache the environment. results of content adaptation, thus avoiding some round- We are not aware of any other research work deal- trips to the content server and costly transcoding opera- ing with the study and implementation of cooperative tions when resources can be served from the cache [9, 18]. transcoding and caching systems with both hierarchical Most research has focused on handling the variations in and flat topologies. Through our prototypes, we demon- client bandwidth and display capabilities (e.g., [5, 9, 10]), strate that all proposed algorithms and cooperative ar- without focusing on caching aspects. In these proposals, chitecture are immediately applicable to the Web infras- the edge server that directly connects to the clients typ- tructure. The real testbed allows us to evaluate the re- ically reduces the object size (thus reducing bandwidth duction of the user response time achievable by different consumption), apart from providing a version that fits the cooperative discovery and transcoding schemes. More- client device capabilities. A limited number of recent pro- over, we clearly demonstrate the advantages of coopera- posals have also exploited techniques to combine both tive transcoding through flat topologies over hierarchical adaptation and caching to reduce the resource usage at the schemes. edge server [7, 13, 18]. The large majority of research efforts have been de- The rest of this paper is organized as follows. Section 2 voted to the investigation of solutions in which the adap- analyzes related work. Section 3 discusses the main fea- tation and caching functionalities are provided on stand- tures of a distributed system for cooperative transcoding. alone edge servers that do not cooperate among them. The Sections 4 and 5 explore different topologies and proto- main motivation that leaded us to study distributed archi- cols for cooperative discovery, transcoding, and delivery. tectures for intermediate services of caching and adap- Section 6 describes the workload model used to exercise tation is the limited scalability of a single proxy-based the prototype. Section 7 presents the experimental results. approach because of significant computational costs of Section 8 concludes the paper with some final remarks. adaptation operations [12]. Fox et al. [9] address this scal-
  • 3. ability issue by proposing a cluster of locally distributed found (or generated), the delivery phase transfers the re- edge servers. This approach may solve the CPU-resource source to the client. The final delivery is always carried constraint, but it tends to move the system bottleneck from out by the edge server first contacted by the client. Hence, the server CPU to the interconnection of the cluster. On if the resource is found in another node, the delivery phase the other hand, the proposes infrastructure is designed to includes its transmission to the edge server. Although for be distributed over a wide area network thus preventing some applications a request can be satisfied with a lower network bottlenecks. quality resource than that specified by the client, we do In recent works we have started to examine how to ex- not consider such possibility in this paper. tend traditional caching architectures to the active support The transcoding phase is specific to the problem here of cooperative transcoding. In [4] the authors have ob- considered. We assume that any server of the coopera- tained some preliminary simulation results that demon- tive system is equipped with software that can perform strated the importance of distributing the computational the transcoding operations required by any type of client load of transcoding in a cooperative hierarchical scheme. device that contacts an edge server. The features of client Some preliminary experimental results on flat topologies devices vary widely in screen size and colors, process- have been presented in [3], in which the authors demon- ing power, storage, user interface, software, and network strate that a cooperative distributed system consistently connections. Recently, the WAP Forum and the W3C outperforms in terms of user response times a system of have also proposed the standards CC/PP and UAProf for non-cooperative servers. describing the client capabilities [1]. The client may also include the resource type it can consume as a meta- information in the HTTP request header. Hereafter, we 3 Main features of the intermediate in- will refer to the information describing the capabilities of frastructure the requesting client as the requester-specific capability information (RCI). An object which has been previously The servers of a distributed system can be organized transcoded may be further adapted to yield a lower qual- and cooperate through a large set of alternatives. Each ity object. In particular, each version may be transcoded node of the intermediate infrastructure may have one or from a subset of the higher quality versions. Different more functionalities that is, it can act as a transcoder, a versions of the same object (and the allowed transcod- cache or an edge server. Edge servers receive requests ing operations among them) can be represented through directly from the clients and deliver the requested re- a transcoding relation graph [4]. sources. Cache servers provide caching functionalities It is worth to observe that we consider a generic in- for both original and transcoded resources. Transcoder frastructure that does not involve the content-providing servers perform content adaptation. In this paper we con- server in the transcoding process as the proposal of server- sider hierarchical and flat topologies. In flat topologies all directed transcoding [11]. Hence, we assume that the nodes are peers and provide all functions, while in hier- content server always returns the original version of the archical topologies the nodes may provide different func- requested resource. Our cooperative architectures for tionalities. In this section we outline the main common transcoding and caching can be integrated with content operations that characterize an intermediate infrastructure server decisions or not, without altering main perfor- for cooperative transcoding, while the specific features of mance considerations and conclusions of this paper. hierarchical and flat organizations are described in Sec- During the discovery phase, the servers may cooperate tions 4 and 5, respectively. to search for the version of the Web object requested by We identify three main phases that may require some the client. Since multiple versions of the same object typ- cooperation among the nodes of the intermediate infras- ically exist in the caches, in this phase it is necessary to tructure, namely discovery, transcoding, and delivery carry out a multi-version lookup process that may require phases. Even the traditional phases differ from the corre- cooperation among the servers. The discovery phase in- sponding ones of a standard cooperative caching scheme. cludes a local lookup and may include an external lookup. We describe the three phases in a reverse order. Once the edge server has determined the client capabili- Once the desired version of the requested object is ties, it looks for a copy of the requested resource in its
  • 4. cache. The local lookup may generate one of the fol- and international network providers. lowing three events. (1) Local exact hit: the cache con- Some schemes for distributing the transcoding load tains the exact version of the requested object, that can among the servers organized in a hierarchy have been de- be immediately delivered to the client. (2) Local useful scribed in [4]. In this paper we consider two approaches, hit: the cache contains a more detailed and transcodable called Hierarchical root and Hierarchical leaf coopera- version of the object that can be transformed to match the tion schemes. In the Hierarchical root scheme, each node client request. Depending on the transcoding cooperation is both a transcoder and a cache server. In the case of scheme, the edge server can decide either to perform the local miss, the request is forwarded by the edge server up transcoding task locally or to activate an external lookup, to the hierarchy, until it is satisfied with either an exact or which is carried out through some cooperative discovery useful hit. In the case of global miss (that is, no level holds protocol. (3) Local miss: the cache does not contain any a valid copy of the requested resource), the root node re- valid copy of the requested object. The edge server must trieves the original resource from the content provider, if activate an external lookup to fulfill the request. necessary adapts it, and sends the exact version of the ob- When both exact and useful hits are found in the lo- ject to the lower-level server. Each node experiencing a cal cache, the former is preferred because it does not re- local exact hit responds by sending the resource to the quire any adaptation task, and no external lookup is nec- requesting entity, which can be a client or a lower-level essary. We recognize that our architectures opens many server. In the case of useful hit, the contacted server per- novel possibilities for push caching and object replace- forms locally the content adaptation before sending the ment [7], that we do not consider in this paper. exact version of the resource downwards the hierarchy. A In the case of local miss and sometimes of useful hit, copy of the object is stored in the caches of all the nodes the edge server may activate some cooperative discovery along the request path. mechanism to locate a version on some other server. The As the root node must perform the transcoding ser- external lookup may provide one of the following results. vice for every global miss and content adaptation may (1) Remote exact hit: a remote server holds the exact ver- involve costly operations, there is a great risk of over- sion of the requested object, which is transferred to the loading this server. Indeed, different studies have shown requesting server. (2) Remote useful hit: a remote server that pure hierarchical architectures, even when applied to contains a more detailed and transcodable version of the traditional cooperative caching, may suffer from scalabil- requested object that can be transformed to meet the re- ity and coverage problems, especially when the number quest. Depending on the transcoding cooperation scheme, of nodes is large (e.g., [8, 20]). This situation can dra- the cooperating server can decide either to perform the matically worsen in the case of cooperative transcoding. transcoding task locally or to provide the useful version For this reason, we propose the Hierarchical leaf scheme, to the requesting server, which will execute the transcod- that differentiates the roles of the nodes in the interme- ing process. (3) Remote miss: no remote server contains diate infrastructure. The leaf nodes maintain the roles of any valid copy of the object, that is a global cache miss oc- edge, cache and transcoding servers, while the upper-level curs. The original version of the requested resource must nodes provide just cache services for original versions of be fetched from the content server. the resources. When necessary, content adaptation is per- formed locally by the leaf nodes. 4 Hierarchical topologies 5 Flat topologies In this paper, we consider a pure hierarchical architecture where sibling servers do not cooperate, and only the bot- An alternative to hierarchical topology is the flat organi- tom level nodes (called leaf nodes) are edge servers that zation, in which all nodes are peers and provide the func- can be contacted by the clients [15]. We use the com- tionalities of transcoder, cache, and edge server. This flat monly adopted three-level tree from leaf nodes to the root organization allows us to explore various algorithms for node, because hierarchical architectures follow the idea cooperative discovery and cooperative transcoding, which of hierarchical Internet organization, with local, regional, are discussed in the following sections.
  • 5. 5.1 Cooperative discovery Directory-based protocols are conceptually more com- plex than query-based schemes, especially because they Although the discovery phase in a flat topology can be include a large class of alternatives, being the the two based on different protocols, we limit the research space most important ones the presence of one centralized direc- of alternatives to the most interesting and widely used sys- tory vs. multiple directories disseminated over the peers, tems. It is worth to remark that the cooperation protocols and the frequency for communicating a local change to for object discovery and delivery considered in this sec- the directory/ies. It is impossible to discuss here all the tion differ from the traditional ones because multiple ver- alternatives that have been the topics of many studies. We sions of the same object may be present in the caches of consider distributed directory-based schemes because it is the cooperative edge servers. Moreover, there are three a common view that in a geographically distributed sys- possible results of the external lookup process: miss, ex- tem any centralized solution does not scale, the central act hit, and useful hit. directory server may represent a bottleneck and a single Cooperative lookup among distributed servers requires point of failure, and it does not avoid the query delays a protocol to exchange local state information, which ba- during the lookup process. sically refers to the cache content, although when we con- In a distributed directory-based scheme, each edge sider a CPU-bound task such as transcoding, other data server keeps a directory of the resources that are cached can be useful (e.g., server load). Cooperative resource dis- in every other peer, and uses the directory as a filter to covery has been studied for a while and many mechanisms reduce the number of queries. Distributing the directory have been proposed to address the related issues [15]. among all the cooperating peers avoids the polling of mul- Most of those mechanisms can be adapted to the lookup of tiple edge servers during the discovery phase, and, in the multiple versions. The two main and opposite approaches ideal case, makes object lookup extremely efficient. How- for disseminating state information are well defined in the ever, the ideal case is affected by large traffic overheads to literature on distributed systems: query-based protocols keep the directories up-to-date. Hence, real implementa- in which exchanges of state information occur only in tions use multiple relaxations, such as compressed direc- response to an explicit request by a peer, and directory- tories (namely, summary) and less frequent information based protocols in which state information is exchanged exchanges for saving memory space and network band- among the peers in a periodic way or at the occurrence width. Examples of compression that reduce the message of a significant event, with many possible variants in be- size are the Bloom filters, used by Summary Cache [8] tween. In the following, we consider a query-based pro- and Cache Digests [16], that compress the cache indexes tocol and a summary-based protocol (a simplified version so that a certain amount of false hits is allowed. For our of the directory-based protocols). experiments, we choose Cache Digests as a representative Query-based protocols are conceptually simple. When of the summary-based architectures, because of its popu- an edge server experiences a local miss or even a useful hit larity and its implementation in the Squid software. Sup- (depending on the cooperative transcoding algorithm), it port for caching and discovery of multiple versions has sends a query message to all the peers to discover whether been added to our ColTrES prototype into the summary- any of them caches a copy of the requested resource. In based lookup process through URL-encoding the resource the positive case, the recipient edge server replies with an version identifier. Therefore, the basic mechanism of exact hit or with a useful hit message; otherwise, it may Cache Digests cooperation is preserved. However, the reply with a miss message or not reply at all. In the case lookup process becomes more expensive because it has of useful hit, the response message should provide some to carry out a search for every possible useful version. information about the available version of the resource to allow its retrieval. As the protocol for our query-based 5.2 Cooperative transcoding algorithms cooperation, we use the popular ICP adopted in NetCache and Squid [19]. In our ColTrES prototype we added the Cooperative transcoding is necessary only when a local or support for multi-version lookup into the Squid version of a remote useful hit occurs, while misses and exact hits are ICP by including the version identifier to the URL con- handled as described in Section 3 and they are unrelated to tained into the messages. the cooperative transcoding algorithms. We can identify
  • 6. Local lookup Local exact hit Miss Local lookup Local useful Local exact hit Miss or Delivery hit local useful hit Transcoding Delivery & delivery Cooperative Cooperative lookup lookup Remote exact hit Miss Remote exact hit Miss Retrieval Retrieval from orig. Retrieval Retrieval from orig. & delivery server, transcoding & delivery server, transcoding Remote & delivery Remote & delivery useful useful hit hit Remote transcoding, Retrieval, retrieval & local transcoding delivery & delivery (a) Blind-lazy algorithm. (b) Blind-active algorithm. Figure 1: Load-blind algorithms. some alternatives in the case of local and remote useful wise, a (guaranteed) local useful hit may be preferable to hits. Since transcoding a useful hit may be computation- a (possible) remote exact hit. ally expensive, several load-balancing algorithms can be used. In particular, we distinguish between load-blind The blind-active algorithm, shown in Figure 1(b), fol- algorithms that do not take into account any load state in- lows an approach opposite to its blind-lazy counterpart. formation and local load-aware algorithms, that use load Whenever possible, it saves network usage for the exter- information about the local server itself to decide which nal lookup at the price of local computation. In the case node will perform the transcoding task. We propose two of a local useful hit, the edge server transcodes the useful load-blind algorithms and a local load-aware algorithm. version found in its cache without continuing the discov- ery phase. In the case of a remote useful hit, the resource The two load-blind algorithms are called blind-lazy and is retrieved from the peer and transcoded locally. blind-active. The blind-lazy algorithm, whose flow dia- gram is shown in Figure 1(a), tends to limit the compu- The load-aware algorithm we propose in this paper is tational costs of transcoding by taking most advantage of based on load information at the local server. When a lo- the cooperative peers. In the case of a local useful hit, the cal or a remote useful hit occurs, the node decides whether edge server continues the discovery phase by activating an to perform locally the transcoding operation or to continue external lookup process to look for an exact version of the the discovery phase on the basis of its current load. This requested object in some peer proxy. In case of a remote is a typical threshold-based algorithm that follows one of useful hit, the edge server always delegates the transcod- the two previous algorithms depending on the server load ing task to the peer server that reported the useful hit. The (i.e., CPU utilization). When the CPU utilization of the rational behind this approach is to exploit as much as pos- edge server surpasses a certain threshold, it behaves in a sible the remote exact hits and to distribute in a nearly lazy mode, as the lazy approach tends to save local CPU random way the transcoding process. The price of the ex- resources. Otherwise, the edge server adopts the active ternal lookup process is worth when the remote exact hit approach, because there is enough spare CPU power to is found and the network links are not saturated; other- perform transcoding.
  • 7. 6 Workload model especially for the light trans-load working set. From the file list of each workload model, we obtained In this section we describe the client and workload mod- 80 different traces that were used in parallel during the els used to evaluate the performance of the cooperative experiments. Each trace consists of 1000 requests with a schemes. We consider a classification of the client devices random delay that elapses between two consecutive re- on the basis of their capabilities of displaying different ob- quests. The total size of the original resources for all jects and connecting to the assigned edge server [4, 7]. workloads is similar. It is 10% higher than the sum of the The classes of devices range from high-end worksta- cache sizes of the nodes used in our experiments. On the tions/PCs which can consume every object in its original other hand, the mean file size of the two workloads dif- form, to cellular phones with very limited bandwidth and fers considerably. Hence, the light workload determines display capabilities. We introduced six classes of clients; higher cache hit rates than the heavy one. We have also the description of the devices capabilities and the values introduced a popularity resource distribution by defining a of their popularity can be found in [2]. In this paper, we set of hot resources (corresponding to 1% of the working consider that most transcoding operations are applied to set): 10% of requests refers to this hot set. image objects (GIF, JPEG, and BMP formats), as more To study the performance of the cooperative transcod- than 70% of the files requested in the Web still belong ing algorithms, we had to consider a scenario where the to this class [6]. In our experiments we also consider a servers of the intermediate infrastructure are under heavy workload scenario where the transcoding operations have stress. To this purpose, we used two workload models higher costs. This may be found in a near future when (called uniform and bimodal) which are based on the the Web will provide a larger percentage of multimedia heavy trans-load, but are characterized by different client resources. request distributions. In the uniform scenario each edge The first workload, namely light trans-load, aims server receives the same number of requests, while the at capturing a realistic Web scenario with a reduced bimodal scenario is characterized by an uneven request transcoding load. The set of resources used in this work- distribution among the edge servers, where 50% of the load are based on proxy traces belonging to the nodes of servers receive 90% of the client requests and the remain- the IRCache infrastructure. Some characterizations per- ing half of the nodes handle only 10% of the traffic. formed on the images of this workload, such as file size, JPEG quality factor, and colors of GIF images, evidenced that they are very close to the characteristics reported 7 Experimental results in [6]. The measured costs of transcoding operations re- quired by this set of resources on the machines used for In this section we first outline the performance metrics our experiments gave the following results: 0.04 and 0.22 and the server-side experimental setup and then discuss seconds for the median and the 90-percentile service time, the experimental results. As main performance metrics respectively. we consider the cache hit rates (local, global, exact, use- The second workload model (called heavy trans-load) ful), the CPU utilization of the servers, and the system aims at denoting a scenario where the transcoding process response time that corresponds to the interval elapsed be- has a major cost. As the trend of the Web is towards a tween the instant in which the client sends a request to the growing demand for multimedia resources, this workload edge server and the instant in which the client receives all can represent a situation with a large amount of multime- the response. dia objects, such as video and audio. In this scenario, the As our main target is to enable heterogeneous devices costs for transcoding operations are 0.27 and 1.72 seconds to access Web content, the servers transcode the object for the median and the 90-percentile service time, respec- to best fit the client capabilities, while we do not explore tively. In both workload models, the client request distri- object compression to reduce transmission time as done bution among the edge servers is uniform, with each node in [10]. We also consider only complete transcoding re- receiving the same number of client requests. However, lation graphs, where each version can be obtained from the types of requests in each trace can differ substantially, any higher quality version [4]. In our experiments we set because the file size follows a heavy-tailed distribution, up a system of 16 servers. The servers are equipped with
  • 8. ColTrES and configured to cooperate through different architectures and discovery protocols. Table 1: Cache hit rates (light trans-load). Local Local Remote Remote Global exact useful exact useful Flat query-based 19.4% 16.9% 13.8% 19.3% 69.4% 7.1 Comparison of the architectures Flat summary-based 21.2% 11.9% 11.5% 11.5% 56.1% Hierarchical root 17.9% 6.8% 7.1% 7.7% 39.5% In this section we compare the performance of the hier- Hierarchical leaf 10.2% 8.2% 19.6% n/a 38.0% archical and flat architectures of servers that collaborate in discovering, transcoding, and delivering Web objects. confirm our observations or to evidence differences. From We set up a scenario where all servers are well connected the last column of Table 1 we can observe that there are among them and with the clients. The content servers some significant differences in the global hit rates, de- are placed in a remote location, connected through a geo- pending on the used cooperation mechanism. In partic- graphic link with 14 hops in between, a mean round-trip ular, Flat query-based provides the best results, while Flat time of 60 ms, and a maximum bandwidth of 2Mb/sec. summary-based turns out to be less effective in finding We verified that in this scenario the network path to the hits. Flat summary-based performance deteriorates be- content servers (reached in case of global miss) was a pos- cause the Cache Digests protocol tends to become impre- sible system bottleneck. Hence, the global cache hit rate cise (i.e., the accuracy of the exchanged cache digests de- may impact the response time. creases) and its remote hit rates diminish. This is partic- We consider the Hierarchical leaf and Hierarchical ularly evident for the heavy workload, but it can be also root schemes for the hierarchical architecture, the query- observed for the light workload: the presence of larger based (Flat query-based) and summary-based (Flat objects causes faster changes in the caches, having as a summary-based) for the flat architecture. consequence a reduction of the accuracy of the exchanged The hierarchical architectures are configured on the ba- digests. Columns 4 and 5 in Table 1 show that the reduc- sis of a three-level hierarchy with 12 leaves, 3 intermedi- tion in the global hit rate is caused by a reduction of the ate servers (with a nodal out-degree of 4), and one root remote hit rate. node. The client are redistributed to let only the leave nodes receive their requests. The configuration for Flat Table 2: Cache hit rates (heavy trans-load). query-based and Flat summary-based are based on ICP Local Local Remote Remote Global and Cache Digests protocols, respectively, and a flat co- exact useful exact useful operation scheme, where all edge servers have sibling re- Flat query-based 5.1% 4.7% 20.3% 22.1% 52.2% Flat summary-based 5.3% 4.6% 10.3% 8.9% 29.1% lationships among them. For a fair comparison, in this set Hierarchical root 6.3% 4.7% 5.2 % 4.4 % 20.6% of experiments the flat schemes use the blind-active algo- Hierarchical leaf 6.1% 4.3% 11.6% n/a 22.0% rithm as the hierarchical schemes. In these experiments we use both light trans-load and The two hierarchical schemes achieve similar global hit heavy trans-load workloads. First, we evaluate the cache rates (last column of Table 1). However, their global hit hit rates, and then we focus on the system response time, rates are lower than those of flat architectures. The most which is the crucial performance metric to the end users. evident and expected result observed from comparing Ta- Tables 1 and 2 show the cache hit rates for light trans- bles 1 and 2 is the higher hit rates obtained under the light load and heavy trans-load workloads, respectively. For trans-load model, because the object sizes in the heavy each cooperation scheme, we report the local exact and trans-load model are much larger. The lower hit rate of useful hit rates (columns 2 and 3, respectively) as well as the heavy trans-load model increases the replacement ac- the remote hit rates (columns 4 and 5). The last column tivity, thus reducing the hit rate of Flat summary-based. shows the global hit rate, which is the sum of the vari- For this reason, the reduction in remote hit rates of this ous hit rates. For the hierarchical leaf scheme, we do not scheme, which has been already observed for the light report the remote useful hits, because the requests to the trans-load model, is even more evident from columns 4 parent nodes refer only to the original version of the re- and 5 of Table 2. sources. We now pass to consider the response time. Figures 2 We describe Table 1 and use the results in Table 2 to and 3 show the cumulative distribution of system response
  • 9. 1 1 Flat query-based 0.9 0.9 Flat summary-based Hierarchical leaf Hierarchical root 0.8 0.8 0.7 0.7 Cumulative distribution Cumulative distribution 0.6 0.6 0.5 0.5 0.4 0.4 0.3 0.3 0.2 0.2 Flat query-based 0.1 Flat summary-based 0.1 Hierarchical leaf Hierarchical root 0 0 0 200 400 600 800 1000 0 500 1000 1500 2000 2500 Response time [ms] Response time [ms] Figure 2: Cumulative distributions of system Figure 3: Cumulative distributions of system response times (light trans-load). response times (heavy trans-load). time for the considered schemes under the light trans-load mance: the response times in Figures 2 and 3 are much and heavy trans-load workloads, respectively. Most of the lower than those obtained by the hierarchical root. How- curves shows several steps as a consequence of the differ- ever, even the hierarchical leaf scheme is penalized with ent kinds of cache hit (that is, remote vs local, and useful respect to the flat schemes. There are two reasons for this vs exact) during the discovery phase. All the schemes result. In hierarchical leaf scheme, the upper hierarchy present a first step (located on the left side of each graph) levels can only act as pure cache servers (in our testbed due to local exact hits that are nearly instantaneous with prototypes, 4 nodes over 16 do not contribute in transcod- respect to other hits and misses. Useful local hits have ing operations). Moreover, as shown in the Tables 1 and 2, longer response times, which are typically comparable to the flat cooperation schemes achieve the highest cache hit the ones of remote exact hits. Remote useful hits have rates. even longer response times, but do not show evident steps Flat architectures offer the best results. A prelimi- on the response time curve because of the larger variance nary performance comparison between Flat query-based in the response time. Misses generate the highest response and Flat summary-based is in [3]. With the experiments times, hence they are typically located in the right side of carried out in this paper we confirm the previous obser- each curve. vations: the higher global hit rates of Flat query-based The two figures confirm that the hierarchical leaf tend to reduce the response time of the resources that scheme clearly outperforms the hierarchical root archi- are found in the nodes of the intermediate architecture. tecture. However, none of the hierarchical schemes can On the other hand, due to the faster lookup mechanism compete with flat architectures. The expected bad per- of Flat summary-based, remote hits are typically served formance of the hierarchical root scheme is due to the faster than those of Flat query-based. For this reason, it bottleneck of the root node. We observed that the higher seems interesting to analyze the cumulative distribution levels of the hierarchy are often overloaded because they of the response time. Table 3 provides a summary of data have to handle transcoding operations of all misses from in Figures 2 and 3. It shows the median (50-percentile) the lower levels. Measurements on the CPU load show and 90-percentile of the response time for each coopera- that the mean load of the root node is nearly 0.90 and tion scheme and both workload models. 0.99 for light trans-load and heavy trans-load model, re- Figure 2 shows that the difference between the two spectively, as this node has to process every miss occurred curves of Flat query-based and Flat summary-based is in the lower levels. On the other hand, leaf edge servers slight, with the former only slightly superior to the lat- are often idle (the corresponding mean CPU load is less ter on the right side of the graph. This result occurs even than 0.02 for both workload models), thus waiting for the if the global hit rate of the two flat schemes differs sig- upper-level nodes to process their requests. nificantly (69.4% vs. 56.1%). Moreover, if we analyze The hierarchical leaf scheme achieves better perfor- the median response time, we can see that Flat summary-
  • 10. workload. It is worth to note that the load-aware algo- Table 3: Median and 90-percentile of system response rithm is a typical threshold-based policy that uses the CPU times [sec]. utilization as the activation parameter. We performed ex- Light trans-load Heavy trans-load median 90-perc. median 90-perc. periments for different thresholds ranging from 0.1 to 0.9 Flat query-based 0.11 0.64 0.62 2.24 and found that for bimodal workload the typical common- Flat summary-based 0.07 0.78 0.56 3.76 Hierarchical root 0.86 2.82 5.52 14.57 sense value of 0.66 for the threshold offers the most sta- Hierarchical leaf 0.30 1.74 1.07 5.11 ble performance in terms of the 90-percentile of response time. Therefore, Figure 4 shows only the curve related to based is faster than Flat query-based (also shown in the this threshold value. On the other hand, for the uniform column 2 of Table 3). This can be explained by the high workload we found that no “best” threshold value exists: lookup time required by the Flat query-based scheme. On the 90-percentile of the response time grows monoton- the other hand, under the heavy trans-load model (Fig- ically as the threshold value decreases from 0.9 to 0.1. ure 3) the curves of response times are more differenti- In Figure 5 the curve of the load-aware algorithm corre- ated, with Flat query-based outperforming Flat summary- sponds to the same load threshold value (0.66) used in based. This result is due to the higher difference in their Figure 4. Under the uniform workload, the curve corre- cache hit rates (52.2% vs. 29.1%) that cannot be compen- sponding to the best threshold value (0.9) is in between sated by the faster lookup of Flat summary-based. How- the curve of the blind-active algorithm and the one for ever, even in this case the median response time for Flat threshold equal to 0.66. summary-based is the lowest. Response time curves achieved by blind-active and Table 3 summarizes the results that can be get from the load-aware algorithms are similar, with the load-aware previous figures: the hierarchical root scheme is the slow- algorithm providing better response times in the case of est; flat architectures outperform hierarchical schemes; bimodal workload and the blind-active algorithm being Flat query-based is the fastest scheme to serve the large faster in the case of uniform workload. On the other hand, majority of the requests, even if Flat summary-based can the blind-lazy algorithm shows a different behavior. It is be faster than Flat query-based to serve half of the re- able to reduce the response time for most requests, but it quests for both workloads. becomes unacceptably slow for up 30% of the requests, depending on the workload. To better present the performance differences, in Ta- 7.2 Cooperative transcoding algorithms ble 4 we report the median and the 90-percentile of the In this section we compare the performance of the coop- response time. erative transcoding algorithms for flat architectures de- scribed in Section 5.2. For this set of experiments we Table 4: System response times for load-blind and load- choose the Flat flat-based scheme, because it typically of- aware algorithms [sec]. fers the highest cache hit rates and lowest response times. Bimodal workload Uniform workload Indeed, the flat-based scheme performs well for a wide median 90-percentile median 90-percentile Blind-active 1.03 4.88 0.36 1.56 range of workload models, at least until the system is un- Blind-lazy 0.25 121.12 0.07 239.79 der heavy stress, as noted in [3]. Under low and medium Load-aware 0.89 3.98 0.46 1.90 load, the difference between the various transcoding al- gorithms is very small. Therefore, it is more interesting The blind-lazy algorithm bets on finding either a use- to explore the performance gain achievable with the pro- ful hit or an exact remote hit on a less loaded peer. If it posed cooperative transcoding algorithms when the server succeeds, it can reduce the response time. However, if CPUs are nearly always busy due to transcoding opera- no remote hit is found or, even worse, if the peer having tions. To this purpose, we used the bimodal and uniform a remote useful hit is overloaded, the response time can workloads described in Section 6. increase significantly. This explain why the blind-lazy al- Figure 4 shows the cumulative distribution of response gorithm can successfully reduce the median response time time for the load-blind and load-aware algorithms with the (as shown in columns 2 and 4 of Table 4), but it tends bimodal workload, while Figure 5 refers to the uniform to have poor performance when considering 90-percentile
  • 11. 1 1 0.9 0.9 0.8 0.8 0.7 0.7 Cumulative distribution Cumulative distribution 0.6 0.6 0.5 0.5 0.4 0.4 0.3 0.3 0.2 0.2 0.1 Blind-active 0.1 Blind-active Blind-lazy Blind-lazy Load-aware Load-aware 0 0 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 Response time [ms] Response time [ms] Figure 4: Cumulative distributions of system Figure 5: Cumulative distributions of system response times (bimodal workload). response times (uniform workload). due to the high number of pathological cases (columns 3 transcoding that can be implemented in the existing Web and 5 of Table 4). The problem is more evident when the infrastructure. We have investigated various schemes load is evenly distributed (column 5 of Table 4), because that use different server organizations (hierarchical, flat), in this case there is a higher probability of finding a peer and different cooperation mechanisms for resource dis- with a heavier load. On the other hand, the blind-active covery (query-based, summary-based) and transcoding algorithm seems to offer better performance because the (load-blind, load aware). We have compared their per- transcoding load is only related to the client requests be- formance through ColTrES , a flexible prototype testbed ing served and not to the requests directed to other peers. based on Squid that implements all proposed mechanisms. The response time has a more definite upper bound, thus From the performance evaluation, we have found that flat reducing the 90-percentile of the response time with re- peer-to-peer topologies are always better than hierarchi- spect to the blind-lazy algorithm. On the other hand, the cal schemes, because of bottleneck risks in the higher median response is higher than that of the lazy policy. levels of the hierarchy combined with limited cache hit The load-aware algorithm offers some performance rates. Among the flat cooperation schemes, we evalu- gains when the load is unevenly distributed (bimodal ated multi-version lookup extensions of Cache Digests workload), because it can act smarter than the load-blind and ICP and found that, ICP tends to have better perfor- algorithms. In particular, it reduces of about 22% the 90- mance due to the lower cache hit rates of Cache Digests. percentile (as shown in column 3 of Table 4) and about As a further contribution of this paper, we verified that 14% the median response time (column 2 of Table 4) with the proposed load-aware algorithm can achieve some per- respect to the blind-active algorithm. On the other hand, formance gains only when the client load is unevenly dis- in the case of uniform workload the load-aware algorithm tributed among the edge servers of the intermediate infras- is ineffective in reducing the response time, and there is tructure. On the other hand, in the case of rather uniform a performance loss on both 90-percentile and median re- load distribution, the load-aware algorithm does not seem sponse time. Indeed, when the skew of the workload to achieve any significant improvement. is low, we need a more sophisticate algorithm, possibly An intermediate infrastructure of distributed servers based on information on the load of a larger (maybe en- that cooperate in multi-version content caching, discov- tire) set of servers of the intermediate architecture. ery, and transcoding opens many research topics. A lim- ited number of issues have been investigated in this work, that to the best of our knowledge represents the first im- 8 Conclusions plementation of cooperative transcoding and caching sys- tems for both hierarchical and flat topologies. There are In this paper, we have proposed an intermediate other research issues that this paper opens up, such as distributed architecture for cooperative caching and cooperative cache replacement policies for multi-version
  • 12. content, transcoding policies based on global information [9] A. Fox, S. D. Gribble, Y. Chawathe, E. A. Brewer, and on server load and available network bandwidths, and in- P. Gauthier. Cluster-based scalable network services. In tegration with server-direct transcoding to preserve the Proc. of 16th ACM Symp. on Operating Systems Princ., pages 78–91, Oct. 1997. end-to-end content semantics. [10] R. Han, P. Bhagwat, R. LaMaire, T. Mummert, V. Perret, and J. Rubas. Dynamic adaptation in an image transcod- Acknowledgements ing proxy for mobile Web browsing. IEEE Personal Com- munications, 5(6):8–17, Dec. 1998. The first four authors acknowledge the support of MIUR- [11] B. Knutsson, H. Lu, and J. Mogul. Architectures and Cofin 2001 “High-quality Web systems” and MIUR-FIRB pragmatics of server-directed transcoding. In Proc. of 7th “Wide-scale, Broadband, Middleware for Network Dis- Int’l Workshop on Web Content Caching and Distribution, tributed Services”. Aug. 2002. [12] W. Y. Lum and F. C. M. Lau. On balancing between transcoding overhead and spatial consumption in content References adaptation. In Proc. of ACM Mobicom 2002, pages 239– 250, Sept. 2002. [1] M. Butler, F. Giannetti, R. Gimson, and T. Wiley. Device independence and the Web. IEEE Internet Computing, [13] A. Maheshwari, A. Sharma, K. Ramamritham, and 6(5):81–86, Sept./Oct. 2002. P. Shenoy. TransSquid: Transcoding and caching proxy for heterogeneous e-commerce environments. In Proc. of [2] C. Canali, V. Cardellini, and R. Lancellotti. Squid-based 12th IEEE Int’l Workshop on Research Issues in Data En- proxy server for content adaptation. Technical Report gineering, pages 50–59, Feb. 2002. TR-2003-03, Dept. of Comp. Eng., Univ. of Roma “Tor [14] R. Mohan, J. R. Smith, and C.-S. Li. Adapting multime- Vergata”, Jan. 2003. http://weblab.ing.unimo. dia Internet content for universal access. IEEE Trans. on it/research/trans_caching.shtml. Multimedia, 1(1):104–114, Mar. 1999. [3] V. Cardellini, M. Colajanni, R. Lancellotti, and P. S. Yu. [15] M. Rabinovich and O. Spatscheck. Web Caching and A distributed architecture of edge proxy servers for coop- Replication. Addison Wesley, 2002. erative transcoding. In Proc. of 3rd IEEE Workshop on Internet Applications, pages 66–70, June 2003. [16] A. Rousskov and D. Wessels. Cache Digests. Computer Networks, 30(22-23):2155–2168, 1998. [4] V. Cardellini, P. S. Yu, and Y. W. Huang. Collaborative [17] W. Shi, K. Shah, Y. Mao, and V. Chaudhary. Tuxedo: a proxy system for distributed Web content transcoding. In peer-to-peer caching system. In Proc. of the 2003 Int’l Proc. of 9th ACM Int’l Conf. on Information and Knowl- Conf. on Parallel and Distributed Processing Techniques edge Management, pages 520–527, Nov. 2000. and Applications (PDPTA’03), Las Vegas, NV, June 2003. [5] S. Chandra, C. S. Ellis, and A. Vahdat. Application- [18] A. Singh, A. Trivedi, K. Ramamritham, and P. Shenoy. level differentiated multimedia Web services using qual- PTC: Proxies that transcode and cache in heterogeneous ity aware transcoding. IEEE J. on Selected Areas in Com- Web client environments. World Wide Web, 2003. munication, 18(12):2544–2465, Dec. 2000. [19] Squid Internet Object Cache. http://www. [6] S. Chandra, A. Gehani, C. S. Ellis, and A. Vahdat. squid-cache.org. Transcoding characteristics of Web images. In Proc. of [20] A. Wolman, G. M. Voelker, N. Sharma, N. Cardwell, Multimedia Computing and Net. Conf., Jan. 2001. A. Karlin, and H. M. Levy. On the scale and performance [7] C.-Y. Chang and M.-S. Chen. On exploring aggregate ef- of cooperative Web proxy caching. In Proc. of 17th ACM fect for efficient cache replacement in transcoding prox- Symp. On Operating Systems Princ., Dec. 1999. ies. IEEE Trans. on Parallel and Distributed Systems, 14(6):611–624, June 2003. [8] L. Fan, P. Cao, J. Almeida, and A. Z. Broder. Summary cache: A scalable wide-area Web cache sharing proto- col. IEEE/ACM Trans. on Networking, 8(3):281–293, June 2000.