IPv6 Adresleme

Kaynağı GitHub'da görüntüle

Thread'in ağdaki her bir cihazı nasıl tanımladığına ve hangisinin birbirleriyle iletişim kurmak için kullandıkları adres türleridir.

Kapsamlar

OT Kapsamları

Thread ağında unicast adresleme için üç kapsam vardır:

  • Bağlantı-Yerel — tek bir radyo iletimi ile erişilebilen tüm arayüzler
  • Mesh-Local: Aynı Thread ağı içinde erişilebilen tüm arayüzler
  • Genel: Thread ağı dışından erişilebilen tüm arayüzler

İlk iki kapsam, bir Thread ağı tarafından belirlenen ön eklere karşılık gelir. Bağlantı-Yerel, fe80::/16 ön eklerine sahiptir, Mesh-Local ise ön eklere sahiptir fd00::/8.

Unicast

Tek bir Thread cihazını tanımlayan birden fazla IPv6 tek noktaya yayın adresi vardır. Bunların her birinin, kapsama ve kullanım alanına göre farklı bir işlevi vardır.

Her bir türü ayrıntılı olarak açıklamadan önce, Rota Bulucu (RLOC). RLOC, Thread arayüzü tanımlar. ağ topolojisindeki konumu.

Rota Bulucu nasıl oluşturulur?

Tüm cihazlara bir yönlendirici kimliği ve bir alt kimlik atanır. Her bir Yönlendiricinin güvenlik ayarları tüm Çocuklarını içeren tablo ve bunların kombinasyonu, belirli bir cihazı toparlamaya çalışır. Örneğin, bu tabloda vurgulanan düğümleri Aşağıdaki topolojiye göre bir Yönlendirici'deki (beşgen) sayı Yönlendirici Kimliğidir, Son Cihazdaki (dairedeki) sayı ise Alt Hesap Kimliğidir:

OT RLOC Topolojisi

Her Alt Yayıncının Yönlendirici Kimliği, kendi Üst Yayıncısına (Yönlendirici) karşılık gelir. Yönlendirici, Alt Yayıncı değilse, Yönlendiricinin Alt Kimliği her zaman 0'dır. Bu değerler birlikte Thread ağındaki her cihaz için benzersizdir ve RLOC16'yı oluşturmak için kullanılır. Bu değer, RLOC'nin son 16 bitini temsil eder.

Örneğin, RLOC16'nın sol üst düğüm (Yönlendirici) için Kimlik = 1 ve Alt Kimlik = 1):

OT RLOC16

RLOC16, IPv6 adresinin son 64 biti. Bazı IID'ler bazı türleri tanımlamak için kullanılabilir. İş Parçacığı arayüzlerinin sayısı. Örneğin, RLOC'ler için IID her zaman şu biçimdedir:

0000:00ff:fe00:RLOC16

IID, bir ağ-yerel önek ile birlikte RLOC ile sonuçlanır. Örneğin, fde5:8dba:82e1:1::/64 öğesinin RLOC'sini kullanarak RLOC16 = 0x401:

OT RLOC

Aynı mantık, yukarıdaki örnek topolojide vurgulanan tüm düğümler için RLOC'yi belirlemek amacıyla kullanılabilir:

Adresli OT Topolojisi

Ancak RLOC, topolojideki düğümün konumuna dayalı olduğu için topoloji değiştikçe bir düğümün RLOC'si de değişebilir.

Örneğin, 0x400 adlı düğüm Thread ağından kaldırılmış olabilir. Düğümler 0x401 ve 0x402, farklı Yönlendiricilere yeni bağlantılar oluşturur ve bunun sonucunda Her birine yeni bir RLOC16 ve RLOC atanır:

Değişimden Sonra OT Topolojisi

Unicast adres türleri

RLOC, bir Thread cihazının sahip olabileceği birçok IPv6 tek noktaya yayın adresinden yalnızca biridir. Diğer bir adres kategorisi Uç Nokta Tanımlayıcıları (EID) olarak adlandırılır. Thread ağ bölümü içinde benzersiz bir Thread arayüzü tanımlayın. SIM kimlikleri: Thread ağ topolojisinden bağımsızdır.

Yaygın tek yayın türleri aşağıda açıklanmıştır.

Tek bir radyo iletimiyle erişilebilen Thread arayüzünü tanımlayan bir EID.
Örnekfe80::54db:881c:3845:57f4
IID802.15.4 Genişletilmiş Adres'e göre
KapsamYerel Bağlantı
Ayrıntılar
  • Komşuları keşfetmek, bağlantıları yapılandırmak ve yönlendirme bilgilerini değiş tokuş etmek için kullanılır
  • Yönlendirici bir adres değil
  • Her zaman fe80::/16 önekine sahiptir

Yerel örgü kimliği (ML-EID)

Ağ topolojisinden bağımsız olarak, Thread arayüzünü tanımlayan bir EID. Aynı Thread bölümünde bir Thread arayüzüne ulaşmak için kullanılır. Benzersiz Yerel Adres (ULA) olarak da adlandırılır.
Örnekfde5:8dba:82e1:1:416:993c:8399:35ab
IIDRastgele, devreye alma tamamlandıktan sonra seçilir
KapsamYerel Ağ
Ayrıntılar
  • Topoloji değiştikçe değişmez
  • Uygulamalar tarafından kullanılmalıdır
  • Her zaman fd00::/8 önekine sahiptir

Rota Bulucu (RLOC)

Ağ topolojisindeki konumuna göre bir Thread arayüzü tanımlar.
Örnekfde5:8dba:82e1:1::ff:fe00:1001
IID0000:00ff:fe00:RLOC16
KapsamYerel Ağ
Ayrıntılar
  • Bir cihaz ağa bağlandığında oluşturulur
  • Thread ağı içinde IPv6 veri parçacıkları iletmek için
  • Topoloji değiştikçe değişir
  • Genellikle uygulamalar tarafından kullanılmaz.

Her noktaya Yayın Bulucu (ALOC)

Bir hedefin RLOC'si bilinmiyorsa RLOC araması aracılığıyla bir Thread arayüzü tanımlar.
Örnekfde5:8dba:82e1:1::ff:fe00:fc01
IID0000:00ff:fe00:fcXX
KapsamYerel Ağ
Ayrıntılar
  • fcXX = ALOC hedefi, uygun RLOC'yi arar
  • Genellikle uygulamalar tarafından kullanılmaz.

Global Unicast Adresi (GUA)

Thread ağının ötesindeki global bir kapsamda Thread arayüzünü tanımlayan bir EID.
Örnek2000::54db:881c:3845:57f4
IID
  • SLAAC: Cihazın kendisi tarafından rastgele atanır
  • DHCP — Bir DHCPv6 sunucusu tarafından atanır
  • Manuel — Uygulama katmanı tarafından atanır
KapsamGlobal
Ayrıntılar
  • Herkese açık bir IPv6 adresi
  • Her zaman 2000::/3 önekine sahiptir

Çoklu yayın

Çoklu yayın, aynı anda birden çok cihaza bilgi iletmek için kullanılır. İş parçacığı ağı, belirli adresler farklı ile çoklu yayın kullanımı için ayrılmıştır Cihaz grupları arasında geçiş yapın.

IPv6 Adresi Kapsam Teslim edilen alıcılar
ff02::1 Yerel Bağlantı Tüm FTD'ler ve MED'ler
ff02::2 Yerel Bağlantı Tüm FTD'ler
ff03::1 Yerel Ağ Tüm FTD'ler ve MED'ler
ff03::2 Yerel Ağ Tüm FTD'ler

Uykulu Son Cihazlar (SED'ler) alıcıyı etkilemez. Bunun yerine, Thread link-local ve domain-local kapsam unicast ön eki tabanlı IPv6 çoklu yayın SED'ler dahil olmak üzere Tüm İş Parçacığı Düğümleri için kullanılan adres. Bu çoklu yayın tek noktaya yayın üzerine dayandığından, adres Thread ağına göre değişir Mesh-Local öneki (RFC 3306'ya bakın) bölümüne bakın).

Önceden listelenenlerin dışında rastgele kapsamlar da Thread için desteklenir cihazlar.

Anycast

Her noktaya yayın, bir öğenin RLOC'si olduğunda trafiği bir Thread arayüzüne yönlendirmek için kullanılır. hedef bilinmiyor. Her Noktaya Yayın Bulucu (ALOC), işletmenin konumunu İş Parçacığı bölümünde birden fazla arayüz bulunur. ALOC'nin son 16 biti, adı verilen ALOC16, 0xfcXX biçimindedir. ALOC'nin türünü temsil eder.

Örneğin, 0xfc01 ile 0xfc0f arasındaki bir ALOC16, DHCPv6 için ayrılmıştır. Temsilciler. Belirli bir DHCPv6 Aracısı RLOC'si bilinmiyorsa ( ağ topolojisi değiştiyse), DHCPv6 Aracısı ALOC'ye ileti göndererek RLOC’yi almalısınız.

İş parçacığı aşağıdaki ALOC16 değerlerini tanımlar:

ALOC16 Tür
0xfc00 Lider
0xfc01 - 0xfc0f DHCPv6 Aracısı
0xfc10 - 0xfc2f Hizmet
0xfc30 - 0xfc37 Başkan
0xfc40 - 0xfc4e Komşu Keşif Aracısı
0xfc38 - 0xfc3f
0xfc4f - 0xfcff
Rezervasyon yapıldı

Özet

Öğrendikleriniz:

  • Thread ağı üç kapsamdan oluşur: Link-Local, Mesh-Local ve Global
  • Bir Thread cihazında birden fazla tek noktaya yayın IPv6 adresi var
    • RLOC, bir cihazın Thread ağındaki konumunu temsil eder
    • ML-EID, bölüm içindeki bir Thread cihazına özgüdür ve uygulamalar tarafından kullanılmalıdır
  • Thread, verileri düğüm ve yönlendirici gruplarına yönlendirmek için çoklu yayın özelliğini kullanır
  • Bir hedefin RLOC'si bilinmiyorsa iş parçacığı her noktaya yayın yapar

Thread'in IPv6 adreslemesi hakkında daha fazla bilgi edinmek için İleti Dizisi Spesifikasyonu.

Öğrendiklerinizi sınayın

Thread ağında tek yayın adreslemesi için hangi üç kapsam kullanılır?
Gizli
Yanlış.
Arayüz-Yerel
Yanlış.
Yerel Bağlantı
Doğru.
Site-Yerel
Yanlış.
Yerel Ağ
Doğru.
Global
Doğru.
Bir cihazın alt kimliğinin 0 olması ne anlama gelir?
Cihaz bir Çocuk durumunda.
Yanlış.
Cihazın türü REED.
Yaklaştınız ancak yanlış.
Cihaz bir Yönlendirici.
Doğru. Yönlendiricinin alt kimliği her zaman 0'dır.
Thread ağında düğüm olan bir kamera yeni bir RLOC16 alır birlikte çalışır. Aşağıdaki olaylardan hangisi bu duruma neden olmuş olabilir?
Birisi kameradan uzaktan resim indirmiştir.
Yanlış. Bu etkinliğin İleti Dizisi ile ilgisi yoktur ağ.
Bir yönlendirici ağdan ayrıldı.
Doğru. Yönlendirici, ağdan ayrıldığında ağ veya cihazın kendisini belli bir kitleye tanıtmasına yeni bir RLOC edinin.
Kamera uyku moduna girdi ve bu nedenle ağ topolojisi değişti.
Yanlış. Uyku moduna girmek, cihazı her zaman yeni bir ağ adresi almak için.
Thread ağındaki bir cihaz ff03::2 uygulamasına abone olur çoklu yayın adresine dokunun. Bu cihaz bize ne anlatıyor?
Minimal Son Cihaz (MED) ise
Yanlış.
Tam işlevli bir cihaz (FED).
Yanlış. (İpucu: FED olabilir veya olmayabilir.)
Minimal Thread Device (MTD) şeklindedir.
Yanlış.
Tam İş Parçacığı Cihazıdır (FTD).
Doğru. Yalnızca Tam İş Parçacıklı Cihazlar şuna abone olur: ff03::2 çoklu yayın adresi. Bunu Mesh-Local içinde kapsam.
Thread verileri yönlendirmek için ne tür bir adresleme ve yönlendirme kullanıyor? nasıl oluşturacağım?
tek noktaya yayın
Yanlış.
her noktaya adresleme
Yanlış.
çoklu yayın
Doğru.
duyuru
Yanlış.
Gönderildiği ileti alıcısının RLOC'si bilinmiyor mu?
tek noktaya yayın
Yanlış.
her noktaya adresleme
Doğru. Her noktaya yayın, bir cihazın RLOC'si olmayan bir düğüme ulaşmasına cihazın ALOC'sini dikkate alır.
çoklu yayın
Yanlış.
duyuru
Yanlış.