@andybareweb Connecting IoT Andy Cross, Director Elastacloud Ltd Windows Azure MVP Da zee zij oek. Thank you, sponsors! 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 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 This session Largely practical *we need luck for this to work!* Demonstrates the state of the art with Microsoft technologies Covers patterns and futures 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 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 Notifications Commands from other systems to a device or a group of devices to perform specific activities Information flowing from other systems to a device (-group) for conveying status changes in the rest of the world 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. 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 Demo NETMF storage basics Demo NETMF storage GB -> PB Demo 4 types of Device Communication Futures What does the future of devices and Azure hold? 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 Why Service Bus Lightweight protocols: AMQP Built in security High scalability targets Throughput Number of Queues Pub/Sub technologies suit multiple devices 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 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. Thanks Questions? 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/enus/pricing/free-trial/