INTERNET OF THE THINGS (IoT): An introduction to wireless sensor networking middleware

Similar documents
Data Management in Sensor Networks

Technology offer: Machine-to-Cloud Management System of Distributed Heterogeneous Devices

Overview of the Internet of things

Sensor Devices and Sensor Network Applications for the Smart Grid/Smart Cities. Dr. William Kao

Internet of things (IOT) applications covering industrial domain. Dev Bhattacharya

Cloud Development of Medical Systems By Oleg Kruk, Embedded Research Lab Leader, DataArt

Protocols and Architectures for Wireless Sensor Netwoks. by Holger Karl and Andreas Willig

Ad hoc and Sensor Networks Chapter 1: Motivation & Applications

A Middleware for OSCAR and Wireless Sensor Network Environments

Challenges. Department of Informatics University of Oslo. Presenter. October 25, 2011

Distributed System: Definition

System types. Distributed systems

Cross-Platform Software Considerations for Internet of Things

Service and Resource Discovery in Smart Spaces Composed of Low Capacity Devices

The Internet of Things (IoT)

Manjrasoft Market Oriented Cloud Computing Platform

Tier Architectures. Kathleen Durant CS 3200

Design Considerations for a Wireless Sensor Network Architecture Attached to a Cognitive Training System for the Elderly

M 2 M IWG. Eclipse, M2M and the Internet of Things. Overview. M 2 M Industry WorkGroup! M2M?

Virtual machine interface. Operating system. Physical machine interface

NanoMon: An Adaptable Sensor Network Monitoring Software

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

Distribution transparency. Degree of transparency. Openness of distributed systems

Introduction: Why do we need computer networks?

Development of cloud computing system based on wireless sensor network protocol and routing

Manjrasoft Market Oriented Cloud Computing Platform

Introduction to Cloud Computing

Distributed Systems Lecture 1 1

Wireless Sensor Network: Challenges, Issues and Research

THE RTOS AS THE ENGINE POWERING THE INTERNET OF THINGS

CS550. Distributed Operating Systems (Advanced Operating Systems) Instructor: Xian-He Sun

NanopowerCommunications: Enabling the Internet of Things OBJECTS TALK

LinuxWorld Conference & Expo Server Farms and XML Web Services

Base One's Rich Client Architecture

Enterprise Application Enablement for the Internet of Things

WIND RIVER INTELLIGENT DEVICE PLATFORM XT

Internet of Things. Reply Platform

TUM & Siemens Corporate Technology. The "Internet of Things" for industrial applications

Operating Systems for Wireless Sensor Networks: A Survey Technical Report

Design of Remote data acquisition system based on Internet of Things

Chapter 3. Database Environment - Objectives. Multi-user DBMS Architectures. Teleprocessing. File-Server

MOTEWORKS. Key Features. Overview

Distributed Systems. Examples. Advantages and disadvantages. CIS 505: Software Systems. Introduction to Distributed Systems

System Models for Distributed and Cloud Computing

INTERNET OF THINGS Recent Advances and Applications MengChu Zhou, Tongji University and New Jersey Institute of Technology

DESIGN ISSUES AND CLASSIFICATION OF WSNS OPERATING SYSTEMS

INTELLIGENT INDUSTRIAL FOG COMPUTING: AN OVERVIEW OF THE WI-NEXT ARCHITECTURE FOR INDUSTRIAL INTERNET OF THINGS.

MIDDLEWARE FOR INTERNET OF THINGS

INTRODUCTION TO WIRELESS SENSOR NETWORKS. Marco Zennaro, ICTP Trieste-Italy

IoT Solutions for Upstream Oil and Gas

Novel AMR technologies and Remote Monitoring

Distributed Systems Architectures

Flexible Architecture for Internet of Things Utilizing an Local Manager

Trademark Notice. General Disclaimer

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

The EMSX Platform. A Modular, Scalable, Efficient, Adaptable Platform to Manage Multi-technology Networks. A White Paper.

Grid Computing Vs. Cloud Computing

Internet of Things based approach to Agriculture Monitoring

E-Business Technologies for the Future

Objectives. Distributed Databases and Client/Server Architecture. Distributed Database. Data Fragmentation

BROWSER-BASED HOME MONITOR USING ZIGBEE SENSORS

Distributed System Principles

Hardware & Software Solutions

Future Directions for Internet of Things Work

NVM memory: A Critical Design Consideration for IoT Applications

A Cloud-Assisted Internet of Things Framework for Pervasive Healthcare in Smart City Environment

Middleware support for the Internet of Things

Internet of Things: Consumerisation of Technology.

CHAPTER 7 SUMMARY AND CONCLUSION

Towards Lightweight Logging and Replay of Embedded, Distributed Systems

High rate and Switched WiFi. WiFi QoS, Security 2G. WiFi a/b/g. PAN LAN Cellular MAN

Evolving from SCADA to IoT

JoramMQ, a distributed MQTT broker for the Internet of Things

Study of Wireless Sensor Networks as a Software Engineering Approach

Middleware and Distributed Systems. Introduction. Dr. Martin v. Löwis

Syslog Analyzer ABOUT US. Member of the TeleManagement Forum

The Sierra Clustered Database Engine, the technology at the heart of

How To Understand The Power Of The Internet Of Things

IMPORTANCE OF COMPUTING HEALTH MANAGEMENT

Asset Tracking System

Standardizing the Internet of Things; Boiling the Ocean

INTERNET OF THINGS 1

Distributed Systems and Recent Innovations: Challenges and Benefits

A Framework for End-to-End Proactive Network Management

Virtual Machine in Data Center Switches Huawei Virtual System

Transcription:

1 INTERNET OF THE THINGS (IoT): An introduction to wireless sensor networking middleware Dr Antoine Bagula ISAT Laboratory, University of Cape Town, South Africa

Goal of the lecture 2 The lecture intends to introduce the key concepts behind an Internet of Things (IoT) middleware by Positioning the middleware into a ubiquitous sensor networking stack. Describing the main approaches associated with an IoT middleware. Highlighting some of the research works illustrating these middleware approaches.

I. Outline 3 A. What is the IoT? B. IoT Architecture C. What is a middleware? D. Middleware approaches

A. What is IoT? 4 Based on what we know is true today (Conservative) World Population 6.3 Billion 6.8 Billion 7.2 Billion 7.6 Billion Connected Devices 500 Million 12.5 Billion 25 Billion 50 Billion Image source Cisco. Connected Devices More connected devices than people Per Person 0.08 1.84 3.47 6.58 2008 2003 2010 2015 2020

What is IoT? 5 The Internet is a world-wise network of interconnected computer networks, based on a standard communication protocol (TCP/IP) The Internet of Things (IoT) is o a world-wide network of interconnected objects which are outfitted with sensors, actuators and RFID devices. o These devices are uniquely addressable and use standard communication protocols in a heterogeneous networking environment including objects of totally different functionality, technology and application fields.

What is IoT? 6 Building upon the revolutionary success of mobile communication, Internet networks, the advances in sensor, RFID, Nano and other smart technologies, the IoT expands the current Internet with the objective of o Connecting objects outfitted with sensor and RFID devices (smart objects). o Detecting changes in the physical status of connected things in real-time. o o Identifying and localizing the smart objects. Monitoring the changes in the physical status of connected things.

What is IoT? 7

What is IoT? 8

B. IoT architecture 9 Source: ITU-T study group on Climate Change

IoT architecture 10 The Figure above reveals the different layers of a Ubiquitous Sensor Network. A sensor networking layer (the bottom layer) where sensor and RFID devices are launched into the environment to sense what is happening and report to sink nodes via USN-bridges A USN access networking layer (the second layer) where the combination of USN-bridges and sink nodes are used as hosts to an access network for the first-mile connectivity of a Next Generation Network (NGN) of gateways

IoT architecture 11 A USN middleware layer (third layer) is used as an interface between the NGN and the application layer. A USN applications layer (the last layer) where different applications are used to perform tasks related to logistics, structural health monitoring, agriculture control, disaster Surveillance, military field surveillance and disaster/crisis management.

C. What is a Middleware? 12 Databases Operating Systems Middleware Systems Networking Programming Languages Distributed Systems A middleware is dispersed among many disciplines

Middleware for Wireless Sensor Network Middleware architecture 13 The middleware can be located anywhere: sensor nodes, sink nodes, high level application terminal, etc. Application Middleware Operating system Hardware NET Application Middleware Operating system Hardware Host 1 Host 2

Why a Middleware? Middleware for Wireless Sensor Network 14 1. Masking heterogeneity o networks, end-systems, OSs, programming languages 2. Providing a useful distributed programming model 3. Providing Generic services 4. Transparency

Why a middleware? Middleware for Wireless Sensor Network 15 It is needed by a bunch of applications and host systems applications o ecommerce, o real-time, embedded o mobile agent systems o peer to peer platforms o mobile computing applications underlying host systems o PCs/ workstations o wireless PDAs o embedded devices o network processors o wireless, sensor, infrared etc. networks

Middleware for Wireless Sensor Network Middleware functionalities 16 Complete middleware solutions require at 4 components: o Programming abstraction: this defines the interfaces to the middleware for the application programmer. o System services: implemented functions to enable programming abstractions. o Run time support: extensions to the embedded operating system to support middleware services. o QoS mechanisms: they define the QoS constraints of the system.

Middleware for Wireless Sensor Network Middleware functionalities 17 Programming abstractions. Programming abstractions involve The way the programmer views the system referred to as the abstraction level. The model used to program the application known as the programming paradigm. The programming interface which defines the mechanism used by the application to access the middleware functions.

Middleware for Wireless Sensor Network Middleware functionalities 18 Abstraction level. A global abstraction level (e.g. system level abstraction) o abstracts the WSN as a single virtual system o a single centralized program is expressed as a set of subprograms that can be executed on local nodes. o allows the programmer to concentrate on the application, while avoiding the details of the nodes but can be less efficient in terms of WSN resource consumption.

Middleware for Wireless Sensor Network Middleware functionalities 19 Abstraction level. A local abstraction level (e.g. node level abstraction): o the system is presented as a collection of distributed nodes where each node can be reached individually. o leads to efficient communications between nodes and flexibility but requires from the programmer a certain knowledge of the sensor node..

Middleware functionalities 20 Programming paradigms. Depending on paradigm, a WSN can be seen as o A database where sensor data is the information stored in the database o A publish/subscribe service where data from sensors generate an event for the application. o A set of mobile agents copying with the mobility of the WSNs o A rule-based declarative language for command execution. o A set of virtual machines used to support runtime. o A graphical user interface that includes a query-builder and result display.

Middleware for Wireless Sensor Network Middleware functionalities 21 Interface type The way the application relates with the middleware can either be: o Declarative, providing data about which information is required. This may be based on Structured Query Language (SQL) languages or XML, and is used for database programming paradigms. o Imperative, offering commands that should be carried out. This is used for publish/subscribe programming paradigms.

Middleware for Wireless Sensor Network Middleware design space 22 1. Abstraction Support o Large number of heterogeneous sensors 2. Data Fusion o o Various ways to collect data Efficient way of communicating this data 3. Resource Constraints (lightweight) o Low energy, small memory footprint o Requires a lightweight design (as opposed to traditional middleware such as CORBA, etc.) 4. Dynamic Topology, Environment, Application o Node mobility, node failure, communication failure

Middleware for Wireless Sensor Network Middleware design space 23 5. Application Knowledge o o Try to generalize despite the limited resources Integrate application knowledge into the services provided 6. Programming Paradigm 7. Adaptability 8. Scalability 9. Security 10. QoS Support

Middleware for Wireless Sensor Network Middleware architecture 24 Administration Terminal boot, logging Sensor Network Application Distributed Middleware Node A Node B Node C Middleware Middleware Middleware Operating System Operating System Operating System Hardware Hardware Hardware systemwide interfaces customized node s software different node hardware

Middleware architecture Middleware for Wireless Sensor Network 25 Shared functionalities/features between applications and distributed middleware depending on abstraction.

Middleware Approaches Middleware for Wireless Sensor Network 26 1. Virtual Machine-based o contains VM, interpreter, o Example: Mate, Magnet 2. Database-based o Virtual Database o easy to use interface o Examples: TinyDB, Cougar, SINA, Dsware 3. Modular programming o decomposition of application o Examples: Impala, Agilla

Middleware Approaches Middleware for Wireless Sensor Network 27 4. Application Driven o o tune network on the basis of Requirement Example: MiLAN 5. Message oriented o o use publish-subscribe mechanism Example: Mire 6. Event oriented o o Request-reply, Example: Garnet 7. Service oriented o Reflective, Flexible, Service-centric, Service oriented

Middleware Approaches Middleware for Wireless Sensor Network 28 VM Power awareness Openness Scalability Mobility Heterogeneity Ease of use Mate Full Full Full Full Partial Little or none Magnet Full Full Full Full Partial Full Cougar Partial Little or None Little or None Little or None Little or None Full Data Base SINA Full Little or None Little or None Little or None Little or None Full DSWare Full Partial Partial Little or None Little or None Full Modular Application TinyDB Full Partial Partial Partial Partial Full Impala Full Full Full Full Little or None Full Message MILAN Partial Full Full Little or None Little or None Full Mires Full Full Full Partial Partial Full

Middleware for Wireless Sensor Network Impala: application driven 29 Zebranet project consisting of a long term migration study of wildlife using event based programming model CPU, Memory, Wireless Transceiver GPS Data Peer-to-Peer communication Protocol Data Data Base Station (car or plane)

Impala Features Middleware for Wireless Sensor Network 30 Advantages o Code modularity o application adaptability and o update o Fault tolerance o energy efficiency o long deployment time Disadvantages o Not data fusion o not heterogeneity Applications Impala Device Software Device Hardware External Updates

Mate Middleware for Wireless Sensor Network 31 Virtual Machine on top of TinyOs Stack-based architecture Break down the program into small self-replication capsules(24 instructions) Capsules are self-forwarding and self-propagation

Middleware for Wireless Sensor Network Mate Features 32 Advantages o Simple programming model o Small and concise model o High security Disadvantages o high energy consumption o Not flexible to support wide range of applications

Middleware for Wireless Sensor Network TinyDB 33 query processing Multiple concurrent queries Network monitoring (via queries) Extensible framework for attributes, commands and aggregates

TinyDB Middleware for Wireless Sensor Network 34 Sensor table

Middleware for Wireless Sensor Network TinyDB Features 35 Advantages o reduce number of messages o Nice abstraction model o good aggregation model Disadvantages o Not much functionality

Agilla Middleware for Wireless Sensor Network 36 Based on mobile agents and a Stack-based architecture Allows moving agents from one node to another Use two instructions to move (clone, move) A maximum of 4 agents can run on a node (3,1) (3,2) (3,3) clone to (3,1) (2,2) clone to (3,3) (1,1) Fire Detection Agent (1,3)

Agilla Architecture Middleware for Wireless Sensor Network 37 Node @ (1,1) Node @ (2,1) Agents migrate Agents Neighbor List Tuplespace remote access Tuplespace Neighbor List Middleware Services Agilla Middleware TinyOS Middleware Services Agilla Middleware TinyOS

Agilla Features Middleware for Wireless Sensor Network 38 low energy consumption Increase flexibility reduce code size low security difficult to read and maintain programs

Middleware for Wireless Sensor Network MiLAN 39 MiLAN is designed for personal health monitor application High respiratory rate Low blood pressure Blood Pressure 0.8 0.8 0.3 Respiratory Rate Blood O2 Blood O2 0.7 0.8 Heart Rate Heart Rate 0.3 0.3 1.0 0.3 Blood O2 ECG Diagram Normal Heart Rate Blood Pressure High Heart Rate

Middleware for Wireless Sensor Network MiLAN 40 Goals: o application lifetime maximization o application QoS support MiLAN receives a description of application requirements through specialized graphs MiLAN sits on top of multiple physical networks: bluetooth, 802.15.4, wifi, etc. convert commands to protocol-specific commands that are passed through the usual network protocol stack

Middleware for Wireless Sensor Network MiLAN Architecture 41

Conclusion Middleware for Wireless Sensor Network 42 Methods and tools to analyse and evaluate IoT middleware are still needed There is still a long way to go from cloud-like middleware systems such as Pachube and middlewares that are needed for real time WSN applications as the former lack many of the features/functionalities needed for IoT middlewares. QoS functionalities can be incorporated into the middleware in terms of dependability, reliability, and scalability, and Security.

Thanks 43 Antoine Bagula bagula@cs.uct.ac.za Isat.cs.uct.ac.za