The Internet of things for integration people - UKCSUG - public version

33
Get your geek on The Internet of Things on the Microsoft stack Some slides of this presentation have been removed, because some information could not yet be published

description

Version with some slides removed of the presentation in London on June 20.

Transcript of The Internet of things for integration people - UKCSUG - public version

Page 1: The Internet of things for integration people - UKCSUG - public version

Get your geek onThe Internet of Things on the Microsoft stack

Some slides of this presentation have been removed, because some information could not yet be published

Page 2: The Internet of things for integration people - UKCSUG - public version

Nice to meet youSam VANHOUTTECTO

6 year - BizTalk V-TSP1st year - Integration MVP

[email protected]+32 474 849 993@SamVanhoutte

be.linkedin.com/in/

samvanhoutte/

> 60 Active integration customers

International Focus - HQ in BEFocused on integration solutions

2000 Belgium2004 France2013 Portugal

60 employees > 50 consultants BizTalk certifiede-news + SoMe

2012 & 2013

Partner of the Year

Award FinalistApplication Integration

Page 3: The Internet of things for integration people - UKCSUG - public version

The Internet of Things

3

The Internet of Everything

M2M communicationSpecial purpose

devicesSmart things

Page 4: The Internet of things for integration people - UKCSUG - public version

Smart ProductsGrid

Renewables

Oil/Gas/Coal Recovery and

Distribution

Pointsof Sale

Restaurants

Hotels

FuelStations

Patients

Clinics

Hospitals

NursingHomes

MobileCare

SafetySecurity

ComfortLighting

Automation

Manufacturing Integration and

AutomationRemote

Servicing

Predictive and Reactive

Maintenance

Water

Waste

PollutionControl

Fire

Emergency

PublicSafety

Law Enforcement

Letters

Packages

Containers

Tanks Bulkware

Games

Events

Sports

TelevisionStreaming

Traffic Buses

Cars

Trucks

Trains

Vessels

Aircraft

Bikes

Smart Energy

Smart Retail

Smart Mobility

Smart Logistic

s

Smart Factory

Smart Cities

Smart Entertain

-ment

Smart Health-

care

Smart Building Home

Page 5: The Internet of things for integration people - UKCSUG - public version

Control traffic lights remotely when delayed bus approaches

Central tracking of every trip and bus position.

Send alerts in case of delays, accidents or agression

On-call buses possible for rural areas or off-peak hours

5

Smart mobility - buses

Page 6: The Internet of things for integration people - UKCSUG - public version

Upon arrival (flight arrived, hour of arrival), enable lights, mood, temperature...

At check in, provide preferences (fridge, temperature) and arrival/flight nr.

Measure and optimize energy consumption remotely.

Extra added-value services (mini-bar auto refill, towel service)

6

Smart & ecological travel - hotels

Page 7: The Internet of things for integration people - UKCSUG - public version

Combine data to predict energy output and calculate efficiency.

Telemetry data from solar panelsWeather forecastGeo-location and solar-angle

Detect anomalies and react through customer support. Offer portals and toolingHandle energy overage for energy-flexible purposes (freezers, heaters, chargers...)

7

Solar energy & energy management

Page 8: The Internet of things for integration people - UKCSUG - public version

The device side

Page 9: The Internet of things for integration people - UKCSUG - public version

Connectivity

Mobility Range Power usageEthernet Attached - -WIFI Mobile 150m HighLTE Mobile 30 km HighZigbee Mobile 100m LowBLE Mobile 50m LowNFC Mobile 5cm Low

Page 10: The Internet of things for integration people - UKCSUG - public version

Chosing the right protocol

➔ How powerful are the devices ? (CPU / battery-power)

➔ What’s the network connectivity?➔ Reliable / intermittent➔ Costly or free

➔ What are the latency requirements for telemetry or command & control?

➔ What’s the data volume?➔ How many devices are to be connected?

10

Page 11: The Internet of things for integration people - UKCSUG - public version

Protocol standardization

Patterns Latency TransportAMQP All Higher TCPHTTP Inquiries & telemetry Medium TCPMQTT Telemetry Low TCPCoAP Inquiry (req/reply) Low UDPXMPP Commands & Notifications Low TCP

Page 12: The Internet of things for integration people - UKCSUG - public version

Protocol preference

➔ AMQP➔ Well-established standard➔ Most flexibility in terms of messaging patterns➔ Highest throughput with advanced flow control➔ Bi-directional socket connection for low latency C&C➔ Same connection for telemetry & C&C

➔ HTTP is natively support by Service Bus➔ MQTT

➔ requires custom protocol gateway at this point ➔ Allows for bi-directional socket connections➔ Lacks flexibility in messaging patterns & flow control

12

Page 13: The Internet of things for integration people - UKCSUG - public version

Steps to activate a device

Configure time & network settings

Activate device on gateway

Get gateway configuration

Security – key management

Give feedback – Status & diagnostics

Page 14: The Internet of things for integration people - UKCSUG - public version

Device prototyping & development

14

GadgeteerGHI

NetduinoArduino

RaspberryPI

Intel Galileo

.NET Micro FrameworkOpen source hardwareOpen source software

.NET Micro FrameworkC on ArduinoDuino shield

Linux (Raspbian)Full featured

Powerful

Supports Windows

Page 15: The Internet of things for integration people - UKCSUG - public version

Demo – Raspberry PITelemetry

15

Page 16: The Internet of things for integration people - UKCSUG - public version

What’s in it for us,integration guru’s

Page 17: The Internet of things for integration people - UKCSUG - public version

IoT 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 18: The Internet of things for integration people - UKCSUG - public version

Integration scenarios

Command API

Telemetry event integration

Telemetry big data analysis

Complex event processing

Event filtering and anomaly processing

Page 19: The Internet of things for integration people - UKCSUG - public version

Service Assisted Communication

Page 20: The Internet of things for integration people - UKCSUG - public version

Service-Assisted Communications

Connections are device-initiated and

outbound

NAT/Firewall Device (Router)

IP NAT

Cloud GatewayCommand Source

Port mapping is automatic, outbound

Device does not listen for unsolicited

traffic

No inbound ports open, attack surface

is minimized

Access-controlled command API

Secure, managed hosting platform

DNSmyapp.cloudapp.net

Page 21: The Internet of things for integration people - UKCSUG - public version

How it Works➔ Devices connect via open standard protocols

➔ AMQP 1.0 and HTTP supported natively by the Service Bus➔ MQTT, CoAP and others can be implemented via custom gateway/adapter

model➔ Sockets secured via TLS (or a lightweight variant)

➔ Each device has a dedicated Inbox/Outbox on the Gateway

➔ Device sends telemetry/alerts and routes service invocations via its Outbox➔ Device receives commands and queries from its Inbox➔ Correlated request/reply patterns can be implemented on top of these two

messaging channels➔ The device knows, and has access to, only its own specific inbox/outbox

endpoints (URI’s)Backend Components

Cloud Gateway

Inbox

Outbox

Com

man

d AP

I

Prot

ocol

Hea

d

Device

Page 22: The Internet of things for integration people - UKCSUG - public version

Telemetry Routing with the Azure Service Bus

Split the stream Enable parallel processing

Implement different QoS levels Level and balance the load

Topic SubsFilters

Service Bus

Device 2

Receiver 2b

Device 1

Device 3Receiver 2a

Alerts

Data

Receiver 1 Alert Processor

StoragePre-processor

Page 23: The Internet of things for integration people - UKCSUG - public version

Routing Commands with the Azure Service Bus

TopicSubs Filters

Service Bus

Device 2

Device 1

Device 3Sender 2

Model A

Device 3

Sender 1

Model TModel T

Model A

Target individuals or groups Set delivery timeouts (TTL)

Deal with spotty connectivity Traverse NATs/firewalls securely

Page 24: The Internet of things for integration people - UKCSUG - public version

Session A

Request-reply over service bus

24

APIDevic

e

DeviceSubscriptionCommandTopic

ResponseQueue

ReplyToSessionId=A

SessionId=A

Page 25: The Internet of things for integration people - UKCSUG - public version

Request – Reply patternDemo

25

Page 26: The Internet of things for integration people - UKCSUG - public version

Project “Reykjavik”

Page 27: The Internet of things for integration people - UKCSUG - public version

Slides removed for publication

Page 28: The Internet of things for integration people - UKCSUG - public version

Demo – Solar PanelTelemetry & commands“Reykjavik”

28

Gateway

Partition

INOUT

Command API

Azure API Management

Service Bus

Page 29: The Internet of things for integration people - UKCSUG - public version

Intelligent Systems Services

Page 30: The Internet of things for integration people - UKCSUG - public version

Slides removed for publication

Page 31: The Internet of things for integration people - UKCSUG - public version

Microsoft & IoT

Page 32: The Internet of things for integration people - UKCSUG - public version

IoT initiatives

Project “Reykjavik”

Intelligent Systems Service (ISS)

WindowsOnDevices.com

Big Data (HDinsight)

Machine learning & Project “Orleans”

Page 33: The Internet of things for integration people - UKCSUG - public version

33

THANK YOU

AND NOW, QUESTIONS?OR DRINKS?