OpenThread udostępnia polecenia UDP do użytku w sieci Thread do testowania połączeń peer-to-peer.
komunikacji między gniazdami UDP. cli udp
udostępnia jedno gniazdo próbne z
w których działają wszystkie polecenia udp
.
Z przykładów poniżej dowiesz się, jak otwierać i podłączać gniazda, i podłączenia gniazda oraz wysyłania wiadomości przy użyciu gniazd UDP.
Polecenia UDP
Aby zobaczyć listę poleceń udp
, wpisz help
:
udp help
bind
close
connect
linksecurity
open
send
Done
Polecenie open
Otwórz gniazdo i rozpocznij komunikację UDP za pomocą polecenia udp open
.
Następnie możesz powiązać gniazdo z określonym adresem IP i portem.
Polecenie bind
Po open
gniazdku możesz uruchomić polecenie udp bind
, aby przypisać adres IPv6
i port do otwartego gniazda. Łączy gniazdo na potrzeby komunikacji. Przypisanie parametru
Adres i port IPv6 są też nazywane nazwami gniazda. Jeśli nie korzystasz
bind
i podłącz gniazdo (udp connect
) lub używaj go
polecenie udp send
wiąże gniazdo z portem tymczasowym.
Polecenie connect
Polecenia udp connect
można użyć do połączenia przykładowego gniazda z adresem gniazda peera.
Następnie możesz wydać polecenie udp send
, aby wysłać wiadomość do peera. Jeśli gniazdo
nie jest jeszcze powiązane, uruchomienie polecenia udp connect
powoduje również powiązanie gniazda.
Polecenie send
Polecenie udp send
wysyła komunikat do miejsca docelowego przy użyciu przykładowego gniazda
którego adres IP i port UDP można określić za pomocą zmiennych polecenia.
Jeśli adres IP i port nie są określone w parametrze
udp send
, wiadomość zostanie wysłana przy użyciu przykładowego gniazda
na stronę docelową podaną w poleceniu udp connect
.
Wydanie polecenia udp send
wiąże gniazdo z portem efemerycznym
, jeśli gniazdo nie zostało jeszcze powiązane.
Polecenie close
Do zamknięcia gniazda zalecamy użycie polecenia udp close
, gdy
gniazdka elektrycznego nie jest już potrzebne.
Polecenie linksecurity
Za pomocą polecenia udp linksecurity
można włączyć lub wyłączyć warstwę połączeń danych dla wiadomości.
Wysyłaj komunikat między 2 węzłami
W węźle 1 otwórz gniazdo UDP.
udp open
DonePowiąż gniazdo w węźle 1.
udp bind :: 1234
Done::
oznacza, że interfejsbind
powinien używać nieokreślonego adresu IPv6, dzięki czemu stos UDP/IPv6 przypisze wiążący adres IPv6. Całość opcje oudp bind
, takie jak powiązanie z interfejsem sieci, Patrz udp bind.
1 W węźle węzła 2 otwórz gniazdo UDP.
udp open
Done
W węźle Node 2 wyślij do niego prostą wiadomość.
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 hello
DoneW tym poleceniu założono, że Node 2 odkrył już adres węzła 1. Poza tym w tym przykładzie administrator Node 2 nie zdecydował się i podłącz go. Dzieje się tak, ponieważ administrator Node 2 chce wysłać wysyłanie wiadomości do węzła Node 1 bez dbania o to, które z jego adresów IP i portów są używane jako źródło węzła Node 2. W tym scenariuszu gniazdo wybiera adres IP i port losowo.
Więcej informacji o opcjach dostępnych w
udp send
znajdziesz tutaj: udp send.Węzeł 1 potwierdza odbiór wiadomości z węzła 2:
5 bytes from fdde:ad00:beef:0:dac3:6792:e2e:90d8 49153 hello
Połącz gniazdo z adresem gniazda peera, a następnie wysyłaj wiadomość między 2 węzłami
Ten przykład jest podobny do poprzedniego, ale pokazuje pewną elastyczność
i używanie gniazd UDP. W tym przypadku najpierw podłączaj gniazdko do
adresu gniazda peera, nie musisz określać adresu IP ani portu peera.
za każdym razem, gdy wykonasz udp send
.
W węźle 1 otwórz gniazdo UDP.
udp open
DonePowiąż gniazdo w węźle 1.
udp bind :: 1234
DoneW węźle 2 otwórz gniazdo UDP.
udp open
DoneW węźle Node 2 otwórz komunikację z węzłem 1 za pomocą polecenia
udp connect
.udp connect fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234
DoneWięcej informacji o opcjach dostępnych w
udp connect
znajdziesz tutaj: udp ConnectW węźle 2 użyj polecenia
udp send
, aby wysłać wiadomość do węzła. określip
iport
w składni poleceniaudp send
.udp send hello
DoneJeśli nie określisz właściwości
ip
iport
, polecenieudp send
użyjeip
iport
określone w poleceniuudp connect
.