Mobile Computing - Njit

mashpeemoveΚινητά – Ασύρματες Τεχνολογίες

24 Νοε 2013 (πριν από 3 χρόνια και 10 μήνες)

77 εμφανίσεις

NJIT

1

Mobile and Ubiquitous
Computing

Coularis, Dollimore and Kindberg,
Distributed Systems, Concepts and
Design,

Chapter 16

prepared by Kelly Luciano

2

Introduction



Mobile Computing



people traveling with their computers while

staying connected to other computers or the

Internet



Ubiquitious Computing




Weiser’s idea of one person, many computers

as opposed to the mainframe technology




(also known as “persasive computing”)


3

Wearable Computing



Users have computing devices on them




(phone, active badge, clothing)



Active badge was one of the first applications



Badge regularly broadcasts it’s identity



Infrared sensor detects the users identity



Figure 16.1 shows the display responding to user


4

Figure 16.1
A room responding to
a user wearing an active badge

2. Infrared sensor detects user

s ID

Hello Roy

1. User enters room wearing


active badge

User

s ID

3. Display


responds

to user

Infrared

5

Volatile Systems



System changes are the rule instead of exception due to:



device failures



communication failures



changes in communication characteristics (bandwidth,etc)



creation of associations



destruction of associations

6

Smart Spaces



Physical spaces



form background for mobile/ubiquitious computing



Smart space



physical space with embedded services



Physical mobility



Smart spaces act as environments for devices to visit

and leave



Logical mobility



process or agent may move in or out of a smart space or

a personal device

7

Device Model



New class of computing device



limited energy


limited battery capacity



resource constraints


limited computational resources



sensors


measure physical parameters, supply values



actuators


software controllable, affect physical world



Examples of these devices are motes and camera phones

8

Association



Components interoperate, preferably with user intervention



Network bootstrapping



DCHP server supplies IP address



Serverless address assignment (Apple’s Rendezvous)



Association Problem



may be hundreds of devices per cubic meter



system boundaries



one solution


Jini discovery service

9

Discovery Services



Discovery service



services in smart space are registered and looked up

by their attributes



Device discovery and service discovery exist



Issues:

Low
-
effort, appropriate association



Service description and query language



Smart
-
space
-
specific discovery



Directory implementation



Service volatility


10

Jini Discovery Services



Jini based on lookup services



Jini example:



Jini client starts up



Client sends request to well known IP multicast

address



Any lookup service that receives request can respond

with its address (communicate through RMI)



Client then uses service directly


11

Figure 16.4
Service
discovery in Jini

Printing

service


service

Lookup


service

Lookup

Printing

service

admin

admin

admin, finance

finance

Client

Client

Corporate

infoservice

2. Here I am: .....

4. Use printing


service

Network

3. Request
‘printing’

1. ‘finance’ lookup
service

12

Interoperation



Ways in which two or more components are
associated



One major hurdle in interoperation is software
interface incompatibility



Solutions:



converting invocations (this approach is difficult)



constrain interfaces to be identical in syntax


(as much as possible)




13

Data
-
oriented programming



Data
-
oriented



systems that use an unvarying service interface



example


UNIX pipes


Event systems



publishers publish events to subscribers


Tuple spaces



fixed, generic interface to add & retrieve structured data



example


camera software/hotel picture frame




14

Data
-
oriented programming



Direct device interoperation



2 devices brought into direct association



example


JetSend and Speakeasy




15

Sensing & context
-
awareness






Processing data collected from sensors



Context
-
aware systems respond to sensed

physical
surroundings



In the active badge example a person’s phone call
can be sent directly to the room where

they are
working



Sensor data: location, velocity & orientation (GPS)



ambient conditions (thermometers)



presence (measure physical load)

16

Context Toolkit






Context Toolkit is example of system
architecture for general context
-
aware applications



Context Toolkit defines context widgets



Widgets implement an interface with the sensor
while hiding the complexity.



For the IdentityPresence widget the users can
poll the attributes such as location, identity and
Timestamp but the actual communication with the
sensor it hidden from the user

17

Figure 16.5
The
IdentityPresence

widget class of the Context Toolkit

Attributes (accessible by polling)

Explanation

Location

Location the widget is monitoring

Identity

ID of the last user sensed

Timestamp

Time of the last arrival

Callbacks

PersonArrives(location, identity,

timestamp)

Triggered when a user arrives

PersonLeaves(location, identity,

timestamp)

Triggered when a user leaves

18

PersonFinder widget






PersonFinder widget constructed from IdentityPresence



IdentityPresence widget interact with several different
types of sensors



Floor pressure sensors



Face recognition



Video recognition



Footstep recognition



Sensor data is sent back to IdentityPresence and then
back to the PersonFinder without specific knowledge of the
different sensors

19

Figure 16.6
A
PersonFinder

widget
using IdentityPresence widgets

IdentityPresence
Room A
IdentityPresence
Room B
PersonFinder
Floor pressure (generators)
Video (generator)
Face recognition
Footstep recognition
(interpreter)
(interpreter)
Widgets
20

Wireless sensor networks






Wireless sensor network consist of low
-
cost devices



Each with special case of nodes arranged randomly



These networks communicate over many wireless hops
between peers



Wireless communication is costly in power consumption so
they only communicate with their neighbors who in turn
communicate with their neighbors. This is how the message
gets propagated.



Other reason for restricting range of wireless
communication is limiting network contention

21

Directed Diffusion






Programmer specifies interests



Interests are declarations of tasks propagated into the
system at nodes called sinks



Sink propagates interest to the sources (nodes matching
the interest)



Sources generate the data using the sensors and send
information back to the sink



Heuristics are used to find a minimum length path back to
the sink

22

Figure 16.7
Directed diffusion

A. Interest propagation

source

source

sink

B. Gradients set up

C. Data delivery

source

source

sink

source

source

sink

23

Location
-
sensing






Location sensing has received most attention of
ubiquitous computing



For location sensing you can get data of living and non
living objects



A big issue of location sensing is privacy



If something else determines your location you could be
tracked



Some if the location sensing applications can only be used
inside or can only be used outside. It depends on the
specific application…see chart 16.8.

24

Type

Mechanism

Limitations

Accuracy

Type of location data

Privacy

GPS

Multilateration

from satellite

radio sources

Outdoors

only (satellite

visibility)

1

10m

Absolute geographic

coordinates (latitude,

longitude, altitude)

Yes

Radio

beaconing

Broadcasts from

wireless base

stations (GSM,

802.11, Bluetooth)

Areas with

wireless

coverage

10m

1km

Proximity to known

entity (usually semantic)

Yes

Active Bat

Multilateration

from radio and

ultrasound

Ceiling

sensors

10cm

Relative (room)

coordinates.

Bat identity

disclosed

Ultra Wide

Band

Multilateration

from reception of

radio pulses

Receiver in

stallations

15cm

Relative (room)

coordinates

Tag identity

disclosed

Active

badge

Infrared sensing

Sunlight or

fluorescent

light

Room size

Proximity to known

entity (usually semantic)

Badge

identity

disclosed

Automatic

identification

tag

RFID, Near Field

Communication,

visual tag (e.g.

barcode)

Reader

installations

1cm

10m

Proximity to known

entity (usually semantic)

Tag identity

disclosed

Easy Living

Vision,

triangulation

Camera

installations

Variable

Relative (room)

coordinates

No

mounted

Figure 16.8
Some location
-
sensing
technologies

25

Active bat






Active Bat system finds object location indoors within
10cm



The bat device is attached to the object (maybe a person)



The base station sends ultrasound signal to receivers and
radio signal to bat at the same time



The receivers start a timer once they receive the
ultrasound signal from the base station

26

Active bat cont.






The active bat sends ultrasound signal once it receives
radio signal



The receiver calculate the distance from the receiver by
knowing the time it took to receive the ultrasound pulse
from the bat


27

Figure 16.9
Locating an
active bat within a room

3. Ultrasound receivers


2. Active bat

1. Base station sends timing signal


to ultrasound receivers and radio


signal to bat simultaneously


emits ultrasound signal


on receipt of radio signal


report times of flight of


ultrasound pulse

4. Base station computes distances


to ultrasound receivers from


times of flight, and thus position


of bat

28

Security and privacy






Portable devices are easier stolen and tampered
with than PC’s



Due to limitations mobile devices sometimes
don’t have enough resources for cryptography
(energy or computing resources)



Since mobile devices are disconnected often you
shouldn’t depend on a server for security



29

Security and privacy solutions






Create a secure channel between devices securely
exchanging a session key between them and using it to
encrypt communication



Link
-
level key between two Bluetooth devices relies
on actions of the users (digit strings)



Secure device association using physical contact


2
devices exchange a secret key by physical contact.
Once they both have this key they can communication
over the network using this secret key.

30

Figure 16.10
Secure device
association using physical contact

1. Fresh secret key

K


exchanged by physical contact

2. Devices communicate using secure channel

W


constructed over

W


using

K

K

31

Detecting network intrusion






Detecting man in the middle trying to steal information



Each device displays the hash of its public key



The keys are exchanged by Diffie
-
Hellman protocol



The two hashes of the keys are compared



If the two match then there is no man in the middle



If the two don’t match it’s assumed there is a man in

the middle

32

Figure 16.11
Detecting a
man
-
in
-
the
-
middle

K1

K2

Man
-
in
-
the
-
middle

hash=0x6F9E...

hash=0xD57C...

2. User(s) compare hashes of keys displayed on


devices


by sight or with an integrated imaging


device. Since they differ, they conclude that


there is a man
-
in
-
the
-
middle or that accidental

1. Keys exchanged by


Diffie
-
Hellman


protocol


mis
-
association has occurred

Device displaying hash of key

33

Adaptation of content






Simple approach:



producers send same content regardless of consuming

device



device needs to render content appropriately



use the web model to interface between producers and

consumers


34

Figure 16.12
Cooltown layers

Web presences

Direct URL sensing

ID resolution

ID sensing

Network service

Discovery


Context (aggregated web presences)


eSquirt: URL exchange

Physical hyperlinks

35

Cooltown






All of the people, places and things in Cooltown have
web addresses



Each entity has a physical hyperlink which associates
with web presence



eSquirt is the interoperation protocol between all
devices in CoolTown

36

Cooltown






Example:



A painting sends its web presence to a user



if the user wants to print the painting the web presence

is sent to the printer and a new print is made



Or the user uses the web presence to gather info on the

painting

37

Figure 16.13
Capturing and printing
the web presence of a painting

A. User captures URL of

<link title=

Chop Suey


href=

http..

>


painting

s web
presence

beacon

B. User sends URL to printer


using eSquirt, to print

<link title=

Chop Suey


href=

http..

>

PDA or phone


painting

s web presence

painting

38


George Coularis, Jean Dollimore and Tim
Kindberg,
Distributed Systems, Concepts and
Design
, Addison Wesley, Fourth Edition, 2005


Figures from the Coulouris text are from the
instructor’s guide and are copyrighted by
Pearson Education 2005

Bibliography