Professional Documents
Culture Documents
Abstract: One of the challenges in the development of proxy- number of transcoding operations required, minimizing the
based content adaptation architecture is the implementation of need for computational power but increasing pressure on
proxy cache which aims at reducing the amount of transcoding storage requirements. The trade off is between available
operations and server traffic. In the absence of adaptation- storage and computational power. Also, it is to be noted in
aware caching at content proxies, the system performance this case that the entire client load is on the server. This in
suffers due to repeated and frequent access of same image tandem with a large number of transformations could
versions on the remote content server. An efficient mechanism
possibly bring down response time below accepted standards
for caching the most relevant images and their variations can
considerably reduce the above overheads. The efficiency of a
and at the worse, result in system failure.
content proxy can be improved by caching of image versions
that are frequently accessed by client devices. Consequently, a Proxy-based approach introduces a new layer between the
considerable amount of transcoding-related computational load client and the server, the content proxy, effectively forming
on content servers is reduced. This paper addresses these cache a three tier architecture. The content proxy receives the
management issues by proposing an adaptation aware requests from the client and responds to it from the data
architecture for content adaptation proxies that focuses its cache obtained from the server. The need for a cache is implicit
removal policy on transcoding cost. The proposed architecture here. The proxy can store the variations of objects to
improves efficiency when compared to conventional cache respond to the client requests. It is easy to see that by
management schemes, by resulting in lesser traffic between the associating a server to more than one client (a one to many
proxy and remote server and lowering the number of
mapping) the load on the server is reduced. Also there is
transcoding operations.
effective separation of computation and data storage sectors
by exporting computational requirements to the proxy. Also
the effective computational load is reduced as it is
Keywords: Content adaptation architectures, cache
management, multimedia. distributed, hence lowering individual system costs as well
as increasing system reliability while paving way for
1. Introduction graceful system degradation via load balancing. It can be
seen that the advantages of a content proxy are widespread
Adaptation of multimedia content can be done at three and myriad. This approach is indeed widely used and
possible locations: at the client device, at the content server recommended.
or at a specialized multimedia proxy between the two. Client
side adaptation requires the adaptation operations to be Proxies can exhibit passive caching as well as active
performed on the client devices receiving these objects. caching. In passive caching, if the object is not cache it is
Though this is not unknown, in current scenario involving retrieved from the server and older objects are removed in
widespread use of handhelds, the computational power the event of cache overflow. Active caching aims at
required for these operations is hard to find. Even is present, improving retrieval performance by increasing the
it takes up a larger time, decreasing efficiency than what likelihood that a requested object will be found in the cache.
could be obtained by the other schemes. In client-side It can also work as a superset of passive caching based on
architectures, cache precedence could increase efficiency the load on the proxy. In content adaptation proxies, the
considerably, but this is a seldom used practice as memory is choice of using active caching should be based on an
again a scarce resource. analysis of frequently adapted object versions. The
architecture proposed in this paper aims at implementing
In case of server-side adaptation techniques, conventional active caching and thereby reduce repeated adaptation
web servers are imbued with content adaptation processes. operations and traffic between content server and content
Caching of the adapted content here involves storing proxies.
multiple variations of the same content in order to match
with client requirement specification. This reduces the
2. Background and Related Work
for content adaptation have been proposed. A proxy-based formulated for cache management. However, their node
framework for dynamic adaptation in distributed multimedia structure and tree construction algorithms do not take the
applications [1] describes the functions of a proxy that can cache replacement policy into account. An efficient cache
be configured to perform adaptations of multimedia. indexing structure on Content Proxies will have to take into
Another adaptation architecture called MARCH [2] enables account the transcoding costs between image variations as a
the creation of a service-based overlay network. It provides part of determining the relevancy of any image object
for a dynamic proxy execution environment and mobile resident on the cache.
aware servers to decide which set of tasks have to be
assigned to each proxy. Related research has also been Our work focuses on combining the cache replacement
carried out in Content Distribution Networks (CDNs) [3] policy of the content proxy with an adaptation-aware cache
that use presents topology aware overlays for efficient indexing scheme in order to arrive at a more holistic method
distributed multimedia application support. Self-adaptive of cache management for content adaptation proxies.
CDNs [4] exhibit ability to adapt their behavior in order to
cope with serving heterogeneous multimedia content under
unpredictable network conditions. In addition to it, 2.1. Content Adaptation Architecture
distributed content adaptation framework (DCAF) [5] has
been proposed for pervasive computing. A similar proposal The architecture which we have referred to is one proposed
on Automatic Adaptation of Streaming Multimedia Content by Jean-Marc Pierson [5] (see Fig.1). The architecture takes
[6] makes use of a server side adaptation engine. The engine into consideration client profile, network conditions, content
reacts to context changes and also facilitates multimedia profile (meta-data) and available adaptation services (third
adaptation in a distributed fashion along the delivery path. party software elements) to arrive at an optimal dynamic
adaptation decision.
The cache forms the backbone of the content proxy, and
hence an architecture that makes possible its efficient and
effective utilization is required to exploit maximum benefits.
Improved cache management ensures that the images that
are accessed frequently by clients are stored in the cache.
This decreases the number of adaptation operations involved
in transcoding, thereby increasing average response time.
This also increases the cache hit ratio (i.e., the probability
that an requested object is found in the cache). In addition,
the number of times the server is requested for an image is
reduced reducing costly IO time and easing the load on the
network.
Another caching scheme called as PTC [8] describes the 2.3. Content Proxies:
working of proxies that transcode and cache for
heterogeneous devices requirements. A similar graph-based They accept user requests forwarded by the local proxies and
data structure has been used that utilizes the earlier retrieve the images from either the local cache or remote
proposed Aggregate Effect along with network parameters content servers. Adaptation is performed in the adaptation
and learning capabilities. This scheme again does not take engine if the appropriate image version is not present and
the cache restrictions and indexing scheme into account. then transferred back to the local proxies ot be delivered to
the client.
In addition to the replacement policy, another important
factor in the design of caching is the indexing structure to be 2.4. ASPs:
used. More recent research work in cache indexing has been
focused on making the tree structure more cache conscious Adaptation Service Proxies are the web services that can be
i.e. perform faster lookup with minimum required memory deployed on the content proxies to execute required
space. A number of such tree-based indexing schemes like adaptation operations.
CSB-tree [9], CST-tree [10], CSR-tree [11] have been
(IJCNS) International Journal of Computer and Network Security, 91
Vol. 1, No. 2, November 2009
and processing constraints. Optionally they can be got from vii. If cache miss had occurred during recent
the device profile data structure. image request, the image retrieved from server
is added to the cache.
viii. Cache overflow is avoided by removing the
least preferable image using replacement
3.2. Adaptation Engine: policy.
This module is in charge of carrying out all the required the 4. Adaptation Aware Caching Scheme
adaptation operations. Thus happens in case of a cache miss
or of a partial cache hit. In both cases, the proxy has to
carry out adaptation operations to satisfy client requests. Cache efficiency is characterized by –
• Amount of “less important” cached images
Adaptation operation functions that are existing can • Size of allotted memory
again be used in our architecture, the general framework • Time required for the transmission of data from
presented here is independent of how adaptation is the remote server to the content proxy
implemented.
As the indexing scheme being proposed in this paper
3.3. Cache Management module: focuses on being adaptation-aware, the study of third factor
above is beyond the scope of this paper. For content
This includes both the indexing mechanism for the cache as adaptation proxies, similar images should be indexed closer.
well as the implementation of the cache removal policy. The Moreover, index should have caching policy information in
indexing mechanism is required for fast and orderly access order to achieve faster image replacement in case of a cache
of the cache. The replacement policy is decisive in the cache miss. And as per convention, the removal policy in the
architecture and determinant of the cache utilization and index should favor more frequently adapted objects which
efficiency. can lead to a reduction in computational overheads.
Consequently, the response time can be bettered.
3.4. Working of the Content Proxy
A cache management algorithm can be analogized to the
The Query Processor (QP) and Adaptation Engine (AE) classic Knapsack problem [12]. Consider D as the dataset
perform the decision making regarding the adaptation (more specifically image-set in our case).
operations that need to be performed on appropriate image
objects. On the other hand, the Cache Management module D = {D1, D2, …, DN}
(CM) maintains cache index and manages replacement xi = {0,1} where xi = 0, if Di is cached
operations based on the input parameters obtained from the xi = 1, if Di is not cached
previous two modules. The overall working of the proxy can wi and si are said to be the “relevancy value” and size of
be described as follows – Di respectively.
i. Communication Interface gets the client
request containing identifiers for client, image The aim of the caching mechanism is to –
N
and the device type. a. Maximize (Cache volume) V = Σ i = 1 xi wi
ii. QP deserializes the query and forwards the b. Ensure Σ i = 1 N xi si <= S, where S is the total cache size
parameters to Adaptation Engine.
iii. AE fetches the device profile based on device It is clear from the above expressions that the “relevancy
type specified in the query and decides on the value” w plays a pivotal role in the overall design and
adaptation operations. implementation of the cache. Keeping in mind the
iv. AE determines the expected optimal application of caching on content adaptation proxies, we
adaptation image parameters and sends it to define the relevancy value of j the version of image Di as –
QP.
v. QP forwards it to CM. wi,j = F (si,j, di,j, fi,j, ti,j, ni )
vi. CM checks if the image version with the
required parameters is present in the cache. where,
a. If image is present, it is fetched and sent si,j is the size of image version
to QP and then to the client via the ri,j is the image version resolution
Communication Interface. di,j is distance of image version from “nearest similar”
b. If not present, the CM tries to fetch a image
“similar transcodable” image from the fi,j is frequency of access of image version
cache which is then adapted to the ti,j is last access time of image version
appropriate format in AE and then sent to ni is the number of cached image versions of Di
the client. From the above notations, it is obvious that a crucial
c. Otherwise, CM sends cache miss message parameter in determining relevancy value wi,j in content
to QP. QP then instructs AE to fetch the proxy cache is the distance of image version from “nearest
image from remote server for adaptation. similar” image. We define a nearest similar image as
(IJCNS) International Journal of Computer and Network Security, 93
Vol. 1, No. 2, November 2009
another version of the same image that has higher 5.2. Partial Cache Hit
resolution and from which the target image can be obtained
through local adaptation. Arriving at a suitable value for
this parameter can result in a reduction in the number of
repeated requests to the remote server for the same image
version. Some of the other terms that are used in the paper
to describe the caching mechanism are defined below:
a) If server responds with an exact match It is [7] Cheng-Yue Chang; Ming-Syan Chen, “Exploring
transferred to the client via the communication aggregate effect with weighted transcoding graphs for
module efficient cache replacement in transcoding proxies”,
b) In case the responded image is not an exact Proceedings. 18th International Conference, 2002.
match, the received image id forwarded to the [8] A. Singh, A. Trivedi, K. Ramamritham, P. Shenoy,
adaptation engine for transformation “PTC: proxies that transcode and cache in
according to client requests then sent to the heterogeneous web client environments”, proceedings
communication interface. of the Third International Conference on Web
• In the latter case (b) the cache must again be Information Systems Engineering, 2002.
updated with the new adapted image. This is [9] J. Rao and K.A. Ross, "Making B+-tree cache conscious
decided using further parameters based on whether in main memory", In SIGMOD, pages 475-486, 2000.
an image or its variation is more frequently [10] Ig-hoon Lee, Junho Shim, Sang-goo Leeand Jonghoon
accessed. Chun, "CST-Trees: Cache Sensitive T-Trees",
Advances in Databases: Concepts, Systems and
6. Conclusion & Future Work Applications, 2007.
[11] Dong, 1 Yu, "CSR+-tree: Cache-conscious Indexing
The proposed architecture for content proxies in adaptation for High-dimensional Similarity Search,”, 19th
networks incorporates adaptation-aware cache management International Conference on Scientific and Statistical
features. These features lead to an improvement in the Database Management, Statistical and Scientific
performance of content proxies by reducing the number of Database Management (SSDBM), pp. 14-27, 2007.
requests to remote content server and reducing [12] Asanobu Kitamoto, "Multiresolution Cache
computations for adaptation operation by caching the most Management for Distributed Satellite Image Database
frequently adapted image versions. Our future work focuses Using NACSIS-Thai International Link", Proceedings
on the development an efficient indexing data structure that of the 6th International Workshop on Academic
in addition incorporates removal policy. Intertwining of Information Networks and Systems (WAINS), pp. 243-
these two makes the cache efficient as there is lesser 250, 2000.
overhead. The data structure is also made adaptation aware,
in contrast to existing indexing and replacement policy
making it an apt fit for content proxies.
References
[1] O. Layaida, D. Hagimonte, "Dynamic Adaptation in
Distributed Multimedia Applications", INRIA,
Technical Report, August 2002.
[2] S. Ardon, P. Gunningberg, B. Landfelt, Y. Ismailov, M.
Portmann, A. Seneviratne, "MARCH: A distributed
content adaptation architecture", International Journal
of Communication Systems 2003, 16.
[3] Khalil El-Khatib, Gregor v. Bochmann, and
Abdulmotaleb El Saddik, "A Distributed Content
Adaptation Framework for Content Distribution
Networks", School of Information Technology &
Engineering, University of Ottawa
[4] Jawaheer, G.; McCann, J.;"Building a self-adaptive
content distribution network", Proceedings. 15th
International Workshop on Database and Expert
Systems Applications, 2004. Volume , Issue , 30 Aug.-
3 Sept. 2004
[5] G. Berhe, L. Brunie, JM. Pierson. "Distributed Content
Adaptation for Pervasive Systems". In proceedings of
IEEE International Conference on Information
Technology, ITCC 2005, April 4-6, 2005, Las Vegas,
Nevada, USA, Vol.2 pp.234-241.
[6] Hutter, A.; Amon, P.; Panis, G.; Delfosse, E.; Ransburg,
M.; Hellwagner, H. "Automatic adaptation of streaming
multimedia content in a dynamic and distributed
environment", IEEE International Conference on
Image Processing, 2005. ICIP 2005. Volume 3, Issue,
11-14 Sept. 2005.