IoT Platform

プロダクト紹介

IoT Platformとは

IoT Platform は、Alibaba Cloud 上のデバイス管理プラットフォームであり、IoT アプリケーションの開発者が、エンドデバイス (センサー、アクチュエーター、組み込みデバイス、スマート家電など) とクラウド間の双方向通信を、データチャネルにより実現することを可能にします。

IoT Platform の利点は次のとおりです。

デバイス接続

IoT Platform は、ユーザーのデバイスと Alibaba Cloud とを接続するデバイス SDK を提供します。

  • 2G/3G/4G、NB-IOT、または LoRa テクノロジーを使用するネットワーク機器を接続するための多様なソリューションを提供し、異機種間ネットワークに接続されたデバイスの管理を合理化します。
  • MQTT や CoAP プロトコルなど、各種のプロトコルをサポートするデバイス SDK を提供します。 これにより、永続的接続によるリアルタイム同期機能だけでなく、一時的な接続による省エネルギー化も実現します。
  • 各種のオープンソースのプログラミング言語をサポートし、所望のプログラミング言語を使用して多様なチップに組み込み可能な SDK ガイドを提供します。 これにより、企業はさまざまなチップを備えたデバイスを IoT Platfrom に接続できます。

デバイス通信

デバイスは IoT Platform を使用して、IoT Hub 経由でクラウドとの双方向通信を行います。 このプラットフォームにより、デバイスとクラウド間のアップロード/ダウンロードチャネルを実現し、デバイスとクラウドとの間でスムーズかつ信頼性の高い双方向通信を保証します。

デバイス管理

IoT Platform は、デバイス登録、機能定義、スクリプト解析、オンラインデバッグ、リモート設定、ファームウェアアップグレード、リモートメンテナンス、リアルタイムモニタリング、グループ化、デバイス削除など、デバイスのライフサイクル全体を管理します。

  • アプリケーション開発を簡素化するための Thing Specification Language が用意されています。
  • デバイスの状態が変化したときに通知をプッシュします。
  • データストレージ機能を提供し、膨大な量のデバイスデータのリアルタイム送受信を簡単に実現します。
  • Over-The-Air (OTA) 技術に基づくデバイスのリモートアップグレードをサポートします。
  • デバイスシャドウ機能によりデバイスとアプリケーションを分離し、ワイヤレス接続が不安定な場合に対処します。

セキュリティ

多層セキュリティ戦略により、クラウドに接続されたデバイスのセキュリティを確保します。

  • 認証
    • チップレベルのセキュリティソリューション (ID²) と DeviceSecret のメカニズムにより、DeviceSecret への不正侵入を防止します。 セキュリティレベル: 高。
    • デバイス固有証明書による認証メカニズムにより、デバイスに対する攻撃を防止します。 このメカニズムは、デバイス証明書 (ProductKey、DeviceName、および DeviceSecret で構成される) のプールが大量生産のデバイスチップにインストールされる場合に適用されます。 セキュリティレベル: 高。
    • プロダクト固有証明書による認証メカニズムを提供し、デバイスの攻撃リスクを軽減します。 このメカニズムは、デバイス証明書 (ProductKey、DeviceName、および DeviceSecret で構成される) のプールを大量生産のデバイスチップにインストールできない場合に適用されます。 セキュリティレベル: 中。
  • 通信セキュリティ
    • TLS (MQTT や HTTP など) と DTLS (CoAPなど) プロトコルを使用する各種のデータチャネルをサポートし、データのプライバシーと整合性を保証します。 これは、ハードウェアのリソースが十分であり、デバイスの電力消費が問題にならない場合に適用されます。 セキュリティレベル: 高。
    • TCP (MQTT など) および UDP (CoAP など) プロトコルを使用するカスタムデータ対称暗号化チャネルをサポートします。 これは、ハードウェアのリソースが不十分で、デバイスの電力消費が制限される場合に適用されます。 セキュリティレベル: 中。
    • 権限管理を提供し、デバイスとクラウド間の通信が安全であることを保証します。
    • 通信リソースをデバイスレベルで分離し (Topic など)、デバイス上での不正な操作を防ぎます。

ルールエンジンを使用した SQL 解析とデータ転送

IoT Platform は、ルールエンジンを使用して他の Alibaba Cloud サービスと統合することができます。 Alibaba Cloud サービスへデバイスデータ転送し、データの保存やコンピューティングを行うための簡単なルールを設定できます。 ルールエンジンには以下の機能があります。

  • ルールを使用してデバイス間で M2M 通信を確立します。
  • MQ (Message Queue) にデータを転送し、アプリケーションが確実にデバイスデータにアクセスできるようにします。
  • Table Store にデータを転送し、データ取得と構造化ストレージの統合をサポートします。
  • Function Compute にデータを転送し、データ取得とイベント駆動型処理の統合をサポートします。

利点

ますます多くの企業が IoT (Internet of Things) ソリューションを利用して、デバイスからデータを収集、管理し、収益を向上させています。 しかし、IoT エコシステムを変革し、強力な IoT プラットフォームを構築する作業は困難に直面しています。 Alibaba Cloud IoT Platform は、これらの問題に対するソリューションを提供します。

次の表は、従来の IoT 開発と、Alibaba Cloud IoT Platform に基づく IoT 開発の違いを示しています。

  従来の IoT 開発 Alibaba Cloud IoT Platform に基づく開発
IoT プラットフォームへのデバイスの接続

インフラストラクチャと、組み込みシステム開発者およびクラウド開発者のサポートが必要です。

開発は難しく、非効率的です。

デバイスとクラウドの間を短期間で接続するための SDK (ソフトウェア開発キット) を提供します。

IoT Platform は、世界中のデバイス、異種ネットワークのデバイス、多環境下で実行されているデバイス、および複数プロトコルに基づいて動作するデバイスへの接続をサポートします。

パフォーマンス アーキテクチャの手動スケーリングが必要です。 その結果、サーバーやロードバランサーなどのインフラストラクチャを、デバイスレベルの粒度で実装することが困難になります。 1 億台以上のデバイスの永続的接続と数百万台の同時接続をサポートし、アーキテクチャの水平スケーリングを可能にします。
セキュリティ セキュリティ対策の策定とデプロイメントが別途必要です。 デバイスデータのセキュリティ確保には困難が予想されます。 クラウド内のデータを保護する手段が、複数あります。
  • デバイス認証によるデバイスのセキュリティと一意性の保証
  • 通信暗号化によるデータ改ざん防止
  • Alibaba Cloud Security と権限チェックによるクラウドセキュリティの保護
安定性 手動によるサーバー障害検出とサービス移行が必要で、移行中のサービス中断によりサービスが不安定になります。 最大 99.9% のサービス可用性を保証し、単一障害点での自動移行を可能にします。
使いやすさ ロードバランシングのための分散アーキテクチャ構築に追加のサーバーを必要とし、接続、コンピューティング、ストレージを処理する完全な IoT システム開発が必要で、費用がかかります。 同一プラットフォームでのデバイス管理、デバイスのリアルタイムモニタリング、および Alibaba Cloud サービスへのシームレスな接続をサポートし、複雑な IoT アプリケーションの柔軟で容易な実装を可能にします。

制限事項

IoT Platform には次の制限があります。

プロダクトとデバイス

項目 説明 制限
タグ総数 1 つのプロダクト、デバイス、またはデバイスグループが保持できるタグの最大数。 100
プロダクト総数 1 つのアカウントが保持できるプロダクトの最大数。 1,000
デバイス総数 1 つのプロダクトが保持できるデバイスの最大数。

注: ビジネスでさらにデバイスが必要な場合は、コンソールでチケットを起票し、サポートセンターへお問い合わせください。

500,000
1 つのアカウントが保持できるデバイスの最大数。

注: ビジネスでさらにデバイスが必要な場合は、コンソールでチケットを起票し、サポートセンターへお問い合わせください。

10,000,000
ゲートウェイとサブデバイス 1 つのゲートウェイが保持できるサブデバイスの最大数。 1,500
TSL モデルの機能 1 つのプロダクトが保持できる機能の最大数。 200
struct プロパティに定義できるパラメーターの最大数。 10

データ型に依存する制限事項

  • enum:列挙項目の数が 100 を超えてはいけません。
  • text:データが 2,048 バイトを超えてはいけません。
  • array:配列要素の数が 128 を超えてはいけません。
1 つのサービスに指定できる入力または出力パラメーターの最大数。 20
1 つのイベントに指定できる出力パラメーターの最大数。 50
デバイスグループ 1 つのアカウントが保持できるグループ (ペアレントグループとサブグループを含む) の最大数。 1,000
1 つのグループに追加できるデバイスの最大数。 20,000
1 つのデバイスが所属できるグループの最大数。 10
データ解析 データ解析のためにアップロードできるスクリプトファイルの最大サイズ。 48 KB
リモート設定 リモート設定ファイルは JSON 形式のみをサポートします。 ファイルサイズは 64 KB を超えてはいけません。 64 KB
データストレージ プロパティ、イベント、およびサービスのデータは 30 日間保存されます。 30 日間

通信

項目 制限
1 つのアカウントが 1 秒間に送信できる MQTT リクエストの最大数。 500
1 つのデバイスが 1 分間に送信できる接続リクエストの最大数。 5
1 つのデバイスがサブスクライブできる Topic の最大数。

最大数に達すると、新しいサブスクリプションリクエストは拒否されます デバイスは、受信した SUBACK メッセージからリクエストが成功したかどうか確認できます。

100
1 つのアカウントが、1 秒間にデバイスから IoT Platform に送信できるリクエストの最大数。 10,000
1 つのアカウントが、1 秒間に IoT Platform からデバイスに送信できるリクエストの最大数。 2,000
1 つのアカウントが、1 秒間にルールエンジンのデータ転送モジュールに送信できるメッセージの最大数。 1,000
1つのアカウントが、1 秒間にサブスクライブできるメッセージの最大数。 1,000
1つのデバイスが IoT Platform にメッセージを送信できる最大頻度。 QoS 0:30 メッセージ/秒。

QoS 1:10 メッセージ/秒。

デバイスは、最大 50 メッセージ/秒で受信できます。 パフォーマンスはネットワークの状態にも左右されます。

TCP 書き込みバッファサイズの上限を超過すると、エラーが返されます。 たとえば、Pub 操作を使用してリクエストをデバイスに送信するときに、デバイスがすべてのリクエストを処理できない場合は、スロットルエラーが返されます。

注 MQTT プロトコルを使用してデバイスを IoT Platform に接続する場合、スロットルエラーメッセージは返されません。 ただし、ログを閲覧して、スロットルされているデバイスを探し出すことはできます。
50 メッセージ/秒
接続ごとの最大スループット (帯域幅)。 1,024 KB
IoT Platform は、1 つのデバイスに対する応答待ちのメッセージパブリッシュリクエストの数を制限します。

最大数に達すると、IoT Platform は、PUBACK メッセージが返されない限り、そのデバイスに対する新しいメッセージパブリッシュリクエストを受け付けません。

100
QoS 1 の送信方式で送信されたメッセージの最大保存期間。

最大保存期間が経過しても PUBACK メッセージが受信されない場合、リクエストは破棄されます。

7 日
MQTT を使用して送信されるメッセージの最大サイズ。 この制限を超えるメッセージは拒否されます。 256 KB
CoAP を使用して送信されるメッセージの最大サイズ。 この制限を超えるメッセージは拒否されます。 1 KB
MQTT 接続のハートビート間隔は、30〜1,200 秒です。 ハートビート間隔がこの範囲外の場合、IoT Platform は接続リクエストを拒否します。

300 秒を超える値を設定することをお勧めします。

IoT Platform が、CONNECT メッセージに対するレスポンスとして CONNACK メッセージを送信すると、タイマーがスタートします。 PUBLISH、SUBSCRIBE、PING、または PUBACK メッセージを受信すると、タイマーがリセットされます。 タイマーは、ハートビート間隔の 1.5 倍の時間にセットされます。 タイマーが時間切れになってもメッセージが受信されない場合、接続は切断されます。

30〜1,200 秒

Topic

項目 制限
1 つのプロダクトは、最大 50 個の Topic カテゴリを定義できます。 50
デバイスは、自分自身の Topic に対するメッセージのパブリッシュとサブスクライブだけが可能です。 なし
Topic は UTF-8 でエンコードされた文字列で、128 バイトを超えることはできません。 128 バイト
1 つの Topic に指定できるスラッシュ (/) の最大数。 7
1 つのサブスクリプションリクエストに指定できる Topic の最大数。 8
Topic のサブスクライブまたはサブスクライブ解除後、変更は約 10 秒で有効になります。 サブスクリプションは、Topic をサブスクライブ解除するまで有効です。 データの損失を防ぐため、事前に Topic をサブスクライブすることをお勧めします。

例:あるデバイスが Sub リクエストを Topic A に送信したとします。10 秒後、サブスクリプションが有効になり、そのデバイスは Topic A からリアルタイムでメッセージの受信を開始します。 サブスクリプションを解除しない限り、そのデバイスは Topic A からのメッセージを受信し続けます。

10 秒
1 つのブロードキャスト Topic を、最大 1,000 台のデバイスがサブスクライブできます。 サーバー SDK は、1 秒間に 1 つのブロードキャストメッセージを送信可能です。 1,000

デバイスシャドウ

 
項目 制限
デバイスシャドウ JSON ファイルの最大入れ子レベル。 5
デバイスシャドウ JSON ファイルの最大サイズ。 16 KB
デバイスシャドウ JSON ファイル内のプロパティの最大数。 128
デバイスが 1 秒間に送信できるリクエストの最大数。 20

データ転送

項目 制限
1 つのアカウントは最大 1,000 個のルールを設定できます。 1,000
1つのルールには、最大 10 個のデータ転送操作 (10 個のデータ転送先) を指定できます。 10
データ転送のパフォーマンスは、転送先クラウドサービスのインスタンスに依存します。 転送先インスタンスに十分なパフォーマンスリソースがある場合、ルールエンジンは 1 つのアカウントに対して 1,000 QPS のデータ転送能力を発揮できます。 RAM ユーザーは、対応する Alibaba Cloud アカウントのクォータを共有します。 リクエスト数が最大数を超える場合、または転送先インスタンスに対する受信データの書き込みに 1 秒以上かかる場合、データ転送は制限されます。 1,000 QPS
転送先クラウドサービスのインスタンスが正常動作していることを確認してください。 転送先インスタンスのクラッシュ、料金滞納、無効なパラメーター (無効な値や権限の変更など)、設定の間違いなどがある場合、データ転送は失敗します。
ルールエンジンは、メッセージを複数回転送する場合があります。 分散環境では、リアルタイムのメッセージのバランス調整により、単一メッセージの複数回転送が発生します。 転送先アプリケーションには、重複したメッセージを無視するメカニズムが必要です。 なし

クラウド API の制限

操作名 QPS/アカウント QPS/IPアドレス
Pub 1,600 100
RRpc 1,000 100
PubBroadcast 1 100
その他の操作 50 100