Top Banner
1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN 0193-9741 By: Douglas A. Schultz 1/29/07 For: Professor Lin
23

1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

Dec 25, 2015

Download

Documents

Aubrey Reed
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

1

Proxy-based Adaptationfor Mobile Computing

ECET 581 Spring 07

Authors: Markus EndlerHana Rubinsztejn

Ricardo C. A. da RochaVagner Sacramento

ISSN 0193-9741

By: Douglas A. Schultz 1/29/07

For: Professor Lin

Page 2: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

2

Introduction

• Proxies have 3 main problem solving uses:– Throughput and latency issues. (wired to

wireless)– Host mobility.– Limited resources of MH (mobile hosts).

• This report reviews:– General proxy based approaches.– Implementation techniques.– Successful well know examples.

Page 3: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

3

Introduction

• Proxy is an intermediary placed in the path between a server and it’s clients.

• Proxies act as:– Protocol translators.– Caches and content adapters.– Usually reside at the border between wired and

wireless networks. – A Wireless Access Point (AP) is a common

example.

Page 4: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

4

Introduction

• Proxies perform complex tasks: for mobile networks:– Handover, Session or consistency measurement– Personalization, authentication, check pointing– Service/resource discovery.

Page 5: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

5

Introduction

• Advantages of proxies:– Proxy handles the wireless-dependent

translation and trans-coding, for the server. – Processing for protocol and content is distributed

to other nodes, saving serving processing.– Proxy placement at the wireless interface gives

faster response to wireless conditions, link quality, and disconnection detection.

– Transformations for any communications layer can be implemented.

Page 6: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

6

Introduction

• Proxy based middleware solves problems in:– Web access, multimedia streaming, and

database access.

• Proxy terminology:– Gateway, intermediary, or agent.– “an entity that intercepts communication or

performs some service on behalf of some mobile client.”

Page 7: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

7

Classifying Proxy-Based Approaches

• Different characteristics of the bridge between wired and wireless networks as in:– Throughput, latency, reliability and probability of

disconnection.

• Mobile Host characteristics like:– Display size, user input/output mechanism, processing

power, memory size, and Power limitations.

• Application type requirements:– Response time, network latency, disconnection

transparency, and cache coherence.

Page 8: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

8

Classifying Proxy-Based Approaches

• Two main classifications of proxies:– General architecture characteristics.– Tasks or functionalities assigned.

• Architecture-based Classification– Level, Placement, Single-/Multi-protocol, and

Communication and Extensibility.

Page 9: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

9

Architecture-based Classification

• Level– Communication-level

• Handles issues of communications protocols and abstractions.

• Goal is to provide device mobility and make wireless link transparent to the higher software layers.

• Typical adaptations include:– Wired to wireless protocol translation, buffering, and

handover management.

Page 10: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

10

Architecture-based Classification

• Middleware-level:– Non-application or Non-protocol specific tasks.– As in content adaptation, management of cached

data, service or resource discovery, security, and authentication.

• Application-level:– Application specific tasks.– As in caching for Web based applications (fast

response time) vs. database where consistency is more important.

Page 11: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

11

Architecture-based Classification

• Placement:– Server-side :

• Only at stationary network node.

– Client-side:• Only at mobile node.

– Interceptor model:• Proxy pair, one mobile client one stationary server.

– Migratory proxy or agent:• Moves between mobile and stationary nodes.

Page 12: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

12

Architecture-based Classification

• Placement continued.– Server-side proxies work with any device.– Client-side proxies require more resources

usually thick-clients.

• Architecture:– Centralized:

• All functionality is bundled into the Proxy.

– De-centralized:• Several proxies perform separate functions.

Page 13: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

13

Architecture-based Classification• Single and multi-protocol:

– Single protocol commonly used for TCP or HTTP.– Multi-protocol like UDP, SMTP, SMS, and WSP and

dynamically switches between protocols.• Communication:

– Synchronous mode:• Proxy does an adaptation task in response to an explicit client

request.– Asynchronous mode:

• The proxy does long-term work based on user preferences, then sends asynchronous notifications to the client.

• This is common for the role of user agents in searching, collecting and aggregating information for the user.

• WAP is one example that supports both.

Page 14: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

14

Architecture-based Classification

• Communication continued:– Communication among proxies is also

supported.– For session management, check pointing, and

multicasting.– Direct mode:

• Proxy knows which other proxy to interact with.

– Indirect mode:• Server or another proxy acts as a router for message

exchange.

Page 15: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

15

Architecture-based Classification

• Extensibility/Programmability:– Extensibility, the possibility to adapt and

customize its functions, is an important architecture characteristic.

– A generic framework is provided to tailor to the application.

– Another group of proxy infra-structures further support the dynamic loading of filters or new modules.

Page 16: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

16

Common Proxy Tasks

• Protocol Translation and Optimization:– Proxies deal with communication specific

issues like:• Flow control, error detection, recovery, and

medium multiplexing.

– Connection oriented protocols like TCP need proxies for handling disconnections, burst packet losses or varying round trip delay times.

Page 17: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

17

Common Proxy Tasks

• Content Adaptation:– Aims at transforming the payload for optimized transmission and

presentation at the mobile device

• Distillation and Refinement:– General term for several forms of data compression.

• Summarization:– Lossy compression where specific parts of the original data are

selected for presentation, aiming at the least possible loss of information.

• Intelligent Filtering:– Mechanism to transform, drop or delay data delivery by applying

filters on a data path, according to network or target device conditions.

Page 18: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

18

Common Proxy Tasks

• Trans-coding:– General process of transforming the format and

representation of content.

• Caching and Consistency Management:• Main goals of caching:

– Are to reduce traffic to and from the source server.– Restrict the user-perceived latency, conserve wireless

bandwidth and the mobile device’s battery power. – Handle client disconnections.

Page 19: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

19

Common Proxy Tasks

• Session Management:– Maintaining an application’s or service’s session

state in spite of disconnections and mobility of the user.

• Handover Management:– Occurs when a user previously connected to

some network reconnects to the same or to a new network.

Page 20: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

20

Common Proxy Tasks

• Discovery and Auto-configuration:– Accessing a service through a proxy, eliminates the

choice from the client.– Jini, a distributed system, uses proxy-based approaches

for service discovery.– Dynamic service reconfiguration, like WebPADS.

• Security and Privacy:– Public-key security model.– One protocol for secure device-to-proxy communication.– Another protocol for secure proxy-to-proxy

communication.

Page 21: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

21

Common Proxy Tasks

• Check-pointing and Recovery:– Recovery is typically based on check-pointing.

• Check-pointing is snapshots of distributed data.

• Other tasks:– Personalization– Content Creation– Name Resolution

Page 22: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

22

Proxy Frameworks

• Adapter Development:– Module responsible for implementing a trans-coding

function of a message or its content.

• Adapter Selection:– Programmable interfaces or via rule-based configuration.

• Context Monitoring:– The collection of the network state.

• Adapter Loading and Execution:– Configurable or dynamic proxies.

Page 23: 1 Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 Authors: Markus Endler Hana Rubinsztejn Ricardo C. A. da Rocha Vagner Sacramento ISSN.

23

Conclusion

• Challenges and Future:– Scalability of server-side proxies as the number of clients

increase.• Combine the end-to-end and proxy approaches.

– Open Pluggable Edge Services:• Develop infra-structures that collectively perform adaptations for

a huge variety of devices and protocols.

– Dynamic proxy configuration:• The proxy’s functionality is shaped according to dynamic demand

by the clients, server load, or the current mobile network conditions.