スレッドと IPv6

Matter はオペレーション通信に IPv6 を使用し、 ノードとグループへのアクセスにそれぞれ IPv6 UnicastMulticast のアドレス指定を利用します。

低電力

一部の Matter ノードは有線接続されており、 無線を継続的にオンにできるエネルギー バジェットを備えています。センサーなどの他のタイプのノードは、バッテリーで数年間動作する必要があり、無線を Thread などの低電力ネットワークで動作させます。Threadプロキシ アーキテクチャと Thread Sleepy End Devicesにより、 フルパワーのノードは、エネルギー消費の多い トランザクションから子ノードを分離するネットワーク レベルとアプリケーション レベルの 両方の機能を提供できます。

Matter の基本的な特徴は、Wi-Fi やイーサネットなどの 高スループット ネットワーク メディアだけでなく、 低レイテンシ、低帯域幅(Thread など)でも動作することです。Wi-Fi からのすべての Multicast パケットが Thread にブリッジされると、ネットワークに過負荷がかかり、 フラッディングが発生する可能性があります。Thread の目標は、高帯域幅のデータ転送ではなく、低電力、 低レイテンシのメッシュ ネットワーキングで IPv6 を有効にすることです。ローカル ネットワークでの Thread の ICMPv6 ping は通常、 数十ミリ秒未満の RTT ですが、総帯域幅は IEEE 802.15.4 PHY で 250 kbps に制限されます。パケットの再送信とオーバーヘッドにより、一般的な最大帯域幅は約 125 kbps です。つまり、Wi-Fi より桁違いに小さくなります。

IEEE 802.15.4 PHY のフレームは 127 バイトですが、最大(標準)の 最大伝送単位(MTU)の IPv6 パケットはThread 1, 280 バイトです。そのため、IPv6 パケットを複数の PHY フレームに分割する必要があることがよくあります。 このプロセスは RFC4944で定義されています。

詳細については、IPv6 アドレス指定Thread Primer の openthread.ioでご覧ください。

ボーダー ルーター

同じファブリック内で、ノードはどのようにして両方のトランスポート メディアで共存できるのでしょうか。 両方のネットワークはアプリケーション レベルの Matter 認証情報を共有していますが、同じリンク技術を共有していません。このシナリオでは、ネットワークに接続を有効にするためのThread ボーダー ルーター(BR)が必要です。BR はスタブ IPv6 ルーターです。

スタブ ルーター を使用すると、スタブ ネットワークと通常のネットワーク間の接続が可能になります。 スタブ ネットワーク は、メンバーに外部接続を提供する「ラストマイル」ネットワークですが、他のネットワーク間のトランジット ネットワーク パスとしては機能しません。通常、Matter スタブ ネットワークは Thread-ベースです。 スタブ ネットワークの詳細については、RFC ドラフト をご覧ください。

したがって、BR はスタブ ネットワークと 隣接するインフラストラクチャ ネットワーク (ローカル Wi-Fi または イーサネット ネットワーク)間のリンクとしての役割を担います。 ネットワークに関連するパケットのみを転送します。Thread

このプロセスは、異なる IPv6 プレフィックスを Thread と隣接するインフラストラクチャ ネットワークに割り当てることで実現されます。したがって、BR は Thread IPv6 プレフィックスとの間のユニキャストのみを転送します。

ボーダー ルーターは次の役割も担います。

  • Thread ボーダー ルーターの両側の ホストが通信できるように、 Thread ネットワークと隣接するインフラストラクチャ ネットワークの両方に IPv6 プレフィックスとルートを自動的に構成します。Thread
  • Thread ノードの代わりに mDNS DNS-SD 検出パケットを公開して、隣接する インフラストラクチャ ネットワークで検出できるようにします。

詳細については、ボーダー ルーター openthread.ioでご覧ください。

IPv6 マルチキャスト

グループ メッセージも重要です。 複数の Matter ノードを Multicast で同時に制御できます。このトラフィックを Thread ネットワークにルーティングするために、MatterThread の両方で、RFC 3306 で定義されているUnicast プレフィックス ベースの IPv6 Multicast が実装されています。

この方法では、共有 IPv6 Unicast プレフィックスに基づいて、 Multicast パケットの宛先ノードを選択できます。

たとえば、Matter Multicast アドレス は次のようになります。

FF35:0040:FD<Fabric ID>00:<Group ID>

表 1 に、このアドレスの構成方法を示します。

表 1: Unicast プレフィックス ベースの IPv6 アドレス
ビット 説明
12 ビット 0xFF3
4 ビット 0x05

スコープ: サイトローカル

8 ビット 0x00

予約済み

8 ビット 0x40

64 ビット長のプレフィックスを示します

8 ビット 0xFD

ULA プレフィックスを指定します

56 ビット ファブリック ID
8 ビット 0x00
16 ビット グループ ID

詳細については、 Multicast セクションと Thread Primer および RFC をご覧ください。

IPv6 Multicast アドレスが形成されると、 ファブリック ID の上位 56 ビットも含まれます。重要なのは、 Multicastのスコープがファブリック内にあるのに対し、Unicast アドレスはファブリック間で共有されることです。ファブリックが多いノードには、各ファブリックでスコープ設定された重複するノード グループを定義する複数のMulticastアドレスが存在する可能性があります。

ポート

Matter はマルチキャストにポート 5540 を使用します。