Thread dan IPv6

Matter menggunakan IPv6 untuk komunikasi operasionalnya, dan memanfaatkan IPv6 Unicast dan Multicast untuk mengakses {i>Node<i} dan Grupnya masing-masing.

Daya Rendah

Beberapa Node Matter terhubung dengan kabel dan memiliki anggaran energi yang memungkinkan radio tetap aktif secara terus-menerus. Jenis lain dari {i>Node<i}, seperti sensor memiliki persyaratan untuk dijalankan selama bertahun-tahun pada baterai, yang mengoperasikan radionya pada jaringan daya rendah seperti Thread. {i>Proxy<i} arsitektur, beserta Thread Perangkat Akhir yang Mengantuk, memungkinkan Node bertenaga penuh untuk menyediakan fungsi yang mengisolasi Node anak mereka dari penggunaan intensif energi transaksi.

Aspek dasar Matter adalah fungsi ini berfungsi di jaringan dengan throughput tinggi seperti Wi-Fi dan Eternet, tetapi juga pada latensi rendah, bandwidth rendah, seperti Thread. Jika semua Multicast paket dari Wi-Fi dijembatani ke Thread, kita akan membebani jaringan, dan berpotensi membanjirinya. Tujuan Thread adalah mengaktifkan IPv6 dengan daya rendah, jaringan mesh latensi rendah, bukan transfer data bandwidth tinggi. Meskipun Ping ICMPv6 Thread di jaringan lokal biasanya di bawah RTT beberapa puluh milidetik, total bandwidth-nya dibatasi hingga 250 kbps di IEEE 802.15.4 PHY. Dengan transmisi ulang dan {i>overhead<i} paket, bandwidth maksimum sekitar 125 kbps. Dengan kata lain, urutan magnitudo kurang dari Wi-Fi.

Frame pada IEEE 802.15.4 PHY adalah 127 byte, tetapi yang terbesar (dan tipikal) unit transmisi maksimum (MTU) dari paket IPv6 di Thread adalah 1280 byte. Dengan demikian paket IPv6 sering kali perlu dipecah menjadi beberapa {i>frame<i} PHY. Proses ini didefinisikan oleh RFC4944.

Untuk mempelajari lebih lanjut, lihat Pengalamatan IPv6 di Thread Primer pada openthread.io.

Router Pembatas

Jadi, bagaimana Node dapat berdampingan di kedua media transpor saat berada di fabric yang sama? Meskipun kedua jaringan berbagi Matter tingkat aplikasi mereka tidak memiliki teknologi link yang sama. Dalam skenario ini, jaringan membutuhkan Thread Router Pembatas (BR) untuk mengaktifkan konektivitas. BR adalah Router IPv6 Stub.

Router Stub memungkinkan konektivitas antara jaringan stub dan jaringan reguler. Jaringan Stub adalah "mil terakhir" jaringan yang menyediakan konektivitas luar ke anggotanya, tetapi tidak berfungsi sebagai jalur jaringan transit antar jaringan lain. Biasanya, Jaringan Stub Matter berbasis Thread. Lihat Draf RFC untuk mengetahui informasi selengkapnya tentang jaringan stub.

Oleh karena itu, BR memiliki tanggung jawab untuk menjadi link antara Jaringan Stub dan Jaringan Infrastruktur Sekitar, yang merupakan jaringan Wi-Fi atau Ethernet lokal. Mereka hanya meneruskan paket yang relevan dengan jaringan Thread.

Proses ini dilakukan dengan menetapkan awalan IPv6 yang berbeda untuk Thread dan Jaringan Infrastruktur yang Berdekatan. Dengan demikian, BR hanya meneruskan unicast ke atau dari awalan IPv6 Thread.

Router Perbatasan juga bertanggung jawab untuk:

  • mengonfigurasi awalan dan rute IPv6 secara otomatis untuk Thread dan Jaringan Infrastruktur yang Berdekatan sehingga host di kedua sisi router Perbatasan Thread dapat berkomunikasi.
  • memublikasikan paket penemuan mDNS DNS-SD atas nama Thread Node, sehingga dapat ditemukan di sebelah jaringan infrastruktur IT.

Untuk mempelajari lebih lanjut, lihat Router Pembatas panduan di openthread.io.

Multicast IPv6

Pesan grup juga penting karena memungkinkan kontrol simultan beberapa Node Matter melalui Multicast. Di beberapa untuk mengarahkan traffic ini ke jaringan Thread, baik Matter dan Thread mengimplementasikan Unicast IPv6 berbasis awalan Multicast Skema Pengalamatan yang ditentukan oleh RFC 3306.

Metode ini memungkinkan pemilihan Node tujuan paket Multicast berdasarkan awalan IPv6 Unicast bersama.

Misalnya, alamat Matter Multicast akan terlihat seperti ini:

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

Tabel 1 menjelaskan cara alamat ini dibuat:

Tabel 1: Unicast Alamat IPv6 berbasis awalan
Bit Deskripsi
12 bit 0xFF3
4 bit 0x05

Cakupan: site-local

8 bit 0x00

tersimpan

8 bit 0x40

Menunjukkan awalan panjang 64-bit

8 bit 0xFD

Menetapkan awalan ULA

56 bit ID Fabric
8 bit 0x00
16 bit ID Grup

Informasi selengkapnya dapat ditemukan di bagian Multicast Primer Thread dan di RFC itu sendiri.

Saat Alamat Multicast IPv6 terbentuk, alamat tersebut juga menyertakan 56 bit atas ID Fabric. Implikasi pentingnya adalah ruang lingkup dari Multicast ada dalam Fabric, sedangkan Unicast alamat dibagikan di antara Fabric. {i>Node<i} dengan banyak jenis kain berpotensi memiliki beberapa alamat Multicast yang menentukan Node yang tumpang-tindih Grup tercakup dalam setiap kain.

Port

Matter menggunakan Port 5540 untuk Multicast-nya.