AWS IoT is a managed cloud platform that enables you to connect IoT devices to AWS Services and other devices and provides a secure data access and interactions to process and act upon device data in both offline and online states.
AWS IoT can connect billions of devices and send trillions of messages, and can process and route those messages to AWS endpoints and to other devices in a reliable and secure manner. With AWS IoT, your applications can communicate with all your devices, all the time. AWS IoT makes it super easy to use AWS services such as DynamoDB, RDS, Lambda, Kinesis, S3, and Machine Learning, o build IoT applications that gather, process, analyze and act on data generated by connected devices completely in the cloud.
Components of AWS IOT
AWS IoT Device SDK
AWS IoT Device Software Development Kit enables your devices to connect, authenticate, and exchange messages with AWS IoT using the HTTP/MQTT protocols. The SDK supports C, JavaScript, and Arduino.Device Gateway
All connected devices communicate to the Device Gateway - HTTP or MQTT Protocol- Highly Fault Tolerant Protocol for intermittent connectivity
- Light footprint
- Low n/w bandwidth requirement
- Exchange messages using a publication/subscription model
- One-to-one and one-to-many communications (Broadcast)
- Support over a billion devices without provisioning infrastructure
Authentication and Authorization
- Connectivity over TLS (Transport Layer Security successor to SSL) TLS Certificates are easily created
- Supports the AWS method of authentication (called ‘SigV4’) as well as X.509 certificate based authentication.
- Connections using HTTP can use either of these methods, while connections using MQTT use certificate based authentication.
- Those device certificates can be provisioned, activated and associated with the relevant policies that are configured using AWS IAM.