【Azure基礎用語解説】「Azure IoT Hub」
2016.03.02
IoT(モノのインターネット)とは、世の中に存在するあらゆる"モノ"にセンサーや通信機能を持たせ、インターネット経由で"モノ"と"モノ"を相互に接続してリアルタイムの計測や制御を行うことを表す言葉です。
IoTは、膨大な数のデバイスとバックエンドシステムが双方向通信することで成り立っています。ただし、IoTデバイスは人が介在しない組込みシステムであることが多く、アクセスが難しい場所に設置されていたり、電源や処理リソースが限られていたり、ネットワークの状態が不安定だったりします。こうした特性を考慮しつつ、デバイスとバックエンドシステムを安全・確実に接続することが、IoTの大きな課題となっています。
このようなIoTの課題を解決し、安全性と信頼性の高い双方向通信を実現するクラウドサービスとして登場したのが「Azure IoT Hub」です。2015年10月にパブリックプレビューが公開され、2016年2月に一般提供が始まりました。
Azure IoT Hubは、デバイスとバックエンドシステムの通信を仲介するサービス支援通信パターンを実装しています。このサービス支援通信はスマートフォン/タブレットなどのプッシュ通知サービスにも使われている技術であり、信頼されていない場所にあるデバイスとの間で信頼できる双方向通信を確立することが目的です。セキュリティがあらゆる機能よりも優先され、デバイスはAzure IoT Hubへの接続だけを行い、要求されていないネットワーク情報は受け入れません。接続するデバイスごとにIDと資格情報を個別に割り当て、デバイスとの間でやりとりされるメッセージの機密性を保持する仕組みです。
Azure IoT Hubでは一般的な言語とデバイスのライブラリが用意されており、Windows、Linux、組込みシステム向けRTOS(リアルタイムオペレーティングシステム)など複数のプラットフォームに対応したオープンソースのデバイスSDKを使用してデバイスを接続します。プロトコルはHTTP、AMQP(Advanced Message Queuing Protocol)、MQTT(MQ Telemetry Transport)などIoTで標準的に利用されているものをサポートしています。
Azure IoT Hubの概念図
マイクロソフトは2015年9月よりクラウドベースのトータルIoTソリューション「Azure IoT Suite」を提供していますが、Azure IoT Hubはその中心的な役割を果たすものです。Azure IoT SuiteにはAzure IoT Hubのほかに「Azure Machine Learning」「Azure HDInsight」など他のAzureサービスが含まれ、ストレージとメッセージを統合してリアルタイムにデータ分析することが可能です。
なお、Azure IoT Hubには現在、1日あたり合計8,000メッセージまで送信できる実証実験目的のFree(無償)エディションが用意されています。IoTシステムの構築に初めて取り組むとき、あるいはAzure IoT Hubの機能・性能を評価する際には、まずはFreeエディションで試用してみることをお勧めします。
photo:Thinkstock / Getty Images