Video of the Day LA Express Park Explained 1 Proposal One - - PowerPoint PPT Presentation

video of the day
SMART_READER_LITE
LIVE PREVIEW

Video of the Day LA Express Park Explained 1 Proposal One - - PowerPoint PPT Presentation

Video of the Day LA Express Park Explained 1 Proposal One proposal/team, 1 page q Team members q Concise description of project q Responsibilities of each member q Specific equipment needed


slide-1
SLIDE 1

Video of the Day

Ø LA Express Park Explained

1

slide-2
SLIDE 2

Proposal

Ø One proposal/team, 1 page

q Team members q Concise description of project q Responsibilities of each member q Specific equipment needed

Ø Written proposal due: 9/20th, 11:59pm

q Email to Mo 2

slide-3
SLIDE 3

Proposal Presentation

Ø 8 min per group

q Including 3 min for questions

Ø Your elevator pitch! Ø Email Mo your slides by 11am on 9/20th

q All use Mo’s laptop à reduce context switches

  • 3
slide-4
SLIDE 4

Agilla: Mobile Agent Middleware for Wireless Sensor Networks

Che Cheny nyang ang Lu Lu

Computer Science and Engineering

slide-5
SLIDE 5

5

Motivation

Ø Adaptive applications in wireless sensor networks Ø Adapt to changes in

q the environment q the network q user requirements

slide-6
SLIDE 6

6

Example: Forrest

Ø Three applications: 1) Environmental Monitoring, 
 2) Fire Detection, 3) Fire Tracking

slide-7
SLIDE 7

7

Example: Forrest with Agilla

  • Env. monitoring agent

Fire detection agent Fire tracking agent

Ø Sensor network as a shared computing resource

q

Flexible application deployment

slide-8
SLIDE 8

8

Example: Cargo Tracking

Ø Thousands of containers leave/join network per day Ø Software need to be changed on the fly due to

q

Departure and arrival of containers

q

Container’s country and company

q

Change in security levels and policies

q

Change in tracking technologies

Ø Agilla Agilla: support adaptive adaptive applications in wireless sensor networks

slide-9
SLIDE 9

9

Agilla’s System Architecture

TinyOS

Node @ (1,1)

Tuplespace

Agilla Middleware Agents TinyOS

Node @ (2,1)

Tuplespace

Agilla Middleware Agents

migrate remote access

Neighbor List Neighbor List Middleware Services Middleware Services

slide-10
SLIDE 10

10

Agilla’s Computational Model

Clone

  • r

Migrate Code Stack Heap Condition Codes PC Two variants of each: 1) Strong (code + state) 2) Weak (code only)

slide-11
SLIDE 11

11

Mobile Agent Model

Ø Mobile agent: unit of execution that can move across hosts Ø Multiple mobile agents may share a host Ø Spatiotemporal decoupling => need shared data space with uniform interfaces

slide-12
SLIDE 12

12

Tuple Space-Based Coordination

Ø Content-addressable shared memory

q

Tuple – A set of data fields

q

Template – A pattern that matches particular tuples

Ø Provides spatiotemporal decou

  • upling in unreliable networks

“out” “rout” “in”

Tuplespace Tuplespace

“in”

slide-13
SLIDE 13

13

Tuple Space Model

Ø Tuple: collection of data

q

<15, “str”, false>

Ø Tuple space: shared data space containing tuples Ø Template: patterns which match tuples

q

<15, *, false> matches <15, “str”, false>

Ø Common tuple space operations:

q

  • u
  • ut(t): add tuple t to tuple space

q

rd(T) rd(T): copy tuple matching template T from tuple space

q

in in(T) (T): remove tuple matching template T from tuple space

q

re regrxn(T, c): grxn(T, c): execute code segment C when tuple matching template T is placed in tuple space

slide-14
SLIDE 14

14

Agilla Tuple Space API

Ø Remotely accessible localized tuple spaces Ø Stores context information Ø Facilitates inter-agent communication

  • ut:
  • insert

in:

  • remove

rd:

  • read

inp:

  • probing remove

rdp:

  • probing read

regrxn: register reaction deregrxn: deregister reaction rout: insert rinp: probing remove rrdp: probing read rrdpg: probing group read (1-hop)

Local Remote

Tuplespace

in

  • ut
slide-15
SLIDE 15

15

Location-Base Addressing

Ø Nodes are addressed by location

(3,1) (3,2) (3,3) (2,2) (1,1) (1,3)

clone to (3,3) clone to (3,1)

Fire Detection Agent

slide-16
SLIDE 16

16

Implementation on TinyOS 1.1.13

Ø Agilla is available for Mica2 and MicaZ motes

q

4 agents/node Ø Agent Injector

q

Written in Java

q

Remote Injection via RMI Ø Key Challenges

q

Network bandwidth

  • Compact instructions

q

Memory

  • ROM: 54.7KB of 128KB
  • RAM: 3.5KB of 4KB

q

Message loss

  • Agent-level ARQ
slide-17
SLIDE 17

17

Experimental Set-up

Ø 6x9 Mica2 Mote 
 Testbed Ø Multi-hop Grid Ø One base station

slide-18
SLIDE 18

18

Performance Evaluation:

migration vs. remote tuple space access

Migration instructions are more reliable because of hop-by-hop acknowledgements… …but remote tuplespace operations have less overhead

slide-19
SLIDE 19

19

Agilla Instruction Execution Times

Local Operations Remote Operations

slide-20
SLIDE 20

20

Experiences

Ø Fire Detection & Tracking

q

Presented at IPSN 2005

Ø Intruder Detection and Tracking

q

Agents guard network perimeter and follow intruders

q

Periodically report intruder location to base station

Ø Cargo & Inventory Management

q

In collaboration with Boeing

q

Mobile agents load manifests from RFID, find items, detect security breaches, and send alert to Internet gateways.

q

Demo at SenSys 2005

slide-21
SLIDE 21

21

Fire Tracking Video

Video available at: http://mobilab.wustl.edu/projects/agilla

slide-22
SLIDE 22

22

Related Work

Ø Distributing inanimate code modules

q

XNP [xbow’03], Deluge [sensys’04], MNP [icdcs’05], 
 SOS [mobisys’05]

q

Maté/Bombilla [asplos’02]

Ø Mobile Agent-Like Middleware

q

Sensorware [mobisys’03]

  • Weak migration only

q

Smart Messages [Kang‘04]

  • No remote interactions
  • Single thread per node
slide-23
SLIDE 23

23

Agilla Summary

Ø Mobile agent middleware simplifies application deployment & increases network flexibility Ø Agilla middleware services

q

Agent mobility

q

Tuple space-based coordination

q

Location-centric addressing

q

Context discovery

Ø Empirical results demonstrate Agilla is re reliable liable and effic efficien ient

slide-24
SLIDE 24

24

C.-L. Fok, G.-C. Roman and C. Lu, Agilla: A Mobile Agent Middleware for Self-Adaptive Wireless Sensor Networks, ACM Transactions on Autonomous and Adaptive Systems, Special Issue

  • n Self-Adaptive and Self-Organising Wireless Networking

Systems, 4(3), Article 16, July 2009. Agilla: http://mobilab.wustl.edu/projects/agilla

  • Source Code
  • Documentation
  • Tutorials
  • Experience Reports

References

slide-25
SLIDE 25

Agimone: Middleware Integration

  • f Sensor and IP Networks
  • Chenyang Lu

Computer Science and Engineering

slide-26
SLIDE 26

26

Motivating Application: Cargo Tracking

Shipping Yard Ship Train Truck Customer, Shipper, DHS, CBP

Sensor Network Sensor Network Sensor Network Sensor Network

IP Network

slide-27
SLIDE 27

27

Problem Statement

Ø Weak radio => low radio range => isolated networks => reduced utility Ø Communication restrictions can be eased by connecting WSNs using a common IP network Ø Custom application-specific software is written to connect sensor and IP networks

q

Sensor and IP networks have vastly different characteristics and capabilities

q

Not reusable, error prone, inflexible

slide-28
SLIDE 28

28

Background: Two Distinct Middlewares

TinyOS

Node (1,1)

Tuple Space Neighbors Neighbors

Agilla Middleware MICA2 Mote Agents TinyOS

Node (2,1)

Neighbors Neighbors

MICA2 Mote Agents

migrate remote access

Agilla Middleware

Tuple Space

Java VM

Mobile Host 1

Limone Server Agents Java VM

Mobile Host 2

Agents

migrate remote access

TS AQL TS AQL TS AQL TS AQL TS AQL TS AQL TS AQL TS AQL

Limone Server

Agilla: Sensor Network Middleware Limone: IP Network Middleware

  • Mobile Agents
  • Host-level tuple spaces
  • Host-level neighbor list
  • Mobile Agents
  • Agent-level tuple spaces
  • Agent-level neighbor list

Severe resource limitations Resource rich

slide-29
SLIDE 29

29

Programming Models

Ø Agilla byte code Ø Hosted on custom VM Ø Handful of well-known data types Ø Java Ø Hosted on Java VM Ø Rich data types

Agilla Limone

slide-30
SLIDE 30

30

Agimone

Network Architecture System Components

slide-31
SLIDE 31

31

Agimone Services

Ø Shared data space

q

AgimoneAgent has own Agilla TS

q

Agilla agents access TS directly

q

AgimoneAgent wraps Agilla TS in Limone TS API

Ø Sensor network discovery

q

AgimoneAgent advertises self with Limone Registry

q

Limone Registry distributes ad to

  • ther AgimoneAgents

q

Ads stored in AgimoneAgent’s Agilla tuple space

slide-32
SLIDE 32

32

Agimone Services

Inter-network Migration

Ø Multi-step process Ø Though internally complex, appears simple to Agilla agent developer

slide-33
SLIDE 33

33

Cargo Tracking Revisited

Ø Watchdog Agents

q

Monitors sensors

q

Sends alert to base station

q

Port authority’s Limone agent reacts to it

q

17 lines of Agilla code, 11 lines of Java code

Ø Intrusion Search Agent

q

Searches multiple WSNs for alert tuples

  • Autonomously crosses WSN

boundaries

q

23 lines of Agilla code, no additional Java code

slide-34
SLIDE 34

34

Experimental Setup

100Mbps Ethernet IBM R40 Laptop

  • 1.5GHz Pentium M
  • 512MB RAM
  • Windows XP

Mica2 Mote on Gateway

  • 7.4MHz Atmel 128L
  • 4KB RAM
  • TinyOS

115kbps serial

slide-35
SLIDE 35

35

Performance: Agimone Services

Ø TS operations between mote and PC take 10-11 ms, regardless of type or direction Ø Cross-WSN migration takes ~85 ms Ø As size of agent increases, serial link becomes bottleneck

slide-36
SLIDE 36

36

Performance: Middleware Overhead

Ø Native implementation done using simple message passing

q

27.39ms faster to move in and out of one WSN

q

78.39ms faster round-trip across two WSNs In-and-Out latency End-to-End Migration Latency

slide-37
SLIDE 37

37

Other Integration Frameworks

Ø Hourglass [J. Shneidman, et al. 04] and Stream-Based Overlay Networks [P. Pietzuch, et al. 06]

q

Routes data from WSN to Internet, but does not support applications

Ø Tenet [R. Govindan, et al. 05]

q

PCs directly control sensors; no support for autonomous task migration

Ø SERUN [J. Liu, et al. 05]

q

Embedded microservers control sensors; tasks cannot migrate across microservers

Ø IrisNet [P. Gibbons, et al. 03]

q

Applies database abstraction to desktop PCs with sensing peripherals (e.g., webcams)

slide-38
SLIDE 38

38

Conclusions

Ø Agimone middleware enables integration of sensor and IP networks. Ø Cargo tracking application demonstrates that Agimone simplifies development. Ø Enhance productivity at the cost of moderate performance overhead.

slide-39
SLIDE 39

39

  • G. Hackmann, C.-L. Fok, G.-C. Roman and C. Lu, Agimone:

Middleware Support for Seamless Integration of Sensor and IP Networks, International Conference on Distributed Computing in Sensor Systems (DCOSS'06), June 2006. http://www.cs.wustl.edu/mobilab/projects/agimone/

  • Source Code
  • Documentation
  • Tutorials
  • Experience Reports

References