connecting iot andy cross, director elastacloud ltd windows azure mvp da zee zij oek. @andybareweb

19
Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Upload: joslyn-greenley

Post on 30-Mar-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Connecting IoTAndy Cross, Director Elastacloud Ltd

Windows Azure MVP

Da zee zij oek.

@andybareweb

Page 2: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Thank you, sponsors!

Page 3: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

The Cloud for Modern Business

Grab your benefit

aka.ms/azuretry

Deploy fast in the cloud, scale elastically and minimize test cost

Activate your Windows Azure MSDN benefit at no additional charge

aka.ms/msdnsubscr

Page 4: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

IoT fundamentals

Billions of internet connected devices

All varying device capabilities

Devices sometimes online

Android emergent but expensive

Silicon solutions without software

Software solutions on generic hardware

Page 5: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

This session

Largely practical

*we need luck for this to work!*

Demonstrates the state of the art with Microsoft technologies

Covers patterns and futures

Page 6: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Firstly - Scenario

A million internet connected, distributed heat sensors

In homes, maybe connected to intelligent heating systems

Perhaps these work in buildings (‘tenants’)

We require 4 communication types:

Notification: Send message to device

Command: Send message and receive a response

Inquiry: Receive message and send a response

Telemetry: Receive a message from the device

Page 7: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

M2M Information Exchange Patterns

Telemetry

Information flowing from a device to other systems for conveying status of device and environment

Inquiries

Requests from devices looking to gather required information or asking to initiate activities

Commands

Commands from other systems to a device or a group of devices to perform specific activities

Notifications

Information flowing from other systems to a device (-group) for conveying status changes in the rest of the world

Page 8: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Supporting Tech 1 -> Client

We will be using NETMF and the Netduino Plus 2.

We will be using only Open Source client libraries in order that smaller devices can reimplement or lighten the library weight

Ethernet connected as a baseline; it is possible to connect via wifi/gsm etc, but the demo gods are fickle.

Page 9: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Supporting Tech 2 -> Cloud

We are using Windows Azure’s storage services

These do not require SSL and this eases the load on our stack – BUT BEWARE WHAT THIS MEANS FOR YOUR APP

Queue -> For command and control

Table -> For logs and reporting structured data

Blob -> For reporting unstructured data

Page 10: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

DemoNETMF storage basics

Page 11: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

DemoNETMF storage GB -> PB

Page 12: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Demo 4 types of Device Communication

Page 13: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

FuturesWhat does the future of devices and Azure hold?

Page 14: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

What haven’t we done today?

With more capable devices:

Secure connections via SSL

Cipher of message content

With a better client library:

Use of Shared Access Signatures for authentication

Or a totally different approach:

Windows Azure Service Bus

Page 15: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Why Service Bus

Lightweight protocols:

AMQP

Built in security

High scalability targets

Throughput

Number of Queues

Pub/Sub technologies suit multiple devices

Page 16: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

What might be even better?

Front the Service Bus with MQTT as a custom Protocol

Binary transfer technology, with no ceremony

Lightweight, secure

With SB underneath this is scalable

Providing the fronting tier is itself scalable; Windows Azure

Page 17: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

Final Thought: WTF do I do with the data?

A billion devices connected has the capability to produce a huge amount of data

Azure Storage can cope with this but … how do I derive meaning from it?

Answer: Using Big Data Technologies; see my afternoon session on Big Data: Data Liberty in an age POST Sql.

Page 18: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

ThanksQuestions?

Page 19: Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. @andybareweb

The slide of disaster (snafu fallback!)

For M2M on Azure; follow @clemensv watch Subscribe: http://channel9.msdn.com/Blogs/Subscribe

If you don’t hate me already … ;-0

My AzureConf 2012 video: http://channel9.msdn.com/Events/windowsazure/AzureConf2012/A06

My netmfazurestorage lib https://github.com/andycross/netmfazurestorage

Sign up for an Azure Free Trial: http://www.windowsazure.com/en-us/pricing/free-trial/