Prowizje w sieci typu mesh

Wyświetl źródło na GitHubie

Komisarz i Łącznik

Przekazywanie sprawozdania wymaga 1 urządzenia z rolą komisarza i 1 urządzenia z rolą łączenia. Komisarz to albo Thread, istniejącej sieci Thread lub urządzenie zewnętrzne w stosunku do sieci Thread (takie jak telefon komórkowy), który pełni funkcję komisarza. Dołączacz jest urządzeniem chce dołączyć do sieci Thread.

Komisarz ds. wątków służy do uwierzytelniania urządzenia w sieci. Tak nie mogą przenosić danych ani posiadać danych logowania do sieci Thread, takich jak sieć .

W tym przewodniku omawiamy podstawowe zlecenia bez pomocy zewnętrznego komisarza. lub router graniczny. Informacje na temat korzystania z zewnętrznego komisarza można znaleźć w sekcji Zewnętrzne Przekazywanie wątków.

Przykłady uruchamiania za pomocą urządzeń wirtualnych: Ćwiczenie z programowania symulacji OpenThread.

Włącz role

Aby włączyć role komisarza i Łącznika, użyj tych opcji cmake:

Opcja Opis
-DOT_COMMISSIONER=ON Rola komisarza
-DOT_JOINER=ON Włącza rolę łączenia.

Aby na przykład utworzyć przykładową platformę CC2538 przeznaczoną tylko do łączenia:

./script/build -DOT_JOINER=ON

Podłącz wszystkie pliki binarne na odpowiednie urządzenie. Jedno urządzenie pełni funkcję komisarza, a drugi jako Łącznik.

Szczegółowe instrukcje na temat tworzenia i flashowania obsługiwanych platform znajdziesz na stronie w repozytorium OpenThread każdej platformy. Informacje o tym, jak znaleźć repozytorium, znajdziesz w organizacji OpenThread na GitHubie.

Utwórz sieć

Utwórz sieć na urządzeniu działającym jako komisarz:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

Poczekaj kilka sekund i sprawdź, czy urządzenie jest liderem wątku:

state
leader
Done

Nadanie roli komisarza

Na tym samym urządzeniu rozpocznij rolę komisarza:

commissioner start
Done

Użyj symbolu wieloznacznego *, aby zezwolić każdemu monterowi z określonymi danymi logowania prowizji dla sieci. Używamy danych logowania łączącego (wraz z danymi uwierzytelniającymi (rozszerzony identyfikator PAN i nazwa sieci) w celu wygenerowania wstępnie udostępnionego klucza urządzenia. (PSKd). Klucz PSKd jest następnie używany do uwierzytelniania urządzenia podczas Thread Trwa przekazywanie. Dane logowania dołączenia powinny być unikalne dla każdego urządzenia.

commissioner joiner add * J01NME
Done

Ogranicz do określonego stolarza

Aby ograniczyć uruchamianie do konkretnego urządzenia Joiner, użyj komponentu eui64 który jest przypisany do urządzenia domyślnie w standardzie IEEE EUI-64.

Na urządzeniu działającym jako Łącznik pobierz numer EUI-64:

eui64
2f57d222545271f1
Done

Użyj tej wartości zamiast symbolu wieloznacznego * w poleceniu commissioner joiner na stronie urządzenia komisarza:

commissioner joiner add 2f57d222545271f1 J01NME
Done

Rozpoczynanie roli Łącznik

Na urządzeniu działającym jako Łącznik przywróć ustawienia fabryczne, a następnie włącz Rola łączenia z takim samym uprawnieniem montera określonym na komisarzu:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

Zaczekaj kilka sekund na potwierdzenie:

Join success!

Urządzenie Joiner uwierzytelniło się u komisarza i otrzymali dane logowania do Thread Network.

Teraz uruchom Thread na urządzeniu Dołączającym:

thread start
Done

Weryfikowanie uwierzytelniania

Sprawdź stan na urządzeniu Dołączającym, aby potwierdzić, że dołączyło ono do W ciągu 2 minut stan przechodzi z elementu podrzędnego na router:

state
child
Done
...
state
router
Done