Pengawasan Anak

Lihat sumber di GitHub

Untuk menyediakan mekanisme hemat energi bagi perangkat akhir yang tidur (SED) guna memverifikasi bahwa perangkat tersebut masih terhubung ke router induknya (tercantum dalam tabel turunan router induk), aktifkan fitur Pengawasan Turunan.

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

Cara kerjanya

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

Di orang tua

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

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

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

Pada anak

Jika SED tidak mendengar dari router induknya dalam OPENTHREAD_CONFIG_CHILD_SUPERVISION_CHECK_TIMEOUT, ia akan mengasumsikan bahwa koneksinya ke router induk telah terputus dan memulai proses MLE Attach untuk dipasang kembali ke router induk.

Cara mengaktifkan

Fitur ini dinonaktifkan secara default.

Menurut mendefinisikan

Untuk mengaktifkan Pengawasan Anak, tentukan OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE sebagai 1 dalam file openthread/src/core/config/child_supervision.h, sebelum mem-build 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 induk. Setel ke 0 untuk menonaktifkan proses pengawasan pada orang tua.
OPENTHREAD_CONFIG_SUPERVISION_CHECK_TIMEOUT
Nilai default
190 detik
Deskripsi
Menentukan interval waktu tunggu pemeriksaan pengawasan dalam detik yang digunakan oleh perangkat dalam status anak. Tetapkan ke 0 untuk menonaktifkan proses pemeriksaan pengawasan pada turunan.
OPENTHREAD_CONFIG_SUPERVISION_MSG_NO_ACK_REQUEST
Nilai default
0 (Permintaan ACK diaktifkan)
Deskripsi
Atur ke 1 untuk membersihkan/menonaktifkan permintaan ACK 802.15.4 di {i>header<i} MAC dari 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.