Coexistence, Collaboration, and Coordination Paradigms in the - - PowerPoint PPT Presentation

coexistence collaboration and coordination paradigms in
SMART_READER_LITE
LIVE PREVIEW

Coexistence, Collaboration, and Coordination Paradigms in the - - PowerPoint PPT Presentation

Coexistence, Collaboration, and Coordination Paradigms in the Presence of Mobility Gruia-Catalin Roman Department of Computer Science and Engineering Mobile Computing Laboratory 4 April 2008 Presentation Outline Presentation theme


slide-1
SLIDE 1

Coexistence, Collaboration, and Coordination Paradigms in the Presence of Mobility

Gruia-Catalin Roman

Department of Computer Science and Engineering Mobile Computing Laboratory 4 April 2008

slide-2
SLIDE 2

2

Presentation Outline

 Presentation theme  Prevailing trends  Shifting foundations

 Protocols  Algorithms  Formal models

 Paradigm shifts in middleware design

 Coordination  Coexistence  Collaboration

 Conclusions

slide-3
SLIDE 3

3

Presentation Theme

 Computing and communication in the presence

  • f mobility demands a new way of thinking

 Changes often invalidate fundamental assumptions  End of the cold war (1989)  We are on the cusp of a major technological and

social realignment

 Predicting the future is a risky proposition  Telephone (1876)  Internet (1969)

slide-4
SLIDE 4

4

Prevailing Trends

… in which we learn that we are all in this together

slide-5
SLIDE 5

5

Technology in Support of Mobility

 Miniaturization  Wireless communication  Localization technology  Sensing devices  Battery technology  Code mobility  Nomadic networks  Ad-hoc networks  Sensor networks

slide-6
SLIDE 6

6

The Social Dimension

 A society on the go  Growing expectations

 Increasing reliance on information technology  Integration of computing and communication into the

fabric of society

 Market acceptability and adoption emerging as

powerful forces in technology development

 Government policies and regulations unable to keep

pace with technological advances

slide-7
SLIDE 7

7

Application Development Opportunities

 Fire tracking and monitoring  Ambulatory patient monitoring  Container tracking  Car to car interactions on

highways

 Sensor assisted robot

navigation

 Contents delivery on the

phone

 Self managing assembly line  Assisted airplane inspection

and repairs

 Museum visit and city tours  Disaster response  Nature exploration

slide-8
SLIDE 8

8

Shifting Foundations

… where we find out that there are things our teachers never told us

slide-9
SLIDE 9

9

Protocol Design

… about sending messages to our friends and how to keep the highway clear

slide-10
SLIDE 10

10

Multicast Revisited

 A multicast group is a set of nodes known to the

world by a shared name

 A spanning tree that includes all group members

is constructed and maintained

 Nodes may join and leave the group  Data is delivered to all group members

slide-11
SLIDE 11

11

Multicast Paradigms

Send data to: 138.5.6.7 Listen for: 138.5.6.7 Listen for: 138.5.6.7 Listen for: 138.5.6.7

Standard Multicast Geocast

Send data to: Area (2, -1)

slide-12
SLIDE 12

12

Mobicast: Spatiotemporal Multicast

 Just in time message delivery along a specified

trajectory

 Ambulance warning  Intrusion detection

clear the road!

slide-13
SLIDE 13

13

Technical Challenges

slide-14
SLIDE 14

14

V Vτ Delivery zone Routing zone V

A Mobicast Protocol Overview

slide-15
SLIDE 15

15

Lessons Learned

 Mobility changes the questions we ask

 mobile query—data prefetching and just in time delivery  location query and tracking

 Spatiotemporal constraints alter our perspective  Geometric characterization is a useful tool

 measures of sparseness  face aware routing

 Energy conservation impacts the solution space

 sleep scheduling  message release order  workload shaping

slide-16
SLIDE 16

16

Algorithms

… where we discover that keeping track of things is a messy business

slide-17
SLIDE 17

17

Termination Detection

 Diffusing computations are a special case

 one source of activity  active nodes can wake up other nodes  nodes may go idle at any time

 Sample solutions

 counting  weight throwing  activation tree

slide-18
SLIDE 18

18

Ad Hoc Network

 Migration of termination records  Opportunistic routing

slide-19
SLIDE 19

19

Wireless Cellular Network

 Tracking strategy  Mobile-as-message model

slide-20
SLIDE 20

20

Lessons Learned

 New concepts may be needed

 weak vs strong termination

 Guarantees may need to be conditional  Models may facilitate translation of knowledge

 distributed algorithms recycled

 Communication may take place over

disconnected routes

 forwarding based on partial order  exploitation of motion profiles

slide-21
SLIDE 21

21

Formal Models

… where the variable x gets the value v and sets an example for future things to come or go

slide-22
SLIDE 22

22

UNITY

 The essence of concurrency

 assignment statement  program as set of statements  nondeterministic selection  composition as set union

 Producer/Consumer

P :: x := x+1 if y = x Q :: y := y+1 if y ≠ x

slide-23
SLIDE 23

23

Mobile UNITY

 The essence of mobility in open environments

 location as a distinguished variable  motion reduced to value assignment  composition as set union plus interactions

 Producer/Consumer

P :: x := x+1 Q :: y := y+1 if b Q.b := (P.x > Q.y) ^ (P.λ = Q.λ) reacts to true

slide-24
SLIDE 24

24

Lessons Learned

 Modeling open systems

 power of the quantifier  coordination dimension

 Importance of conditional proofs

 Mobile IP

 Expressive power shaped by real problems

 complex high level interactions  mobile code  fine grained mobility  Context UNITY

slide-25
SLIDE 25

25

Paradigm Shifts in Middleware Design

… in which we learn that one must have software to make software, a bit like making money

slide-26
SLIDE 26

26

Coordination

… where a girl never finds out how to make the pie, and we discover that splitting a pie is in the eye of the beholder

slide-27
SLIDE 27

27

Linda

 A global persistent tuple space  Three primitive operations:

  • ut(tuple); in(pattern); rd(pattern)

 Decoupled

computing

 Concurrency

at minimal cost

slide-28
SLIDE 28

28

Lime

 Agents can move

among hosts and own tuple spaces

 Support for basic

  • perations plus reactions

 Communication

defines connectivity

 Hosts within

communication range share data

federated tuple space

slide-29
SLIDE 29

29

Service A Ad for A Client C

disconnected

Local service registry Local service registry

Agent 1 Agent 2

Service A Client C

Local service registry Local service registry

Agent 1 Agent 2

Ad for A

federated service registry within communication range

Service Discovery

 The two hosts are too far

away to communicate

 The two hosts establish

contact

 Agent 2 can discover

service A on Agent 1

slide-30
SLIDE 30

30

Service A Client C

Local service registry Local service registry

Agent 1 Agent 2

Ad for A

federated service registry within communication range

proxy

use

Service A Client C

Local service registry Local service registry

Agent 3 Agent 2

federated service registry within communication range

proxy

use

Service Utilization

 Agent 2 uses service A

  • ffered by Agent 1

 Agent 2 continues to use

service A which migrated to Agent 3

slide-31
SLIDE 31

31

Security Enhancements

application service provision secure tuples secure tuple spaces

L I M E

interceptor security table application service provision secure tuples secure tuple spaces

L I M E

interceptor security table remote interactions

slide-32
SLIDE 32

32

Lessons Learned

 Lime

 specialization to mobility reduces development time

 Limone

 minimal features can support many applications

 EgoSpaces

 interest and context are highly individualized notions

 ServiceLime

 adaptive, predictable, and continuous provisioning is of the

essence

 CAST

 spatial and temporal operations are needed in real applications

slide-33
SLIDE 33

33

Coexistence

… in which we find out that needs are not always what they seem, wanting milk may be a veiled request for cream

slide-34
SLIDE 34

34

Sensor Networks

1 2 3 4

 A permanent and pervasive network  A shared computing resource

slide-35
SLIDE 35

35

Agilla System Architecture

TinyOS

Node (1,1)

Tuplespace Neighbors

Agilla Middleware MICA2 Mote Agents TinyOS

Node (2,1)

Tuplespace Neighbors

Agilla Middleware MICA2 Mote Agents

migrate remote access

slide-36
SLIDE 36

36

Spanning the Internet: Agimone

Network Architecture System Components

slide-37
SLIDE 37

37

Coping with Heterogeneity: Servilla

slide-38
SLIDE 38

38

Lessons Learned

 Agent technology is feasible and effective for the

development of sensor network applications

 High level programming is necessary  A flexible virtual machine offers significant gains  Deployment of multiple applications requires

both admission control and resource allocation

 Heterogeneous resources demand increased

reliance on dynamically bound services

slide-39
SLIDE 39

39

Collaboration

… in which the internet is left behind and the work flows without

slide-40
SLIDE 40

40

New Workflow Scenarios

slide-41
SLIDE 41

41

CiAN Engine

slide-42
SLIDE 42

42

Lessons Learned

 Workflows involving the physical world entail

spatiotemporal considerations

 Task allocation in mobile settings is a complex

undertaking

 Situation awareness is an important planning ingredient

(e.g., motion profiles)

 Corporate knowledge enhances the ability to get the job

done

 Open and emergent workflows are promising new

directions for collaboration in the real world

slide-43
SLIDE 43

43

Conclusions

 A new world order is emerging

 virtual and physical  personal and social

 Mobility is integral to this fluid world which

 demands malleable and flexible applications  supported by new conceptual frameworks  made possible by middleware  rooted in new technical foundations

slide-44
SLIDE 44

44

Thank you …

… and here is my address http://www.cs.wustl.edu/~roman/