Вы находитесь на странице: 1из 75

Chapter 9

Mobile Computing
for Enterprise Apps

1
Mobile Computing - Outline

What is mobile computing?


Comparison to wired networks
Why go mobile?
Types of wireless devices
Mobile objects
Applications of mobile computing
Challenges
Future of mobile computing
Conclusion

2
Background

3
What is Mobile Computing?
What is computing?
Operation of computers (according to oxfords advance
learner’s dictionary)
What is the mobile?
That someone/something can move or be moved easily
and quickly from place to place
What is mobile computing?
Users with portable computers still have network
connections while they move

4
What is Mobile Computing?
(Cont.)
Is using a digital camera “Mobile Computing”, or
using an MP3 player or handheld computer (e.g.
3Com’s Palm Pilot or Compaq’s iPAQ 3660)?

5
What Is Mobile Computing?
(Cont.)
A simple definition could be:
Mobile Computing is using a computer (of one kind or
another) while on the move
Another definition could be:
Mobile Computing is when a (work) process is moved from a
normal fixed position to a more dynamic position.
A third definition could be:
Mobile Computing is when a work process is carried out
somewhere where it was not previously possible.

6
What is Mobile Computing?
(Cont.)
Mobile Computing is an umbrella term used to
describe technologies that enable people to access
network services anyplace, anytime, and anywhere.

7
Comparison to Wired Net.

Wired Networks Mobile Networks


-high bandwidth -low bandwidth
-low bandwidth variability -high bandwidth variability
-can listen on wire -hidden terminal problem
-high power machines -low power machines
-high resource machines -low resource machines
-need physical access(security) -need proximity
-low delay -higher delay
-connected operation -disconnected operation

8
Why Go Mobile?
Enable anywhere/anytime connectivity
Bring computer communications to areas without
pre-existing infrastructure
Enable mobility
Enable new applications
An exciting new research area

9
Types of Wireless Devices
Laptops
Palmtops
PDAs
Cell phones
Pagers
Sensors

10
Mobile Objects
A mobile object is some code that
carries a state

11
Mobile Objects (Cont.)
A mobile object is some code that
carries a state
that lives on a host

12
Mobile Objects (Cont.)
A mobile object is some code that
carries a state
Lives in a host
That visits places

13
Mobile Objects (Cont.)
A mobile object is some code that
carries a state
Lives in a host
That visits places
which is let in when trusted

14
Mobile Objects (Cont.)
A mobile object is some code that
carries a state
Lives in a host
That visits places
which is let in when trusted
and barred when untrusted

15
Mobile Objects (Cont.)
A mobile object is some code
that carries a state
Lives in a host
That visits places
which is let in when trusted
and barred when untrusted
and will refuse to go to
untrustworthy places

16
Mobile Objects (Cont.)
Mobile objects can talk to their
friends

17
Mobile Objects (Cont.)
Mobile objects can talk to their
friends
but only by co-operation of the
hosts

18
Applications of Mobile Computing
Emergency services

19
Applications of Mobile
Computing (Cont.)
For Estate Agents
In courts
In companies
Stock Information Collection/Control
Credit Card Verification
Taxi/Truck Dispatch
Electronic Mail/Paging

20
Challenges
Disconnection
Low bandwidth
High bandwidth variability
Low power and resources
Security risks
Wide variety terminals and devices with different
capabilities
Device attributes
Fit more functionality into single, smaller device

21
Future of Mobile Computing
Use of Artificial Intelligence
Integrated Circuitry -> Compact Size
Increases in Computer Processor speeds

22
Conclusion
Mobile computing has severe limitations
- however, it is far from impossible, and technology improves all the time
Lots of challenges
- some have (good) solutions, many others are still waiting to be solved

23
Pervasive Computing - Outline
Introducing Pervasive Computing
Some scenarios
Challenges
Service Discovery
Data Management
Pervasive computing with cloud services
Questions & Answers

24
Pervasive Computing
Pervasive Computing is the ability to access information and software
applications anytime and anywhere.
Computing and communication capabilities are embedded in the
infrastructure and disappeared from human users.
People use computer-assisted task-specific devices, instead of
computing devices.

25
Pervasive Computing
Create environments saturated with embedded and portable computing
devices surrounding the users and providing them with many
interesting services
Apply wireless sensors that are used to implement certain specific tasks

26
Scenario 1
John opens his refrigerator to take out a soda, and he notices that there
is only one can left. John then scans the UPC of the soda with the
scanner attached to the refrigerator. John plans to have guests over this
weekend, and makes a note on the refrigerator device that he needs to
replenish his soda by Friday.

27
Scenario 1 - Continued
The next day, on his way home from work, John happen to approach a
local supermarket. His car signals to John that he is near a grocery store,
and if it is convenient, that he should stop by. Suppose John does not
act on the opportunity, Friday rolls around and he still have not bought
the drinks, a notification will be sent to John’s PDA by the refrigerator to
alert John.

28
Scenario 1 – What Happened?
• John’s virtual shopping list is maintained by his refrigerator.
• When John scanned the soda, the refrigerator adds soda to the
shopping list.
• When John notes down Friday, the refrigerator notifies his car about
the need for soda.
• When John is on the road, his car constantly monitors the available
services; when his car detects the supermarket service, it notifies
John.
• When it’s Friday, and the refrigerator has not received a “soda
purchased” notification, it sends a notification to John’s PDA.

29
Scenario 2
• It is 5:40 in the afternoon and Bob’s work day is just ending. As he is
getting ready to leave the office his phone rings. It is Alice asking him
to meet her at the local shopping mall. Bob agrees to meet her and
notifies his mobile device about the appointment. While he is
walking through the building toward the parking lot, his device is able
to connect to the office network infrastructure using a WLAN and
fetch the directions through an information broker. In the car, the
mobile device sends directions to the on-board computer that
displays them on the area map.

30
Scenario 2
• While on-route, Bob feels that the traffic is not moving fast enough
and would like to get to his destination via some quicker route. He
instructs his device, which can now connect to cars around him, to
ask these if they know of a faster route. The device contacts its
neighbors and returns with an alternate map. Although the
suggested route is longer it circumvents afternoon traffic jam
building up on the original route. Bob takes the different roads and
arrives at the mall’s entrance twenty minutes earlier.

31
Scenario 2
• He decides to use the extra time by checking out local stores for a
bargain on some small gift for Alice. His mobile device finds out from
the mall directory server about stores that sell such gifts, contacts
them to find out possible gifts within a $25 and presents ideas to
Bob. Similarly, the mobile devices has a wish list of other garments
Bob wishes to purchase and proactively searches for these bargains
as well. Upon Alice’s arrival, Bob asks his mobile device to suggest
available restaurants (the device cached such information during the
mall exploration) and lets Alice pick one. She chooses the closest
Italian restaurant that indicates it has an available table with no
waiting period. Thus, they are seated immediately and spend several
hours eating and chatting.

32
Pervasive Computing
Applications characteristics
Always running and available
Composed of collaborating parts spared over the network – distributed
components
Adapt to environments when the users/devices move – reconfigure to
use available services
Users are not aware of the computing embedded in the device –
transparent interaction
Information pursues the user rather than user pursues the information

33
Challenges
invisibility – disappearance of computing technology from users'
consciousness; embedding/combining computing infrastructure with
building infrastructure
scalability – scalability of users, devices, density of interactions in a local
area
availability – access to software applications and information anytime
and anywhere

34
Challenges
dynamic – users and devices are mobile, services are provided by
collaborating distributed components
heterogeneity – variety of hardware, software platforms, network
protocols, service providers
integration with people – personal privacy, user intentions, access
control

35
Research Area
Service Discovery
Data Management
… and many others.

36
Service Discovery
Goal – allow devices to advertise, discover, configure, and communicate
with each other in a mobile network
Example – when a device is moving between networks, it needs to know
what services are still available, now available, and no longer available.
It also needs to know how to contact these services. Then, based on the
resources, the device would be able to perform its task.

37
Service Discovery
• Service Discovery Protocols – protocol to facilitate association of
devices that have services to offer or that need services
▫ Enable interoperability
 devices can communicate with each other
▫ Accommodate heterogeneity
 Devices can be of different kind
▫ Minimize administrative overhead
▫ Increase usability

38
Service Location Protocol
• A service discovery protocol for advertisement and discovery of
network services
• Each service has a service type, which defines a collection of services
with a common nature
• Each service has a name and a list of characteristics
▫ Each characteristic is defined by a attribute-value pairing
▫ Service with the same service type have similar attributes but different
values

39
Service Location Protocol
Example of Service
◦ Name: NAP1
◦ Service type: Network Access Point
◦ Attributes:
◦ Supported protocol = IEEE 802.11
◦ Speed = 11 Mbps
◦ Encryption algorithm = WEP

40
Service Location Protocol
For a device to connect to a service, a Service Access Point (SAP) is
needed
◦ SAP contains information about where and how to get the service
◦ The structure of SAP is defined by URLs of scheme service (not discussed
here – detail can be found in reference paper)

41
Service Location Protocol
For the device to know if a service is what it needs, a Service
Advertisement is needed
◦ Contains information describing a service
◦ Includes the Service Type, the values of the attributes, and the Service Access Point

42
Service Location Protocol
Each device can be defined as a User Agent (UA) or a Service Agent (SA)
◦ User Agents are consumers of service
◦ Service Agents are providers of service

(Optionally) there is also a Directory Agent (DA) that maintains service


advertisements

43
Service Location Protocol
DA-less Architecture
◦ On startup, UA sends UDP multicast message, requesting for service

44
Service Location Protocol
DA-less Architecture
◦ SAs listens to the message and responds to UA with unicast if match found

45
Service Location Protocol
DA-less Architecture
◦ Connection is established

46
Service Location Protocol
DA-less Architecture
◦ UA eventually stops sending request message if no SA responds; each SA
responds to the same service request only once

Reduces network traffic – good for ad-hoc

47
Service Location Protocol
DA Architecture
◦ DA contains all the service advertisements
◦ All messages are sent using TCP or UDP unicast

Good for large-scale networks

48
Service Location Protocol
DA Architecture
◦ On startup, SA registers its service with DA

49
Service Location Protocol
DA Architecture
◦ DA responds acknowledgement of registration

50
Service Location Protocol
DA Architecture
◦ UA sends service request message to DA

51
Service Location Protocol
DA Architecture
◦ DA responds to UA the matching SAP(s)

52
Service Location Protocol
DA Architecture
◦ UA connects with the desired SA

53
Service Discovery
Many other service discovery protocols
◦ Jini, Bluetooth, UPnP, Salutation, etc.

The protocols are usually compose of the service clients (UA), service
providers (SA), and service directories (DA)

54
Service Discovery Protocol –
Taxonomy

55
Service Discovery Protocols

56
Data Management
Getting information into the context in which it will be most useful
In the first scenario, John created his shopping list in his refrigerator, but
he needed it the most when he’s near a supermarket.

57
Data Management
User expects instant and complete access to any information at anytime
and anywhere
Inverts the traditional sense of data management where “passive
databases” and “active users” – instead, data moves around devices and
each device process the data while obtaining information of interest to
the user

58
Data Management –
Challenges
Instead of the conventional client-proxy-server model, pervasive
computing requires a mobile distributed database system, where each
device maintains its own database
◦ No centralized control of each device database
◦ Assume data can be communicated in a neutral format between devices
◦ Each part of a data object may reside on different device database
◦ Devices move in ad-hoc networks, therefore no guarantee of fixed set of
devices

59
Data Management –
Challenges
In particular to pervasive computing environments where devices are
dynamic
◦ Data and data source availability
◦ Lack of global data
◦ No guarantee of reconnection
◦ No guarantee of collaboration

=> query responses are highly based on luck

60
Other Research Area
Mobility of Devices
Distributed Computing
Context Awareness
◦ context modeling, context service

User Profile Modeling


Proactivity and Invisibility
Privacy, Security, Trust, Access Control

61
Pervasive Computing Shortages
Pervasive computing suffers:
◦ limited scalability of users and devices
◦ limited availability of software applications
◦ resources scarceness in embedded gadgets
◦ frequent disconnection and finite energy of mobile devices.

62
Pervasive Computing Shortages
a wide range of applications such as image processing, multimedia, and
social networking are difficult to run in pervasive computing
environments.

63
Pervasive Computing with Cloud Services
Cloud Computing (CC) platforms possess the ability to overcome these
discrepancies with their scalable, highly available and resource pooling
computing capabilities

64
Pervasive Computing with Cloud Services
In [1], the author examined how interesting characteristics of CC can
contribute to solve some inherent problems in pervasive computing
environments.
He proposed an infrastructure and a protocol that incorporate pervasive
computing environments with cloud services and show that by
embedding the power of CC services into pervasive computing
environments we can significantly enhance services provided by these
environments.

65
Pervasive Computing with Cloud Services

66
Pervasive Computing with Cloud Services

67
Pervasive Computing with Cloud Services

68
Questions
Service Discovery is a field in pervasive computing to allow devices to
advertise, discover, configure, and communicate with each other. Briefly
describe the three entities that are common with most service
discovery protocols?

69
Questions
Answer
◦ Service Client – consumers of services
◦ Service Provider – provider of services
◦ Service Directory – manages service advertisements; responds to service
request queries

70
Questions
• Service Location Protocol is a service discovery protocol in the field of
pervasive computing. Consider the following scenario. John’s house
contains computing devices that provides network service, printing
service, and alarm service in an ad-hoc fashion. John also has a PDA
that can connect to these services when the devices are within close
proximity.
• a) Which architecture of Service Location Protocol would be more
suited for an environment such as John’s house

71
Questions
Answer
◦ The architecture without the directory agent is more suitable. Since John’s
home contains only a few devices that collaborate in ad-hoc networks, a
directory agent is not needed facilitate association between devices.

72
Questions
b) Suppose John just arrived home from work, and his PDA has been
trying to contact a network service in order to send out an email. Using
the architecture that was answered in part a), illustrate the steps of
how John’s PDA connects to the network service.

73
Questions
Answer
◦ Step 1. The PDA sends out UDP message using multicast, requesting for
network access.
◦ Step 2. The network service responds to the PDA using unicast message,
indicating that it can provide network access. All other services ignore the
service request.
◦ Step 3. The PDA connects to the network service using unicast message, and
subsequently sends out the email through the network service.

74
References
WWW Links:
-http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/ vk5/report.html
-http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol1/vk5/article1.html
-http://www.cs.ucsb.edu/~ebelding/courses/284/w04/slides/intro.pdf
-http://www.ansa.co.uk/ANSATech/ANSAhtml/98-
ansa/external/9807tb/9807mose.pdf
-http://www.danishtechnology.dk/it/9238
Presentations
-Kevin Li : kli069@uottawa.ca
-Mohammad L. Habib

75

Вам также может понравиться