Weave の中心となるのはメッセージです。プロファイルの機能を実行するには、HAN 内のリソースが相互にメッセージを送信できる必要があります。
Weave の信頼性に関するメッセージ
Weave Reliable Messaging(WRM)
は、確認応答付きの Weave アプリケーション レイヤのメッセージです。基盤となるネットワーク トランスポートに関係なく、ファブリック内の 2 つのリソース間であらゆるタイプの一般メッセージまたはトンネル メッセージを確実に配信できます。ウィーブ TLV
Weave TLV(タグ長の値)
は、データをコンパクトにエンコードするためのバイナリ形式です。TLV は JSON と表現的に互換性があり、効果的なシリアル化解除に最適化されています。これは CBOR や ASN.1 などのデータ形式に似ていますが、通常、特定のデータセットをエンコードして表すよりもシンプルかつ小さくなります。Weave メッセージは、制約のあるデバイスを考慮して設計された TLV でエンコードされます。TLV を使用すると、最小限のデータ量で最小限のデータ転送でネットワーク経由で転送できます。
Weave TLV は人が読める形式ではないため、Weave TLV でエンコードしたり、直接処理したりする必要はありません。メッセージのタイプとその内容を指定するだけで、Weave がすべて処理を行います。
メッセージの種類
Weave メッセージには 2 つのタイプがあり、暗号化形式と非暗号化形式で送信できます。両方のタイプのメッセージを暗号化するプロセスは同じであり、両方のタイプのメッセージを同じ鍵を使用して暗号化できます。
一般的なメッセージ
一般的なメッセージ
は、Weave アプリケーションがアプリケーション固有のデータとリクエストを伝えるために使用します。これには、メッセージの意味的意味や、ペイロードの構造を記述する要素が含まれています。- プロファイル ID - メッセージを処理するプロファイル
- Message Type - メッセージの具体的なタイプ(アクション)
- Exchange ID - 2 つのリソース間のメッセージ交換フロー
一般的なメッセージでは、前のメッセージを受信したことを通知する情報を伝えることもできます。これは Weave Reliable Messaging プロトコルの一部です。
トンネル メッセージ
トンネル メッセージ
は、2 つの Weave リソース間で転送されるエンコードされた IP パケット(実際には IPv6 はサポートされていますが、IPv4 はサポートされています)をカプセル化します。トンネリング メッセージは構造がシンプルで、一般的なメッセージに含まれるアプリケーション固有のヘッダーの多くを省略できます。トンネル パケットは、UDP、TCP、ICMP など、有効な任意の IP プロトコルを伝えることができます。
内容のまとめ
学習した内容:
- Weave Reliable Messaging
- リクエスト / レスポンス
- 購読更新
は、次の 2 つの形式の Exchange で Weave メッセージを確実に配信できます。
- Weave TLV は、Weave メッセージのコンパクト エンコードのバイナリ形式です。
- Weave メッセージには次の 2 種類があります。
- 一般的なメッセージ は、アプリケーション固有のデータとリクエスト(プロファイルで使用されるものなど)を伝えるために使用されます
- IP パケットをカプセル化するトンネル メッセージ
詳細については、以下をご覧ください。