Thread dan IPv6

Matter menggunakan IPv6 untuk komunikasi operasionalnya, dan memanfaatkan alamat IPv6 Unicast dan Multicast untuk mengakses Node dan Grupnya.

Daya Rendah

Beberapa Node Matter terhubung dengan kabel dan memiliki anggaran energi yang memungkinkan radio tetap aktif secara terus-menerus. Jenis Node lainnya seperti sensor memiliki persyaratan untuk berjalan selama bertahun-tahun dengan baterai, mengoperasikan radionya di jaringan daya rendah seperti Thread. Arsitektur proxy, bersama dengan Thread Sleepy End Devices, memungkinkan Node dengan daya penuh untuk menyediakan fungsi tingkat jaringan dan tingkat aplikasi yang melindungi Node turunannya dari transaksi yang boros energi.

Aspek mendasar dari Matter adalah berfungsi pada media jaringan throughput tinggi seperti Wi-Fi dan Ethernet, tetapi juga pada latensi rendah, bandwidth rendah, seperti Thread. Jika semua paket Multicast dari Wi-Fi dihubungkan ke Thread, jaringan akan kelebihan beban, dan berpotensi dibanjiri. Sasaran Thread adalah mengaktifkan IPv6 dalam jaringan mesh dengan daya rendah dan latensi rendah, bukan transfer data dengan bandwidth tinggi. Meskipun ping ICMPv6 Thread di jaringan lokal biasanya di bawah RTT beberapa puluh milidetik, total bandwidth-nya dibatasi hingga 250 kbps di PHY IEEE 802.15.4. Dengan transmisi ulang paket dan overhead, bandwidth maksimum biasanya sekitar 125 kbps. Dengan kata lain, besarnya lebih kecil daripada Wi-Fi.

Frame di PHY IEEE 802.15.4 adalah 127 byte, tetapi unit transmisi maksimum (MTU) terbesar (dan umum) dari paket IPv6 di Thread adalah 1280 byte. Oleh karena itu, paket IPv6 sering kali perlu dibagi menjadi beberapa frame PHY. Proses ini ditentukan oleh RFC4944.

Untuk mempelajari lebih lanjut, lihat Pemetaan IPv6 dalam Primer Thread di openthread.io.

Router Pembatas

Jadi, bagaimana Node dapat berdampingan di kedua media transpor saat berada di fabric yang sama? Meskipun kedua jaringan tersebut memiliki kredensial Matter level aplikasi yang sama, keduanya tidak memiliki teknologi link yang sama. Dalam skenario ini, jaringan memerlukan Thread Border Router (BR) untuk mengaktifkan konektivitas. BR adalah Router IPv6 Stub.

Stub Router memungkinkan konektivitas antara jaringan stub dan jaringan reguler. Jaringan Stub adalah jaringan "last-mile" yang menyediakan konektivitas luar kepada anggotanya, tetapi tidak berfungsi sebagai jalur jaringan transit di antara 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 ke Thread dan Jaringan Infrastruktur yang Berdekatan. Dengan demikian, BR hanya meneruskan unicast ke atau dari awalan IPv6 Thread.

Router Pembatas 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 DNS-SD mDNS atas nama Node Thread, sehingga dapat ditemukan di jaringan infrastruktur yang berdekatan.

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

Multicast IPv6

Pesan Grup juga penting karena memungkinkan kontrol serentak beberapa Node Matter melalui Multicast. Untuk me-rutekan traffic ini ke jaringan Thread, baik Matter maupun Thread menerapkan Unicast IPv6 Multicast Addressing Scheme berbasis awalan yang ditentukan oleh RFC 3306.

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

Misalnya, alamat Matter Multicast mungkin terlihat seperti ini:

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

Tabel 1 menjelaskan cara pembuatan alamat ini:

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

Cakupan: lokal situs

8 bit 0x00

direservasi

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 yang penting adalah bahwa cakupan Multicast berada dalam Fabric, sedangkan alamat Unicast dibagikan di antara Fabric. Node dengan banyak fabric berpotensi memiliki beberapa alamat Multicast yang menentukan Grup Node tumpang-tindih yang dicakup di setiap fabric.

Port

Matter menggunakan Port 5540 untuk Multicast-nya.