Matter, operasyonel iletişimleri için IPv6'yı kullanır ve sırasıyla düğümlerine ve gruplarına erişmek için hem IPv6 Unicast hem de Multicast adreslemeden yararlanır.
Düşük Güç
Bazı Matter düğümleri kabloludur ve radyolarını sürekli açık tutmalarına olanak tanıyan enerji bütçelerine sahiptir. Sensörler gibi diğer düğüm türleri, radyolarını Thread gibi düşük güçlü ağlarda çalıştırarak pilleri ile yıllarca çalışmalıdır. Thread Uyku modundaki uç cihazlar ile birlikte proxy mimarisi, tam güçlü düğümlerin alt düğümlerini enerji yoğun işlemlerden koruyan hem ağ düzeyinde hem de uygulama düzeyinde işlevler sunmasına olanak tanır.
Matter'ün temel özelliklerinden biri, hem kablosuz ağ ve Ethernet gibi yüksek bant genişliğine sahip ağ ortamlarında hem de Thread gibi düşük gecikmeli, düşük bant genişliğine sahip ortamlarda çalışabilmesidir. Kablosuz ağdaki tüm Multicast paketleri Thread'a köprüleseydik ağı aşırı yükler ve muhtemelen tıkanmasına yol açardık. Thread'ın amacı, yüksek bant genişliğine sahip veri aktarımı yerine düşük güç ve düşük gecikmeli ağ bağlantısında IPv6'yı etkinleştirmektir. Thread'ın yerel bir ağdaki ICMPv6 ping'leri genellikle birkaç on milisaniyelik RTT'nin altında olsa da toplam bant genişliği, IEEE 802.15.4 PHY'de 250 Kb/sn ile sınırlıdır. Paket yeniden aktarımları ve ek maliyetler göz önüne alındığında, tipik maksimum bant genişliği yaklaşık 125 Kb/sn'dir. Diğer bir deyişle, Wi-Fi'den çok daha düşük bir ölçektedir.
IEEE 802.15.4 PHY'deki çerçeveler 127 bayttır ancak Thread'teki IPv6 paketlerinin en büyük (ve tipik) maksimum aktarım birimi (MTU) 1.280 bayttır. Bu nedenle, IPv6 paketlerinin genellikle birkaç PHY çerçevesine bölünmesi gerekir. Bu süreç RFC4944 tarafından tanımlanmıştır.
Daha fazla bilgi için openthread.io adresindeki Thread Primer'da IPv6 Adresleme bölümüne bakın.
Sınır yönlendiriciler
Peki düğümler aynı kumaştayken her iki aktarım ortamında da nasıl birlikte bulunabilir? Her iki ağ da uygulama düzeyinde Matter kimlik bilgilerini paylaşsa da aynı bağlantı teknolojisini paylaşmaz. Bu senaryoda, ağda bağlantıyı etkinleştirmek için bir Thread Sınır Yönlendiricisi (BR) olmalıdır. BR'ler, Stub IPv6 Yönlendiricileridir.
Kök olmayan yönlendiriciler, kök olmayan ağlar ile normal ağlar arasında bağlantı sağlar. Kök Ağ, üyelerine dış bağlantı sağlayan ancak diğer ağlar arasında geçiş ağı yolu olarak hizmet etmeyen bir "son mil" ağıdır. Genellikle Matter Stub Ağları Thread tabanlı olur. Saplama ağları hakkında daha fazla bilgi için RFC taslağına bakın.
Bu nedenle, BR'ler, Stub Ağı ile yerel kablosuz veya Ethernet ağı olan Bitişik Altyapı Ağı arasında bağlantı görevi görür. Yalnızca Thread ağı ile alakalı paketleri yönlendirirler.
Bu işlem, Thread ve Bitişik Altyapı Ağları'na farklı IPv6 ön ekleri atayarak gerçekleştirilir. Bu nedenle BR, yalnızca Thread IPv6 ön ekine gelen veya ön ekten giden tekil yayınları iletir.
Sınır yönlendiriciler aşağıdakilerden de sorumludur:
- Thread Sınır Yönlendiricisi'nin her iki tarafındaki ana makinelerin iletişim kurabilmesi için hem Thread hem de Bitişik Altyapı Ağları için IPv6 ön eklerinin ve yollarının otomatik olarak yapılandırılması.
- Thread düğümleri adına mDNS DNS-SD keşif paketleri yayınlayarak düğümlerin bitişik altyapı ağında bulunabilmesini sağlar.
Daha fazla bilgi için openthread.io adresindeki Sınır Yönlendirici kılavuzunu inceleyin.
IPv6 Çoklu Yayın
Multicast aracılığıyla birden fazla Matter düğümünün aynı anda kontrol edilmesine olanak tanıdıkları için grup mesajları da önemlidir. Bu trafiği Thread ağına yönlendirmek için hem Matter hem de Thread, RFC 3306 tarafından tanımlanan Unicast Önek Tabanlı IPv6 MulticastAdresleme Şeması'nı uygular.
Bu yöntem, bir Multicast paketinin hedef düğümlerinin, ortak IPv6 Unicast ön eklerine göre seçilmesine olanak tanır.
Örneğin, Matter Multicast adresi şu şekilde görünebilir:
FF35:0040:FD<Fabric ID>00:<Group ID>
Tablo 1'de bu adresin nasıl oluşturulduğu ayrıntılı olarak açıklanmıştır:
Bits | Açıklama |
12 bit | 0xFF3 |
4 bit | 0x05
Kapsam: site yerel |
8 bit | 0x00
ayrılmış |
8 bit | 0x40
64 bit uzunluğunda bir ön ek belirtir |
8 bit | 0xFD
ULA ön ekini belirtir |
56 bit | Kumaş kimliği |
8 bit | 0x00 |
16 bit | Grup kimliği |
Daha fazla bilgiyi Thread Primer'ın Multicast bölümünde ve RFC'de bulabilirsiniz.
IPv6 Multicast adresleri oluşturulurken Fabric kimliğinin üst 56 biti de dahil edilir. Buradaki önemli nokta, Multicast adreslerinin bir Fabric içinde olması, Unicast adreslerinin ise Fabric'ler arasında paylaşılmasıdır. Birçok kumaşa sahip düğümler, her kumaş için kapsamlı düğüm gruplarını tanımlayan birden fazla Multicast adresine sahip olabilir.
Bağlantı Noktaları
Matter, çoklu yayınlar için 5540 numaralı bağlantı noktasını kullanır.