Mobile Aware Server Architecture: A distributed proxy architecture for ...

15 downloads 10786 Views 166KB Size Report
Content and its transmission to client and network ... challenges in the distribution and presentation of ..... MARCH framework through an API, or transpar-.
Mobile Aware Server Architecture: A distributed proxy architecture for content adaptation 1;4

Sébastien Ardon

2

3

, Per Gunningberg ,

2

1;5

Yuri Ismailov , Björn Landfeldt , Marius Portmann

1

1

,

Aruna Seneviratne , Binh Thai

1 School of Electrical Engineering and

as to what adaptations to perform and how to per-

Telecommunications

form them are made under the content server ad-

University of New South Wales

ministration authority. The framework is particu-

Sydney NSW 2051 Australia

lary designed for the current client/server model, in

{aruna.seneviratne, ardon,

particular, it does not cater for interpersonal com-

marius.portmann}@unsw.edu.au

munication applications.

2 Ericsson research Networks and Systems

1 Introduction

Torshamnsgatan 23 - 164 80 Kista Sweden {bjorn.landfeldt, yuri.ismailov}@era.ericsson.se

Over the past years, the number of hosts connected

3 Uppsala University

to the Internet has grown tremendously. With the

Departement of Computer Systems

introduction of the 3rd generation and next mobile

Box 325, S-751 05 Uppsala, Sweden

systems, this number is expected to grow further.

[email protected]

At the same time, terminals connected to the In-

4 LIP6 laboratory

ternet have and will have very dierent capabilities in terms of media presentation, processing power

Pierre and Marie Curie University

and power autonomy. With the constant demand

4, place Jussieu 75252 Paris Cedex 05, France

for new networked applications and the desire to

5 Computer and Networks Laboratory TIK Swiss

use these applications with any type of terminals

Federal Institute of Technology ETH CH-8092

through any type of access network, we face new

Zürich, Switzerland

challenges in the distribution and presentation of content to the users. Furthermore, we can expect this heterogeneity to increase as new terminal types and new access network types emerge.

Abstract

We believe that maintaining several copies of the content at the source to cater for each applica-

We present a novel proxy architecture which pro-

tion/terminal/network is not practical and scal-

vides a middleware solution for adapting Internet

able.

Content and its transmission to client and network

The March framework (early ideas presented

characteristic variations. We present details of the

in [10]) is a novel Content Adaptation Architec-

Mobile Aware Server Architecture (MARCH), a

ture which uses application-level entities that we

framework for automatic session customization and

call

proxy deployment which operates on top of the cur-

sen nodes accross the network. These proxies are

rent Internet.

Our framework diers from earlier

used to perform content transformation(s), or some

work in that it is server-centric, i.e. the decisions

protocol-specic performance enhancement func-

1

proxies, deployed dynamically on carefully cho-

tions.

extend the active network model in that the de-

The remaining of this paper is organised as fol-

cision process for what adaptation mechanisms to

low: section 2 review current related proposals, sec-

deploy is still embedded in the network in-between

tion 3 introduces the March framework and nally

the client and the server, but they operate at a

section 4 present our conclusions and future work.

higher layer. We believe that the genericity of this approach makes the decision-making process too complex and therefore inecient.

2 Related work

Work in progress within the Internet Engineer-

Problems associated with the heterogeneity of the

ing Task Forces (IETF) aims at dening an open

Internet have lead to various proposals in the ar-

platform to execute services at arbitrary intermedi-

eas of Active Networks, Active Services and Appli-

aries in-between the client and the server [1]. The

cation Layer Active Networking. These proposals

Internet Content Adaptation Protocol (ICAP) [6]

address the heterogeneity problem by adapting the

is considered as one possible signalling protocols to

content and transmission characteristics to suit the

convey content adaptation, but is limited to HTTP

session characteristics.

trac only.

In this section, we review

the existing approaches in this area. The problem can be adressed by using various technologies operating at dierent layers in the networking procol stack.

In this section, we review

previous work, which we have ordered depending on the layer at which the solution operates.

Content Adaptation with static Proxy services

Content Adaptation with Active Network or Active Services

Proxy services are application-layer software enti-

Content adaptation schemes have been proposed

the clients.

that operate at the network level and are often re-

commercial products explore the use of proxies to

ties that request or process content on behalf of Some proposals such as [7] and even

ferred to as "active network" based proposals. An

adapt multimedia content to client and network

Active network, as originally introduced in [15],

variations.

is dened as a network in which the "routers or

tectures, content adaptation is realized by proxies,

switches of the network perform customized com-

software components placed at strategically chosen

putation on the message owing through them".

points around the network.

This concept can be applied to both, the extreme

work performance discontinuities). Client applica-

capsule model where the packet headers carry the

tion requests are then directed to the proxy either

code to be executed on the routers or switches, or to

explicitely (e.g.

the programmable switch model in which switches

proxy settings in the client application) or trans-

can be extended to perform computations on pack-

parently as described in [5]. This static operation

In these xed or 'static' proxy archi-

(e.g.

at or near net-

the user manually congures the

ets, but the code is not necessarily carried in each

has several drawbacks.

packet itself. Some proposals such as [16, 11] use

limited: as new terminals, access networks and ap-

this approach to perform content adaptation func-

plications emerge, the xed architecture makes the

tionalities However the scalability and feasability of

deployment of new proxies services dicult.

these schemes are still being discussed.

ondly, the reliability of the system is diminished:

Firstly, the scalability is

Sec-

Active services [3] or Application-Layer active

a xed proxy provides a single point of failure for

networks [8], propose to deploy such high-level ser-

all clients/applications using it. Thirdly, the clients

vices at the application layer.

This allows to re-

have to be manually congured. This can lead to

tain the existing robust and simple internet rout-

conguration errors, especially if the users are mo-

ing subsystem and network layer untouched, there-

bile and changing access network. Finally, because

fore facilitating incremental deployment over the

of its static nature, load-balancing (cpu, network)

current Internet architecture [3]. These proposals

between several proxies is dicult to achieve.

2

3 The March framework

Terminal

Mobile Aware Server (MAS)

3.1

Legacy content Server

Overview

The Mobile Aware Server Architecture is a dis-

111 000 0 1 111 000 000 111 0 1 000 111 0 1 000 111 0 1 0000 1111 000 111 0 1 0000 1111 0 1 0 1 0 1 0 1 0 1

tributed system, which adapts content and its delivery to client and network characteristics.

Access Network

Internet 0 1 0 01 1 0 1 0000 1111 0 1 0 1 000 111 0 1 0 1 000 111 0 1 0 1 000 111 0 1 0 01 1 0 1 0 1 0 000 111 01 1 0 1 000 111 0 1 0 000 111 01 1 0 1 000 111

The

framework operates in three main dimensions:



Protocol enhancements are mechanisms to en-

Proxy repository

hance the performance of a protocol over a

01 1 0 1111 0000 01 1 0 1 0 1 1111 0000 00 1 0 1 0000 1111 0 1 0 01 1 0 1 000 111 0 1 0 000 111 01 1 0 1 000 111 0 1 0 000 111 01 1 0 1 000 111

Compute Server

Compute Server

particular network path. A typical example is the berkeley snoop scheme [4] which improves

Figure 1: the March framework architecture

TCP performance over lossy links such as wireless links. Recent work at the IETF in the Performance Implications of Link Characteristics

bandwidth between the client and the server, the

(pilc) working group summarizes the advances

characteristics (CPU/Memory/Screen Size) of the

in this area. A more complete survey of avail-

client, and nally the user's preferences.

able techniques can be found in [2].



One of the key design goals of MARCH is to al-

Proxies

can also implement tailored communications

low service composition.

protocols to cater for particular link character-

quires proxy functions to be concatenated to form

istics. Examples of such systems is presented

a global, multifunctional service.

in [14].

such a service is a "content distillation and encryp-

An example of

tion" service. The architecture needs to maintain

We refer to content distillation as a mechanism

the integrity of the system if multiple proxy func-

that reduces the bandwith requirement of data

tions are carried out simultaneously. For example,

objects by applying transformations that uti-

in the case of the content distillation and encryp-

lize the knowledge of the content semantics.

tion service, the content distillation needs to take

An example of content distillation is bitrate re-

place before the data is encrypted. Once the data

duction in streaming video by dropping entire

is encrypted, functions requiring knowledge of the

frames or reducing the resolution. Distillation

data semantics cannot be used as these semantics

is often used in situations involving low bitrate

are hidden. In the March framework, the decision

networks such as GSM [7, 8].



Service composition re-

as to which proxy modules to use and in which order to use them is made centrally. This allows the

Media transcoding is the transformation of one

framework to maintain the integrity of the system.

media type to another, e.g. HTML to WML. This type of transformation is often used when

3.2

the terminal characteristics do not allow to present the content in its original format.

The architecture of the March framework is illustrated in gure 1. It is composed of four main com-

The type of adaptation to be performed for a given

1 session depends on the

situation

Architectural view

ponents distributed accross the network.

of the session.

In this

section, we describe these components and their

We dene a situation as the set of conditions under

functional interrelationship.

which a session operates. These conditions include but are not limited to: the type of access network the client is using, the available and/or bottleneck

The Compute Servers

1 The notion of session is dependent on the application used. For example, in the case of an audio-on-demand application, the session is dened by the duration of the transmission and presentation of the audio le. In the case of a web browsing application, the session could be dened by the duration a user is using a particular website services

Content adaptation for a given situation is realized by proxy-modules that operate within an execution context called Compute Server. Depending on the type of applications, duration of sessions and preferences of the operators, proxies can be dynam-

3

ically inserted into the Compute Servers' execu-

preferences. The MAS adds its specic knowledge

tion environment on a per-session basis. It is also

about the media and the server architecture (e.g.

possible for Compute Servers to have some xed

information about a distributed server replicated

components or even combining xed and dynamic

in dierent countries) and makes the decision. The

components. The Compute Servers can be located

properties of this decision process are currently un-

anywhere in the network, at the client and/or at

der investigation.

the server. There are several possible locations for

A way of realizing this decision process is to use

Compute Servers such as:



sion.

The rationale is that the content provider

Network boundaries / performance discontinu-

only can decide which particular situations it is

ities

willing to cater for and take specic actions for



Content Provider premises



Within the access network ISP



a static conguration determined by human deci-

these.

The server administrator can be provided

with an graphical user interface, through which s/he can pre-determine actions to be taken given the input parameters.

Each particular situation

At a third-party service provider specialised in

that the Content Provider is willing to cater for

Compute Server services.

would be described by using this gui, and stored in a database at the MAS. This way the feasibility of

The Mobile Aware Server (MAS)

implementing and successfully administrating the

Located under the same administrative authority

the human input of what type of adaptation to per-

as the content server, the MAS performs an in-

form and how to compose the services makes our

formed decision of which adaptation to perform for

framework unique, and greatly increase its feasabil-

a given situation, and where this adaptation should

ity. Although as presented here it can arguably lim-

occur (at which Compute Servers).

The type of

its the granularity of the service the server can pro-

content adaptation to be performed include which

vide to dierent clients, we are currently investigat-

proxy modules to use and in what order they should

ing methods to agregate and generalise the proxy

be executed. Another important question is where

congurations dened by the MAS operator.

they should be placed.

service can be greatly improved. We believe that

The answer to this ques-

tion depends on the type of content adaptation be-

The MARCH client Entity (MCE)

ing performed: for protocol enhancement functions, most proxy functionalities require low-level operat-

The MCE is located on the client device. It is re-

ing system support [2], this makes them unlikely

sponsable for capturing the terminal capabilities,

to be downloaded on a per-session basis. For con-

the access network characteristics and the user pref-

tent adaptation proxies, the metrics on which Com-

erences. Additionally, it plays an important role in

pute Server to choose for a particular session de-

stream handling as it allows the application trac

pends on the network condition e.g. bandwidth, de-

to be handled by the correct proxy. In some cases,

lay between dierent Compute Servers, the content

it may be required that the client also runs a light

server and the client.

Compute Server to house proxy functionalities (e.g.

The choise of which Com-

pute Servers to use is not easily resolved and the

decryption or decompression)

issue has been partially addressed in proposals such as [9]. The actual details of Compute Server dis-

The proxy repositories

covery mechanisms and choosing Compute Servers

These store the proxy modules and can be located

are left for future research. The MAS contains the logic necessary to make

at the content server, the access network or at any

an informed decision about what actions should be

other administrative domain. Existing web content

taken to tailor the media content to the situation.

distribution procedures can be used to reduce the

The input to this process is the information that

access latency to the proxy modules.

the client provides at the session request: Termi-

The location of the Compute Servers and proxy

nal capabilities, network characteristics and user

repositories are exible. MARCH only provides the

4

Content Server

Compute Server

Application

sen proxy-modules (3). The Compute Server then

proxies instances

fetches the modules (4,5). Once they are instanci-

9

4 8

Proxy Repository

ated and congured (6), the MARCH server returns

data control 5

to the MARCH client the rst-hop proxy informa-

1

tion (7). Finally, the MARCH client forwards this

6

information to the application (8).

3 2

The applica-

tions can then receive/request the data from the content servers, transparently through the proxy-

7 March server (MAS)

March client

modules (9). The terminal capabilities transmitted in the rst

Figure 2: Session establishment operation

request (2) can either be entered manually on each terminal by the user, or can be automatically deframework to interconnect the components.

This

tected by the server based on the application re-

means that dierent parties can independently pro-

quest as described in [12]. The access network char-

vide performance enhancing proxies.

For exam-

acteristics can either be detected using various op-

ple, an access Provider may provide some computa-

erating system specic methods in the client host,

tional power as a service and some proxies to adapt

or using network monitoring techniques.

content or protocols to suit its own access network technology, a content provider may provide some

3.4

proxies to cater for proprietary content types, etc.

Discussion

Using MARCH has a number of advantages for

3.3

both end-users and content providers.

Operation

Compared

to existing solutions, MARCH enables support for

The sequence of events for the establishement of

a much more diverse set of device, network and

a session within the MARCH framework is shown

media combinations and the granularity of the ser-

in gure 2.

More precisely, this gure shows the

vice quality improvement is considerably higher.

case of a situation for which two proxies need to be

For the content providers, the main advantage is

instanciated within a single Compute Server.

that MARCH broadens the base of devices capable the

of using the content without any eort from the

MARCH framework through an API, or transpar-

providers. In section 2, we listed some of the prob-

ently if the media semantics and/or session pro-

lems with using static proxy solutions.

tocol is known to the MARCH client.

discuss how MARCH will alleviate these problems

Applications

can

either

is not specied at this time.

explicitely

use

The API

Here, we

and provide a better service for the end-user.

When an applica-

tion requests a service from the network (1), the

First the useability of the system is far superior

MARCH client rst looks up the corresponding

to that of the xed proxy architecture. Since there

content server, and determines if it is equipped with

is no intermediate proxy with a xed location in

a MAS. If this is the case, the MARCH client re-

MARCH and since the application will know the

quests a session (2), transmitting the user's pref-

through user input, there is no need for the users to

erences, terminal and network characteristics along

obtain address information from a network admin-

with the request.

istrator prior to starting a session.

The MARCH Server, upon re-

Furthermore,

ception of this request, performs a simple lookup

users do not have to manually congure settings

to decide if it can handle the request. Depending

for the proxies, nor do they have to congure any

on the situation, one or more proxy-modules may

applications with the proxy address. Finally, when

be required to be instanciated in one or more Com-

the user changes access network, there is no need

pute Servers, or the request can be directed through

to recongure any parameters to reect the proxy

appropriate previously instanciated proxy(ies). In

location.

the rst case, as shown in gure 2, a signaling

MARCH uses general-purpose proxy modules

phase takes place between the MAS and the elected

that are concatenated to build up the desired ser-

Compute Server.

vice.

Firstly, the MARCH Server re-

quests the Compute Server to instanciate the cho-

Thus, it is very easy to add new function-

ality by simply adding new modules.

5

Such an

open system allows third party vendors to develop

a server do not have any information about

these modules and distribute them when, for ex-

wether or not the server is distributed over

ample, new media types or better algorithms are

several dierent physical locations. Since the

introduced. Device manufacturers can also develop

server has this knowledge, it can much better

proxy modules to perform specic tasks optimised

optimise network paths and therefore critical

for new devices that are introduced to the market.

parameters such as response times.

The problem of end-to-end security and proxies can



be solved in MARCH by the MAS being able to

type of transformation is being performed, and

client.

where this transformation occurs. For exam-

The MAS is able to make an informed decision

ple a banking application could use encryption

about ordering of proxy modules to preserve sys-

along public network paths, perform decryp-

Since

tion and content transformation in a secure

MARCH allows concatenation of proxies, it is pos-

enclave, e.g. one of the bank branches, and re-

sible for end users to enjoy multiple functions si-

encrypting the data before leaving the secure

multaneously. For example, it is possible to use a

enclave.

lter that strips advertisements of web pages, a l-

can be found in [13].

them from colour to greyscale while at the same time using end-to-end encryption.

4 Conclusion and future work

Advantage of the server-centric approach

In this paper we have introduced MARCH, a frame-

We argue that the server centric control approach of

work for adapting media content to suit the opera-

MARCH, one of its distinctive features, has many

tional environment for heterogeneous devices and

advantages over other schemes.

networks.

over traditional static proxy server solutions, for

ing content transformation in the Internet, it

both content providers and end-users. We believe

is obvious that a server-oriented decision is su-

that the framework can play an important role in

perior since the transformation is done under

enhancing the quality of Internet services experi-

the control of an authorised distributor for this

enced by mobile users. Some functionalities of the framework remain for future research.

When dealing with proprietary media data for-

Servers, MAS, clients, and proxy repository}, the

tity able to understand the semantics of the

decision algorithm for how to choose the most suit-

data being transmitted, it is therefore the most

able Compute Server and proxy modules remain

suitable node to control content transforma-

unsolved at this time.

tion

References

The MAS has access to all information about the media before conguring the session. An example of addtional information not available

[1] Opes

-

open

pluggable

http://www.ietf-opes.org/.

to clients is sub-encoding. It is impossible for a client to determine the actual coded bit rate

[2] Performance

of an mp3 le, only by looking at the mime

enhancing

edge

services.

proxies.

http://search.ietf.org/internet-drafts/draftietf-pilc-pep-05. txt.

type or le extension. The server however, has got easy access to such information.



The Compute Server discovery

mechanisms, the security model between {Compute

mats, the content server might be the only en-



MARCH exhibits several advantages

If we consider the copyright issues surround-

content [12].



A more comprehensive study of the

security matters related to proxy architectures

ter that reduces the size of images and transcodes



for sensi-

tive content, the server is in control of what

place the proxy functionality at the server and the

tem integrity as mentioned in section 3.1.

The security model is improved:

The server has got knowledge of its own ar-

[3] E. Amir, Steven McCanne, and Randy Katz.

chitecture/state. Clients that want to contact

An active service framework and its applica-

6

tion to real-time multimedia transcoding.

proc. of SIGCOMM 98,

PNUT: Protocols congured for Network and UserTransmission. PhD the-

In

[14] Ranil De Silva.

1998.

sis, School of Electrical Engineering, Univer[4] Hari Balakrishnan, Srinivasan Seshan, Elan

sity of Technology, Sydney, 1998.

Amir, and Randy H. Katz. Improving TCP/IP

Proc. of 1st ACM Conference on Mobile Computing and Networking, Berkeley, California, Novem-

[15] David L. Tennenhouse and David J. Wether-

performance over wireless networks. In

all. Towards an active networks architecture.

proc. of Multimedia Computing and Networking, San Jose CA, 1996. Network Systems In

ber 1995.

group, MIT. [5] A. Cohen, S. Rangarajan, and N. Singh. Supporting

transparent

caching with

[16] Mark Yarvis, An-I A. Wang, Alexey Rudenko,

standard

Proc. of the 4th International Web Caching Workshop, March 1999.

Peter Reiher, and Gerald J. Popek.

proxy caches. In

ductor:

networks. Technical Report CSD-TR-990042, UCLA, August 1999.

[6] The ICAP forum. Internet content adaptation protocol.

http://www.i-cap.org/.

[7] A. Fox, S. D. Gribble, Yatin Chawathe, and E. A. Brewer.

Adapting to network and

client variation using active proxies: Lessons

IEEE Personal Communications, August 1998. and perspectives.

[8] Michael Fry and Atanu Ghosh. level active networking.

Application

Computer Networks,

7:655667, 1999. [9] Atanu Ghosh, Michael Fry, and Jon Crowcroft. An architecture for application layer routing. In

IWAN 2000.

[10] Per Gunninberg and Aruna Seneviratne. Services and architectures in the next generation internet using dynamic proxies. In

FTF99, Be-

jing, China, December 1999. [11] R. Keller, S. Choi, M. Dasen, D. Decasper, G. Fankhauser, and B. Plattner.

An active

router architecture for multicast video distribution. In

IEEE Infocom 2000,

March 2000.

[12] Wei-Ying Ma, Ilja Bedner, Grace Chang, Allan Kuchinsky, and HongJiang Zhang.

Con-

Distributed adaptation for complex

A frame-

work for adaptive content delivery in heterogeneous network environments. Hewlett-Packard Laboratories, 2000. [13] M. Portmann and A. Seneviratne. The problem of end-to-end security for proxy-based sys-

Proc. of Protocols for Multimedia Systems, PROMS2000, Cracow, Poland, oct 2000. tems. In

7

Suggest Documents