Google is committed to advancing racial equity for Black communities. See how.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

كشف المربى

لتوفير آلية قابلة للتكوين لاكتشاف تشويش الإشارة على أي عقدة OpenThread ، قم بتمكين ميزة اكتشاف الانحشار.

هذه الميزة مفيدة لشهادات الجهاز التي تتطلب القدرة على اكتشاف تشويش الإشارة على قناة معينة. يمكن تهيئتها لتلبية متطلبات كل نوع من الشهادات.

كيف تعمل

يراقب Jam Detection مؤشر RSSI (مؤشر قوة الإشارة المستقبلة) للعقدة أثناء النوافذ الزمنية المحددة لتحديد ما إذا كانت القناة محشورة أم لا.

عند تمكين "اكتشاف الانحشار":

  1. تم تعيين حالة اكتشاف الانحشار على " false .
  2. تقوم العقدة بأخذ عينات RSSI عدة مرات خلال كل فترة ثانية واحدة.
  3. إذا ظل مؤشر RSSI عبر هذا الفاصل الزمني للثانية بالكامل أعلى من حد RSSI المكوّن لكل عينة ، فسيتم اعتبار أن الفاصل الزمني للثانية الواحدة محشور.
  4. إذا كان العدد الإجمالي للفواصل الزمنية المحشورة للثانية الواحدة أكبر من أو يساوي العدد الإجمالي لثواني " فترة الانشغال" المكونة خلال ثوانٍ من نافذة الاكتشاف المكونة مسبقًا في أي وقت ، يتم تعيين حالة اكتشاف الانحشار في تلك النقطة الزمنية على " true .
  5. إذا كان العدد الإجمالي للفواصل الزمنية المحشورة لثانية واحدة أقل من العدد الإجمالي لثواني " فترة الانشغال" التي تم تكوينها خلال ثوانٍ من نافذة الكشف المكونة سابقًا في أي وقت ، يتم تعيين حالة اكتشاف الانحشار في تلك النقطة الزمنية على " false .

صورة نقطية للتاريخ

في OpenThread API وخصائص wpantund ، تتوفر صورة نقطية لـ 63 ثانية السابقة للاسترداد. تشير هذه الصورة النقطية إلى ما إذا كان RSSI قد تجاوز عتبة RSSI المكونة في كل من الثواني الـ 63 السابقة.

على سبيل المثال ، يمكنك استرداد الصورة النقطية التالية:

0xC248068C416E7FF0

التحويل إلى ثنائي ينتج عنه تجاوز RSSI عتبة RSSI المكوّنة خلال 63 ثانية السابقة:

11000010 01001000 00000110 10001100 01000001 01101110 01111111 11110000

إذا تم تعيين نافذة الاكتشاف على 16 ثانية ، وتم تعيين فترة الانشغال على 8 ثوانٍ ، تصبح حالة اكتشاف الانحشار true عند 51 ثانية ، حيث أن هذه هي الحالة الأولى التي تم فيها تجاوز حد RSSI لما لا يقل عن 8 ثوانٍ كاملة في الفترة السابقة 16 ثانية. في هذا المثال ، تظل حالة اكتشاف الانحشار true لمدة 13 ثانية.

ea7edf6ab

قد يتم تمثيل هذه الصورة النقطية بالرسم البياني التالي ، إذا كان -45 ديسيبل ميلي واط هو حد RSSI المكوّن:

اكتشاف انحشار الوقت الإضافي

كيفية التمكين

يتم تعطيل هذه الميزة بشكل افتراضي.

من خلال التعريف

لتمكين اكتشاف OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE ، حدد OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE كـ 1 في /src/core/config/openthread-core-default-config.h الملف ، قبل إنشاء OpenThread :

#ifndef OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE
#define OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE 1
#endif

عن طريق التبديل

بدلاً من ذلك ، استخدم JAM_DETECTION=1 مفتاح إنشاء JAM_DETECTION=1 عند إنشاء OpenThread :

make -f examples/Makefile-<platform> JAM_DETECTION=1

المعلمات

لا يمكن تكوين معلمات اكتشاف Jam إلا من خلال OpenThread API أو بروتوكول wpanctl أو wpanctl ، أداة سطر أوامر wpantund لإدارة معالج الشبكة (NCP). يتم تطبيق القيم الافتراضية إذا تم تمكين الميزة بدون تكوين لاحق.

تخصيص هذه الميزة باستخدام المعلمات التالية:

المعلمات
عتبة RSSI
القيمة الافتراضية
0 ديسيبل ميلي واط
وصف
يحدّد مستوى عتبة RSSI بالديسيبل والتي يجب اعتبار القناة محشورة فوقها.
نافذة الكشف
القيمة الافتراضية
63 ثانية
وصف
يحدد النافذة بالثواني التي يتم فيها التحقق من تشويش الإشارة. النطاق: 1-63.
فترة الانشغال
القيمة الافتراضية
63 ثانية
وصف
يحدد عدد الثواني الإجمالية داخل نافذة الكشف التي يجب أن يكون فيها RSSI أعلى من حد RSSI لتشغيل اكتشاف الانحشار. يجب أن يكون أصغر من نافذة الكشف. النطاق: 1-63.

API

OpenThread

استخدم واجهة برمجة تطبيقات Jam Detection لإدارة ميزة اكتشاف Jam مباشرةً في تطبيق OpenThread الخاص بك. توفر OpenThread API الوظائف التالية:

  • بدء وإيقاف الميزة
  • اعرض حالة اكتشاف الانحشار
  • إدارة جميع المعلمات
  • استرجع الصورة النقطية الحالية لمحفوظات اكتشاف الانحشار
  • قم بتسجيل وظيفة رد الاتصال عند اكتشاف انحشار

الإسبنيل

يتيح بروتوكول Spinel للجهاز المضيف الاتصال مباشرة مع NCP. يكشف هذا البروتوكول عن خصائص Jam Detection في /src/lib/spinel/spinel.h التي توفر الوظائف التالية:

  • بدء وإيقاف الميزة
  • اعرض حالة اكتشاف الانحشار
  • إدارة جميع المعلمات
  • استرجع الصورة النقطية الحالية لمحفوظات اكتشاف الانحشار

CLI

OpenThread

لا توجد أوامر OpenThread CLI مرتبطة بهذه الميزة.

wpantund

استخدم wpanctl CLI لإدارة ميزة اكتشاف Jam لتكوين OpenThread NCP. يحتفظ wpantund بكافة تكوين Jam Detection عند إعادة تعيين NCP.

يوفر wpanctl الوصول إلى خصائص wpantund التالية:

الخصائص
JamDetection:Status
شكل
منطقي
وصف
يقرأ فقط. حالة اكتشاف Jam. يشير إلى ما إذا تم اكتشاف انحشار إشارة حاليًا.
JamDetection:Enable
شكل
قيمة منطقية
وصف
تمكين أو تعطيل ميزة اكتشاف الانحشار.
JamDetection:RssiThreshold
شكل
ديسيبل
وصف
يحدد مستوى عتبة RSSI بالديسيبل والذي يجب اعتبار القناة محظورة أعلاه.
JamDetection:Window
شكل
ثواني
وصف
يحدد النافذة بالثواني التي يتم فيها التحقق من تشويش الإشارة. النطاق: 1-63.
JamDetection:BusyPeriod
شكل
ثواني
وصف
يحدد عدد الثواني الإجمالية داخل JamDetection:Window التي يجب أن يكون فيها JamDetection:RssiThreshold أعلى من JamDetection:RssiThreshold لتشغيل اكتشاف Jam. يجب أن يكون أصغر من JamDetection:Window . النطاق: 1-63.
JamDetection:Debug:HistoryBitmap
شكل
قيمة 64 بت
وصف
يوفر معلومات حول محفوظات حالة اكتشاف Jam لأغراض المراقبة وتصحيح الأخطاء.

على سبيل المثال ، للحصول على حالة اكتشاف Jam لـ NCP:

sudo wpanctl getprop JamDetection:Status
JamDetection:Status = false

لتعيين عتبة RSSI لاكتشاف الانحشار على -45 ديسيبل ميلي واط على NCP:

sudo wpanctl setprop JamDetection:RssiThreshold -45
sudo wpanctl getprop JamDetection:RssiThreshold
JamDetection:RssiThreshold = -45

لمزيد من المعلومات حول خصائص wpantund ، راجع مستودع wpantund GitHub .