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 adreslemeyi kullanır.
Düşük Güç
Bazı Matter düğümleri kablolu olup radyolarını sürekli açık tutmalarına olanak tanıyan enerji bütçelerine sahiptir. Sensörler gibi diğer düğüm türlerinin, radyolarını Thread gibi düşük güçlü ağlarda çalıştırarak pille yıllarca çalışması gerekir. Proxy mimarisi, Thread uyku modundaki uç cihazlarla birlikte, tam güçle çalışan düğümlerin hem ağ düzeyinde hem de uygulama düzeyinde işlevsellik sağlayarak alt düğümlerini enerji yoğun işlemlerden korumasına olanak tanır.
Matter'ın temel özelliklerinden biri, hem Wi-Fi ve Ethernet gibi yüksek verimli ağ ortamlarında hem de Thread gibi düşük gecikmeli ve düşük bant genişliğine sahip ağlarda çalışabilmesidir. Kablosuz bağlantıdan gelen tüm Multicast paketler Thread'ye köprülendiyse ağı aşırı yükleriz ve potansiyel olarak ağda aşırı trafik oluşmasına neden oluruz. Thread'nın amacı, yüksek bant genişliğinde veri aktarımı değil, düşük güçte ve düşük gecikmeli mesh ağında IPv6'yı etkinleştirmektir. Bir yerel ağdaki Thread'nın ICMPv6 ping'leri genellikle birkaç milisaniye RTT'nin altında olsa da toplam bant genişliği IEEE 802.15.4 PHY'de 250 kbps ile sınırlıdır. Paket yeniden iletimleri ve ek yük ile tipik maksimum bant genişliği yaklaşık 125 kbps'dir. Başka bir deyişle, Wi-Fi'dan çok daha düşük bir büyüklük sırasına sahiptir.
IEEE 802.15.4 PHY'deki çerçeveler 127 bayttır ancak Thread'daki IPv6 paketlerinin en büyük (ve tipik) maksimum iletim birimi (MTU) 1.280 bayttır. Bu nedenle, IPv6 paketlerinin genellikle birkaç PHY çerçevesine bölünmesi gerekir. Bu süreç RFC4944 ile tanımlanır.
Daha fazla bilgi edinmek için Thread Primer on openthread.io'daki IPv6 Addressing (IPv6 Adresleme) bölümüne bakın.
Sınır yönlendiriciler
Peki, aynı doku içindeyken düğümler her iki taşıma ortamında nasıl bir arada bulunabilir? Her iki ağ da uygulama düzeyinde Matter kimlik bilgilerini paylaşsa da aynı bağlantı teknolojisini kullanmaz. Bu senaryoda, ağın bağlantıyı etkinleştirmek için Thread Sınır Yönlendiricisi (BR) olması gerekir. BR'ler, Stub IPv6 yönlendiricilerdir.
Stub yönlendiriciler, stub ağlar ile normal ağlar arasında bağlantı sağlar. Stub Network, üyelerine dış bağlantı sağlayan ancak diğer ağlar arasında bir geçiş ağı yolu olarak hizmet vermeyen bir "son mil" ağıdır. Genellikle Matter Stub NetworksThread tabanlıdır. Saplama ağları hakkında daha fazla bilgi için RFC taslağına bakın.
Bu nedenle BR'ler, Stub Network ile yerel kablosuz veya Ethernet ağı olan Adjacent Infrastructure Network arasındaki bağlantıdan sorumludur. Yalnızca Thread ağıyla ilgili paketleri yönlendirirler.
Bu işlem, Thread ve bitişik altyapı ağlarına farklı IPv6 önekleri atanarak gerçekleştirilir. Bu nedenle BR, tek gönderimleri yalnızca Thread IPv6 önekine veya bu önekten yönlendirir.
Sınır yönlendiriciler ayrıca şunlardan da sorumludur:
- hem Thread hem de bitişik altyapı ağları için IPv6 öneklerini ve rotalarını otomatik olarak yapılandırarak Thread sınır yönlendiricisinin her iki tarafındaki ana makinelerin iletişim kurabilmesini sağlar.
- Thread düğümleri adına mDNS DNS-SD keşif paketleri yayınlayarak düğümlerin bitişik altyapı ağında keşfedilmesini sağlar.
Daha fazla bilgi edinmek için openthread.io adresindeki Border Router kılavuzuna bakın.
IPv6 Çoklu Yayın
Grup iletileri, Matter düğümlerinin Multicast üzerinden eşzamanlı olarak kontrol edilmesini sağladığı için de ö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 Multicast adresleme şemasını uygular.
Bu yöntem, bir paketin hedef düğümlerinin ortak IPv6 öneklerine göre seçilmesine olanak tanır.MulticastUnicast
Örneğin, bir Matter Multicast adresi şöyle görünebilir:
FF35:0040:FD<Fabric ID>00:<Group ID>
Tablo 1'de bu adresin nasıl oluşturulduğu açıklanmaktadır:
Bits | Açıklama |
12 bit | 0xFF3 |
4 bit | 0x05
Kapsam: site-local |
8 bit | 0x00
ayrılmış |
8 bit | 0x40
64 bit uzunluğunda bir önek olduğunu gösterir. |
8 bit | 0xFD
ULA önekini belirtir. |
56 bit | Kumaş kimliği |
8 bit | 0x00 |
16 bit | Grup kimliği |
Daha fazla bilgi için Thread Primer'ın Multicast bölümüne ve RFC'nin kendisine bakın.
IPv6 Multicast adresleri oluşturulurken Fabric kimliğinin üst 56 biti de dahil edilir. Buradaki önemli çıkarım, Multicast kapsamının bir Fabric içinde olduğu, Unicast adreslerinin ise Fabric'ler arasında paylaşıldığıdır. Çok sayıda kumaş içeren düğümlerde, her kumaşta kapsamı belirlenmiş çakışan düğüm gruplarını tanımlayan birden fazla Multicast adresi olabilir.
Bağlantı Noktaları
Matter, çoklu yayınları için 5540 numaralı bağlantı noktasını kullanır.