Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

45
Mobile and Pervasive Computing - 6 Case Study – Oxygen Project Presented by: Dr. Adeel Akram University of Engineering and Technology, Taxila,Pakistan http://web.uettaxila.edu.pk/CMS/SP2014/ teMPCms http://oxygen.lcs.mit.edu/ Hari Balakrishnan http://nms.lcs.mit.edu/

description

http://oxygen.lcs.mit.edu/. Hari Balakrishnan http://nms.lcs.mit.edu/. Mobile and Pervasive Computing - 6 Case Study – Oxygen Project. Presented by: Dr. Adeel Akram University of Engineering and Technology, Taxila,Pakistan http://web.uettaxila.edu.pk/CMS/SP2014/teMPCms. Vision & Goals. - PowerPoint PPT Presentation

Transcript of Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Page 1: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Mobile and Pervasive Computing - 6

Case Study – Oxygen Project

Presented by: Dr. Adeel AkramUniversity of Engineering and Technology,

Taxila,Pakistan

http://web.uettaxila.edu.pk/CMS/SP2014/teMPCms

http://oxygen.lcs.mit.edu/Hari Balakrishnanhttp://nms.lcs.mit.edu/

Page 2: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Vision & Goals

Pervasive, human-centered computing Computation embedded into human life, like the

Oxygen we breathe Improve human productivity and comfort

Move computation into the mainstream of our lives Improve ease-of-use and accessibility

Develop a deep understanding of how to develop, deploy, and manage systems of systems in dynamic settings

Build to use; use to build

Page 3: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

“Situated”computing

Projector

Phone

Camera array

Microphone array

Speech & vision

- Natural, peceptual interfaces (speech, vision)- Handheld, mobile computers (e.g., Handy21)- Situated computing resources & sensors (e.g, Enviro21)- Numerous other networked devices. . .- And tons of software making all this work together!

The Oxygen Environment

Page 4: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

What Oxygen is… and isn’t A system of systems

Several diverse component systems designed by different minds

A computing environment A philosophy for developing and deploying future

computing environments It is not:

Designed by committee A panacea for all computing ills!

Page 5: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

This talk

Cross-cutting systems design and implementation issues for Oxygen

Design considerations and goals Six considerations to keep in mind Annotated using specific examples

Context-aware networking walkthrough Distributed systems and networking slant

We don’t have all the answers (yet!)

Page 6: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Configuration and managementC1. Take the human out of the configuration and

maintenance loop Cause of much frustration today

Setting up a network, device support, software versions

Deploying distributed network services Examples

Self-configuring networks Self-updating software Run-time introspection

Page 7: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Software adaptation

C2. Expose resource availability and constraints to software & applications

Energy: compiler techniques; application-specific, low-energy routing

Network bandwidth, latency: monitor network conditions and export via API

Gates (computation) Configure gates using smart compilers Application-partitioning in situated computing

Page 8: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Mobility and nomadicity

C3. Design software for mobility and nomadicity Services will join, move, fail, recover, disappear:

dynamic resource discovery Data will move: access to files from anywhere Users will move across multiple networks: vertical

mobility based on performance Software will move: updates/upgrades Running programs will move: on-the-fly

application-partitioning

Page 9: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Context-awareness

C4. Develop infrastructure to expose environmental context to applications

Understand user and application intent Location-awareness Information management for individuals and

communities: context-sensitive query handling Speech interfaces across domains Semantic web of information in documents and

service descriptions (“synonyms”)

Page 10: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Security and privacy

C5. Address user privacy and security from the beginning

Context-awareness raises many privacy concerns Location-tracking is problematic; a private location-

support system is better Security concerns abound

File system access Resource discovery system Anonymous, personalizable devices

Page 11: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

User-empowerment

C6. Empower users to “program” Oxygen Allow users to compose functionality and express

requirements Gentle-slope language

Scale from novices to over-eager high-school kids and undergraduates

Robustness via introspective operation

Page 12: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Device Technologies

E21 Intelligent Spaces Space centered computation, embedded in ordinary

environment Populated by cameras, microphones, displays, sound

output Controls for physical entities like curtains, lighting,

door-locks People interact in Intelligent Spaces naturally, using

speech, gestures

Page 13: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Device Technologies

H21 Mobile Devices Person centered devices also the Universal Personal

Appliances Equipped with perpetual transducers such as

microphone, speakers Auto reconfigurable, light weight, inexpensive Anonymous generic devices

Page 14: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Device Technologies

N21 Network Devices Networks make it easy to establish ad-hoc

collaborating communities of computer devices

Page 15: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

E21- Intelligent Spaces

Connected to sensors, suitably encapsulated into physical objects

Communicate with each other and nearby handheld devices (H21) through Dynamically Configured Networks (N21)

E21 provide computational power throughout the system to Communicate with people Support Oxygen User Technologies Monitor and control their environment

E21 software is robust, and configurable among themselves

Page 16: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

H21 – Mobile Devices

Generic devices also called Universal Personal Appliances Do not carry large amount of permanent local state They configure themselves according to the person

using them Being small and lightweight, they have few

transducers They have less computational power than E21 Can be configured to be used as radio, cellphone or

even TV Power efficient, the software controls the power

consumption

Page 17: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Intelligent Rooms

Capable of Detection motion Recognize voice patterns Identify a person by face

sensors

Page 18: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

H21 - Prototype

Page 19: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

N21 – Network Technologies Networks make it easy to establish ad-hoc

collaborating communities of computer devices Through algorithms, protocols and middleware, they

Configure collaborative regions automatically Create topologies and adapt them to change Provide automatic resource and location discovery Provide secure, authenticated and private access

N21 networks use intentional names rather than conventional static names

They support location discovery through proximity

Page 20: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Software Technologies

Software systems adapt - to user, to environment, to change, to failure

Project Oxygen's software architecture provides mechanisms for Building applications using distributed components Customizing, adapting and altering component

behavior Person-centric rather than device-centric security Disconnected operation and nomadic code

Eternal Computation: The system must never shut down or reboot though components are upgraded, removed and reinstalled

Page 21: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Perceptual Techniques

Two types of Perceptual Techniques are used Spoken Interaction

Users and Machines engage in interactive conversations

Highly efficient Visual Interaction

Users interact with perceptual modalities Use of body language and gestures

Page 22: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Spoken Interaction

Page 23: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Visual Interaction

It consists of Visual perception Subsystem

It recognizes and classify objects and actions Complements spoken language subsystem

Visual rendering Subsystem Creates 3D scenes from 2D data Provide macroscopic view of application supplied data

Page 24: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

User Technologies

Knowledge Access Access any time, anywhere, almost anything

Automation Automate control of physical environment

Collaboration Connecting people

Page 25: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Oxygen in action:Context-aware networking

• Resource discovery and secure information access

• Vertical mobility

• “Spontaneous” networking • Context-aware speech-driven

active maps (location-specific)

Page 26: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Self-configuring networks

Software physical layer allows flexible (de)modulation, parameter adaptation

Self-updating software to overcome compatibility problems

Topology creation using decentralized protocols in ad hoc networks

Network monitoring across multiple networks for better routing decisions

Page 27: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Edison’s radio

pages = (BlockSize/4096) +1; if ((guppi_open("guppi0",pages)) < 0 ) exit(0); guppi_start_rec(); for ( i=0 ; i< NumBlocks ; i++) { pdata = (char *)guppi_rec_buf(); for ( j=0 ; j< IntsPerBlock ; j++) { RealTap_ptr=RealTap; ImagTap_ptr=ImagTap; OutputDataReal = 0.0; OutputDataImag = 0.0; a=cos(TwoPi * CenterFreq / (float)SampleFreqIn * index); b=sin(TwoPi * CenterFreq / (float)SampleFreqIn * index); index += DecFactor; for ( k=0; k< FilterLength ; k++, pdata++) { OutputDataReal += ((float)*pdata * RealTap[k]); OutputDataImag += ((float)*pdata * ImagTap[k]); ...

Spectrumware radio

Software physical layers

Page 28: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Location-awareness

Goal: System that provides information about physical location; must work indoors too

Several goals must be met User privacy Decentralized administration Cost-effectiveness Portion-of-a-room granularity Network heterogeneity

GPS-oriented solutions do not provide required accuracy, reliability, or cost-effectiveness

Page 29: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Traditional approach

Networked sensor grid

Location DB

ID = u

ID = u?

Responder

Problems: privacy; administration; granularity; cost

Page 30: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Cricket

Beacon

No central beacon control or location databasePassive listeners + active beacons preserves privacyStraightforward deployment and programmability

space = “a1”

space = “a2”

Pick nearest to infer spaceListener

Page 31: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Problems

Location granularity Interference

Lack of explicit beacon coordination Energy consumption Listener inference algorithms

Page 32: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Every problem is an opportunity Pure RF is problematic

Too imprecise (large granularity) In-building propagation is hard to model

Solution: use RF + ultrasound (US)

Beacon

Listener

• Speed of light >> speed of sound! (c = 1 foot/ns vs v = 1 foot/ns)• When first RF bit arrives, note time• When US pulse detected, check time difference (dt)• Distance estimate = v * dt

RF data(spacename)

US pulse

Page 33: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

More opportunities

Interference Lack of coordination hampers RF-US correlation US has tremendous multipath effects

Multiple millisecond reflections Randomized transmission schedule

loop:pick r ~ U[R1,R2];delay(r);xmit(RF,US); // takes time = S/b for data to reach

Can determine optimal R1 and R2 analytically

Page 34: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Technology Beacon: 418 MHz AM RF and 40KHz US Listener correlates RF and US samples

Interference from another beacon’s US Reflections (multipath) are problematic

Maximum-likelihood estimator at listener that picks minimum distance of all modes

LOW bandwidth RF is good!

t

RF

US received US from elsewhere

Page 35: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Resource discovery

Services advertise/register resources Consumers make queries for services System matches services and consumers This is really a naming problem

Name services and treat queries are resolution requests

Problem: most of today’s naming system name by (network) locations

Names should refer to what, not where

Page 36: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Responsiveness Late binding of name to location to handle failover, mobility

Robustness

Easy configuration Name resolvers self-configure into overlay network

Expressiveness

Decentralized, cooperating resolvers

Intentional Naming System (INS)

Names are intentional; apps know what, not where

Scalability Aggressive partitioning of namespace and delegation

Page 37: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Intentional names

[service = lcs.mit.edu/thermo][building = NE43 [floor = 5 [room = *]]][temperature > 250C]data

[service = mit.edu/camera][building = NE43

[room = 510]][resolution=800x600][access = public][status = ready]

• Expressive name language (like XML)• Providers announce attributes• Clients make queries

– Attribute-value matches– Wildcard matches– Ranges

Page 38: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

INS architecture

[service = camera][building = NE43

[room = 510]]

Intentional name

Intentional name resolvers form an overlay network

Late binding: integrate resolution and message routing

image

Lookup

camera510.lcs.mit.edu

Resolver self-configuration

Page 39: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Vertical mobility

Devices with multiple network choices Software physical layers enhance this capability

How to pick best network at any time, per-application?

Mobile-IP-like approaches don’t work well Per-application choices impossible Inefficient routing Deployment is hard Not all mobile applications are equal

Page 40: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Mobility is an end-to-end issue! Use secure updates to DNS to track host IP End-nodes negotiate connection migration in a secure way

DNS

Migrate using Diffie-Hellmanvmobiled(picks best network for connections)

Page 41: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Oxygen is a system of systems Pervasive, human-centered, dynamic environment Perceptual, intentional interfaces using speech, vision, and

writing Programmable and composable architecture General approaches to handling a variety of contexts (e.g.,

location, information, speech) Networking software and services Novel hardware (and associated software)

RAW-based configurable, energy-efficient handhelds Situated computing architectures

Page 42: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Summary: How might we cope? C1. Eliminate human involvement in configuration C2. Expose resources to software C3. Design for mobility and nomadicity C4. Expose and exploit environmental context C5. Pay close attention to privacy and security C6. Enable user programmability

Page 43: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Questions???

Page 44: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

References

http://oxygen.lcs.mit.edu/ for Oxygen vision, technologies, and research agenda

http://nms.lcs.mit.edu/ for details on Spectrumware, Cricket, INS, and Migrate

Page 45: Mobile and Pervasive Computing - 6 Case Study – Oxygen Project

Assignment # 2

Write Note on Spectrumware, Cricket, INS, and Migrate