The document proposes a software architecture that uses a Grid computing environment to realize a Content Distribution Network for multimedia content. The architecture exploits Grid resources not only for storage but also for on-the-fly transcoding of multimedia files into formats supported by clients. It describes components that select the nearest storage element to the client and a computing element with sufficient resources to perform transcoding when needed, aiming to minimize latency and maximize quality of service for the user.
Presentation on basics of cloud computing models, current status and future use in healthcare environments, differences between traditional outsourcing contracting and cloud contracting, and discussion of e-discovery issues created by cloud environments.
Interested in learning more about the technical architecture of DuraCloud? Curious about how it runs in the cloud? This presentation details the technical underpinnings of DuraCloud.
Presented by:
Bill Branan, DuraCloud Lead Developer, DuraSpace
Watch on-demand here:
http://ecast.opensystemsmedia.com/339
Distributed systems work by sending information between otherwise independent applications. Traditionally, that communication is done by passing messages between the various nodes. This "message-centric" approach takes many forms, from simple direct transmissions to more complex message queue and transactional systems. All have a common premise: the unit of information exchange is the message itself. The infrastructure's role is to ensure that messages get to their intended recipients.
Recently, another paradigm is becoming popular. In this approach, the distributed infrastructure takes more responsibility; it offers to the distributed system a single version of "truth." The fundamental unit of communication is a data-object value; the infrastructure has done its job not when a message is delivered, but when all nodes have the correct understanding of that value. Because the focus is on the data itself, this is termed "data-centric" infrastructure.
While both types of middleware serve to connect distributed systems, the approaches are quite different. And the single most important decision you make when designing your distributed system – whether to go with the message-centric or data-centric approach – will result in different system capabilities, strengths, and weaknesses. In this webinar, we will examine both, discuss the differences and clarify which application use cases are best served by data- and message-centric designs.
Presentation on basics of cloud computing models, current status and future use in healthcare environments, differences between traditional outsourcing contracting and cloud contracting, and discussion of e-discovery issues created by cloud environments.
Interested in learning more about the technical architecture of DuraCloud? Curious about how it runs in the cloud? This presentation details the technical underpinnings of DuraCloud.
Presented by:
Bill Branan, DuraCloud Lead Developer, DuraSpace
Watch on-demand here:
http://ecast.opensystemsmedia.com/339
Distributed systems work by sending information between otherwise independent applications. Traditionally, that communication is done by passing messages between the various nodes. This "message-centric" approach takes many forms, from simple direct transmissions to more complex message queue and transactional systems. All have a common premise: the unit of information exchange is the message itself. The infrastructure's role is to ensure that messages get to their intended recipients.
Recently, another paradigm is becoming popular. In this approach, the distributed infrastructure takes more responsibility; it offers to the distributed system a single version of "truth." The fundamental unit of communication is a data-object value; the infrastructure has done its job not when a message is delivered, but when all nodes have the correct understanding of that value. Because the focus is on the data itself, this is termed "data-centric" infrastructure.
While both types of middleware serve to connect distributed systems, the approaches are quite different. And the single most important decision you make when designing your distributed system – whether to go with the message-centric or data-centric approach – will result in different system capabilities, strengths, and weaknesses. In this webinar, we will examine both, discuss the differences and clarify which application use cases are best served by data- and message-centric designs.
This white paper by Pradeep Sindhu introduces the defining characteristics that set QFabric apart from other technologies that have been used or proposed for building the internal networks of large scale data centers. Learn more at http://www.juniper.net/us/en/dm/datacenter/
These are slides from a talk I gave on 19 April, 2012, at the Object Management Group's (OMG's) Real-Time Workshop in Paris, France. The purpose of the talk was to describe the ways in which building applications is different from building platforms and systems, especially with respect to patterns of communication. Specifically, the recognized messaging patterns make sense at an application layer but are often too limiting and brittle within the software infrastructure itself.
Value Networks and Business Models of Information-centric NetworkingTapio Levä
Presentation given in the "Future Media Distribution using Information Centric Networks" event organized by the SAIL and EFRAIM projects on February 13, 2013 in Stockholm, Sweden.
The presentation is based on the results of the SAIL (EC-FP7) project.
Build your virtualized telecommunications network with NetApp and you will gain a proven carrier-grade approach to data availability, performance, security, and management.
Fast Distribution of Replicated Content to Multi- Homed ClientsIDES Editor
Clients can potentially have access to more than
one communication network nowadays due to the availability
of a wide variety of access technologies. On the other hand,
service replication has become a trivial approach in overlay
networks to provide a high availability of data and better QoS.
In this paper, we consider such a multi-homed client seeking
a replicated service in overlay network (e.g., CDN, peer-topeer).
Our aim is to improve the content distribution by
proposing a new model for being applied at the applicationlevel
and in a fully distributed way. Basically, our model
proposes to determine the best mirror server that could be
reached through each client’s network interface based on
application utility function. Then, it consists of downloading
the requested content from the determined best servers
simultaneously through their associated interfaces. Each best
server should deliver a specific estimated range of bytes (i.e.,
content chunk) to an independent TCP socket opened at the
client side for being finally aggregated at the applicationlevel.
Our real experiments show that our model is able to
considerably improve the QoS (e.g., content transfer time)
perceived by the client comparing to the traditional content
distribution techniques.
Introduction
Introduction to Message and Queue
Message Queue & Purpose
Introduction to Java Message Service(JMS)
JMS Components/ Elements
Message Queue Model
List of Message Oriented Middleware(MOM) available
A great power point presentation for DBMS Concepts from start to end and with best examples chapter by chapter. Please go though each chapters sequentially for your knowledge.
A very easy going study material for better understanding and concepts of Database Management System.
This study explores the impact of certifications through the lens of the teachers’ collegial interactions and use of these companies’ innovative products and services.
This white paper by Pradeep Sindhu introduces the defining characteristics that set QFabric apart from other technologies that have been used or proposed for building the internal networks of large scale data centers. Learn more at http://www.juniper.net/us/en/dm/datacenter/
These are slides from a talk I gave on 19 April, 2012, at the Object Management Group's (OMG's) Real-Time Workshop in Paris, France. The purpose of the talk was to describe the ways in which building applications is different from building platforms and systems, especially with respect to patterns of communication. Specifically, the recognized messaging patterns make sense at an application layer but are often too limiting and brittle within the software infrastructure itself.
Value Networks and Business Models of Information-centric NetworkingTapio Levä
Presentation given in the "Future Media Distribution using Information Centric Networks" event organized by the SAIL and EFRAIM projects on February 13, 2013 in Stockholm, Sweden.
The presentation is based on the results of the SAIL (EC-FP7) project.
Build your virtualized telecommunications network with NetApp and you will gain a proven carrier-grade approach to data availability, performance, security, and management.
Fast Distribution of Replicated Content to Multi- Homed ClientsIDES Editor
Clients can potentially have access to more than
one communication network nowadays due to the availability
of a wide variety of access technologies. On the other hand,
service replication has become a trivial approach in overlay
networks to provide a high availability of data and better QoS.
In this paper, we consider such a multi-homed client seeking
a replicated service in overlay network (e.g., CDN, peer-topeer).
Our aim is to improve the content distribution by
proposing a new model for being applied at the applicationlevel
and in a fully distributed way. Basically, our model
proposes to determine the best mirror server that could be
reached through each client’s network interface based on
application utility function. Then, it consists of downloading
the requested content from the determined best servers
simultaneously through their associated interfaces. Each best
server should deliver a specific estimated range of bytes (i.e.,
content chunk) to an independent TCP socket opened at the
client side for being finally aggregated at the applicationlevel.
Our real experiments show that our model is able to
considerably improve the QoS (e.g., content transfer time)
perceived by the client comparing to the traditional content
distribution techniques.
Introduction
Introduction to Message and Queue
Message Queue & Purpose
Introduction to Java Message Service(JMS)
JMS Components/ Elements
Message Queue Model
List of Message Oriented Middleware(MOM) available
A great power point presentation for DBMS Concepts from start to end and with best examples chapter by chapter. Please go though each chapters sequentially for your knowledge.
A very easy going study material for better understanding and concepts of Database Management System.
This study explores the impact of certifications through the lens of the teachers’ collegial interactions and use of these companies’ innovative products and services.
OpenSocial presentation for #BLDRUX11
Provides an overview of OpenSocial, an introduction to the programming model, and shows some sample applications.
In these economic times, companies must find new ways to grow revenues. The Partner community and it\'s extended sales force is the #1obvious choice. Palladin will show you how to implement Best Practices to develop predictable forecasting & new revenue growth with select Partners.
Change management presentation (persembahan pengurusan perubahan) by eruan & inna (student of University Technology of Malaysia) - Master Degree of Management and Administration for Education
Get a "social" life: Breathing collaboration into legacy apps Is your legacy system a "wall flower"? Are you tired of it staying home, alone on Friday night while all the cool apps are out collaborating with each other? No more! Attend this session and discover how you can give your legacy app a social life! You'll learn how to break it out of its silo with Jive Connects. See how information that's been trapped inside these systems blossoms when shared in the Jive Social Business Platform using the Jive Apps.
* Explore the similar histories of the cloud and Content Delivery Networks (CDNs)
* Discover the future relationship between CDNs and emerging cloud platforms as the lines of distinction continue to blur
* Learn from real world use cases in which these technologies interact together
M.E Computer Science Parallel and Distributed System ProjectsVijay Karan
List of Parallel and Distributed System IEEE 2006 Projects. It Contains the IEEE Projects in the Domain Parallel and Distributed System for M.E Computer Science students.
M.Phil Computer Science Parallel and Distributed System ProjectsVijay Karan
List of Parallel and Distributed System IEEE 2006 Projects. It Contains the IEEE Projects in the Domain Parallel and Distributed System for M.Phil Computer Science students.
M phil-computer-science-parallel-and-distributed-system-projectsVijay Karan
List of Parallel and Distributed System IEEE 2006 Projects. It Contains the IEEE Projects in the Domain Parallel and Distributed System for M.Phil Computer Science students.
bulk ieee projects in pondicherry,ieee projects in pondicherry,final year ieee projects in pondicherry
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
Provable multicopy dynamic data possessionnexgentech15
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
PROVABLE MULTICOPY DYNAMIC DATA POSSESSION IN CLOUD COMPUTING SYSTEMSNexgen Technology
bulk ieee projects in pondicherry,ieee projects in pondicherry,final year ieee projects in pondicherry
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
PROVABLE MULTICOPY DYNAMIC DATA POSSESSION IN CLOUD COMPUTING SYSTEMSNexgen Technology
bulk ieee projects in pondicherry,ieee projects in pondicherry,final year ieee projects in pondicherry
Nexgen Technology Address:
Nexgen Technology
No :66,4th cross,Venkata nagar,
Near SBI ATM,
Puducherry.
Email Id: praveen@nexgenproject.com.
www.nexgenproject.com
Mobile: 9751442511,9791938249
Telephone: 0413-2211159.
NEXGEN TECHNOLOGY as an efficient Software Training Center located at Pondicherry with IT Training on IEEE Projects in Android,IEEE IT B.Tech Student Projects, Android Projects Training with Placements Pondicherry, IEEE projects in pondicherry, final IEEE Projects in Pondicherry , MCA, BTech, BCA Projects in Pondicherry, Bulk IEEE PROJECTS IN Pondicherry.So far we have reached almost all engineering colleges located in Pondicherry and around 90km
A Survey of Performance Comparison between Virtual Machines and Containersprashant desai
Since the onset of Cloud computing and its inroads into infrastructure as a service, Virtualization has become peak
of importance in the field of abstraction and resource management. However, these additional layers of abstraction provided by virtualization come at a trade-off between performance and cost in a cloud environment where everything is on a pay-per-use basis. Containers which are perceived to be the future of virtualization are developed to address these issues. This study paper scrutinizes the performance of a conventional virtual machine and contrasts them with the containers. We cover the critical
assessment of each parameter and its behavior when its subjected to various stress tests. We discuss the implementations and their performance metrics to help us draw conclusions on which one is ideal to use for desired needs. After assessment of the result and discussion of the limitations, we conclude with prospects for future research
SURVEY ON KEY AGGREGATE CRYPTOSYSTEM FOR SCALABLE DATA SHARINGEditor IJMTER
Public-key cryptosystems produce constant-size cipher texts with efficient delegation
of decryption rights for any set of cipher texts. One can aggregate any set of secret keys and make
them as compact as a single key. The secret key holder can release a constant-size aggregate key for
flexible choices of cipher text set in cloud storage. In KAC, users encrypt a message not only under a
public-key, but also under an identifier of cipher text called class. That means the cipher texts are
further categorized into different classes. The key owner holds a master-secret called master-secret
key, which can be used to extract secret keys for different classes. More importantly, the extracted
key have can be an aggregate key which is as compact as a secret key for a single class, but
aggregates the power of many such keys, i.e., the decryption power for any subset of cipher text
classes. The key aggregate cryptosystem is enhanced with boundary less cipher text classes. The
system is improved with device independent key distribution mechanism. The key distribution
process is enhanced with security features to protect key leakage. The key parameter transmission
process is integrated with the cipher text download process.
35 content distribution with dynamic migration of services for minimum cost u...INFOGAIN PUBLICATION
Content Delivery Networks are the key for today’s internet content delivery. Users are knowingly or unknowingly accessing the CDN via internet. No matter how much the data retrieved by the user it may contain the CDN hand behind every character of text and every pixel of image. CDN came into existence to solve the delay problem. The moment when a user requests for a web page and the response delivered to the corresponding users web browser facing a huge delay. The main goal of this paper is content distribution of web services to multiple data centers placed in different geographical locations and providing security. A content distribution service is a major part of popular Internet applications. In proposed system hybrid clouds are used i.e., both private cloud as well as public cloud. One data center is allocated to each region. Providing security to the data is always an important issue because of the critical nature of the cloud and very large amount of complicated data it carries. To provide security cipher text policy algorithm is used. Authentication technique is used to verify the user authentication. If the user is authorized to access services then and only he receives configuration key to use.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
P57 Novelli
1. A Grid-based Infrastructure to Support
Multimedia Content Distribution
Giovanni Novelli, Giuseppe Pappalardo, Corrado Santoro, Emiliano Tramontana
Dipartimento di Matematica e Informatica
Universita’ di Catania, Viale A. Doria, 6 - 95125 Catania, Italy
pappalardo, santoro, tramontana}@dmi.unict.it
{novelli,
ABSTRACT the user with high quality-of-service (QoS). This is generally
achieved by means of several servers, geographically placed
This paper proposes a software architecture able to realise a
at far edges of the network, which hold replicas of the data:
Content Distribution Network (CDN), for multimedia data,
once a client sends a request to obtain e.g. a document,
by means of a Grid computing environment. The key as-
the request is automatically redirected to the nearest replica
pect of the proposed approach is exploiting the computa-
server to the client, thus providing a high response time
tional power of a Grid not only to store replicas of the same
and the best possible quality of service. Supporting such a
multimedia content, but also to perform on-the-fly transcod-
kind of operations implies a proper software infrastructure
ing, when the requesting client is using a player that cannot
able to manage replicas and determine client-replica server
handle the original file format.
distance [9, 8, 5, 11].
The proposed software infrastructure, which exploits the
While a high QoS is important for fetching any sort of
Globus Grid services, is able on one hand to identify the stor-
data, it becomes a mandatory feature when the data being
age element, holding the replica, which is the nearest to the
transferred is a multimedia content, such as video or audio.
client (if such a replica exists); and on the other hand, when
In this case, the QoS parameters are not only related to the
the requested file is encoded with a scheme that the player
ability of the content network to delivery data in order to
cannot support, the infrastructure selects the computing ele-
ensure a smooth play at client side, but also to the possibil-
ment which is “best suited”—i.e. has enough computational
ity of providing a content that the client’s player is able to
power—to perform on-the-fly transcoding, thus providing
decode and reproduce. In fact, a large number of multime-
data to the user with the requested format. This selection
dia formats and encoding schemes exist, most of them are
is based on proper metrics that aim at minimising latencies
standardized but some are still proprietary, so that they re-
in order to increase the quality-of-service for the user.
quire their own ad hoc players or codecs. This means that,
it could be the case that a multimedia content cannot be
Categories and Subject Descriptors played because the player or the codec does not support its
D.1.3 [Programming Techniques]: Concurrent Program- format.
ming—Distributed Programming; C.2.4 [Computer-Com- To solve this problem, two main solutions could be en-
munication Networks]: Distributed Systems—Distributed visaged: (i) to publish, in the CDN, several files featuring
Applications the same content encoded using different schemes; or (ii) to
provide the CDN with a mechanism to perform on-the-fly
General Terms transcoding from the format of the file stored in the servers
to the format that can be understood by the player. Indeed
Measurement, Performance, Design, Experimentation.
these solutions are tied to each other, because, once a file
has been transcoded for a player P , the resulting data can
Keywords be also stored onto the CDN, in order to be ready to be
delivered when the same player requests the same content.
Content Distribution Networks, Grids, Quality-of-Service,
This means that, in the long time, solution (ii) incorporates
Multimedia Streaming and Transcoding
also solution (i).
To make this possible, traditional CDN software infras-
1. INTRODUCTION
tructures do not suffice: they are, in fact, data-centric and
Content Distribution Networks (CDN) [13, 15, 14, 12] are
thus focused on data distribution and replication, while, in
a kind of distributed systems designed to provide data to
our case, a high computation power is also needed for on-
the-fly transcoding. Such features are instead provided by
Grid computing environments [3]: thanks to the ability of
managing and offering a huge amount of storage space and
Permission to make digital or hard copies of all or part of this work for
CPU power, a Grid can be used not only to store and pro-
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies vide multimedia contents, but also to perform server-side
bear this notice and the full citation on the first page. To copy otherwise, to on-line adaptation of streaming, in order to satisfy at best
republish, to post on servers or to redistribute to lists, requires prior specific
the QoS parameters requested by the user.
permission and/or a fee.
With this scenario in mind, this paper describes an infras-
UPGRADE-CN’07, June 26, 2007, Monterey, California, USA.
Copyright 2007 ACM 978-1-59593-718-6/07/0006 ...$5.00.
57
2. tructure able to realise a multimedia distribution network Our software infrastructure for multimedia provisioning
by means of a Grid environment. A software architecture is interacts with these components to reach its objective, as
proposed, able to integrate with standard Grid middlewares illustrated in-depth in the following Sections.
and services, thus making it possible content replication and
on-the-fly transcoding and storing. The key aspect, as in a 3. USING A GRID AS A CDN
traditional CDN, is the ability of trying to provide contents
Given the reference architecture above, in order to make
with the best possible QoS. This is achieved by means of
it able to behave like a CDN to perform multimedia provi-
some components that are able to determine not only the
sioning, we have to map into this new environment the in-
Grid host, holding the desired content, which is the near-
teraction steps that are traditionally performed in a CDN.
est to the client, but also, when transcoding is needed, the
So, let us recall the operations made in a CDN when a user
Grid node able to provide the necessary power to perform
asks for a content:
the operation on-the-fly, as required.
The paper is structured as follows. Section 2 describes 1. The user sends a request to a “reference server”, called
the reference architecture of a Grid environment and high- origin server.
lights how the various Grid components can be used for our
2. The origin server determines the replica server which
purposes. Section 3 illustrate the basic working schema of
holds the requested data and is the nearest to the
our solution. Section 4 presents our software infrastructure
client.
to perform multimedia content providing and transcoding.
Section 5 reports some performance evaluations. Finally, 3. Once a replica server is determined, the origin server
Section 6 ends up the paper with our conclusions. redirects the client’s request to it.
2. GRID REFERENCE INFRASTRUCTURE 4. The contacted replica server elaborates the request and
provides the client with the desired data.
Typically, within the Grid environment a large amount of
computational and storage resources are available to users. In our environment, content provisioning is performed by
As found e.g. in many European projects, as EGEE, Tri- the Grid, so operations 2–4 will be performed by one or
GRID or COMETA [2], computing resources have a spe- more SEs, CEs and WNs; the “reference server” is instead
cialised role according to their characteristics. As depicted something that should be placed between the user and the
in Figure 1, a Grid is basically composed of several nodes, in- Grid, thus holding the credentials to perform access to the
terconnected to one another and distributed geographically. Grid itself and use the resources. To this aim, we consider
Each node features a host providing a large amount of stor- the presence of a new host, that we call Grid Interface (GI),
age space, which is called Storage Element (SE); many hosts acting as a gateway between the user and the Grid world;
that have the task of executing applications, called Worker it is interfaced to the user by means of e.g. web technology,
Nodes (WN); and another host which performs as applica- CORBA, Web Services, etc., depending on the type of the
tion scheduling coordinator, which is called Computing El- provisioning system that we intend to use. This host is
ement (CE). People that want to use the Grid, can log into therefore seen by the user as e.g. a web server, while, from
it, send their commands and receive results, by means of the Grid point of view, it behaves like a UI.
another host called User Interface (UI) [4, 6]. In such an environment, the sequence of operations for
Finally, a system called Resource Broker (RB) is able to multimedia provisioning can be summarised as follows.
deal with user requests, by finding the storage element host-
1. The user sends a request for a multimedia content to
ing the required resources (e.g. one or more data files) or
the GI; such a request does not hold only the name
the computing element with sufficient resources to execute a
of the content but also a specification of the capabil-
submitted application. In general, this relies on distributed
ities of the player, e.g. supported encoding formats,
repositories that store, in suitable indexes, the information
resolution, etc.
on the files of the various SEs, the resources available in the
CEs, etc.
2. The GI, by means of suitable Grid services illustrated
To enable the above functionalities, a software infrastruc-
in the following Section, searches for the SE, holding
ture — i.e. a middleware — is obviously needed. The Globus
the desired content, which is the nearest to the client—
Toolkit (GT) [10] is one of the most widespread set of li-
if such a content exists.
braries used to build middlewares for Grid environments;
it is strongly based on the Web Service paradigm and pro- 3. If the content exists but it is not in the format required
vides support to access and monitor computing and data by the client, it needs to be transcoded; to this aim, the
resources, enforce security, etc. The main components of GI prepares a “transcoding job” to be sent to the Grid
GT are: for execution. We suppose that the code of such a job
is extracted from a local library, holding the program
• Globus Security Infrastructure (GSI), which controls
codes for performing transcoding from/to many well-
and enforce user access and resource usage;
known encoding formats.1
• Monitoring and Discovery Systems (MDS), which pro-
4. A CE is selected to run the job, by using a criteria
vides the repositories holding information on data and
that ensures the CE has sufficient resources to permit
resource availability on the various nodes;
on-the-fly transcoding.
• Globus Resource Allocation Manager (GRAM), which 1
Sometimes the “transcoding job” is already available on a
takes care of allocating resources, on a node, for a job host and needs just to start processing a content (see next
to be executed. Section for details).
58
3. Worker Nodes Worker Nodes
Storage Element Storage Element
VA LINUX VA LINUX
Computing Element Computing Element
Grid Node Grid Node
VA LINUX
User Interface Resource Broker
Worker Nodes
Worker Nodes
Storage Element Storage Element
VA LINUX VA LINUX
Computing Element Computing Element
Grid Node Grid Node
Figure 1: A typical Grid environment
5. The transcoding job is started: the transcoded content chosen CE (this choice can be performed on the basis of
is sent to both the client and a SE, in order to be stored some settings, automatically by the GRAM). Once the ap-
for a future request of the same type. plication is within the CE, this chooses an idle host that
finally executes the application. Note that hosts, providing
6. The code of the transcoding program is “cached” into services, passing the applications along and communicating
the CE, so that it is ready to be executed if another replies, as well as executing applications are often geograph-
multimedia content has to be transformed in the same ically distributed on a wide area, therefore the propagation
way. delay can be long.
Due to the passages involved for allocating an application,
As the reader can notice, all of these operations need to the corresponding necessary processing, the network delays,
be “highly responsive”, otherwise the presence of latencies and the ratio between the number of applications and the
can provoke undesired delays that the user can experience, available resources, allocation time can be long (typically, a
so that an acceptable QoS cannot be provided. To this aim, few seconds). Moreover, there is no guarantee for an upper
the software infrastructure proposed in this paper, which is bound of allocation delay.
detailed in the following Section, has to take into account For employing a Globus infrastructure to run responsive
not only the proper management of distribution of content applications, e.g. those accepting user inputs for showing a
but also the prompt execution of the transcoding code. transcoded multimedia content on the UI, we need to prop-
erly use resources. I.e. the resource has to be “immediately”
4. AN INFRASTRUCTURE ENABLING available to the user that asks for a given content. For
this purpose an estimated amount of resources should be re-
CONTENT DISTRIBUTION IN A GRID
served and allocated before user requests. Estimation can be
achieved by considering the statistic on provided throughput
4.1 Responsive Applications on Globus and amount of requests per minute. As a result, the delays
Generally, the time necessary for an application to start due to reservation and allocation can be absorbed before the
running on Globus and then accepting inputs from users can application is actually needed in running. Of course, the
be longer than the time needed for the same application to amount of resources allocated beforehand should be low, to
start and accept inputs when running on the user’s personal avoid wasting them, and run-time adaptation of estimation
host. In the following, we analyse what are the main issues and then reservation and allocation is employed to match
that have to be tackled to make this time shorter, so as to the actual amount of requests.
provide Globus users with means to effectively run interact- In order to make it available to clients, a multimedia
ing and responsive applications. content is initially spread, in several formats, on different
Typically, an application needing to run on a host, within sites (SEs). I.e. in a preliminary phase multimedia con-
Globus, has to be sent to a resource allocation manager tents are transferred into available Grid hosts. Moreover, a
(GRAM) of a certain site (i.e. a group of CEs and SEs). given number of CEs are asked to reserve and allocate sev-
Then the allocation manager sends the application to the
59
4. user interface supporting services computing and storage elements
CoT
4.5: update
3.1: find content
TraM 4.4: send content
SE1
4.2, 4.6: state update
2: ask content 3.2: ask available Transcoders
4.1: send initiate command
CE1
TraS
GI 4.3: ask content
5: find free CEs
5.2: allocate CE
1: play request SE2
5.3: send Transcoder
CET
CE2
3.3, 5.1: look up distances
5.4: delay update
THub
Figure 2: Interactions between services supporting transcoding
eral instances of some Transcoder applications, each able to the initiation command to it, and transfer the necessary in-
perform a certain type of multimedia conversion. When a put data.
Transcoder begin executing, it contacts a repository, named To minimise latencies for sending commands and data, it
THub (for Transcoder Hub), to communicate its location is worth considering the location of both Transcoder s and
and to measure the communication delay between its loca- stored contents (in several compatible formats). For this,
tion and THub in the current scenario. This value is then several Grid services are set up to: find the location of idle
stored by THub. Transcoder s, find the location of compatible multimedia for-
The communication delay, called “distance”, is measured mats, select the pair that minimise latencies, and send the
as the number of seconds necessary to deliver 100Mb across initiation command to the Transcoder.
two end points, thus it takes into account both the available
4.2 A Content Distribution Architecture
bandwidth and the latency, i.e. the physical space that has
to be crossed. Measures between each two pairs of known The main components of the distributed architecture we
sites are performed as the first operation when a Transcoder employ for the purpose of efficiently distributing multime-
starts running and stored into THub. dia content are depicted in Figure 2, where their mutual
Of course, a caching policy is used for THub data so as to interactions are also sketched. They are:
avoid having to perform measures too frequently.
• CoT, the Content T racer
Moreover, each Transcoder query THub for the position
of other Transcoder s, so as to measure the communication
• TraM, the Transcoder M onitor
delay between each other. The latter measure is useful when
having to transfer a multimedia content previously produced • CET, the C omputing E lement T racer
by a Transcoder or stored on a SE local to the same Grid
node as the CE. Once this phase is over, i.e. THub has been • TraS, the Transcoder S elector.
informed about all the communication delays between all the
The task entrusted to CoT is to find a SE holding the ap-
running Transcoder s, then each Transcoder waits for one of
propriate format of the content requested by a user, and
two types of “commands”.
provide its location (cf. Figure 2, interactions 1, 2 and 3.1).
The first type of command is initiation. This provides,
For this purpose, CoT implements a repository exploiting
along with itself, the location of the original content to be
GRIS, the Grid Resource Information Service made avail-
transcoded and the parameters for the processing, thus mak-
able by Globus within the Monitoring and Discovery Service
ing the processing begin. Once the original content data
(MDS) [1]. Thanks to GRIS, the information managed by
have been transferred to the CE, Transcoder sends the trans-
CoT gets refreshed whenever new contents, and the associ-
formed content to the user, in the output format required,
ated formats, are added, removed, relocated, etc. (cf. Fig-
while processing chunk of original data, until reaching the
ure 2, (4.5)). In the current implementation, for the sake of
end of these data. Then Transcoder goes back to the wait-
simplicity, CoT runs on the same nodes hosting MDS.
ing state. The second type of command is termination. This
The TraM, or Transcoder M onitor, component traces the
allows Transcoder s to properly end execution and so free
available Transcoder instances and their types. Initially,
their hosts. Whether to terminate a Transcoder depends on
several Transcoder instances are started on all the available
the rate of requests that are currently arriving and on the
CEs, but, as transcoding requests are issued and served,
number of idle Transcoder s.
some of these may get overloaded to the point that further
As a result of the described resource provisioning, when a
requests would better be refused. A list of the CEs actually
user asks for content transcoding, the time needed to start
available for transcoding is maintained by TraM, on the ba-
working for the request, so as to provide the initial results,
sis of notifications from the CEs (cf. Figure 2, (4.2, 4.6)),
consists just of the time taken to select a Transcoder, send
and is returned on request (cf. Figure 2, (3.2)).
60
5. CE
GI TraS CoT TraM THub CET SE
ask content find content
ask available
Transcoders
look up distances
find free CEs
look up distances
send Transcoder
allocate CE
delay update
send initiate command
state update
ask content
send chunk
send content
update
state update
Figure 3: Sequence diagram for activating services supporting transcoding
The CET, or CE Tracer, component is intended to mon- up the “distance” between any applicable pair of hosts (3.3),
itor CEs from the point of view of availability and CPU by querying THub.
load/remaining capacity. Like CoT, also CET relies on the Note that not all CEs are appropriate for running the
GRIS information services, initially, to obtain information Transcoder for a given user request. For, the associated
concerning the worker nodes within each CE, in terms of transcoding computation might be excessive for the combi-
number and hardware profile (CPU and available RAM). nation of a given CE’s hardware profile and workload. To
Moreover, CET polls GRIS in order to know the job queue decide whether the CE is appropriate, we need to assess the
length on each CE; this activity is carried out periodically computational cost of a request. For this purpose, we de-
in the background, with respect to user queries, and the re- termine, as explained in Section 5, a function returning an
sulting information cached locally; thus most queries do not estimate of the time necessary to transcode video content in
incur in the penalty of being passed along to GRIS. a standard setting, in terms of the video’s parameters.
When it is determined (by querying TraM, interaction Thus, TraS will minimise, for i, j ranging over the appli-
(3.2)) that known CEs are overloaded, so that no more re- cable sets of SEi , CEj , the sum
quests should be directed to already running Transcoder s,
d(SEi , CEj ) + d(CEj , U I)
CET will be requested (interaction (5)) to provide the ad-
dresses of CEs whose hosts are idle or lightly loaded. Fur- and the selected SEi , CEj will be taken, respectively, as
ther on, CET will be told which of these CEs has been se- the storage host whence multimedia content will be loaded
lected for transcoding (5.2) and requested to allocate on it from and the CE where the transcoding application to be
a Transcoder application, for later use (5.3). employed will run. Figure 2, shows a situation where these
The critical task of choosing the most appropriate CE, and SE2 and CE1 have been selected.
among those known to CET, is entrusted to TraS, the Trans- Multimedia content transformation and delivery is initi-
coder S elector. It will do so by striving to keep network ated by TraS by dispatching a command to the selected CE
latencies to a minimum, so as to optimise the overall time (e.g. CE1 , cf. (4.1) in Figure 2).
elapsing between the request of multimedia content and its Transcoder will react by performing the following sequence
provision in adapted form. Latencies are assumed to be of actions:
proportional to the sum of the following “distances”:
1. it informs TraM that its state has changed (4.2), from
available to busy;
1. the “distance” d(SE, CE) between the SE where the
needed content is stored and the CE where the em- 2. it retrieves the requested multimedia content from SE2
ployed Transcoder runs; (4.3);
2. the “distance” d(CE, U I) between the noted CE and 3. it processes the content and passes the result directly
the involved user interface. to the requesting user’s terminal;
In order to estimate how these distances range over available 4. as an optimisation, in view of further requests, the
SEs and CEs, TraS queries CoT for SEs holding the desired transformed content can be cached to an available SE
content (3.1) and CeT for the CEs (5). Moreover, it looks (4.4)
61
6. 5. the availability of this new content is published by in-
Table 2: Transcoding time.
forming CoT (4.5);
content frames size MPEG4 MJPEG h263p rv10
chinese 1– 50 0.27 87 79 107 110
6. once it is done, Transcoder notifies TraM that its state
51–100 1.51 181 156 179 181
is now idle (4.6).
101–150 1.25 182 139 180 183
151–200 1.35 191 148 189 188
5. RESOURCE REQUIREMENT wr 1– 50 2.28 247 212 244 238
51–100 1.69 204 180 200 206
ESTIMATION 101–150 1.76 204 186 205 202
The user player’s capabilities affect the activities that are 151–200 1.55 193 170 193 194
cartoon 1– 60 1.76 240 240 230 250
performed by the infrastructure to serve the user request.
61–120 1.64 280 260 300 290
When multimedia transcoding is needed, an a priori reser-
121–180 3.32 380 340 370 380
vation of bandwidth and computational power in Grid hosts
181–240 4.10 470 400 450 450
is required. The number of hosts that will be reserved to dhl 1– 60 8.00 935 894 901 891
run the Transcoder application depends on the necessary 61– 120 6.77 853 738 835 842
processing. A single host suffices when the estimated time 121– 180 6.64 808 733 815 806
181– 240 8.95 956 905 953 923
needed to sequentially transcode the content results in an
output rate that is more than the rate ensuring that the
content can be played smoothly. If the output rate is lower,
then a parallel transcoding activity is organised. In this
hosts is the minimum natural number greater than the ratio
case, the initial multimedia content is fragmented and each
between transformation and processing time.
chunk is processed by a task on a dedicated host.
As for the bandwidth, the amount needed is computed
To perform such an estimation of the transcoding work-
in a similar way. Indeed, the requirement here is to ensure
load, we have processed several videos having different res-
a readily data transfer from a disk to the selected CE that
olutions, and reported the results in Tables 1 and 2. We
will perform transcoding, and from the CE to the user. This
observed that processing time is mainly related with the
bandwidth is determined by using the ratio between size (in
frame resolution and the size in bytes of the frames to be
bytes) of the content and its length (in seconds). However,
processed. I.e. for the same video, having e.g. a resolution of
this is an approximation (that will be improved in our future
320x240 pixels, the processing time is almost proportional
work) since the amount of bytes per frame are not constant
to the size (in bytes) of the JPEG frame that has to be
for the whole video.
transcoded.
6. CONCLUSIONS
Table 1: Sample videos.
This paper has described a software infrastructure to use a
content source resolution length (s) size (MB)
Grid as a content distribution network for multimedia data.
chinese AVI 320x191 152 20.3
The aim is to exploit the computational and storage power
wr AVI 320x240 14 1.0
of a Grid to provide the user with a content with the best
cartoon AVI 480x272 115 7.6
dhl AVI 640x480 43 17.7 quality-of-service parameters. Such parameters are related
not only to the prompt streaming of the multimedia content,
that ensures a smooth play at client side, but also to the
Table 2 reports, for several videos (whose characteristics ability of providing the data with the format that can be
are found in Table 1), the time in milliseconds needed to understood by the player. In fact, an on-the-fly transcoding
convert from AVI to MPEG, MJPEG, h263p and rv10 (see activity is organized when the infrastructure detects that
the 4 right-most columns, respectively) several chunks of the a content could not be properly decoded by the requesting
content, lasting 2 seconds each and having 50 or 60 frames, player.
as indicated in the column frames. Transcoding is performed An accurate analysis and evaluation of the proposed in-
from the set of frames (each stored as a JPEG file), whose frastructure is under way by means of a simulation environ-
overall size in megabytes is indicated in the size column. ment. We are using GridSim [7], a Java toolkit simulating
As explained in Section 4.2, selecting an adequate CE for a Grid system and offering support, in terms of classes, for
a given transcoding task presupposes the ability to estimate emulating CEs, SEs, Virtual Organisations, etc. The aim
the time it will take in the setting of interest. This estimate is to use the techniques presented in Section 5 to assess the
can be derived from experimental data sets like those shown response time of a Grid environment when the proposed soft-
in Tables 1 and 2. What we need is a function to estimate ware infrastructure is deployed and a large number of users
the time needed to transcode a multimedia content into a send requests to access multimedia contents.
specific format; it is the trend function calculated according Initial experiments have been performed for a Grid envi-
to the values stored in a database of observed times. The ronment having 64 CEs and a maximum latency value equal
resulting trend function takes as input the resolution and to 8 milliseconds between any two hosts, when 100 requests
frame size as parameters and returns the estimated time. are sent simultaneously for the same content that is initially
The estimation function is then used to calculate the num- stored on only one SE. The results have shown that in the
ber of hosts needed for a transcoding task; to this aim, we average the time necessary to allocate a Transcoder, using
compare the estimated transformation time and the length the strategy implemented by TraS, is about one third that
in seconds of the processed video. When transformation required with a naive strategy, while the average stream-
time is greater than processing time, we must use more than ing time is about one fifth. More extensive experiments are
one host for the transformation and the number of needed under way.
62
7. 7. ACKNOWLEDGMENTS [5] M. J. Freedman, E. Freudenthal, and D. Mazi`res.
e
Democratizing Content Publication with Coral. In
This work has been supported by the QUASAR PRIN
Proc. of 1st USENIX/ACM Symposium on Networked
project funded by MIUR, the Italian Ministry of University
Systems Design and Implementation (NSDI’04), San
and Research.
Francisco, California, March 2004.
It has also been supported by the TriGrid VL project, on
[6] F. Gagliardi, B. Jones, M. Reale, and S. Burke.
which more information is available at http://www.trigrid.it,
European DataGrid Project: Experiences of Deploying
funded by Regione Sicilia.
a Large Scale Testbed for E-science Applications.
It makes use of results produced by the PI2S2 Project
Lecture Notes in Computer Science, 2459, 2002.
managed by the Consorzio COMETA, a project co-funded
[7] Grid Computing and Distributed Systems (GRIDS)
by MIUR within the Piano Operativo Nazionale “Ricerca
Laboratory. GridSim: A Grid Simulation Toolkit for
Scientifica, Sviluppo Tecnologico, Alta Formazione” (PON
Resource Modelling and Application Scheduling for
2000-2006). More information is available at the web sites
Parallel and Distributed Computing, 2005.
http://www.pi2s2.it and http://www.consorzio-cometa.it.
http://www.gridbus.org/gridsim/.
[8] M. Hofmann and L. R. Beaumont. Content
8. REFERENCES
Networking. Morgan Kaufmann, 2005.
[1] K. Czajkowski, S. Fitzgerald, I. Foster, and
[9] G. Pierre and M. van Steen. Globule: a Collaborative
C. Kesselman. Grid information services for
Content Delivery Network. IEEE Communications
distributed resource sharing. In Proceedings of the
Magazine, 44(8):127–133, August 2006.
10th IEEE Symposium On High Performance
[10] The Globus Alliance. Home page and publications,
Distributed Computing, 2001.
2007. http://www.globus.org.
[2] EGEE Project. Enabling Grids for E-sciencE, 2007.
[11] L. Wang, K. Park, R. Pang, V. Pai, and L. Peterson.
http://public.eu-egee.org.
Reliability and Security in the CoDeeN Content
[3] I. Foster and C. Kesselman, editors. The Grid (2nd
Distribution Network. In Proc. of USENIX 1994
Edition): Blueprint for a New Computing
Annual Technical Conference, Boston, MA, June 2004.
Infrastructure. Morgan Kaufmann, 2004.
[12] WWW. http://www.akamai.com, 2007.
[4] I. Foster, C. Kesselman, J. Nick, and S. Tuecke. The
[13] WWW. http://www.coralcdn.org/, 2007.
Physiology of the Grid: An Open Grid Services
[14] WWW. http://www.mirror-image.com, 2007.
Architecture for Distributed Systems Integration. In
[15] WWW. http://www.web-caching.com/cdns.html,
Open Grid Service Infrastructure WG, Global Grid
2007.
Forum, June 22 2002.
63