Çocuk Gözetimi

Kaynağı GitHub'da görüntüleyin

Uyku modundaki bir uç cihazın (SED) ana yönlendiricisine (ana yönlendiricinin alt tablosunda listelenmiştir) hâlâ bağlı olduğunu doğrulaması için enerji tasarruflu bir mekanizma sağlamak üzere Çocuk Gözetimi özelliğini etkinleştirin.

Thread Spesifikasyonu, bağlantıyı doğrulamak amacıyla üst yönlendiriciyle düzenli olarak MLE Alt Güncelleme İsteği ve Yanıt değişimi gerçekleştirmek için SED gerektirir. Çocuk Gözetimi, SED-yönlendirici bağlantısının doğrulanması için alternatif bir çözümdür. Bu çözüm, mesaj aktarma yükünü enerji kısıtlaması olan SED yerine üst düzey yönlendiriciye yerleştirir.

İşleyiş şekli

Bu özellik, düğüm türüne ve yapılandırılmış parametrelere bağlı olarak iki şekilde çalışır:

Ebeveyn hakkında

Üst yönlendirici, OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL içinde alt SED'sine ileti göndermezse üst yönlendirici, alt SED'ye Çocuk Gözetimi mesajı gönderir. Çocuk Gözetimi mesajı, aşağıdaki bilgileri içeren bir MAC çerçevesidir:

  • MAC üstbilgisinde hedef olarak SED'nin RLOC16 değeri.
  • Boş bir yük.

Varsayılan olarak 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.

Çocukta

Bir SED, OPENTHREAD_CONFIG_CHILD_SUPERVISION_CHECK_TIMEOUT içinde ana yönlendiricisinden haber alamazsa ana yönlendiriciyle bağlantısını kaybettiğini varsayar ve ana yönlendiriciye yeniden bağlanmak için MLE Bağlan işlemini başlatır.

Nasıl etkinleştirilir?

Bu özellik varsayılan olarak devre dışıdır.

Tanımlamaya göre

Çocuk Gözetimini etkinleştirmek için OpenThread'i derlemeden ö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 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 içinde aşağıdaki parametreleri kullanın:

Parametreler
OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL
Varsayılan değer
129 saniye
Açıklama
Ebeveynin kullandığı gözetim aralığını saniye cinsinden belirtir. Ebeveynde gözetim sürecini devre dışı bırakmak için bu değeri 0 olarak ayarlayın.
OPENTHREAD_CONFIG_SUPERVISION_CHECK_TIMEOUT
Varsayılan değer
190 saniye
Açıklama
Çocuk durumundaki bir cihaz tarafından kullanılan gözetim kontrolü zaman aşımı aralığını saniye cinsinden belirtir. Çocuğun gözetim kontrol sürecini devre dışı bırakmak için 0 olarak ayarlayın.
OPENTHREAD_CONFIG_SUPERVISION_MSG_NO_ACK_REQUEST
Varsayılan değer
0 (ACK isteği etkin)
Açıklama
Gözetim mesajının MAC başlığındaki 802.15.4 ACK isteğini temizlemek/devre dışı bırakmak için 1 olarak ayarlayın.

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.