Wykrywanie i tworzenie sieci

Wyświetl źródło w GitHub

Sieci Thread

Sieci Thread są identyfikowane za pomocą 3 unikalnych identyfikatorów:

  • 2-bajtowy identyfikator osobistej sieci (PAN ID),
  • 8-bajtowy rozszerzony identyfikator osobistej sieci (XPAN ID),
  • zrozumiała dla człowieka nazwa sieci.

Sieć Thread może mieć na przykład te identyfikatory:

Identyfikator Wartość
Identyfikator PAN 0xBEEF
Identyfikator XPAN 0xBEEF1111CAFE2222
Nazwa sieci yourThreadCafe
OT Active Scan

Podczas tworzenia nowej sieci Thread lub wyszukiwania istniejącej sieci, do której można dołączyć, urządzenie Thread wykonuje aktywne skanowanie sieci 802.15.4 w zasięgu radiowym:

  1. Urządzenie rozsyła żądanie sygnału Beacon 802.15.4 na określonym kanale.
  2. W odpowiedzi wszystkie urządzenia z funkcją rozszerzenia (ECDs) w zasięgu rozsyłają sygnał Beacon, który zawiera identyfikator PAN, identyfikator XPAN i nazwę sieci Thread.
  3. Urządzenie powtarza 2 poprzednie kroki dla każdego kanału.

Gdy urządzenie Thread wykryje wszystkie sieci w zasięgu, może dołączyć do istniejącej sieci lub utworzyć nową, jeśli nie wykryje żadnej sieci.

Thread używa protokołu MLE (Mesh Link Establishment) do konfigurowania połączeń i rozpowszechniania informacji o sieci na urządzeniach Thread.

W konfiguracji połączenia protokół MLE służy do:

  • wykrywania połączeń z urządzeniami sąsiadującymi,
  • określania jakości połączeń z urządzeniami sąsiadującymi,
  • nawiązywania połączeń z urządzeniami sąsiadującymi,
  • negocjowania parametrów połączenia (typ urządzenia, liczniki ramek, limit czasu) z urządzeniami równorzędnymi.

MLE rozpowszechnia te typy informacji na urządzeniach, które chcą nawiązać połączenie:

  • dane lidera (RLOC lidera, identyfikator partycji, waga partycji),
  • dane sieci (prefiksy w sieci, automatyczna konfiguracja adresu, bardziej szczegółowe trasy),
  • rozpowszechnianie tras.

Rozpowszechnianie tras w sieci Thread działa podobnie jak protokół RIP (Routing Information Protocol), czyli protokół routingu wektorowego.

Utwórz nową sieć

Jeśli urządzenie zdecyduje się utworzyć nową sieć, wybierze najmniej obciążony kanał i identyfikator PAN, który nie jest używany przez inne sieci. Następnie stanie się rozszerzeniem sieci mesh i wybierze się na lidera. To urządzenie wysyła wiadomości MLE Advertisement do innych urządzeń 802.15.4, aby poinformować je o stanie połączenia, i odpowiada na żądania sygnału Beacon wysyłane przez inne urządzenia Thread, które wykonują aktywne skanowanie.

Dołącz do istniejącej sieci

Jeśli urządzenie zdecyduje się dołączyć do istniejącej sieci, skonfiguruje swój kanał, identyfikator PAN, identyfikator XPAN i nazwę sieci tak, aby pasowały do sieci docelowej, za pomocą funkcji Thread Commissioning. Następnie przejdzie przez proces MLE Attach, aby dołączyć jako urządzenie podrzędne (urządzenie końcowe). Ten proces jest używany w przypadku połączeń między urządzeniem podrzędnym a nadrzędnym.

  1. Urządzenie podrzędne wysyła żądanie nadrzędne multicast Parent Request do wszystkich sąsiadujących urządzeń z funkcją rozszerzenia w sieci docelowej.
  2. Wszystkie sąsiadujące rozszerzenia sieci mesh (i urządzenia ECD w trybie gotowości, jeśli maska skanowania żądania nadrzędnego obejmuje urządzenia ECD w trybie gotowości) wysyłają odpowiedzi nadrzędne z informacjami o sobie.
  3. Urządzenie podrzędne wybiera urządzenie nadrzędne i wysyła do niego żądanie identyfikatora podrzędnego.
  4. Urządzenie nadrzędne wysyła odpowiedź identyfikatora podrzędnego, aby potwierdzić nawiązanie połączenia.

1. Żądanie nadrzędne

Żądanie nadrzędne to żądanie multicast z urządzenia dołączającego, które służy do wykrywania sąsiadujących urządzeń z funkcją rozszerzenia w sieci docelowej.

OT MLE Attach Parent Request
Zawartość wiadomości z żądaniem nadrzędnym
Tryb Opisuje urządzenie dołączające
Wyzwanie Sprawdza aktualność odpowiedzi nadrzędnej, aby zapobiec atakom typu replay
Maska skanowania Ogranicza żądanie tylko do rozszerzeń sieci mesh lub do wszystkich urządzeń z funkcją rozszerzenia

2. Odpowiedź nadrzędna

Odpowiedź nadrzędna to odpowiedź unicast na żądanie nadrzędne, która zawiera informacje o urządzeniu z funkcją rozszerzenia dla urządzenia dołączającego.

OT MLE Attach Parent Response
Zawartość wiadomości z odpowiedzią nadrzędną
Wersja Wersja protokołu Thread
Odpowiedź Kopia wyzwania żądania nadrzędnego
Licznik ramek połączenia Licznik ramek 802.15.4 na urządzeniu z funkcją rozszerzenia
Licznik ramek MLE Licznik ramek MLE na urządzeniu z funkcją rozszerzenia
Adres źródłowy RLOC16 urządzenia z funkcją rozszerzenia
Margines połączenia Jakość sygnału odbieranego przez urządzenie z funkcją rozszerzenia
Połączenia Opisuje poziom połączenia urządzenia z funkcją rozszerzenia
Dane lidera Informacje o liderze urządzenia z funkcją rozszerzenia
Wyzwanie Sprawdza aktualność żądania identyfikatora podrzędnego, aby zapobiec atakom typu replay

3. Żądanie identyfikatora podrzędnego

Żądanie identyfikatora podrzędnego to żądanie unicast z urządzenia dołączającego (urządzenia podrzędnego), które jest wysyłane do urządzenia z funkcją rozszerzenia (urządzenia nadrzędnego) w celu nawiązania połączenia między urządzeniem podrzędnym a nadrzędnym. Jeśli żądanie zostanie wysłane do urządzenia z funkcją rozszerzenia w trybie gotowości, zostanie ono uaktualnione do rozszerzenia sieci mesh przed zaakceptowaniem żądania.

OT MLE Attach Child ID Request
Zawartość wiadomości z żądaniem identyfikatora podrzędnego
Wersja Wersja protokołu Thread
Odpowiedź Kopia wyzwania odpowiedzi nadrzędnej
Licznik ramek połączenia Licznik ramek 802.15.4 na urządzeniu podrzędnym
Licznik ramek MLELicznik ramek MLE na urządzeniu podrzędnym
Tryb Opisuje urządzenie podrzędne
Limit czasu Czas nieaktywności, po którym urządzenie nadrzędne usuwa urządzenie podrzędne
Rejestracja adresu (tylko w przypadku urządzeń MED i SED) Rejestrowanie adresów IPv6

4. Odpowiedź identyfikatora podrzędnego

Odpowiedź identyfikatora podrzędnego to odpowiedź unicast z urządzenia nadrzędnego, która jest wysyłana do urządzenia podrzędnego w celu potwierdzenia nawiązania połączenia między urządzeniem podrzędnym a nadrzędnym.

OT MLE Attach Child ID Response
Zawartość wiadomości z odpowiedzią identyfikatora podrzędnego
Adres źródłowy RLOC16 urządzenia nadrzędnego
Address16 RLOC16 urządzenia podrzędnego
Dane lidera Informacje o liderze urządzenia nadrzędnego (RLOC, identyfikator partycji, waga partycji waga)
Dane sieci Informacje o sieci Thread (prefiksy w sieci, automatyczna konfiguracja adresu bardziej szczegółowe trasy)
Trasa (tylko w przypadku urządzeń ECD w trybie gotowości) Rozpowszechnianie tras
Limit czasu Czas nieaktywności, po którym urządzenie nadrzędne usuwa urządzenie podrzędne
Rejestracja adresu (tylko w przypadku urządzeń MED i SED) Potwierdź zarejestrowane adresy

Podsumowanie

Czego się dowiedziałeś:

  • Urządzenie Thread wykonuje aktywne skanowanie w poszukiwaniu istniejących sieci.
  • Thread używa protokołu MLE do konfigurowania połączeń i rozpowszechniania informacji o urządzeniach sieciowych.
  • Wiadomości MLE Advertisement informują inne urządzenia Thread o stanie sieci i połączenia urządzenia.
  • Proces MLE Attach nawiązuje połączenia między urządzeniem podrzędnym a nadrzędnym.

Sprawdź swoją wiedzę

Który identyfikator nie jest używany do identyfikowania sieci Thread?
2-bajtowy identyfikator osobistej sieci (PAN ID).
Źle. Sieć Thread jest identyfikowana m.in. za pomocą identyfikatora PAN.
8-bajtowy rozszerzony identyfikator osobistej sieci (XPAN ID).
Źle. Sieć Thread jest identyfikowana m.in. za pomocą identyfikatora XPAN.
Zrozumiała dla człowieka nazwa sieci.
Źle. Sieć Thread jest identyfikowana m.in. za pomocą zrozumiałej dla człowieka nazwy sieci.
32-znakowy identyfikator SSID.
To jest poprawna odpowiedź W przeciwieństwie do sieci Wi-Fi 802.11 identyfikatory sieci Thread nie używają identyfikatora SSID.
Do czego służy żądanie nadrzędne?
Do wykrywania sąsiadujących urządzeń z funkcją rozszerzenia w sieci docelowej.
To jest poprawna odpowiedź Żądanie nadrzędne jest wysyłane przez urządzenie, które chce dołączyć do do sieci.
Do ogłoszenia, że urządzenie z funkcją rozszerzenia staje się urządzeniem nadrzędnym.
Źle. Rozszerzenie sieci mesh nie inicjuje relacji między urządzeniem nadrzędnym a podrzędnym z innym urządzeniem sieciowym. Zamiast tego urządzenie sieciowe wybiera urządzenie z funkcją rozszerzenia, które ma stać się jego urządzeniem nadrzędnym.
Do wysłania prośby o awansowanie urządzenia z funkcją rozszerzenia na rozszerzenie sieci mesh.
Źle.
Jakiego typu adresu używa żądanie nadrzędne?
unicast
Źle.
anycast
Źle.
multicast
To jest poprawna odpowiedź
komunikat
Źle.
Jaką klasyfikację urządzenia ma urządzenie, gdy początkowo dołącza do sieci Thread?
Urządzenie podrzędne (urządzenie końcowe)
To jest poprawna odpowiedź Urządzenie dołączające do sieci Thread zawsze zaczyna jako urządzenie końcowe w tej sieci.
FTD (Full Thread Device)
Źle.
Rozszerzenie sieci mesh
Źle.