9/8/2015 12:10 1 mobile and wireless access for pervasive computing krithi ramamritham iit bombay

39
03/27/22 08:52 1 Mobile and Wireless Access for Pervasive Computing Krithi Ramamritham IIT Bombay

Upload: margaret-phillips

Post on 26-Dec-2015

215 views

Category:

Documents


1 download

TRANSCRIPT

04/19/23 12:49 1

Mobile and Wireless Access for Pervasive Computing

Krithi Ramamritham

IIT Bombay

04/19/23 12:49 3

Mobile and Wireless Computing

Goal: Access Information Anywhere, Anytime, and in Any Way.

Aliases: Mobile, Nomadic, Wireless, Pervasive, Invisible, Ubiquitous Computing.

Distinction:• Fixed wired network: Traditional distributed computing.• Fixed wireless network: Wireless computing.• Wireless network: Mobile Computing.

Key Issues: Wireless communication, Mobility, Portability.

04/19/23 12:49 4

Mobile Network Architecture

FIXED NETWORK

PDA

FIXEDHOSTBASE

STATION

BASESTATION

BASESTATION

Mbps to Gbps

MOBILE HOST

WIRELESS LAN CELL2Kbps - 15Mbps

WIRELESS RADIO CELL9Kbps - 14Kbps

BASESTATION

PDA

04/19/23 12:49 5

Mobile Applications

Expected to create an entire new class of Applications new massive markets in conjunction with the Web Mobile Information Appliances - combining personal

computing and consumer electronics Applications:

Vertical: vehicle dispatching, tracking, point of sale Horizontal: mail enabled applications, filtered

information provision, collaborative computing…

04/19/23 12:49 6

Broadcast Data Dissemination

business data, e.g., Vitria, Tibco election coverage data stock related data traffic information sportscasts, e.g., Praja

Datatacycle [Herman] Broadcast disks

Data Server

04/19/23 12:49 7

Wireless Communication

Cellular - GSM (Europe+), TDMA & CDMA (US)– FM: 1.2-9.6 Kbps; Digital: 9.6-14.4 Kbps (ISDN-like

services) Public Packet Radio - Proprietary

– 19.2 Kbps (raw), 9.6 Kbps (effective) Private and Share Mobile Radio Wireless LAN - wireless LAN bridge (IEEE 802.11)

– Radio or Infrared frequencies: 1.2 Kbps-15 Mbps Paging Networks – typically one-way communication

– low receiving power consumption Satellites – wide-area coverage (GEOS, MEOS, LEOS)

– LEOS: 2.4 Kbps (uplink), 4.8Kbps (downlink)

04/19/23 12:49 9

Wireless characteristics

Variant Connectivity Low bandwidth and reliability

Frequent disconnections • predictable or sudden

Asymmetric Communication Broadcast medium

Monetarily expensive Charges per connection or per message/packet

Connectivity is weak, intermittent and expensive

04/19/23 12:49 10

Portable Information Devices

PDAs, Personal Communicators Light, small and durable to be easily carried around dumb terminals [InfoPad, ParcTab projects],

palmtops, wristwatch PC/Phone, walkstations

will run on AA+ /Ni-Cd/Li-Ion batteries may be diskless I/O devices: Mouse is out, Pen is in wireless connection to information networks

either infrared or cellular phone specialized HW (for compression/encryption)

04/19/23 12:49 11

Portability Characteristics

Battery power restrictions transmit/receive, disk spinning, display, CPUs,

memory consume power Battery lifetime will see very small increase

need energy efficient hardware (CPUs, memory) and system software

planned disconnections - doze mode

Power consumption vs. resource utilization

04/19/23 12:49 12

Portability Characteristics

Resource constraints Mobile computers are resource poor Reduce program size – interpret script languages

(Mobile Java?) Computation and communication load cannot be

distributed equally Small screen sizes

Asymmetry between static and mobile computers

04/19/23 12:49 13

Mobility Characteristics

Location changes• location management - cost to locate is added to

communication Heterogeneity in services

bandwidth restrictions and variability Dynamic replication of data

• data and services follow users Querying data - location-based responses Security and authentication System configuration is no longer static

04/19/23 12:49 14

Recurrent Themes

Handling disconnections (planned failures?) caching strategies managing inconsistencies

Delayed write-back and prefetch: use network idle times increases memory requirements

Buffering/batching: allows bulk transfers Partitioning and replication

triggered by relocation Compression: increase effective BW

increases battery power requirements Receiving needs less power than sending

04/19/23 12:49 16

Mobility in Db Applications

• Need to adapt to constantly changing environment:

• network connectivity

• available resources and services

• By varying and (re)negotiating:

• the partition of duties between the mobile and static elements

• the quality of data available at the mobile host

Example: Fidelity (degree to which a copy of data matches the reference copy at the

server)

04/19/23 12:49 18

Client ServerAgent

Fixed NetworkWireless Link

C-SA-C: Server-side Agent

C-SA-C: The Client/Server-side Agent/Server Model Splits the interaction between the mobile client and

server: client-agent and agent-server

• different protocols for each part of the interaction

• each part may be executed independently of the other

04/19/23 12:49 19

Responsibilities of the Agent

Messaging and queying Manipulate data prior to their transmission to the

client: perform data specific compression batch together requests change the transmission order

04/19/23 12:49 20

Role of the Agent

Surrogate or proxy of the client Any communication to/from the client goes through the

agent Offload functionality from the client to the agent

Application (service) specific provides a mobile-aware layer to specifc services or

applications (e.g., web-browsing or database access) handles all requests from mobile clients

Filters provide agents that operate on protocols E.g., an MPEG-agent or a TCP-agent

04/19/23 12:49 21

C-CA-S: Client-side Agent

C-SA-S: The Client/Client-side Agent/Server Model caching background prefetching and hoarding various communication optimizations

Mobile Host

Client ServerAgent

Fixed NetworkWireless Link

04/19/23 12:49 22

Mobile Host

Client ServerAgent

Fixed Network

Wireless Link

Agent

C-I-S: Client & Server Agents

C-I-S: Client/Intercept/Server Model Caching, prefetching etc various communication optimizations at both ends

– E.g., asynchronous queued RPC relocate computation between the agents Client interoperability

04/19/23 12:49 23

Mobile Agents

Mobile agents are migrating processes associated with an itinerary dynamic code and state deployment

Implement the agents of the previous architectures as mobile agents, E.g., server-side agents can relocate during handoff client-side agent dynamically move on and off the client

– Relocatable dynamic objects (RDO) [Rover] Implement the communication using mobile agents:

clients submit/receive mobile agents to/from the server E.g., Compacts [Pro-Motion]

04/19/23 12:49 24

Outline

Motivating Example Issues: Mobility, Wireless Communication, Portability Adaptability and Mobile Client-Server Models Location Management Broadcast data dissemination Disconnected database operations Mobile Access to the Web

04/19/23 12:49 25

Locating Moving Objects

Example of moving objects mobile devices (cars, cellular phones, palmtops, etc) mobile users (locate users independently of the device

they are currently using) mobile software (e.g., mobile agents)

How to find their location - Two extremes Search everywhere Store their current location everywhere Searching vs. Informing

04/19/23 12:49 26

Architectures of Location DBs

Two-tier Schemes (similar to cellular phones) Home Location Register (HLR): store the location of

each moving object at a pre-specified location for the object

Visitor Location Register (VLR): also store the location of each moving object mo at a register at the current region

Hierarchical Schemes Maintain multiple registries

04/19/23 12:49 27

Two-tier Location DBs

Search Check the VLR at your current location If object not in, contact the object’s HLR

Update Update the old and new VLR Update the HLR

04/19/23 12:49 28

Hierarchical Location DBs

Maintain a hierarchy of location registers (databases)

A location database at a higher level contains location information for all objects below it

04/19/23 12:49 29

Hierarchical Location DBs

Call

caller

04/19/23 12:49 30

Hierarchical Location DBs

Move

old locationnew location

04/19/23 12:49 31

Hierarchical vs. Two-tier

(+) No pre-assigned HLR

(+) Support Locality

(-) Increased number of operations (database operations and communication messages)

(-) Increased load and storage requirements at the higher-levels

04/19/23 12:49 33

Locating Moving Objects

Caching cache the callee’s location at the caller

(large Call to Mobility Ratio)

Replication replicate the location of a moving object at its frequent callers (large

CMR)

Forwarding Pointers do not update the VLR and the HLR, leave a forwarding pointer from

the old to the new VLR (small CMR) When and how forwarding pointers are purged?

Concurrency, coherency and recovery/checkpointing of location DBs

04/19/23 12:49 34

Querying Moving Objects

• Besides locating moving objects, answer more advanced queries, e.g.,

• find the nearest service

• send a message to all mobile objects in a specific geographical reafion

• Location queries: spatial, temporal or continuous

•Issues: representation, evaluation and imprecision

Most current research assumes a centralized location database

04/19/23 12:49 36

Querying Moving Objects

How to represent and index moving objects?

Spatial indexes do not work well with dynamically changing values

Value-time representation

• An object is mapped to a trajectory [Kollios 99]

04/19/23 12:49 37

Outline

Motivating Example Issues: Mobility, Wireless Communication, Portability Adaptability and Mobile Client-Server Models Location Management Broadcast data dissemination Disconnected database operations Mobile Access to the Web

04/19/23 12:49 38

Broadcast

Broadcast as an air-cache for storing frequently requested data

Continoulsy adjust the broadcast content to match the database hot-spot

How? By observing the broadcast misses - requests for data not on the broadcast

04/19/23 12:49 39

Information

Dissemination

Goal : Maximize query capacity of servers, minimize energy per query at the client.

Focus: Read-only transactions (queries).– Clients send update data to server – Server resolves update conflicts, commits updates

1. Pull: PDAs demand, servers respond. backchannel (uplink) is used to request data and provide

feedback. poor match for asymmetric communication.

04/19/23 12:49 40

Information Dissemination…

2. Push: Network servers broadcast data, PDA's listen. PDA energy saved by needing receive mode only. scales to any number of clients. data are selected based on profiles and registration in each

cell.

ServerClients

A B CD

G F E

. .

04/19/23 12:49 41

Information Dissemination…

ServerClients

A B CD

G F E

. . 14.4 Kbps

3. Combinations Push and Pull (Sharing the channel). Selective Broadcast: Servers broadcast "hot" information only.

"publication group" and "on-demand" group. On-demand Broadcast: Servers choose the next item based on

requests. FCFS or page with maximum # of pending requests.

04/19/23 12:49 44

Selective

Tuning

Basic broadcast access is sequential Want to minimize client's access time and tuning time.

active mode power is 250mW, in doze mode 50μW What about using database access methods? Hashing: broadcast hashing parameters h(K) Indexing: index needs to be broadcast too

"self-addressable cache on the air"

(+) "listening/tuning time" decreases

(-) "access time" increases

04/19/23 12:49 59

Caching for Disconnection

What to cache? Entire files, directories, tables, objects Portions of files, directories, tables, objects

When to cache? Is simple LRU sufficient? LRU captures an aspect of temporal locality Predictive/semantic caching: based on the

semantics distance between data/request

E.g., clustering of queries [Ren 99]

04/19/23 12:49 75

Mobile Access to the Web

Three-tier Architectures: Client - Web Server - Data Server Web Server can act like a server-side agent

Prefetching at its cache can hide some latency Scripts at the Web server can perform user-specified

filtering and processing. Most solutions use a Web proxy to avoid any changes to the

browsers and servers. Pythia [Fox96] Mobile Browser (MOWSER) [Joshi 96]

– Distillation: highly lossy, real-time,datatype specific compression that preserves semantic content

WebExpress [Housel 97]

04/19/23 12:49 114

What Needs to be

Reexamined?

Operating systems File systems Data-based systems Communication architecture and protocols Hardware and architecture Real-Time, multimedia, QoS Security Application requirements and design PDA design: Interfaces, Languages