Bazı gelişmiş özellikler, olup olmadıklarına bağlı olarak isteğe bağlıdır. desteklenen bir modeldir.
Otomatik çerçeve beklemede
IEEE 802.15.4, üst ve alt yayıncı arasında iki tür veri iletim yöntemini tanımlar çocuk: doğrudan bulaşma ve dolaylı bulaşma. İkincisi ise proje yaşam döngüsü çoğunlukla uykulu son cihazlar (SED'ler) için. kuyruğa alınan veriler olup olmadığını görmek için ebeveyni yoklamak üzere düzenli olarak uyanır.
Doğrudan İletim: Ebeveyn, doğrudan son cihaza bir veri çerçevesi gönderir
Dolaylı İletim: Ebeveyn, hedeflenen son cihazı tarafından talep edilene kadar verileri saklar.
Dolaylı durumda, alt uç cihazın ilk olarak ebeveyni yoklaması gerekir. mevcut olup olmadığını gösterir. Çocuk bunun için bir veri gönderir. ebeveyn tarafından onaylar. Daha sonra ana yayıncı, Çocuğun cihazıyla ilgili herhangi bir veriye sahip; alta bir veri paketi gönderir. cihazın onaylamasını sağlayın.
Radyo, giden çağrılarda Çerçeve Beklemede bitinin dinamik olarak ayarlanmasını destekliyorsa sürücüler, SED'lere onay verdiğinden, kaynak adresi eşleşmesi API'yi kullanabilirsiniz. OpenThread bu API'yı kullanarak radyoya hangi Çerçeve Beklemede bitini ayarlamak için SED'ler kullanabilirsiniz.
Radyo, Çerçeve Beklemede bitinin dinamik olarak ayarlanmasını desteklemiyorsa
radyo, döndürecek API'nin kaynak adresi ile eşleşebilir
OT_ERROR_NOT_IMPLEMENTED
Radyo ile Enerji Tarama/Algılama
Enerji Tarama/Algılama özelliği, enerjiyi örneklemek için radyo çipi gerektirir seçili kanallarda sunum yaparak algılanan enerji değerini üst katmanız var.
Bu özellik uygulanmazsa IEEE 802.15.4 MAC katmanı Mevcut mesajı değerlendirmek için İşaretçi İstek/Yanıt paketi gönderir/alır. ne kadar değer verdiğinizi gösterir.
Radyo çipi Enerji Taraması/Algılama özelliğini destekliyorsa yazılımı devre dışı bıraktığınızdan emin olun.
makroyu ayarlayarak enerji tarama mantığını
OPENTHREAD_CONFIG_ENABLE_SOFTWARE_ENERGY_SCAN = 0
mbedTLS için donanım hızlandırma
mbedTLS, ana yapılandırma üstbilgi dosyasında çeşitli makroları tanımlar.
mbedtls-config.h
Bu da kullanıcıların AES, SHA1, SHA2 ve alternatif uygulamalarını etkinleştirmesini sağlar.
ve Eliptik eğri için bağımsız fonksiyonların yanı sıra
GF (p) modülü üzerinden kriptografi(ECC) Görüntüleyin
mbedTLS donanım hızlandırma
konulu videomuzu izleyin.
OpenThread bu makroları etkinleştirmez; bu nedenle simetrik kripto algoritmalar, karma algoritmaları ve ECC işlevleri birlikte çalışır. Bu uygulamalar önemli miktarda bellek gerektirir yeni bilgiler edinir. Optimum performans ve daha iyi bir kullanıcı için Bu işlemi yapmak için yazılım yerine donanım hızlandırmayı yukarıdaki işlemleri uygulayın.
OpenThread içinde donanım hızlandırmayı etkinleştirmek için aşağıdaki mbedTLS
yapılandırma başlığı dosyaları ot-config
derlemesine eklenmelidir
aşağıdaki tanımlar:
- OpenThread'de kullanılan tüm gerekli makroları tanımlayan ana yapılandırma:
/openthread/third-party/mbedtls/mbedtls-config.h
- Özel yapılandırmanın alternatif uygulamalarını tanımlayan,
modüller ve işlevler:
src/platform-name-mbedtls-config.h
nrf52811.cmake
örneği:
target_compile_definitions(ot-config INTERFACE "MBEDTLS_USER_CONFIG_FILE=\"nrf52811-mbedtls-config.h\"" )
mbedtls-config.h
ürününde yorum yapılan makrolar zorunlu değildir ve şurada etkinleştirilebilir:
kullanıcıya özel yapılandırma üstbilgisi dosyasına sahip olabilir.
Kullanıcıya özel yapılandırmanın tamamı için
mbedtls_config_autogen.h
ot-efr32
klasöründeki.
AES modülü
OpenThread Security, AES CCM (CBC-MAC ile Sayaç) şifrelemesini uygular IEEE 802.15.4 veya MLE mesajlarını şifreler/şifresini çözer ve mesajı doğrular entegrasyon kodu kullanılır. Donanım hızlandırma en azından temel AES ECB'yi desteklemelidir AES CCM temel işlevsel çağrısı için (Elektronik Kod Kitabı Kitabı) modu.
Alternatif bir AES modülü uygulaması kullanmak için:
- Kullanıcıya özel mbedTLS'de
MBEDTLS_AES_ALT
makrosunu tanımlama yapılandırma üstbilgi dosyası aes_alt.h
dosyasının yolunuMBEDTLS_CPPFLAGS
kullanarak belirtin. değişken
SHA256 modülü
OpenThread Security, aşağıdaki adımları uygulayarak HMAC ve SHA256 karma algoritmalarını Thread'e göre ağ anahtarı yönetimi ve PSKc oluşturma için karma değeri Spesifikasyon.
Alternatif bir temel SHA256 modülü uygulamasını kullanmak için:
- Kullanıcıya özel mbedTLS'de
MBEDTLS_SHA256_ALT
makrosunu tanımlama yapılandırma üstbilgi dosyası sha256_alt.h
dosyasının yolunuMBEDTLS_CPPFLAGS
kullanarak belirtin. değişken
ECC işlevleri
mbedTLS şu anda yalnızca ECC'nin bölümleri için donanım hızlandırmayı desteklediğinden
fonksiyonlarının kullanılması yerine, bunlardan bazılarını uygulamaya
şurada tanımlanan işlevler:
ECC'yi hızlandırmak için path-to-mbedtls/library/ecp.c
noktayla çarpma işlemi.
Eğri secp256r1, anahtar değişimi algoritmasında kullanılan ECJPAKE taslağı. Dolayısıyla, donanım hızlandırma en azından secp256r1 kısa Weierstrass'ı desteklemelidir eğri işlemi. SiLabs CRYPTO Donanım Hızlandırması için mbedTLS inceleyebilirsiniz.