OpenThread, eşler arası test için bir Thread ağıyla kullanılacak UDP komutları sunar
soketleri arasındaki iletişimi sağlar. cli udp bir adet örnek soket sağlar.
tüm udp komutların etkileşime girdiğini gösterir.
Aşağıdaki örneklerde prizleri nasıl açıp bağlayacağınızı ve bağlayacağınızı öğretmek için ve UDP soketleri kullanılarak nasıl mesaj gönderileceğini ele alacağız.
UDP komutları
udp komutlarının listesi için help yazın:
udp help
bind
close
connect
linksecurity
open
send
Done
open komutu
UDP iletişimini başlatmak için udp open komutunu kullanarak soketi açın.
Ardından, soketi belirli bir IP adresine ve bağlantı noktasına bağlama seçeneğiniz olur.
bind komutu
Soket için open işlemi yaptıktan sonra IPv6 adresi atamak için udp bind komutu çalıştırabilirsiniz
hem de açık yuvaya bir bağlantı noktası ekleyin. Bu, soketi iletişim için bağlar. Bir
IPv6 adresi ve bağlantı noktası, yuvaya ad verme olarak da adlandırılır. Doğrudan
bind, prizi (udp connect) bağlayın veya
udp send komutu, yuvayı geçici bir bağlantı noktasına bağlar.
connect komutu
Örnek soketi bir eş yuva adresine bağlamak için udp connect komutu kullanılabilir.
Ardından, eşe mesaj göndermek için bir udp send komutu verebilirsiniz. Priz
zaten bağlı değil. udp connect komutunun yayınlanması soketi de bağlar.
send komutu
udp send komutu, örnek yuvayı kullanarak bir hedefe mesaj gönderir
Bunun için IP adresi ve UDP bağlantı noktası komut değişkenleriyle belirtilebilir.
IP adresi ve bağlantı noktası
udp send komutuyla gönderilen mesaj, örnek yuva kullanılarak gönderilir.
udp connect komutunda belirtilen hedefe yönlendirir.
udp send komutunun yayınlanması, yuvayı geçici bir bağlantı noktasına bağlar
.
close komutu
Aşağıdaki durumlarda yuvayı kapatmak için udp close komutunu kullanmanız önerilir:
sokete gerek kalmaz.
linksecurity komutu
udp linksecurity komutu, mesajlar için veri bağlantısı katmanı güvenliğini etkinleştirmek veya devre dışı bırakmak amacıyla kullanılabilir.
İki düğüm arasında mesaj gönder
Düğüm 1'de UDP soketini açın.
udp openDoneDüğüm 1'de soketi bağlayın.
udp bind :: 1234Done::kullanımı,bindcihazının belirtilmemiş IPv6 adresini kullanması gerektiğini belirtir. Böylece UDP/IPv6 yığınının, bağlayıcı IPv6 adresini atamasını sağlayabilirsiniz. Tam ağ arayüzüne bağlama gibiudp bindile kullanılabilen seçenekler udp bind öğesine bakın.
1 Düğüm 2'de UDP soketini açın.
udp open
Done
Düğüm 2'de, Düğüm 1'e basit bir ileti gönderin.
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 helloDoneBu komut, Düğüm 2'nin Düğüm 1'in adresini zaten keşfettiğini varsayar. Ayrıca bu örnekte, Düğüm 2'nin yöneticisi, Düğüm 2'nin sokete bağlayın. Bunun nedeni, Düğüm 2 yöneticisinin Hangi IP adreslerinin ve bağlantı noktalarının kullanıldığına bakmadan Düğüm 1'e bir ileti olarak ayarlayın. Bu senaryoda soket rastgele bir IP adresi ve bağlantı noktası seçer.
udp sendile ilgili tüm seçenekler için şuraya bakın: udp send.Düğüm 1, Düğüm 2'den gelen iletinin alındığını onaylar:
5 bytes from fdde:ad00:beef:0:dac3:6792:e2e:90d8 49153 hello
Soketi eş yuva adresine bağlayın, ardından iki düğüm arasında bir mesaj gönderin
Bu örnek bir öncekine benziyor ancak işin esnekliğini
ve UDP soketi gibi vardır. Bu yöntemle ilk olarak prizi
eş IP adresini ve bağlantı noktasını belirtmeniz gerekmez.
her udp send yaptığınızda.
Düğüm 1'de UDP soketini açın.
udp openDoneDüğüm 1'de soketi bağlayın.
udp bind :: 1234DoneDüğüm 2'de UDP soketini açın.
udp openDoneDüğüm 2'de, Düğüm 1 ile iletişimi açmak için
udp connectkomutunu kullanın.udp connect fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234Doneudp connectile ilgili tüm seçenekler için şuraya bakın: udp ConnectDüğüm 2'de, Düğüm 1'e mesaj göndermek için
udp sendkomutunu kullanın ancakudp sendkomut söz dizimindeipveportdeğerlerini belirtin.udp send helloDoneudp sendkomutu,ipveportbelirtilmediğindeipveportdeğerlerini kullanırudp connectkomutunda belirtilen tüm değerleri içerir.