Weave メッセージ

Weave メッセージ

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 パケットをカプセル化するトンネル メッセージ

詳細については、以下をご覧ください。