proxy based adaptation for mobile computing ecet 581 spring 07 n.
Skip this Video
Loading SlideShow in 5 Seconds..
Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 PowerPoint Presentation
Download Presentation
Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07

Loading in 2 Seconds...

play fullscreen
1 / 23

Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07 - PowerPoint PPT Presentation

  • Uploaded on

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. Introduction. Proxies have 3 main problem solving uses:

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Proxy-based Adaptation for Mobile Computing ECET 581 Spring 07' - rubaina-manaf

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
proxy based adaptation for mobile computing ecet 581 spring 07

Proxy-based Adaptationfor Mobile ComputingECET 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

  • 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.
  • 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.
  • Proxies perform complex tasks: for mobile networks:
    • Handover, Session or consistency measurement
    • Personalization, authentication, check pointing
    • Service/resource discovery.
  • 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.
  • 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.”
classifying proxy based approaches
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.
classifying proxy based approaches1
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.
architecture based classification
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.
architecture based classification1
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.
architecture based classification2
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.
architecture based classification3
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.
architecture based classification4
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.
architecture based classification5
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.
architecture based classification6
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.
common proxy tasks
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.
common proxy tasks1
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.
common proxy tasks2
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.
common proxy tasks3
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.
common proxy tasks4
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.
common proxy tasks5
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
proxy frameworks
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.
  • 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.