Google is committed to advancing racial equity for Black communities. See how.

TREL

تتضمن هذه الوحدة تجريد النظام الأساسي لوصلة تغليف راديو الخيط (TREL) باستخدام واجهة IPv6 / UDP.

ملخص

المهام

otPlatTrelUdp6HandleReceived ( otInstance *aInstance, uint8_t *aBuffer, uint16_t aLength)
void
هذه الوظيفة عبارة عن رد اتصال من النظام الأساسي لإخطار الحزمة المستلمة.
otPlatTrelUdp6Init ( otInstance *aInstance, const otIp6Address *aUnicastAddress, uint16_t aUdpPort)
void
تعمل هذه الوظيفة على تهيئة واجهة TREL IPv6 / UDP.
otPlatTrelUdp6SendTo ( otInstance *aInstance, const uint8_t *aBuffer, uint16_t aLength, const otIp6Address *aDestAddress)
تطلب هذه الوظيفة حزمة لإرسالها إلى وجهة معينة.
otPlatTrelUdp6SetTestMode ( otInstance *aInstance, bool aEnable)
هذه الوظيفة الاختيارية مخصصة للاختبار فقط.
otPlatTrelUdp6SubscribeMulticastAddress ( otInstance *aInstance, const otIp6Address *aMulticastAddress)
void
تشترك هذه الوظيفة في واجهة TREL IPv6 / UDP لعنوان الإرسال المتعدد الجديد.
otPlatTrelUdp6UpdateAddress ( otInstance *aInstance, const otIp6Address *aUnicastAddress)
void
تعمل هذه الوظيفة على تحديث عنوان IPv6 أحادي الإرسال لواجهة TREL IPv6 / UDP.

المهام

تم استلام otPlatTrelUdp6Handle

void otPlatTrelUdp6HandleReceived(
  otInstance *aInstance,
  uint8_t *aBuffer,
  uint16_t aLength
)

هذه الوظيفة عبارة عن رد اتصال من النظام الأساسي لإخطار الحزمة المستلمة.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aBuffer
مخزن مؤقت يحتوي على الحزمة المستلمة.
[in] aLength
طول الحزمة (عدد البايتات).

otPlatTrelUdp6Init

void otPlatTrelUdp6Init(
  otInstance *aInstance,
  const otIp6Address *aUnicastAddress,
  uint16_t aUdpPort
)

تعمل هذه الوظيفة على تهيئة واجهة TREL IPv6 / UDP.

يتم استدعاء هذه الوظيفة قبل أي وظائف أخرى لمنصة TREL.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aUnicastAddress
عنوان الإرسال الأحادي المراد إضافته إلى الواجهة واستخدامه كمصدر tx ووجهة rx.
[in] aUdpPort
رقم منفذ UDP المراد استخدامه.

otPlatTrelUdp6 إرسال إلى

otError otPlatTrelUdp6SendTo(
  otInstance *aInstance,
  const uint8_t *aBuffer,
  uint16_t aLength,
  const otIp6Address *aDestAddress
)

تطلب هذه الوظيفة حزمة لإرسالها إلى وجهة معينة.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aBuffer
مؤشر إلى المخزن المؤقت الذي يحتوي على الحزمة المراد إرسالها.
[in] aLength
طول الحزمة (عدد البايتات).
[in] aDestAddress
عنوان IPv6 الوجهة (يمكن أن يكون عنوان بث أحادي أو متعدد IPv6).
إرجاع القيم
OT_ERROR_NONE
تم التعامل مع طلب tx بنجاح.
OT_ERROR_ABORT
الواجهة غير جاهزة وتم إحباط TX

otPlatTrelUdp6SetTestMode

otError otPlatTrelUdp6SetTestMode(
  otInstance *aInstance,
  bool aEnable
)

هذه الوظيفة الاختيارية مخصصة للاختبار فقط.

يغير حالة وضع الاختبار لواجهة TREL.

تطلب هذه الوظيفة تعطيل واجهة TREL أو تمكينها مؤقتًا. عند التعطيل ، يجب إسقاط كل تدفق حركة المرور عبر واجهة TREL بصمت.

يتم توفير تطبيق افتراضي ضعيف لهذه الطريقة بواسطة OpenThread (مع إرجاع NOT_IMPLEMENTED).

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aEnable
يشير إلى ما إذا كان سيتم تمكين / تعطيل واجهة TREL.
إرجاع القيم
OT_ERROR_NONE
تم بنجاح تغيير حالة اختبار واجهة TREL (ممكّن / معطل).
OT_ERROR_FAILED
فشل في تمكين واجهة TREL.
OT_ERROR_NOT_IMPLEMENTED
لا توفر المنصة هذه الوظيفة.

otPlatTrelUdp6SubscribeMulticastAddress

void otPlatTrelUdp6SubscribeMulticastAddress(
  otInstance *aInstance,
  const otIp6Address *aMulticastAddress
)

تشترك هذه الوظيفة في واجهة TREL IPv6 / UDP لعنوان الإرسال المتعدد الجديد.

يمكن استدعاء هذه الوظيفة عدة مرات للاشتراك في عناوين مختلفة. واجهة أن تقبل / استقبال الحزم المرسلة إلى أي عنوان الإرسال المتعدد اشتركت سابقا بالإضافة إلى عنوان أحادي أضيفت من قبل otPlatTrelUdp6Init() وظيفة عندما تمت تهيئة واجهة.

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aMulticastAddress
عنوان IPv6 متعدد البث.

otPlatTrelUdp6UpdateAddress

void otPlatTrelUdp6UpdateAddress(
  otInstance *aInstance,
  const otIp6Address *aUnicastAddress
)

تعمل هذه الوظيفة على تحديث عنوان IPv6 أحادي الإرسال لواجهة TREL IPv6 / UDP.

يجب أن تحتوي الواجهة على عنوان IPv6 أحادي الإرسال. استدعاء هذه الوظيفة يستبدل أي تعيينها مسبقا الإرسال عنوان IPv6 (أثناء التهيئة من otPlatTrelUdp6Init أو المكالمات السابقة إلى otPlatTrelUdp6UpdateAddress() ).

تفاصيل
العوامل
[in] aInstance
بنية مثيل OpenThread.
[in] aUnicastAddress
عنوان الإرسال الأحادي المراد إضافته إلى الواجهة واستخدامه كمصدر tx ووجهة rx.