Home Lab: Shared Infrastructure for Home Technology Field Studies A.J. BrushJaeyeon JungRatul MahajanJames Scott.

Slides:



Advertisements
Similar presentations
Facts about Welcome to this video from Ozeki. In this video I will present what makes Ozeki Phone System XE the Worlds best on-site software PBX for Windows.
Advertisements

Distributed Data Processing
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
Service Manager for MSPs
View the home as a computer Ratul Mahajan Microsoft Research IEEE CCW, Oct 2011 Joint work with Sharad Agarwal, AJ Brush, Colin Dixon, Bongshin Lee, Stefan.
Enabling smarter homes for everyone Ratul Mahajan.
POC Security System High security system combining PIN-on-Card, information security, physical access, control and alarm – all in one system.
Test Case Management and Results Tracking System October 2008 D E L I V E R I N G Q U A L I T Y (Short Version)
An Operating System for the Home. HomeOS: An OS for the home HomeOS Video recording Remote unlock Climate control HomeStore Z-Wave, DLNA, UPnP, etc. HomeOS.
Towards commodity smarthomes Ratul Mahajan. Partners in crime A.J. BrushBongshin Lee Sharad AgarwalStefan Saroiu Colin Dixon Frank Martinez.
1 CMSC 691: Systems for Smart Home Automation Nilanjan Banerjee Smart Home Automation University of Maryland Baltimore County
Software Frame Simulator (SFS) Technion CS Computer Communications Lab (236340) in cooperation with ECI telecom Uri Ferri & Ynon Cohen January 2007.
The Home Needs an Operating System (and an App Store) Colin Dixon (University of Washington) October 20 th, 2010 Ratul Mahajan, Sharad Agarwal, A.J. Brush,
A Java Architecture for the Internet of Things Noel Poore, Architect Pete St. Pierre, Product Manager Java Platform Group, Internet of Things September.
SDN and Openflow.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
© Copyright Lumension Security Lumension Security PatchLink Enterprise Reporting™ 6.4 Overview and What’s New.
Keith Wiles DPACC vNF Overview and Proposed methods Keith Wiles – v0.5.
DCS Architecture Bob Krzaczek. Key Design Requirement Distilled from the DCS Mission statement and the results of the Conceptual Design Review (June 1999):
FI-WARE – Future Internet Core Platform FI-WARE Cloud Hosting July 2011 High-level description.
HomeOS CSE 481m April 4, Lots of tech in homes.
HNI: Human network interaction Ratul Mahajan Microsoft dub, University of Washington August, 2011.
Accelerating innovation in home technology Ratul Mahajan.
An Operating System for the Home Colin Dixon (IBM Research) Ratul Mahajan Sharad Agarwal A.J. Brush Bongshin Lee Stefan Saroiu Paramvir Bahl.
Operating Systems.
Lecture 23: The Case for HomeOS Xiaowei Yang. Today’s Plan HomeOS – Why & How Final Review – We’ve learned a lot! Course Evaluation.
INTRODUCTION TO CLOUD COMPUTING Cs 595 Lecture 5 2/11/2015.
Omniran ZigBee SEP2 Smart Grid Use Case Analysis Date: Authors: NameAffiliationPhone Max RiegelNSN
Terminal Services in Windows Server ® 2008 Infrastructure Planning and Design.
Chapter-4 Windows 2000 Professional Win2K Professional provides a very usable interface and was designed for use in the desktop PC. Microsoft server system.
Hands-On Microsoft Windows Server 2008
Technology Overview. Agenda What’s New and Better in Windows Server 2003? Why Upgrade to Windows Server 2003 ?  From Windows NT 4.0  From Windows 2000.
Raffaele Di Fazio Connecting to the Clouds Cloud Brokers and OCCI.
An Operating System for the Home PRESENTED BY KARL AND SALEM.
Successful Deployment and Solid Management … Close Relatives Tim Sinclair, General Manager, Windows Enterprise Management.
Microsoft Active Directory(AD) A presentation by Robert, Jasmine, Val and Scott IMT546 December 11, 2004.
COMP 410 & Sky.NET May 2 nd, What is COMP 410? Forming an independent company The customer The planning Learning teamwork.
HTML+JavaScript M2M Applications Viewbiquity Public hybrid cloud platform for automating and visualizing everything.
Home Lab: Shared Infrastructure for Home Technology Field Studies A.J. BrushJaeyeon JungRatul MahajanJames Scott.
Web Services Igor Wasinski Olumide Asojo Scott Hannan.
Module 7: Fundamentals of Administering Windows Server 2008.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila.
Scalable Systems Software Center Resource Management and Accounting Working Group Face-to-Face Meeting October 10-11, 2002.
PERVASIVE COMPUTING MIDDLEWARE BY SCHIELE, HANDTE, AND BECKER A Presentation by Nancy Shah.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
Choosing a Network Camera The top 10 factors for making the right choice.
INVENTING TECHNOLOGY FOR HOMES AND FAMILIES Speaker: A.J. Bernheim Brush Host: Lori Pollock.
August 3, March, The AC3 GRID An investment in the future of Atlantic Canadian R&D Infrastructure Dr. Virendra C. Bhavsar UNB, Fredericton.
Virtual Classes Provides an Innovative App for Education that Stimulates Engagement and Sharing Content and Experiences in Office 365 MICROSOFT OFFICE.
SDN Management Layer DESIGN REQUIREMENTS AND FUTURE DIRECTION NO OF SLIDES : 26 1.
GRID ANATOMY Advanced Computing Concepts – Dr. Emmanuel Pilli.
Hands-On Microsoft Windows Server 2008 Chapter 5 Configuring Windows Server 2008 Printing.
BOF-1147, JavaTM Technology and WebDAV: Standardizing Content Management Java and WebDAV Juergen Pill Team Leader Software AG Remy Maucherat Software Engineer.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
The Holmes Platform and Applications
The Post Windows Operating System
CMSC 621: Advanced Operating Systems Advanced Operating Systems
Project Target Develop a Web Based Management software suit that will enable users to control Hardware using standard HTTP & Java Applet compatible web.
SuperComputing 2003 “The Great Academia / Industry Grid Debate” ?
GWE Core Grid Wizard Enterprise (
Introduction to Computers
New Mexico State University
Dev Test on Windows Azure Solution in a Box
Ebusiness Infrastructure Platform
Delivering great hardware solutions for Windows
Mark Quirk Head of Technology Developer & Platform Group
Introducing MagicInfo 6
Presentation transcript:

Home Lab: Shared Infrastructure for Home Technology Field Studies A.J. BrushJaeyeon JungRatul MahajanJames Scott

It’s hard to do field studies in homes (at least that’s our experience) Limited number of homes often without geographic diversity Large engineering effort that is not easily re-used

Inspiration All images and information from PlanetLab is a global research network that supports the development of new network services. Since the beginning of 2003, more than 1,000 researchers at top academic institutions and industrial research labs have used PlanetLab to develop new technologies for distributed storage, network mapping, peer-to-peer systems, distributed hash tables, and query processing.

Idea: HomeLab A large number of geographically distributed households, each running a common, flexible framework in which experiments are implemented.

Shared Study Sites Managed homes recruited by research groups Unmanaged homes (DIYers) Homes can volunteer to participate in one or more experiments that different groups are running.

Offers a PC-like abstraction for devices in the home  Simplifies management for users  Simplifies extension by users and developers

Our abstraction Organize the home as a PC Networked devices =~ peripherals Tasks over these devices =~ apps in high-level APIs Adding devices =~ adding a peripheral and driver Adding tasks =~ installing an application Managing networked devices =~ managing files [The home needs an operating system (and an app store), HotNets 2010]

HomeOS overview HomeHub Security…….. HomeStore Z-Wave, DLNA, WiFi, etc. HomeHub centralizes all devices for users and apps HomeStore helps find compatible devices and apps HomeCloud HomeCloud enables remote access and control Climate

HomeOS layering model Device discovery, pairing, and comm. for multiple protocols (e.g., DLNA, Z-Wave) Device capabilities are exported as services Decouples apps and device protocols Allows for differentiation by vendors Primitives are specialized to home setting Simplifies management Apps use high-level abstractions Simplifies app development Manifests enable compatibility checks Application Mgmt. and access control Device functionality Device connectivity..... [An operating system for the home, NSDI 2012]

Prototype Software module based on.NET and C# – ~20K lines of code (~3K kernel) – 18 diverse apps (~300 lines per app) Support for several protocols and devices – Z-Wave, UPnP, DLNA, custom (HTTP) – Dimmers, light switches, cameras, motion sensors, d/w sensors, …. Lab evaluation – Non-technical users could manage and extend home technology – Developers could easily create realistic apps Field evaluation – Deployed in 12 homes – 50 students across 12 institutions have developed apps and drivers

Custom Devices –.NET Gadgeteer Open Source, available on e.g. amazon.com,

Sample 3 rd party applications For more, see

An Operating System for the Home

HomeOS PC-like organization for tech in the home – Ease management and extensibility Running in 12 real homes for 4–8 months Used by 42 student developers at 10 institutions

Where’s my smart-home? Remote lock Keyless entry Climate control Alerts w/Photos Energy monitoring Tasks (software) Devices (hardware)

Gap between potential and reality Envisioned by many researchers and companies Struggling to break into the mainstream – Despite commercial availability since 1970s

Poor extensibilityManagement pain or Adding devices and tasks Understanding the gap Pre-Study of homes with modern automation – 31 people across 14 households – Enjoyed convenience, peace of mind and control – But, had difficulty in two key areas: Access control

Gap – Details Hardware inflexibility: networking wires, low- voltage wiring Extensibility: Organic growth Management: Security – Currently the choice is between security and inconvenience (guest / remote access)

Gap – Span of our work Hardware inflexibility: networking wires, low- voltage wiring Extensibility: Organic growth Management: Security – Currently the choice is between security and inconvenience (guest / remote access)

Existing abstractions for home tech Network of devices – Interoperability protocols DLNA, Z-Wave, Speakeasy, … Open, low-level device access Appliance – Monolithic systems Crestron, Control4, EasyLiving, … Fixed tasks over fixed devices Climate control Remote monitoring Management is still hard Users must manage each device/task Developers must deal directly w HW Management is still hard Users must manage each device/task Developers must deal directly w HW Extensibility is still hard Closed set of tasks Closed set of devices Extensibility is still hard Closed set of tasks Closed set of devices

The home as a PC View the home as a computer Networked devices ≈ peripherals (w/drivers) Tasks over these devices ≈ applications Adding devices ≈ plugging in a peripheral Adding tasks ≈ installing an application Managing networked devices ≈ managing files

HomeOS: An OS for the home HomeOS Video recording Remote unlock Climate control HomeStore Z-Wave, DLNA, UPnP, etc. HomeOS logically centralizes all devices Users interact with HomeOS, not individual devices HomeStore helps find compatible devices and apps

Challenges in the home Non-expert users must become network managers – Need rich, but easy to use management tools – E.g., misconfigured app may be able to unlock a door Developers struggle to build apps – Heterogeneity in tasks, control, device and topology New classes of devices arrive frequently – E.g., Kinect, energy meters, connected TVs, etc. Manageability Extensibility

HomeOS architecture Application layer Management layer Device functionality layer (DFL) Device connectivity layer (DCL) Tasks Control Device Topological Heterogeneity source handled

DCL and DFL (Drivers) DCL provides basic connectivity to devices – Discovery – Abstract differences in protocols – Connectivity DFL exports device functionality as a service – Services are protocol-independent – Exposed as roles and operations – Kernel does not parse or understand services – Allows subscriptions (e.g. when light is toggled) – Applications do not require changes App layer Mgmt layer DFL DCL

Rules & Operations Layer of Indirection between protocols and apps DimmerPTZ Camera Set(level) Get()  level GetImage()  bitmap Up(), Down(), Left(), Right() ZoomIn(), ZoomOut() App layer Mgmt layer DFL DCL

Management Layer Requirements Apps as security principals Easy-to-verify settings Time-based access control Mental models are based on research in 14 homes (31 people) with home automation already installed.

Management Layer Access control policy: Datalog-based rules – (resource, userGrp, app, t start, t end, dayOfWeek, priority, accessMode) Rules include time and application Allow users to query rules to verify their intent Easier to reason about than ACLs in current OSes Scales better than 2-D grid of users and devices App layer Mgmt layer DFL DCL

Datalog advantages The Datalog abstraction meets our requirements – Simplicity (once you discard advance features (not needed in homes) Users can configure time-based policies as well as restrict an application to specific devices They can also easily understand their configuration by getting inverse views such as: – “which applications can access the door?” – “which devices can be accessed after 10 PM?”, or – “can a user ever access the back door lock?” Definitions can easily be visualized or expresses as English sentences – “Allow residents to access the living room speakers using the music player from 8 AM to 10 PM.”

Application layer Apps compose abstract rules from DFL Management layer interposes on accesses Manifests help with compatibility testing – Lists of mandatory and optional features – E.g., mandatory: {TV, SonyTV}, {MediaServer} optional : {Bass Speaker} App layer Mgmt layer DFL DCL

Performance – Latency Two orders of magnitude lower than the interactive response time guideline of 100 ms

Performance – Throughput Well-beyond what was required for any of our current deployments

Evaluating HomeOS Key questions: Can non-technical users manage HomeOS? Can developers easily write apps and drivers? Method: Field experiences – 12 real homes and 42 student developers Controlled experiments

Field experiences: The good Users could manage their HomeOS deployments Users particularly liked the ability to organically extend their technology Developers found the programming abstractions and layering to be “natural”

Field experiences: The bad Users found it hard to diagnose faults Interoperability protocols can be fragile Not all device features may be exposed over the network

Controlled Evaluations 10 developers asked to write one of two realistic apps – “music follows the lights” or “custom lights per user” – No prior experience with HomeOS – 8 finished in under 2 hours 12 non-expert users given 7 representative mgmt. tasks – No training with management interface – 77% completion rate; 89% after removing an outlier task Performance results in the paper

Conclusions HomeOS eases extensibility and management by providing a PC abstraction for home technology Still lots of exciting things to do! – What core capabilities should be in every home? – Can we provide non-intrusive identity inference?

Brainstorm Microsoft Bob (1995)

EXTRA

REST and SOAP REST Architecture style GET, POST, PUT, DELETE Only HTTP HTML, XML, JSON SOAP Protocol Service specific HTTP, SMTP, TCP, … XML is verbose

Datalog Datalog is in many respects a simplified version of general Logic Programming – Fact: “John is the father of Harry” – Rule: “If X is a parent of Y and if Y is a parent of Z, then X is a grandparent of Z” Datalog – Fact: father(Harry, John) – Rule: grandpar(Z, X) :- par(Y, X), par(Z, Y)

Scope of our work Abstractions and Metaphors HomeOS – 20K lines of C#, 3K of that in the kernel – About 2.5 years Drivers Test applications (18) – Each < 300 lines of code, a few hours to develop – Other developers also found development easy