Matter はオペレーション通信に IPv6 を使用し、 ノードとグループへのアクセスにそれぞれ IPv6 Unicast と Multicast のアドレス指定を利用します。
低電力
一部の 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 ネットワークにルーティングするために、Matter と Thread の両方で、RFC 3306 で定義されているUnicast プレフィックス ベースの IPv6 Multicast が実装されています。
この方法では、共有 IPv6 Unicast プレフィックスに基づいて、 Multicast パケットの宛先ノードを選択できます。
たとえば、Matter Multicast アドレス は次のようになります。
FF35:0040:FD<Fabric ID>00:<Group ID>
表 1 に、このアドレスの構成方法を示します。
| ビット | 説明 |
| 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 を使用します。