OpenThread menawarkan perintah UDP untuk digunakan dengan jaringan Thread guna menguji komunikasi
peer-to-peer antara soket UDP. cli udp
menyediakan satu soket contoh yang
digunakan untuk semua perintah udp
berinteraksi.
Contoh berikut menunjukkan bagaimana Anda dapat membuka dan mengikat soket, cara menghubungkan soket, dan cara mengirim pesan menggunakan soket UDP.
Perintah UDP
Untuk daftar perintah udp
, ketik help
:
udp help
bind
close
connect
linksecurity
open
send
Done
Perintah open
Gunakan perintah udp open
untuk membuka soket guna memulai komunikasi UDP.
Anda kemudian memiliki opsi untuk mengikat soket
ke alamat IP dan porta tertentu.
Perintah bind
Setelah melakukan open
soket, Anda dapat menjalankan perintah udp bind
untuk menetapkan alamat IPv6
dan port ke soket yang terbuka. Hal ini mengikat soket untuk komunikasi. Menetapkan
port dan alamat IPv6 juga disebut sebagai penamaan soket. Jika Anda tidak secara langsung
bind
menghubungkan soket (udp connect
) atau menggunakannya dalam
perintah udp send
, soket akan diikat ke port sementara.
Perintah connect
Perintah udp connect
dapat digunakan untuk menghubungkan soket contoh ke alamat soket peer.
Kemudian, Anda dapat memberikan perintah udp send
untuk mengirim pesan ke peer. Jika soket
belum terikat, mengeluarkan perintah udp connect
juga akan mengikat soket tersebut.
Perintah send
Perintah udp send
mengirim pesan menggunakan soket contoh ke tujuan
yang alamat IP dan port UDP-nya dapat ditentukan dengan variabel perintah.
Jika port dan alamat IP tidak ditentukan dalam
perintah udp send
, pesan akan dikirim menggunakan soket contoh
ke tujuan yang ditentukan dalam perintah udp connect
.
Memberikan perintah udp send
akan mengikat soket ke port sementara
jika soket belum diikat.
Perintah close
Sebaiknya gunakan perintah udp close
untuk menutup soket saat
soket tidak diperlukan lagi.
Perintah linksecurity
Perintah udp linksecurity
dapat digunakan untuk mengaktifkan atau menonaktifkan keamanan lapisan link data untuk pesan.
Mengirim pesan antara dua node
Di Node 1, buka soket UDP.
udp open
DoneDi Node 1, ikat soket.
udp bind :: 1234
DonePenggunaan
::
menunjukkan bahwabind
harus menggunakan alamat IPv6 yang tidak ditentukan, sehingga stack UDP/IPv6 menetapkan alamat IPv6 binding. Untuk opsi lengkap denganudp bind
, seperti melakukan binding ke antarmuka jaringan, lihat udp bind.
1 Di Node 2, buka soket UDP.
udp open
Done
Di Node 2, kirim pesan sederhana ke Node 1.
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 hello
DonePerintah ini mengasumsikan bahwa Node 2 sudah menemukan alamat Node 1. Selain itu, dalam contoh ini, administrator Node 2 telah memilih untuk tidak mengikat soket. Ini karena administrator Node 2 ingin mengirim pesan ke Node 1 tanpa peduli dengan alamat IP dan port mana yang digunakan sebagai sumber Node 2. Dalam skenario ini, soket memilih alamat IP dan porta secara acak.
Untuk mengetahui opsi selengkapnya dengan
udp send
, lihat udp send.Node 1 mengonfirmasi penerimaan pesan dari Node 2:
5 bytes from fdde:ad00:beef:0:dac3:6792:e2e:90d8 49153 hello
Menghubungkan soket ke alamat soket peer, lalu mengirim pesan antara dua node
Contoh ini mirip dengan contoh sebelumnya, tetapi menunjukkan beberapa fleksibilitas
yang Anda miliki dalam menggunakan soket UDP. Dengan metode ini, pertama-tama Anda menghubungkan soket ke
alamat soket peer. Dengan metode ini, Anda tidak perlu menentukan port dan alamat IP peer
setiap kali Anda melakukan udp send
.
Di Node 1, buka soket UDP.
udp open
DoneDi Node 1, ikat soket.
udp bind :: 1234
DoneDi Node 2, buka soket UDP.
udp open
DoneDi Node 2, gunakan perintah
udp connect
untuk membuka komunikasi ke Node 1.udp connect fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234
DoneUntuk mengetahui opsi selengkapnya dengan
udp connect
, lihat udp connectDi Node 2, gunakan perintah
udp send
untuk mengirim pesan ke Node 1, tetapi jangan tentukanip
danport
dalam sintaksis perintahudp send
.udp send hello
DoneDengan tidak menentukan
ip
danport
, perintahudp send
akan menggunakanip
danport
yang ditentukan dalam perintahudp connect
.