بيانات تشخيص الشبكة المتداخلة
تتضمن هذه الوحدة تعريفات ودوال لتشخيص الشبكة المتداخلة.
ملخّص
تتطلّب واجهات برمجة تطبيقات بيانات تشخيص الشبكة المتداخلة OPENTHREAD_CONFIG_MESH_DIAG_ENABLE
وOPENTHREAD_FTD
.
تحديدات النوع |
|
---|---|
otMeshDiagChildEntry
|
typedefstruct otMeshDiagChildEntry
تعرض معلومات عن إدخال فرعي من otMeshDiagQueryChildTable() . |
otMeshDiagChildInfo
|
typedefstruct otMeshDiagChildInfo
تمثيل معلومات حول طفل تم اكتشافه في شبكة Thread باستخدام السمة otMeshDiagDiscoverTopology() . |
otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
|
typedefvoid(*
يمثل معاودة الاتصال المستخدمة من قِبل otMeshDiagQueryChildrenIp6Addrs() لتقديم معلومات عن عنصر MTD الثانوي وقائمة عناوين IPv6 التابعة له. |
otMeshDiagChildIterator
|
typedefstruct otMeshDiagChildIterator
تكرار مبهم للتكرار على قائمة العناصر الثانوية لجهاز التوجيه. |
otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
|
typedefvoid(*
يمثّل نوع المؤشر معاودة الاتصال التي يستخدمها otMeshDiagDiscoverTopology() لتقديم معلومات عن جهاز توجيه تم اكتشافه. |
otMeshDiagDiscoverConfig
|
typedefstruct otMeshDiagDiscoverConfig
تمثّل هذه السمة مجموعة الإعدادات المستخدَمة عند اكتشاف مخطط الشبكة المتداخلة الذي يشير إلى العناصر المطلوب اكتشافها. |
otMeshDiagIp6AddrIterator
|
typedefstruct otMeshDiagIp6AddrIterator
هو تكرار مبهم للتكرار على قائمة عناوين IPv6 لجهاز التوجيه. |
otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
|
typedefvoid(*
تمثل هذه السمة رد الاتصال الذي يستخدمه otMeshDiagQueryChildTable() لتقديم معلومات عن إدخالات الجدول الثانوي. |
otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
|
typedefvoid(*
تمثل هذه السمة طريقة معاودة الاتصال المستخدمة من قِبل otMeshDiagQueryRouterNeighborTable() لتقديم معلومات عن إدخالات جدول جهاز التوجيه المجاور. |
otMeshDiagRouterInfo
|
typedefstruct otMeshDiagRouterInfo
يعرض هذا التمثيل معلومات عن جهاز توجيه في شبكة Thread التي تم اكتشافها باستخدام otMeshDiagDiscoverTopology() . |
otMeshDiagRouterNeighborEntry
|
typedef يعرض هذا الحقل معلومات عن إدخال مجاور لجهاز التوجيه من otMeshDiagQueryRouterNeighborTable() . |
الدوال |
|
---|---|
otMeshDiagCancel(otInstance *aInstance)
|
void
يؤدي إلى إلغاء اكتشاف تسلسلي مستمر في حال توفُّر أي إجراء، وإلا لن يتم اتّخاذ أي إجراء.
|
otMeshDiagDiscoverTopology(otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext)
|
بدء اكتشاف طوبولوجيا الشبكة
|
otMeshDiagGetNextChildInfo(otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo)
|
يتكرر اكتشاف العناصر الثانوية لجهاز التوجيه.
|
otMeshDiagGetNextIp6Address(otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address)
|
يتكرر من خلال عناوين IPv6 المكتشفة لجهاز التوجيه أو جهاز MTD الفرعي.
|
otMeshDiagQueryChildTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext)
|
لبدء استعلام لجدول فرعي لجهاز توجيه معين.
|
otMeshDiagQueryChildrenIp6Addrs(otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext)
|
لإرسال طلب إلى أحد الوالدَين لاسترداد عناوين IPv6 من جميع عناصر MTD الثانوية
|
otMeshDiagQueryRouterNeighborTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext)
|
لبدء الاستعلام عن جدول جار جهاز التوجيه لجهاز توجيه معين.
|
الهياكل |
|
---|---|
otMeshDiagChildEntry |
تعرض معلومات عن إدخال فرعي من |
otMeshDiagChildInfo |
تمثيل معلومات حول طفل تم اكتشافه في شبكة Thread باستخدام السمة |
otMeshDiagDiscoverConfig |
تمثّل هذه السمة مجموعة الإعدادات المستخدَمة عند اكتشاف مخطط الشبكة المتداخلة الذي يشير إلى العناصر المطلوب اكتشافها. |
otMeshDiagRouterInfo |
يعرض هذا التمثيل معلومات عن جهاز توجيه في شبكة Thread التي تم اكتشافها باستخدام |
otMeshDiagRouterNeighborEntry |
يعرض هذا الحقل معلومات عن إدخال مجاور لجهاز التوجيه من |
تحديدات النوع
otMeshDiagChildEntry
struct otMeshDiagChildEntry otMeshDiagChildEntry
تعرض معلومات عن إدخال فرعي من otMeshDiagQueryChildTable()
.
تشير السمة mSupportsErrRate
إلى ما إذا كانت ميزة تتبُّع الأخطاء متاحة أم لا، وأنّ القيمتَين mFrameErrorRate
وmMessageErrorRate
صالحتَين. يتتبّع معدّل أخطاء الإطارات في الثانية أخطاء ضبط الإطارات (في اتجاه النطاق الفرعي) في طبقة MAC، في حين يتتبّع mMessageErrorRate
معدّل أخطاء رسالة IPv6 (أعلى طبقة MAC وبعد إعادة محاولة MAC) عند حذف رسالة IPv6. على سبيل المثال، إذا كانت الرسالة كبيرة وتتطلب تجزئة 6LoWPAN، فسيتم اعتبار الرسالة tx على أنها قد فشلت في حال فشل أحد إطاراتها المجزأة (على سبيل المثال، عدم التأكيد مطلقًا).
otMeshDiagChildInfo
struct otMeshDiagChildInfo otMeshDiagChildInfo
تمثيل معلومات حول طفل تم اكتشافه في شبكة Thread باستخدام السمة otMeshDiagDiscoverTopology()
.
otMeshDiagChildIp6AddrsCallback
void(* otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
يمثل معاودة الاتصال المستخدمة من قِبل otMeshDiagQueryChildrenIp6Addrs()
لتقديم معلومات عن عنصر MTD الثانوي وقائمة عناوين IPv6 التابعة له.
وعندما تكون قيمة السمة aError
هي OT_ERROR_PENDING
، يعني ذلك وجود المزيد من العناصر الثانوية وسيتم استدعاء معاودة الاتصال مرة أخرى.
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
otMeshDiagChildIterator
struct otMeshDiagChildIterator otMeshDiagChildIterator
تكرار مبهم للتكرار على قائمة العناصر الثانوية لجهاز التوجيه.
تتوفّر مؤشرات لمثيل من هذا النوع في otMeshDiagRouterInfo
.
otMeshDiagDiscoverCallback
void(* otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
يمثّل نوع المؤشر معاودة الاتصال التي يستخدمها otMeshDiagDiscoverTopology()
لتقديم معلومات عن جهاز توجيه تم اكتشافه.
عندما تكون قيمة السمة aError
هي OT_ERROR_PENDING
، يعني ذلك أنّ عملية الاكتشاف لم تكتمل بعد وسيكون هناك المزيد من أجهزة التوجيه لاكتشافها وسيتم طلب معاودة الاتصال مرة أخرى.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otMeshDiagDiscoverConfig
struct otMeshDiagDiscoverConfig otMeshDiagDiscoverConfig
تمثّل هذه السمة مجموعة الإعدادات المستخدَمة عند اكتشاف مخطط الشبكة المتداخلة الذي يشير إلى العناصر المطلوب اكتشافها.
otMeshDiagIp6AddrIterator
struct otMeshDiagIp6AddrIterator otMeshDiagIp6AddrIterator
هو تكرار مبهم للتكرار على قائمة عناوين IPv6 لجهاز التوجيه.
تتوفّر مؤشرات لمثيل من هذا النوع في otMeshDiagRouterInfo
.
otMeshDiagQueryChildTableCallback
void(* otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
تمثل هذه السمة رد الاتصال الذي يستخدمه otMeshDiagQueryChildTable()
لتقديم معلومات عن إدخالات الجدول الثانوي.
وعندما تكون قيمة الحقل "aError
" هي "OT_ERROR_PENDING
"، يعني ذلك أنّ الجدول لا يزال يحتوي على المزيد من الإدخالات وسيتم استدعاء معاودة الاتصال مرة أخرى.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otMeshDiagQueryRouterNeighborTableCallback
void(* otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
تمثل هذه السمة طريقة معاودة الاتصال المستخدمة من قِبل otMeshDiagQueryRouterNeighborTable()
لتقديم معلومات عن إدخالات جدول جهاز التوجيه المجاور.
وعندما تكون قيمة الحقل "aError
" هي "OT_ERROR_PENDING
"، يعني ذلك أنّ الجدول لا يزال يحتوي على المزيد من الإدخالات وسيتم استدعاء معاودة الاتصال مرة أخرى.
التفاصيل | |||||||
---|---|---|---|---|---|---|---|
المَعلمات |
|
otMeshDiagRouterInfo
struct otMeshDiagRouterInfo otMeshDiagRouterInfo
يعرض هذا التمثيل معلومات عن جهاز توجيه في شبكة Thread التي تم اكتشافها باستخدام otMeshDiagDiscoverTopology()
.
otMeshDiagRouterNeighborEntry
struct otMeshDiagRouterNeighborEntry otMeshDiagRouterNeighborEntry
يعرض هذا الحقل معلومات عن إدخال مجاور لجهاز التوجيه من otMeshDiagQueryRouterNeighborTable()
.
تشير السمة mSupportsErrRate
إلى ما إذا كانت ميزة تتبُّع الأخطاء متاحة أم لا، وأنّ القيمتَين mFrameErrorRate
وmMessageErrorRate
صالحتَين. يتتبّع معدّل أخطاء الإطارات في الثانية أخطاء ضبط الإطارات (في اتجاه النطاق الفرعي) في طبقة MAC، في حين يتتبّع mMessageErrorRate
معدّل أخطاء رسالة IPv6 (أعلى طبقة MAC وبعد إعادة محاولة MAC) عند حذف رسالة IPv6. على سبيل المثال، إذا كانت الرسالة كبيرة وتتطلب تجزئة 6LoWPAN، فسيتم اعتبار الرسالة tx على أنها قد فشلت في حال فشل أحد إطاراتها المجزأة (على سبيل المثال، عدم التأكيد مطلقًا).
الدوال
otMeshDiagCancel
void otMeshDiagCancel( otInstance *aInstance )
يؤدي إلى إلغاء اكتشاف تسلسلي مستمر في حال توفُّر أي إجراء، وإلا لن يتم اتّخاذ أي إجراء.
عند إلغاء عملية رصد جارية، لن يتم استدعاء معاودة الاتصال من "otMeshDiagDiscoverTopology()
".
otMeshDiagDiscoverTopology
otError otMeshDiagDiscoverTopology( otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext )
بدء اكتشاف طوبولوجيا الشبكة
التفاصيل | |||||||||
---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||
قيم الإرجاع |
|
otMeshDiagGetNextChildInfo
otError otMeshDiagGetNextChildInfo( otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo )
يتكرر اكتشاف العناصر الثانوية لجهاز التوجيه.
يجب استخدام هذه الدالة من رد الاتصال otMeshDiagDiscoverCallback()
واستخدام mChildIterator
من بنية aRouterInfo
التي يتم توفيرها كإدخال في رد الاتصال.
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otMeshDiagGetNextIp6Address
otError otMeshDiagGetNextIp6Address( otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address )
يتكرر من خلال عناوين IPv6 المكتشفة لجهاز التوجيه أو جهاز MTD الفرعي.
يجب استخدام
- من معاودة الاتصال
otMeshDiagDiscoverCallback()
واستخدامmIp6AddrIterator
من بنيةaRouterInfo
التي يتم توفيرها كإدخال في رد الاتصال، أو - من معاودة الاتصال "
otMeshDiagChildIp6AddrsCallback()
" بالإضافة إلى "aIp6AddrIterator
" المُقدَّم
التفاصيل | |||||
---|---|---|---|---|---|
المَعلمات |
|
||||
قيم الإرجاع |
|
otMeshDiagQueryChildTable
otError otMeshDiagQueryChildTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext )
لبدء استعلام لجدول فرعي لجهاز توجيه معين.
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||
قيم الإرجاع |
|
otMeshDiagQueryChildrenIp6Addrs
otError otMeshDiagQueryChildrenIp6Addrs( otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext )
لإرسال طلب إلى أحد الوالدَين لاسترداد عناوين IPv6 من جميع عناصر MTD الثانوية
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||
قيم الإرجاع |
|
otMeshDiagQueryRouterNeighborTable
otError otMeshDiagQueryRouterNeighborTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext )
لبدء الاستعلام عن جدول جار جهاز التوجيه لجهاز توجيه معين.
التفاصيل | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
المَعلمات |
|
||||||||||
قيم الإرجاع |
|
وحدات ماكرو
OT_MESH_DIAG_VERSION_UNKNOWN
OT_MESH_DIAG_VERSION_UNKNOWN 0xffff
تشير هذه السمة إلى أنّ إصدار سلسلة المحادثات غير معروف.
تُستخدَم هذه السمة في otMeshDiagRouterInfo
للسمة mVersion
عندما لا يوفّر الجهاز إصداره. ويشير هذا إلى أنّ الجهاز يعمل على الأرجح بالإصدار 1.3.0 (قيمة الإصدار 4) أو إصدار أقدم.
المراجِع
تنشأ المواضيع المرجعية لواجهة برمجة تطبيقات OpenThread من رمز المصدر المتاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في مستنداتنا، يمكنك الاطّلاع على المراجع.