Kaynağı GitHub'da görüntüleyin
Uyku modundaki bir uç cihazın (SED) hâlâ üst cihazına bağlı olduğunu (üst cihazın alt cihaz tablosunda listelenen) doğrulaması için enerji açısından verimli bir mekanizma sağlamak amacıyla Alt Cihaz Gözetimi özelliğini etkinleştirin.
Thread Spesifikasyonu, bir SED'nin bağlantıyı doğrulamak için periyodik olarak üst öğesiyle bir MLE Child Update Request ve Response değişimi gerçekleştirmesini gerektirir. Çocuk Gözetimi, SED'den üst cihaza bağlantının doğrulanması için alternatif bir çözümdür. Bu çözümde, mesaj iletimi yükü enerji kısıtlaması olan SED yerine üst cihaza yüklenir.
İşleyiş şekli
Bu özellik, düğüm türüne ve hangi parametrelerin yapılandırıldığına bağlı olarak iki şekilde çalışır:
Ana yayıncıda
Bir üst yayıncı, OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL içinde çocuğuna SED iletmezse üst yayıncı, çocuğun SED'sine bir Child Supervision mesajı gönderir. Çocuk gözetimi mesajı, aşağıdaki bilgileri içeren bir MAC çerçevesidir:
- MAC üstbilgisindeki hedef olarak SED'nin RLOC16'sı.
- Boş bir yük.
Varsayılan olarak, bir MAC başlığı 802.15.4 ACK isteği içerir. Çocuk gözetimi mesajında bu isteği devre dışı bırakmak için OPENTHREAD_CONFIG_CHILD_SUPERVISION_MSG_NO_ACK_REQUEST parametresini 1 olarak ayarlayın.
Çocuğun üzerinde
Bir SED, OPENTHREAD_CONFIG_CHILD_SUPERVISION_CHECK_TIMEOUT içinde üst cihazından yanıt almazsa üst cihazla bağlantısının koptuğunu varsayar ve ağa yeniden bağlanmak için MLE
Attach işlemini başlatır.
Nasıl etkinleştirilir?
Bu özellik varsayılan olarak devre dışıdır.
By define
Çocuk Gözetimi'ni etkinleştirmek için OpenThread'i oluşturmadan önce openthread/src/core/config/child_supervision.h dosyasında OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE değerini 1 olarak tanımlayın:
#ifndef OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE
#define OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE 1
#endif
Seçeneğe göre
Alternatif olarak, OpenThread'i oluştururken -DOT_CHILD_SUPERVISION=ON derleme seçeneğini kullanın:
./script/build -DOT_CHILD_SUPERVISION=ON
Parametreler
Bu özelliği özelleştirmek için
openthread/src/core/config/child_supervision.h
aşağıdaki parametreleri kullanın:
| Parametreler | |||||
|---|---|---|---|---|---|
OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL |
|
||||
OPENTHREAD_CONFIG_SUPERVISION_CHECK_TIMEOUT |
|
||||
OPENTHREAD_CONFIG_SUPERVISION_MSG_NO_ACK_REQUEST |
|
||||
API
Gözetimi yönetmek ve zaman aşımı aralıklarını doğrudan OpenThread uygulamanızda kontrol etmek için Child Supervision API'yi kullanın.
KSA
Bu özellikle ilgili CLI komutu yok.