Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

(ARC306) IoT: Small Things and the Cloud | AWS re:Invent 2014

5,660 views

Published on

Working with fleets of ''Internet of Things'' (IoT) devices brings about distinct challenges. In this session, we will explore four of these challenges: telemetry, commands, device devops, and audit and authorization, and how they transform when deploying hundreds-of-thousands of resource-constrained devices. We'll explore high-level architectural patterns that customers use to meet these challenges through the functionality and ubiquity of a globally accessible cloud platform. If you consider yourself a device developer, an electrical, industrial, or hardware engineer, a hardware incubator class member, a new device manufacturer, an existing device manufacturer who wants to smarten up their next-gen devices, or a software developer working with people who identify as part of these tribes, you'll want to participate in this session.

Published in: Technology

(ARC306) IoT: Small Things and the Cloud | AWS re:Invent 2014

  1. 1. © 2014 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in partwithout the express consent of Amazon.com, Inc. ARC 306IoT: Small Things and the Cloud Brett Francis, Solutions Architecture November 12, 2014 | Las Vegas, NV
  2. 2. What is a Small Thing?
  3. 3. What isa Small Thing? Why
  4. 4. Small Things maximize a resource by using it as little as possible.
  5. 5. Define: Resource constrained computing thing •Devices constrained in at least one computing dimension •Regularly deployed at counts in the thousands or more •May play critical roles without human interaction
  6. 6. IoT and Small Thing comparisons Not a Small Thing A Small Thing
  7. 7. IoT and Small Thing comparisons Not a Small Thing A Small Thing
  8. 8. IoT and Small Thing comparisons Not a Small Thing A Small Thing
  9. 9. IoT and Small Thing comparisons Not a Small Thing A Small Thing
  10. 10. IoT and Small Thing comparisons Not a Small Thing A Small Thing
  11. 11. A Small Thing is connected but inherently limited in some way.
  12. 12. Almost everywhere a Small Thing has a gap…
  13. 13. …a globally accessible cloud platform helps fill the gaps.
  14. 14. The smaller the device is, the bigger the data …and the newer the challenges.
  15. 15. Let’s explore…
  16. 16. Gap Gap Gap Gap Gap Gap Filling in some gaps Small Thing
  17. 17. First challenge: telemetry
  18. 18. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Telemetry today Remotely determine what a device senses.
  19. 19. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Telemetry misconception “Just gather the sensor data and send it in for use.”
  20. 20. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] AWS Cloud Archive Correlation Analysis Just gather the sensor data and send it in for use. Mobile Device Various Sensors HTTPS Small Thing Basic telemetry + cloud architecture Persistent Stream
  21. 21. Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Small Thing Success looks like thousands or millions
  22. 22. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Real world telemetry challenges Hundreds of thousands of devices need: •Strategies for intermittent connectivity •To send sensor datareliably •Elastic solutionsto wave crests and troughs
  23. 23. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Intermittent connectivity means… Logging algorithms matter
  24. 24. FIFO, aggregate, and culling algorithms 1min 1min 1min 5min 5min ON AGG 1min 1min 1min 1min 1min ON OFF 1min 1min 1min 1min 1min ON OFF OFF FIFO Aggregate Culling Cull Point Agg Point
  25. 25. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] When networking, compute, or power is low… A machine-to-machine proxy layer may help
  26. 26. Logger Trickles become a stream AWS Cloud Stream Small Thing Mobile Device Various Sensors Auto Scaling Group M2M Brokers Device Config M2M Broker Fleet Keeper M2M Config Broker aka. evolved telemetry + cloud architecture Archive Correlation Analysis
  27. 27. Streams flow into a river aka Global Telemetry Architecture Stream Centralized Region Amazon Kinesis– Enabled App Logger Stream Small Thing Mobile Devices Various Sensors Region Amazon SQS Complaint Queue Logger Stream Small Thing Mobile Devices Various Sensors Region Archive Correlation Analysis Device Config Device Config Master Device Config M2M Broker Scaling Group
  28. 28. Rivers of data become Big Data Copyright © 2014 My Photo Dump.
  29. 29. Gap Gap Small thing telemetry —AWS helps Global Ubiquity $0 Inbound Data Small Thing Elasticity Purpose Built Services Amazon DynamoDB Amazon Kinesis Amazon SQS Auto Scaling
  30. 30. Next challenge: commands
  31. 31. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Commands today Ask a device to do something.
  32. 32. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Commands misconception “Just tell those devices to do something.”
  33. 33. (2) Get Command(s) (1) Get Config Basic commands + cloud architecture AWS Cloud Just tell those devices to do something. Mobile Devices Web App Device Config Small Thing Configured Command Source Device Commands M2M Endpoints Users HTTPS or M2M Protocol (B) User Commands (A) Configured Device Pair …or… Various Sensors
  34. 34. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Real world Command challenges Sending the correct commands matter Hundreds of thousands of devices need: •Delivery of authoritative commands •Minimal-connectiondelivery •Important commands to be transactional
  35. 35. Evolved command connections Single High-Heat NoSQL Database Meet-Me M2M Broker Endpoint Pools (3) Write Command SUCCESS Device Commands (2) Read Command(s) from Table (1) Get Config Device Config Small Thing Configured Command Source Device Commands (3) Write Command SUCCESS (2) Read Command(s) from Topic (1) Get Config Device Config Small Thing Configured Command Source Meet-Me M2M Endpoints Meet-Me M2M Endpoints Just tell those devices to do something.
  36. 36. Evolved commands + cloud architecture (3) Write Command SUCCESS Device Commands (2) Read Command(s) from Table (1) Get Config Device Config Small Thing Configured Command Source Device Commands Just tell those devices to do something. Mobile Devices Web App (C) User Commands (B) Get Configured Device Pair Amazon Cognito Authorization (A) Mobile User Authorization Users
  37. 37. Gap Gap Commands—AWS helps Global Ubiquity $0 Inbound Data Small Thing Elasticity Purpose Built Services Amazon DynamoDB Amazon Cognito Auto Scaling
  38. 38. Next challenge: Device DevOps
  39. 39. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Device DevOps today Ask a device to be something new.
  40. 40. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Device DevOps misconception “Just send out firmware updates when needed.”
  41. 41. Basic DevOps + cloud architecture Just send out firmware updates when needed. (2) Get Firmware Bundle(s) (1) Get Command AWS Cloud Device Commands Small Thing Get Firmware Bundle Bundle Download Device Specific Bundle Various Sensors
  42. 42. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Real world Device DevOps challenges If you kill it, it is dead Hundreds of thousands of devices need help with: •Intelligent exception management •Staged, validated,and rolling updates
  43. 43. Evolved DevOps + cloud architecture (2) Get Firmware Bundle(s) (1) Get Config AWS Cloud Device Commands Small Thing Configured Firmware Bundle Bundle Download Device Specific Bundle (3) Send Firmware SUCCESS Device Commands Various Sensors Just send out firmware updates when needed.
  44. 44. Evolved Device DevOps process arch (2) Get Firmware Bundle(s) (1) Get Command Device Commands Small Thing Device Specific Bundle (3) Send Firmware SUCCESS Device Commands Small Thing All Success? (2) Get Firmware Bundle(s) (1) Get Command Device Commands Device Specific Bundle (3) Send Firmware SUCCESS Device Commands Staging Production Logger Small Thing Logger Small Thing (B) Copy Bundle (C) Update Commands Various Sensors Just send out firmware updates when needed. (A) Validate Bundle All Success? (D) Manage Exceptions
  45. 45. Gap Device DevOps—AWS helps Global Ubiquity $0 Inbound Data Small Thing Elasticity Purpose Built Services Amazon DynamoDB Amazon S3 Global Object Store
  46. 46. Last challenge: audit & authorization
  47. 47. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Audit & authorization today Determine if a device should be allowed to do something.
  48. 48. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Audit & authorization misconception “Just allow the right devices to do something.”
  49. 49. Basic audit & authorization + cloud arch (2) Authenticate and Authorize AWS Cloud Small Thing (3) Register Device Registration (4) Proceed with Privilege Device Config (1) Install Creds Just allow the right devices to do something.
  50. 50. IoT : [ Telemetry][ Commands][ Device DevOps][ Audit & Authorization] Real world audit and authorization challenges Hundreds of thousands of devices need: •Intelligent exception management •Resource constrained authorization •Device authorizationand renewal
  51. 51. (1) Get Cognito ID Evolved Audit & Authorization + Cloud Arch AWS Cloud Just allow the right devices to do something. Small Thing Cognito Authorization Cognito ID (2) Unauthenticated Register Device Registration (3) Authorize Device Device Registration Web App Users & Admins
  52. 52. Audit & authorization—AWS helps Global Ubiquity $0 Inbound Data Small Thing Elasticity Purpose Built Services Global Object Store Audit & AZN Amazon Cognito DynamoDB
  53. 53. Small Things—AWS helps Global Ubiquity $0 Inbound Data Small Thing Elasticity Purpose Built Services Global Object Store Audit & AZN Amazon S3 Amazon Cognito Amazon DynamoDB Amazon Kinesis Amazon SQS Auto Scaling
  54. 54. A Small Thing solution architecture
  55. 55. Pragma architecture (“Pragma” is Greek for “thing”) Small Thing Serving Layer Intermittent Layer Speed Layer Telemetry Commands Device DevOps Audit & Authorization Web Apps
  56. 56. How do I get started? •Open an AWS account –https://portal.aws.amazon.com/gp/aws/developer/registration/index.html •Explore the AWS IoT mini-site –http://aws.amazon.com/iot/ •Explore Amazon Cognito: http://aws.amazon.com/cognito/ •Explore Amazon Kinesis: http://aws.amazon.com/kinesis/ •Explore DynamoDB: http://aws.amazon.com/dynamodb/ •After re:Invent,download this deck
  57. 57. http://bit.ly/awsevals Serving Layer Intermittent Layer Speed Layer Telemetry Commands Device DevOps Audit & AZN Small Thing Pragma Architecture (“Pragma” is Greek for “thing”) brettf@amazon.com Thank You
  58. 58. Appendix
  59. 59. Pragma architecture characteristics •The intermittent layeris the control point for access to the speed layer. •The intermittent layeracts as the nexus of fleet management, supports high-heat data interactions. •The speed layeracts as the inbound high-bandwidth data bus and the outbound command bus. •The serving layerenables applications to interact with archive, analysis, correlation, and real-time views of the device fleet. •The serving layer enables the intermittent layer to distribute and control updates.

×