Pengawasan Anak

Lihat sumber di GitHub

Guna menyediakan mekanisme yang hemat energi untuk perangkat akhir yang mengantuk (SED) guna memverifikasi bahwa perangkat masih terhubung ke router induknya (tercantum di tabel turunan router induk), aktifkan fitur Pengawasan Anak.

Spesifikasi Thread memerlukan SED untuk menjalankan pertukaran Permintaan dan Respons Update Turunan MLE secara berkala dengan router induknya untuk memverifikasi konektivitas. Pengawasan Anak adalah solusi alternatif untuk verifikasi konektivitas router SED yang menempatkan beban transmisi pesan di router induk, bukan pada SED yang dibatasi energi.

Cara kerja

Fitur ini berfungsi dengan dua cara, bergantung pada jenis node dan parameter yang dikonfigurasi:

Di induk

Jika router induk tidak mengirimkan SED turunannya ke dalam OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL, router induk akan mengantrekan dan mengirim pesan Pengawasan Turunan ke SED turunan. Pesan Child Supervision adalah frame MAC yang berisi informasi berikut:

  • RLOC16 dari SED sebagai tujuan dalam header MAC.
  • Payload kosong.

Secara default, header MAC berisi permintaan ACK 802.15.4. Untuk menonaktifkan permintaan ini di pesan Pengawasan Anak, tetapkan parameter OPENTHREAD_CONFIG_CHILD_SUPERVISION_MSG_NO_ACK_REQUEST ke 1.

Di anak

Jika SED tidak mendengar dari router induknya dalam OPENTHREAD_CONFIG_CHILD_SUPERVISION_CHECK_TIMEOUT, diasumsikan bahwa koneksinya ke router induk terputus dan memulai proses MLE Attach untuk terhubung kembali ke router induk.

Cara mengaktifkan

Fitur ini dinonaktifkan secara default.

Menurut definisi

Untuk mengaktifkan Pengawasan Anak, tentukan OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE sebagai 1 dalam file openthread/src/core/config/child_supervision.h, sebelum membuat OpenThread:

#ifndef OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE
#define OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE 1
#endif

Berdasarkan opsi

Atau, gunakan opsi build -DOT_CHILD_SUPERVISION=ON saat mem-build OpenThread:

./script/build -DOT_CHILD_SUPERVISION=ON

Parameter

Gunakan parameter berikut di openthread/src/core/config/child_supervision.h untuk menyesuaikan fitur ini:

Parameter
OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL
Nilai default
129 detik
Deskripsi
Menentukan interval pengawasan dalam detik yang digunakan oleh orang tua. Setel ke 0 untuk menonaktifkan proses pengawasan pada induk.
OPENTHREAD_CONFIG_SUPERVISION_CHECK_TIMEOUT
Nilai default
190 detik
Deskripsi
Menentukan interval waktu tunggu pemeriksaan pengawasan dalam detik yang digunakan oleh perangkat dalam status turunan. Tetapkan ke 0 untuk menonaktifkan proses pemeriksaan pengawasan pada anak.
OPENTHREAD_CONFIG_SUPERVISION_MSG_NO_ACK_REQUEST
Nilai default
0 (Permintaan ACK diaktifkan)
Deskripsi
Setel ke 1 untuk menghapus/menonaktifkan permintaan ACK 802.15.4 di header MAC pesan pengawasan.

API

Gunakan Child Supervision API untuk mengelola pengawasan dan memeriksa interval waktu tunggu langsung di aplikasi OpenThread Anda.

CLI

Tidak ada perintah CLI yang terkait dengan fitur ini.