平臺定位
http://www.cnblogs.com/ibrahim/p/amazon-aws-iot.html
AWS IoT是一款托管的云平臺,使互聯(lián)設(shè)備可以輕松安全地與云應(yīng)用程序及其他設(shè)備交互。
AWS IoT可支持數(shù)十億臺設(shè)備和數(shù)萬億條消息,并且可以對這些消息進行處理并將其安全可靠地路由至 AWS 終端節(jié)點和其他設(shè)備。應(yīng)用程序可以隨時跟蹤所有設(shè)備并與其通信,即使這些設(shè)備未處于連接狀態(tài)也不例外。
使用AWS Lambda、Amazon Kinesis、Amazon S3、Amazon Machine Learning、Amazon DynamoDB、Amazon CloudWatch、AWS CloudTrail 和內(nèi)置 Kibana 集成的 Amazon Elasticsearch Service 等AWS服務(wù)來構(gòu)建IoT應(yīng)用程序,以便收集、處理和分析互連設(shè)備生成的數(shù)據(jù)并對其執(zhí)行操作,且無需管理任何基礎(chǔ)設(shè)施。
架構(gòu)

與AWS IoT平臺集成的AWS服務(wù)

Amazon DynamoDB—托管NoSQL數(shù)據(jù)庫
Amazon Kinesis—大規(guī)模流式數(shù)據(jù)實時處理
AWS Lambda—EC2云虛擬機運行代碼響應(yīng)事件
Amazon Simple Storage Service(S3)—可擴展云存儲
Amazon Simple Notification—推送通知服務(wù)
Amazon Simple Queue Service—消息隊列服務(wù)
設(shè)備SDK

AWS IoT 設(shè)備 SDK 使用 MQTT、HTTP 或 WebSockets 協(xié)議將硬件設(shè)備連接到 AWS IoT,硬件設(shè)備無縫安全地與 AWS IoT 提供的設(shè)備網(wǎng)關(guān)和設(shè)備影子協(xié)作。
設(shè)備 SDK 支持 C、JavaScript 、Arduino、Java和Python。
設(shè)備 SDK 包含開源庫、帶有示例的開發(fā)人員指南和移植指南,用戶根據(jù)硬件平臺構(gòu)建 IoT 產(chǎn)品或解決方案。
設(shè)備網(wǎng)關(guān)

AWS IoT 設(shè)備網(wǎng)關(guān)支持設(shè)備安全高效地與 AWS IoT 進行通信。設(shè)備網(wǎng)關(guān)可以使用發(fā)布/訂閱模式交換消息,從而支持一對一和一對多的通信。憑借此一對多的通信模式,AWS IoT 將支持互連設(shè)備向多名給定主題的訂閱者廣播數(shù)據(jù)。
設(shè)備網(wǎng)關(guān)支持 MQTT、WebSocket 和 HTTP 1.1 協(xié)議,也支持私有協(xié)議。
設(shè)備網(wǎng)關(guān)可自動擴展,以支持 10 億多臺設(shè)備,而無需預(yù)配置基礎(chǔ)設(shè)施。
認證和授權(quán)

AWS IoT 在所有連接點處提供相互身份驗證和加密。AWS IoT 支持 AWS 身份驗證方法(稱為"SigV4")以及基于身份驗證的 X.509 證書。使用 HTTP 的連接可以使用任一方法,使用 MQTT 的連接可以使用基于證書的身份驗證,使用 WebSockets 的連接可以使用 SigV4。
使用 AWS IoT 生成的證書以及由首選證書頒發(fā)機構(gòu) (CA) 簽署的證書,將所選的角色和/或策略映射到每個證書,以便授予設(shè)備或應(yīng)用程序訪問權(quán)限,或撤消訪問權(quán)限。
通過控制臺或使用 API 創(chuàng)建、部署并管理設(shè)備的證書和策略。這些設(shè)備證書可以預(yù)配置、激活和與使用 AWS IAM 配置的相關(guān)策略關(guān)聯(lián)。
AWS IoT 還支持用戶移動應(yīng)用使用 Amazon Cognito 進行連接,Amazon Cognito 將負責執(zhí)行必要的操作來為應(yīng)用用戶創(chuàng)建唯一標識符并獲取臨時的、權(quán)限受限的 AWS 憑證。
注冊表
注冊表將創(chuàng)建設(shè)備標識并跟蹤元數(shù)據(jù),如設(shè)備的屬性和功能。
注冊表向格式一致的每臺設(shè)備分配唯一的標識,而不管設(shè)備的類型和連接方式為何。此外,它還支持描述設(shè)備功能的元數(shù)據(jù),例如傳感器是否報告溫度,以及數(shù)據(jù)是華氏度還是攝氏度。
注冊表存儲有關(guān)設(shè)備的元數(shù)據(jù),無需支付額外費用;并且需要每隔 7 天至少訪問或更新注冊表條目一次,注冊表中的元數(shù)據(jù)就不會過期。
以JSON格式存儲的設(shè)備注冊表信息

設(shè)備影子(Shadow)
