+ All Categories
Home > Documents > Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios...

Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios...

Date post: 24-Dec-2015
Category:
Upload: lillian-audrey-ward
View: 220 times
Download: 0 times
Share this document with a friend
Popular Tags:
18
Érsek Attila Twitter: @ersekattila A Microsoft IoT víziója Azure IoT
Transcript
Page 1: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Érsek AttilaTwitter: @ersekattila

A Microsoft IoT víziója

Azure IoT

Page 2: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

AgendaDevice connectivity in AzureAzure IoT Suite: IoT HubDevice identity and provisioningD2C/C2D messagesWindows 10 IoT *

Page 3: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

IoT is an Inflection Point

Hardware is cheap

Connectivity is pervasive

Development is easy

New Innovative Scenarios

Huge benefits fuel demand

Page 4: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Field Gateway

Device Connectivity & Management

Analytics & Operationalized Insights

Presentation & Business Connectivity

IoT Device & Cloud PatternsD

evi

ces

RTO

S, L

inux,

Win

dow

s, A

ndro

id, i

OS

Protocol Adaptation

Batch Analytics & Visualizations

Azure HDInsight, AzureML, Power BI,

Azure Data Factory

Hot Path Analytics

Azure Stream Analytics, Azure HDInsight Storm

Presentation &

Business Connectivity

App Service, Websites

Dynamics, BizTalk Services, Notification Hubs

Hot Path Business Logic

Service Fabric & Actor Framework

Cloud Gateway

Event Hubs&IoT Hub

Field Gateway

Protocol Adaptation

Page 5: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Microsoft Azure IoT services

Devices Device Connectivity Storage Analytics Presentation & Action

Event Hubs SQL Database Machine Learning App Service

Service Bus Table/Blob Storage

Stream Analytics Power BI

External Data Sources DocumentDB HDInsight Notification

Hubs

External Data Sources Data Factory Mobile

Services

BizTalk Services

{ }

Page 6: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Azure IoT Suite

Azure IoT Suite

IoT HubField

gateway

Cloud protoco

lgatewa

y

IP-c

apable

PAN

-devic

es

Event processing and insight

(e.g. Azure Stream Analytics)

Applicationdevice runtime logic

Applicationdevice provisioning and

management

cloudfield

Device id

C2D queueendpoint

D2C send endpoint

Device …

Device …

Device …

D2C receive endpoint

C2D send endpoint

Msg feedback and monitoring

endpoint

Device identity managementIoT Hub

management

Page 7: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Many aspects of connectivityFunctionalityDevice-to-cloud telemetry,Cloud-to-device commands and notifications,Bulk uploads/downloads

SecurityDevice security,Cloud security,Channel security, …

MonitoringIdentify malfunctioning devices when they cannot be reached directly

Reach and customizationRTOS/Linux/Windows/non-IP capable,Network/application protocols,Authentication schemes

IoT Hub

Field gateways

Cloud protocol

gateways

Azure IoT Suite

Page 8: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Device provisioningMaking devices known to your system• Many systems involved

(IoT Hub, device registry, ERPs, …)• Device identity

(composite devices, many concerns)

Sample provisioning1. Device provisioned at manufacturing into

system2. Device connects for the first time and gets

associated to its regional data center (bootstrapped)

3. As a result of customer interactions the device is activated

4. Devices can be deactivated for security and other reasons

5. A device can also be de-provisioned at end-of-life or decommission.

Provisioned

Activated Deactivated

Bootstrapped

De-provisioned

Page 9: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Device-to-cloud messagesInterfaceAMQP and HTTPS device-side endpointAMQP service-side endpointDevice and service SDKs

Compatible with Event HubsPartitioned receiver, client check-pointingIntegrations with Azure Stream Analytics, Storm, …

IoT Hub services for D2CMillions of simultaneously connected devices Per-device authenticationConnection-multiplexing:• C2D and D2C traffic• Across multiple devices for gateway

scenarios

Azure IoT Suite: IoT Hub

Device id

C2D queueendpoint

D2C send endpoint

Device …

Device …

Device …

D2C receive endpoint

C2D send endpoint

Device identity management

Page 10: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Cloud-to-device messagesInterfaceAMQP and HTTPS device-side endpointAMQP service-side endpoint

At-least-once semanticsDurable messagesDevice acknowledges receipt(Send - Receive - Abandon OR Complete)

TTL and receiptsPer-message TTLPer-message positive and negative receipts

Command lifecycle patternUse correlated D2C for responsesUse feedback information to retryStore command state in command registry

Azure IoT Suite: IoT Hub

Device id

C2D queueendpoint

D2C send endpoint

Device …

Device …

Device …

D2C receive endpoint

C2D send endpoint

Device identity management

Msg feedback and

monitoring endpoint

Page 11: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Azure IoT Suite: IoT HubDesigned for IoTConnect millions of devices to a partitioned application back-end

Service assisted communicationsDevices are not serversUse IoT Hub to enable secure bi-directional comms

Cloud-scale messagingDevice-to-cloud and Cloud-to-deviceDurable messages (at least once semantics)

Cloud-facing feedbackDelivery receipts, expired messagesDevice communication errors

Per-device authenticationIndividual device identities and credentials

Connection multiplexingSingle device-cloud connection for all communications (C2D, D2C)

Multi-protocolNatively supports AMQP, HTTPDesigned for extensibility to custom protocols

Multi-platformDevice SDKs available for multiple platforms (e.g. RTOS, Linux, Windows)Multi-platform Service SDK.

Page 12: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Azure IoT Suite SDKsDevice-facingFor devices and field gateway

PlatformsRTOS (FreeRTOS)Linux(Ubuntu, Debian, Fedora, Raspbian, Angstrom)Windows 7/8/10ARM mbedAndroidiOS…

LanguagesC, Java, C#, Javascript

Service-facingFor back-ends and cloud gateway

Languages.NET C#JavaNode

Page 13: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

C device SDK – D2C typedef struct TELEMETRY_INSTANCE_TAG{ DEVICEHUB_MESSAGE_HANDLE messageHandle; int messageTrackingId; // For tracking the messages within the user callback.} TELEMETRY_INSTANCE;

RcvConfirmationCallback(IOTHUB_CLIENT_HANDLE iotHubClientHandle, IOTHUB_CLIENT_CONFIRMATION_RESULT result, void* userContextCallback){...}

int main(void){ IOTHUB_CLIENT_CONFIG iotHubClientConfig; TELEMETRY_INSTANCE telemetryInstance; const char* msgText = "Hello from IoTHubClient"; ... iotHubClientHandle = DeviceHubClient_Create(&deviceHubClientConfig); ... IotHubMessage_SetData(telemetryInstance.messageHandle, msgText, strlen(msgText)); ... IotHubClient_SendTelemetryAsync(deviceHubClientHandle, telemetryInstance.messageHandle,

RcvConfirmationCallback, &telemetryInstance);...}

Page 14: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

C device SDK – C2Dstatic int ReceiveNotificationCallback(IOTHUB_CLIENT_HANDLE iotHubClientHandle,

IOTHUB_MESSAGE_HANDLE notificationMessage){ /* Some device specific action code goes here... */ }

int main(void){ IOTHUB_CLIENT_CONFIG iotHubClientConfig; IOTHUB_CLIENT_HANDLE iotHubClientHandle;

iotHubClientConfig.iotHubName = “{name}"; iotHubClientConfig.deviceId = “{device id}"; iotHubClientConfig.deviceKey = “{key}"; iotHubClientConfig.protocol = IOTHUB_CLIENT_AMQP;

iotHubClientHandle = IotHubClient_Create(&iotHubClientConfig) IotHubClient_SetNotificationCallback(iotHubClientHandle, ReceiveNotificationCallback) /* Wait for messages to arrive... */ }

Page 15: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Solution PortalProvisioning API

Identity & Registry Stores

Stream Event Processor

Analytics/

Machine Learning

Data Visualization & Presentation

Device State Store

Gateway

Azure IoT Services Reference Architecture

Storage

IP capable devices

Existing IoT devices

Low power devices

Presentation Device and Event ProcessingData

Transport

Devices and Data Sources

Azure IoT Hub

Agent

Agent

Agent

Page 16: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

IoT

Page 17: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

One OS

Universal Windows Apps

Universal Windows Drivers

Natural User Interface

Enterprise-grade security

Trusted Platform Module

Advanced Lockdown

Multi-user Profiles

Industry peripheral support

Interoperable

Deploy, service, manage

Azure IoT-ready

One Windows Platform

Secure ConnectedIoT

Page 18: Azure IoT. Hardware is cheap Connectivity is pervasive Development is easy New Innovative Scenarios Huge benefits fuel demand.

Windows 10 IoT Editions

+MicrosoftAzure IoT

Security &Identity

Windows Updates

Visual Studio &UWP

Windows 10 IoT for industry devicesDesktop Shell, Win32 apps, Universal apps and drivers

Minimum: 1 GB RAM, 16 GB storage

X86/x64

Windows 10 IoT for mobile devicesModern Shell, Mobile apps, Universal apps and drivers

Minimum: 512 MB RAM, 4 GB storage

ARMWindows 10 IoT CoreUniversal Apps and Drivers

No shell or MS apps

Minimum: 256MB RAM, 2GB storage

X86/x64 or ARM Integrated Device

Connectivity

New User Interfaces


Recommended