واي فاي RTT (IEEE 802.11mc)

تتيح ميزة Wi-Fi Round Trip Time (RTT) في Android 9 للأجهزة الداعمة قياس المسافة إلى الأجهزة الداعمة الأخرى: سواء كانت نقاط وصول (APs) أو أقرانًا مدركين لشبكة Wi-Fi (إذا كانت Wi-Fi Aware مدعومة على جهاز). تتيح هذه الميزة، المبنية على بروتوكول IEEE 802.11mc، للتطبيقات استخدام دقة الموقع المحسنة والوعي به.

الأمثلة والمصادر

لاستخدام هذه الميزة، قم بتطبيق واجهة HAL للمورد. في Android 14 والإصدارات الأحدث، يتم تعريف واجهة Vendor HAL باستخدام AIDL. في نظام التشغيل Android 13 والإصدارات الأقدم، يتم تحديد واجهة Vendor HAL باستخدام HIDL. في Android 8.0، استبدل HIDL بنية طبقة تجريد الأجهزة (HAL) السابقة المستخدمة لتبسيط عمليات التنفيذ من خلال تحديد الأنواع واستدعاءات الأساليب المجمعة في واجهات وحزم.

اتبع واجهة Wi-Fi لتوظيف ميزة Wi-Fi RTT. اعتمادًا على الواجهة التي يتم تنفيذها، هذا هو:

  • AIDL: hardware/interfaces/wifi/aidl
  • HIDL: hardware/interfaces/wifi/1.0 أو الأحدث.

يمكنك الرجوع إلى Wi-Fi HAL القديم لمعرفة كيفية ارتباطه بواجهات AIDL وHIDL: hardware/libhardware_legacy/+/main/include/hardware_legacy/rtt.h .

تطبيق

لتنفيذ Wi-Fi RTT، يجب عليك توفير كل من إطار العمل ودعم HAL/البرامج الثابتة:

  • نطاق:

    • كود AOSP
    • تمكين Wi-Fi RTT: يتطلب علامة ميزة
  • دعم HAL لـ Wi-Fi RTT (IEEE 802.11mc) (مما يعني دعم البرامج الثابتة)

لتنفيذ هذه الميزة، قم بتنفيذ واجهة Wi-Fi AIDL أو HIDL، وقم بتمكين علامة الميزة:

  • في device.mk الموجود في device/<oem>/<device> ، قم بتعديل متغير البيئة PRODUCT_COPY_FILES ليشمل دعم ميزة Wi-Fi RTT:

    PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
    

بخلاف ذلك، يتم تضمين كل ما هو مطلوب لهذه الميزة في AOSP.

العشوائية MAC

لتعزيز الخصوصية، يجب أن يكون عنوان MAC المستخدم أثناء معاملات Wi-Fi RTT عشوائيًا، أي يجب ألا يتطابق مع عنوان MAC الأصلي لواجهة Wi-Fi. ومع ذلك، كاستثناء، عندما يرتبط جهاز بنقطة وصول، فإنه يجوز له استخدام عنوان MAC الذي يرتبط به لأي معاملات RTT مع نقطة الوصول تلك أو مع نقاط وصول أخرى.

تصديق

توجد اختبارات مجموعة اختبار توافق Android (CTS) لهذه الميزة. تكتشف CTS متى يتم تمكين الميزة وتتضمن الاختبارات المرتبطة بها تلقائيًا. يمكن أيضًا اختبار هذه الميزة باستخدام مجموعة اختبار البائع (VTS) و acts/sl4a ، وهي مجموعة اختبار تجري اختبارات تكامل واسعة النطاق.

اختبارات الوحدة

يتم تنفيذ اختبارات حزمة Wi-Fi RTT باستخدام:

اختبارات الخدمة:

atest com.android.server.wifi.rtt

اختبارات المدير:

atest android.net.wifi.rtt

اختبارات التكامل (ACTS).

توفر مجموعة اختبار Acts/sl4a، الموضحة في /tools/test/connectivity/acts_tests/tests/google/wifi/rtt/README.md ، اختبارات وظيفية وأداء واختبارات تحمل.

CTS

توجد اختبارات مجموعة اختبار توافق Android (CTS) لهذه الميزة. تكتشف CTS متى يتم تمكين الميزة وتتضمن الاختبارات المرتبطة بها تلقائيًا. يجب أن تكون نقطة الوصول التي تدعم Wi-Fi RTT (IEEE 802.11mc) ضمن نطاق الجهاز قيد الاختبار.

يمكن تشغيل اختبارات CTS باستخدام:

atest WifiRttTest

معايرة

لكي يعمل Wi-Fi RTT بشكل جيد، تكون النطاقات التي يتم إرجاعها في بروتوكول 802.11mc دقيقة بشكل مثالي ضمن مؤشر الأداء الرئيسي (KPI). بالنسبة لخطأ CDF بنسبة 90%، في عروض النطاقات المدرجة، من المتوقع أن يكون لمؤشر الأداء الرئيسي الموصى به لتقدير النطاق التفاوتات التالية:

  • 80 ميجا هرتز: 2 متر
  • 40 ميجا هرتز: 4 أمتار
  • 20 ميجا هرتز: 8 أمتار

للتأكد من أن تنفيذ الميزة يعمل بشكل صحيح، يعد اختبار المعايرة ضروريًا.

يمكن تحقيق ذلك من خلال مقارنة نطاق الحقيقة الأرضية مع النطاق المقدر لـ RTT على مسافات متزايدة. للحصول على التوافق الأساسي، يجب عليك التحقق من صحة الحل الخاص بك مقابل جهاز معروف بمعايرة RTT. يجب اختبار معايرة النطاق في ظل الظروف التالية:

  1. مختبر مفتوح كبير، أو ممر لا يحتوي على الكثير من الأجسام المعدنية مما قد يؤدي إلى حدوث تعدد المسارات بشكل غير معتاد.
  2. على الأقل مسار/مسار خط البصر (LOS) يمتد لمسافة 25 مترًا.
  3. علامات بزيادات 0.5 متر من أحد طرفي المسار إلى الطرف الآخر.
  4. مكان لتأمين نقطة وصول قادرة على RTT في أحد طرفي المسار مثبتة على ارتفاع 20 سم فوق الأرض، وحامل متحرك لهاتف Android (أو أي جهاز محمول آخر يعمل بنظام Android قيد الاختبار) يمكن تحريكه على طول المسار، ومحاذاته مع علامات 0.5 متر، أيضًا على ارتفاع 20 سم فوق الأرض. ملاحظة: يمكن تنفيذ هذه المهمة المتكررة بواسطة روبوت صغير، ولكن المشغل البشري جيد أيضًا.
  5. يجب تسجيل 50 نتيجة نطاق عند كل علامة، بالإضافة إلى المسافة من نقطة الوصول. يجب حساب الإحصائيات، مثل متوسط ​​النطاق والتباين، لكل موضع علامة.

من النتائج الواردة في الخطوة 5، يمكن رسم مخطط للحقيقة الأساسية (المحور السيني) مقابل النطاق المقدر (المحور الصادي) وتقدير خط الانحدار الأفضل. سوف تؤدي معايرة الجهاز المثالية إلى خط متدرج 1.0، مع إزاحة 0.0 متر على المحور الصادي. تعتبر الانحرافات عن هذه القيم مقبولة إذا كانت ضمن مؤشر الأداء الرئيسي لعرض النطاق الترددي المقابل. إذا كانت النتائج خارج نطاق مؤشر الأداء الرئيسي، فيجب إعادة معايرة ميزة الجهاز لجعل النتائج ضمن مواصفات مؤشر الأداء الرئيسي.