すべてのプロダクト
Search
ドキュメントセンター

IoT Platform:デバイスとクラウド間の最適化されたインタラクション

最終更新日:Mar 26, 2025

このトピックでは、IoT Platform がサポートする MQTT 5.0 におけるデバイスとクラウド間の最適化されたインタラクションについて説明します。

機能の説明

MQTT 5.0 は、デバイスとサーバー間の相互運用性とメッセージの透過性を向上させるように設計されています。MQTT 5.0 では、次のデバイスとクラウド間のインタラクションが最適化されています。

接続確立時のフィードバック

接続確立時のフィードバックは、デバイスとサーバー間のネゴシエーションメカニズムです。デバイスとサーバー間の接続が確立されると、デバイスはリクエストで接続パラメーターを送信し、サーバーはフィードバックとして CONNACK パケットを返します。CONNACK パケットは、リクエストパラメーターの値とデバイスで使用可能な機能を含む接続確認応答です。

CONNACK プロパティ

説明と有効値

IoT Platform からの応答

Retain Available

  • 1: 保持メッセージがサポートされています。

  • 0: 保持メッセージはサポートされていません。

1

Wildcard Subscription Available

  • 1: ワイルドカード サブスクリプションがサポートされています。

  • 0: ワイルドカード サブスクリプションはサポートされていません。

1

Subscription Identifiers Available

  • 1: サブスクリプション ID がサポートされています。

  • 0: サブスクリプション ID はサポートされていません。

0

Shared Subscription Available

  • 1: 共有サブスクリプションがサポートされています。

  • 0: 共有サブスクリプションはサポートされていません。

1

Topic Alias

  • 1: サーバーはこの接続で Topic Alias を受け入れます。

  • 0: サーバーはこの接続で Topic Alias を受け入れません。

1

Maximum QoS

  • 2: QoS 2

  • 1: QoS 1

  • 0: QoS 0

1

Server Keep Alive

サーバーは、キープアライブ期間中にハートビート パケットまたはデータ パケットの送信を続けます。そうでない場合、接続は切断されます。このプロパティは、キープアライブ期間を指定します。

有効値: 30 ~ 1200

IoT Platform は、デバイスが接続パラメーターで指定したキープアライブ期間を返します。

デバイスによって設定された値が有効値の範囲外の場合、接続は切断されます。

Session Expiry Interval

このプロパティは、接続が切断された後のセッションの保持期間を指定します。

有効値: 0 ~ 0xFFFFFFFF

IoT Platform は、デバイスが接続パラメーターで指定した保持期間を返します。

デバイスがこの期間を指定しなかった場合は、デフォルト値 0 が使用されます。

Maximum Packet Size

有効値: 0 ~ 0xFFFFFFFF

IoT Platform は常に 262144 を返します。これは 256 KB を示します。

Topic Alias Maximum

有効値: 0 ~ 0xFFFFFFFF

IoT Platform は常に 20 を返します。

サーバー送信の DISCONNECT パケット

MQTT 3.1.1 では、デバイスがルールに違反した場合、サーバーは接続が閉じられた理由を説明せずにデバイス接続を直接閉じます。

MQTT 5.0 では、サーバーはデバイスへの接続を閉じ、デバイスに DISCONNECT パケットを送信できます。DISCONNECT パケットには、理由コードと、接続が閉じられた理由を説明する理由文字列が含まれています。DISCONNECT パケットはトラブルシューティングを簡素化します。

エラーコードの機能強化

機能強化

MQTT 3.1

MQTT 5.0

数量の増加

5 つのエラーコード

20 個のエラーコード

理由文字列

サポートされていません

デバッグとトラブルシューティングのために詳細なエラー原因を指定するために、Reason String プロパティが追加されています。

より多くの種類のパケットのエラーコード

エラーコードは CONNECT パケットに対してのみ返されます。

エラーコードは、CONNECT、UNSUBACK、PUBACK、DISCONNECT、およびその他のパケットに対して返されます。

エラーコード

10 進数

16 進数

名前

パケット タイプ

0

0x00

成功

CONNACK、PUBACK、PUBREC、PUBREL、PUBCOMP、UNSUBACK、AUTH

128

0x80

不特定のエラー

CONNACK、PUBACK、PUBREC、SUBACK、UNSUBACK、DISCONNECT

129

0x81

不正な形式のパケット

CONNACK、DISCONNECT

130

0x82

プロトコル エラー

CONNACK、DISCONNECT

132

0x84

サポートされていないプロトコル バージョン

CONNACK

136

0x88

サーバーが利用できません

CONNACK

137

0x89

サーバーがビジー状態です

CONNACK、DISCONNECT

138

0x8A

禁止されています

CONNACK

140

0x8C

不正な認証方式

CONNACK、DISCONNECT

141

0x8D

キープアライブ タイムアウト

DISCONNECT

144

0x90

無効なトピック名

CONNACK、PUBACK、PUBREC、DISCONNECT

147

0x93

受信最大値を超えました

DISCONNECT

148

0x94

無効な Topic Alias

DISCONNECT

149

0x95

パケットが大きすぎます

CONNACK、DISCONNECT

150

0x96

メッセージ レートが高すぎます

DISCONNECT

151

0x97

クォータを超えました

CONNACK、PUBACK、PUBREC、SUBACK、DISCONNECT

152

0x98

管理操作

DISCONNECT

153

0x99

無効なペイロード形式

PUBACK、PUBREC、DISCONNECT

154

0x9A

Retain はサポートされていません

CONNACK、DISCONNECT

155

0x9B

QoS はサポートされていません

CONNACK、DISCONNECT

156

0x9C

別のサーバーを使用してください

CONNACK、DISCONNECT

157

0x9D

サーバーが移動しました

CONNACK、DISCONNECT

158

0x9E

共有サブスクリプションはサポートされていません

SUBACK、DISCONNECT

159

0x9F

接続レートを超えました

CONNACK、DISCONNECT