Proxy-based Adaptation for Mobile Computing

illnurturedtownvilleMobile - Wireless

Nov 21, 2013 (3 years and 4 months ago)

43 views

Proxy
-
based Adaptation for Mobile Computing


Written by:

Markus Endler, Hana Rubinsztejn, Ricardo C. A. da Rocha, and Vagner Sacramento


May 2005

Presented by:


Elhadi Adam Elomda

ECET 581, IPFW



Director: professor Paul I
-
Hai Lin


Order of Presentation Coverage



Introduction


Proxy Classifications


Characteristics of the Proxy
-
Based Architecture


Common Proxy Functions


Proxy Frameworks


Conclusion


1) Introduction

How does the server find the
new VLR?



The Answer is via a proxy

Server

VLR

VLR

A proxy
(also know by
gateway
,
intermediary
or
agent)

is a computer
placed in the path between a server
and its clients.

In most cases, proxies act as protocol
translators, caches, and content adapters for
clients and are placed on, or close to, the
border between the wired and the wireless
networks


VLR: Visitor Locator Register

Mobile Service Proxy



Proxy could move with the client if necessary


Proxy informs servers of location changes


Server

Proxy/client

Proxy/client

Proxy/client









Why Proxies are used in Mobile
Computing and Wireless Communication ?

Proxies are mainly designed to
:


1.
Bridge the differences between the wired and wireless networks such as
throughput, latency, reliability, probability of disconnection, etc.


2.
Support the mobile host: Display size, user input/output, processing
capacity, size of RAM and persistent memory, limited energy supply, etc.


3.
Perform application
-
specific adaptations and

requirements such as fast
response time, low network latency, reliable communication, mobility or
disconnection transparency, cache coherence, etc.



implement specific services in
ad hoc
mobile networks



Besides those canonical functions,

proxies can perform:



Handover, session or consistency, management, Personalization,
Authentication, Check
-
Pointing, and service/resource discovery, saving
network bandwidth, reducing access latency, and coping with network
and device heterogeneity
.

_______________________________________________________


What are the major advantages of a Proxy?


Allows legacy services to be directly used for mobile access


Avoids an overload at the servers


Detects Mobile Host (MH) disconnections and selection of
the required adaptation


Implements, adapts, and customizes the transformations


2)
Proxies Classifications


There are two types of proxy classifications
:


I.
Architecture
-
based Classification,
which emphasizes the general
characteristics of the proxy
-
based (software) architecture

II.
Tasks
-
based classification,
which focuses on functionality assigned to
the proxies



Others classifications based on:

(1) system architecture

distinguishes
between centralized and distributed architectures, options for proxy
placement, and proxy configurability/programmability;
(2) functionality
(3) interactions

(synchronous or asynchronous communication).





i.

Architecture
-
based Classification

proxy
-
based, software,

architectures can be classified according to:


Levels, three generic:

(a)

Communication
-
level to handle all flavors of (TCP) and Wireless
CORBA
(b)

Middleware
-
level to handle security, recovery, or any general tasks neither tailored to
specific type of application.
(c)

Application
-
level to handle
specific type of application such as Web
-
browsing

data handling



Placement
:
Client
-
side proxy, server
-
side proxy, and a proxy pair. Also, It can be centralized or
decentralized


Single
-
/Multi
-
protocol
:

(a)

A single protocol to bridge the wired
-
wireless gap such as TCP
or HTTP protocol
(b
) a multi
-
protocol to supports wired
-
wireless translation such as UDP, SMTP, SMS,
WSP protocols. Examples of the latter group are iMobileEE, TACC, and eRACE



Communication and Extensibility
:

Server and the client communication in
Synchronous mode or Asynchronous mode, see table 1 for illustration. Also communication among
proxies can be direct or indirect


Extensibility and Programmability
:

In extensibility, proxies can be easily tailored to
the specific needs of an application or middleware at deployment time. Programmability
supports the
dynamic loading of filters or new modules implementing specific functionality





ii.

Common Proxy Tasks

The most common proxy tasks are:


Protocol Translation and Optimization:

Focus on Transport layer and above


Protocols translation:

header Trans
-
coding, data alignment, encoding; and
Using (Wireless Application Protocol)

WAP Gateway to convert between
wire
-
line session, presentation, and application level protocols and the
corresponding WAP protocols stack.


Protocols optimization
, mostly HTTP and TCP, include: caching of data,
connection multiplexing, header and payload compression, adaptive TCP
flow control, and data volume reduction.



Most optimizations method

are
TCP Split
c
onnection Protocols
(e.g. MTCP,
I
-
TCP, M
-
TCP, SRP, etc.) and W
ireless
-
Profiled TCP, adapted
in the WAP 2.0
for wireless MAN and WAN , which uses the ratio of inter
-
packet for rate
control vs. packet loss and timeouts


Other optimization techniques

related to multimedia transmission and
presentation
















Content Adaptation:

To transform the payload for optimized transmission and
presentation. It is mostly determined by quality of the wireless link and the device’s
merits. Its protocols are:


Distillation
, highly data compression way, and refinement can be applied orthogonally
to each type of data (text, image, video, etc.). Active
-
Proxies focuses on them.


summarization

is partial data compression with possibility of loss information.
Example, text and video for mobile and wireless devices


intelligent filtering

is a mechanism to drop or delay data delivery by applying filters on
a data path according to network or target device conditions. Mobiware is a QoS
-
aware
middleware introduces a
ctive Media Filters

perform temporal and spatial scaling for
multi
-
resolution and
Adaptive FEC (Forward Error Correction) Filters to
protect content
against physical radio link impairments

trans
-
coding is a

commonly used for the conversion of video formats or f
or the
adjustment of HTML and graphics files. It depends on type of content and on an external
annotation describing specific requirements of the device and the adaptations to be
performed (Web content transcoding)



Common Proxy Tasks Continue


Caching and Consistency Management
: To reduce traffic to and from the source
server, restrict the user
-
perceived latency, conserve wireless bandwidth and the
mobile device’s battery power, as well as handle client disconnections


Session Management:
To maintain an application’s or service’s session state in
spite of disconnections and migrations of the user.


Handover Management,

(Wireless CORBA and Mobile IP): To update the MH
location/address and to transfer its session state from the old to the new network.



Discovery and Auto
-
configuration:
To handle complexity, changes in services or
devices availability, and allow to choose the most reliable service by hiding
network heterogeneity and dynamicity


Security and Privacy:
To handle privacy, authorization, user authentication, or
data encryption.



Check
-
pointing and Recovery:
To handle handover and disconnected operation of
all MH environment.


Other tasks:
Personalization, content Creation, and name resolution








Common Proxy Tasks Continue





3) Proxy Frameworks

Several efforts have been made to develop generic proxy architectures, or proxy

frameworks, that can be customized or extended to solve a particular problem.

Most proxy frameworks provide general
-
purpose solutions for the following four

main issues:

(a)
implementation and composition of adaptation modules, called adapters

(b)

Description of the conditions in which the adapters should be applied

(c)
Monitoring of the context, such as the mobile device’s profile, the
application’s state and the communication bandwidth;

(d)
The loading of adapters.


Table 1: Comparison table of extensible well
-
know proxy frameworks

Systems

RAPIDware


Mobiware


MARCH


TACC


MoCA

Framework


WBI


Purpose

Multimedia


Multimedia, QoS


General


General


General


Web Apps.

Level


Middleware


Middleware

Middleware

Middleware

Middleware

applications

Proxy Placement


server
-
side


client
-
side and

server
-
side


server
-
side /

proxy
-
pair


server
-
side


server
-
side


Dynamic

Adapter Loading


yes

yes

yes

yes

no

no

Adaptation

Selection


Programmable


Programmable


Trigger
-
Rules

Configuration


Programmable


Trigger
-
Rules

Configuration


Trigger
-
Rules

Configuration


Functionality


Content

Adaptation


Content Adaptation,

Handover Mngt


Content

Adaptation


Caching, Content

Adaptation


Caching, Content

Adaptation


Caching,
Content

Adaptation


Communication


Synchronous


Synchronous


Synchronous


Synchronous


Synchronous/

Asynchronous


Synchronous/

Asynchronous


Context

Awareness


wireless link


wireless link


device &

wireless link


wireless link


device &

wireless link


WBI: Web Intermediaries,

Conclusion

The presentation covered the following aspects:

Introduction to a proxy

Classifications of the proxy
-
based architectures for mobile computing and
their responsibilities

common and recurrent set of functions, structures, and architectural
patterns in proxy implementations

common proxy frameworks and their main characteristics

Thanks!



Any questions?