Mesaj dizisi ve IPv6

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ürleri ise pille yıllarca çalışabilmek için Thread gibi düşük güçte ağlarda radyolarını çalıştırma şartlarına sahiptir. Proxy mimarisi, Thread uyku modundaki uç cihazlarla birlikte, tam güçteki düğümlerin hem ağ düzeyinde hem de uygulama düzeyinde işlevsellik sağlayarak alt düğümlerini enerji yoğun işlemlere karşı korumasına olanak tanır.

Matter'nın temel özelliklerinden biri, hem kablosuz ve Ethernet gibi yüksek işleme sahip ağ ortamlarında hem de Thread gibi düşük gecikmeli ve düşük bant genişliğine sahip ağlarda çalışmasıdır. Kablosuz ağdan gelen tüm Multicast paketleri Thread'ye köprülendiyse ağı aşırı yükler ve potansiyel olarak ağda aşırı trafik oluştururuz. Thread'nın amacı, yüksek bant genişliğine sahip veri aktarımı değil, düşük güçte ve düşük gecikmeli örgü ağda IPv6'yı etkinleştirmektir. 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. Diğer bir deyişle, kablosuz ağdan çok daha düşüktür.

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, düğümler aynı dokudayken her iki aktarım 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, bağlantıyı etkinleştirmek için ağın 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, StubNetwork 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 bu düğümlerin bitişik altyapı ağında keşfedilmesini sağlar.

Daha fazla bilgi için openthread.io adresindeki Border Router kılavuzuna bakın.

IPv6 Multicast

Grup mesajları da önemlidir. Çünkü Multicast üzerinden birkaç Matter düğümün aynı anda kontrol edilmesini sağlar. 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:

Tablo 1: Unicast Ön ek tabanlı IPv6 adresleri
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 bilgiyi Thread Primer'ın Multicast bölümünde ve RFC'nin kendisinde bulabilirsiniz.

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üğümler, her kumaşta kapsamı belirlenmiş çakışan düğüm gruplarını tanımlayan çeşitli Multicast adreslerine sahip olabilir.

Bağlantı Noktaları

Matter, çoklu yayınları için 5540 numaralı bağlantı noktasını kullanır.