بالنسبة إلى الأجهزة التي تعمل بالإصدار 13 من نظام التشغيل Android أو الإصدارات الأحدث، يمكن استخدام نظام يتوافق مع معيار Wi-Fi 7 (IEEE 802.11be). تقدّم هذه الصفحة وصفًا حول نظام التشغيل Android. ميزات Wi-Fi 7، بما في ذلك الشبكة الأساسية وعملية الروابط المتعددة (MLO)
ميزات شبكة Wi-Fi 7 الأساسية
يصف هذا القسم ميزات Wi-Fi 7 الأساسية المضمّنة في الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث
دعم شبكة Wi-Fi 7 للجهاز
يتضمن إطار عمل Android
WifiManager#isWifiStandardSupported(int standard)
واجهة برمجة التطبيقات، التي يمكن للتطبيقات الاتصال بها من خلال
ScanResults.WIFI_STANDARD_11BE
لمعرفة ما إذا كان الجهاز متوافقًا مع معيار Wi-Fi 7.
عند استدعاء واجهة برمجة التطبيقات هذه،
وحدة Wi-Fi
للتحقّق مما إذا كان تراكب الإعدادات config_wifi11beSupportOverride
استخدام كإلغاء ويتم إجراء ما يلي:
- إذا تم ضبط قيمة المحتوى على
true
، من المفترض أنّ الجهاز متوافق مع اتصال Wi-Fi 7. بغض النظر عن الردّ من nl80211. لا يكون هذا الإلغاء مفيدًا إلا الشركات المصنّعة للأجهزة التي لا تحتوي على برامج تشغيل تُعيد دعم شبكة Wi-Fi 7. - إذا تم ضبط قيمة السمة على
false
(القيمة التلقائية)، تستخدم وحدة Wi-Fi المعلومات من nl80211. وتطلب وحدة Wi-Fi المعلومات من wificond، والتي تستدعي بالأمر nl80211NL80211_CMD_GET_WIPHY
. إذا كانت تتوفّر السمةNL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY
في الردّ من برنامج التشغيل، من المفترض أن يتوافق الجهاز مع اتصال Wi-Fi 7.
دعم AP Wi-Fi 7 الذي تم فحصه
يتضمن إطار عمل Android
int ScanResult#getWifiStandard()
واجهة برمجة التطبيقات، التي يمكن للتطبيقات الاتصال بها للتحقّق مما إذا كانت نقطة الوصول التي تم فحصها (AP)
يتوافق مع معيار Wi-Fi 7. إذا كانت نقطة الوصول تتوافق مع معيار Wi-Fi 7، ستعرض واجهة برمجة التطبيقات
ScanResults.WIFI_STANDARD_11BE
ليس من الضروري أن يتوافق الجهاز مع شبكة Wi-Fi 7 لتتمكّن التطبيقات من استخدام واجهة برمجة التطبيقات هذه.
وعند استدعاء واجهة برمجة التطبيقات هذه، تتحقّق وحدة Wi-Fi مما إذا كان EHT Capability IE
في النتائج المعروضة لفحص الاتصال. إذا كانت EHT Capability IE
في
نتائج الفحص، فإن نقطة الوصول التي تم مسحها ضوئيًا تتوافق مع شبكة Wi-Fi 7.
تعرض فئة AOSP WifiTracker
معلومات الدعم هذه لدى المستخدم
عند التشغيل في وضع التسجيل المطوَّل.
وضع اتصال STA
يتضمن إطار عمل Android
int WifiInfo#getWifiStandard()
واجهة برمجة التطبيقات، التي يمكن للتطبيقات الاتصال بها للتحقّق مما إذا كان اتصال المحطة الحالية (STA)
هو Wi-Fi 7. وضع اتصال STA هو Wi-Fi 7 عندما يتم توصيل
نقطة الوصول المتصلة تدعم Wi-Fi 7. إذا كان وضع الاتصال هو Wi-Fi 7، فسيتم
إرجاع
ScanResults.WIFI_STANDARD_11BE
عند استدعاء "getWifiStandard
"، تحدّد وحدة Wi-Fi الوضع من خلال
واستدعاء
واجهة برمجة تطبيقات HAL ISupplicantStaIface#getConnectionCapabilities()
. تشير رسالة الأشكال البيانية
يتحقّق تنفيذ واجهة برمجة التطبيقات HAL API هذه في طبقة wpa_supplicant
AIDL مما إذا كان
يقع EHT Capability IE
في كل من AssocReq
وAssocRsp
خلال
إعداد الاتصال لدينا.
اختيار الشبكة
في Android 13، يستخدم اختيار الشبكات العديد من
لتحديد نقطة الوصول التي ينبغي الاتصال بها. تتمثل إحدى المعلمات في
سرعة معالجة البيانات المقدَّرة لـ AP، والتي يتم تقديرها باستخدام
حظر "ThroughputPredictor
" تشير رسالة الأشكال البيانية
تستخدم مجموعة "ThroughputPredictor
" معلَمات PHY لكل من الجهاز
تم مسحه ضوئيًا.
في Android 13، يستخدم ThroughputPredictor
قدرات AP التالية في حسابها:
- دعم شبكة Wi-Fi 7 (802.11be)
- دعم عرض القناة بتردد 320 ميغاهرتز
إنّ تضمين هذه الإمكانات في منطق ThroughputPredictor
يعزّز
فرص اختيار نقاط الوصول المتوافقة مع شبكة Wi-Fi 7 عندما يتمكن الجهاز من الاستفادة من هذه
الجديدة.
تحديد المدى باستخدام ميزة "مراسلة نصية في الوقت الفعلي" لشبكة Wi-Fi
يوفر Android دعم واجهة برمجة التطبيقات لتمهيد EHT وعرض قناة 320 ميغاهرتز المراسلة النصية في الوقت الفعلي لشبكة Wi-Fi: وهذا يمكّن دعم الإمكانات ذات الصلة بشبكة Wi-Fi 7 في وقت الإرسال متوافقة مع الشريحة
واجهات برمجة تطبيقات HAL
تتوافق واجهات برمجة تطبيقات HAL التالية مع إمكانيات Wi-Fi 7 للنطاقات المستندة إلى ميزة "مراسلة نصية في الوقت الفعلي":
EHT
: ثابت فيenum RttPreamble
أوenum WifiRatePreamble
WIDTH_320
: ثابت فيenum WifiChannelWidthInMhz
BW_320MHz
: ثابت فيenum RttBw
واجهات برمجة التطبيقات
يمكن للتطبيقات استخدام واجهات برمجة التطبيقات التالية مع نطاقات تفعيل ميزة "مراسلة نصية في الوقت الفعلي" في شبكة Wi-Fi 7:
ScanResult#PREAMBLE_EHT
ResponderConfig#PREAMBLE_EHT
(SystemApi)
نقطة وصول خفيفة
يتوافق Android مع شبكة Wi-Fi 7 في Soft AP ويوفر ما يلي: الجديدة.
بدء Soft AP
يتيح Android بدء نقطة الوصول Soft AP في وضع Wi-Fi 7.
يخضع ذلك لتراكب config_wifiSoftapIeee80211beSupported
التكوين.
تستخدم وحدة Wi-Fi العنصر config_wifiSoftapIeee80211beSupported
المركّب لتحديد
والقيمة المنطقية HwModeParams#enable80211BE
في
IHostApd#addAccessPoint()
طلب بيانات من واجهة برمجة التطبيقات في طبقة المضيف AIDL، تكون هذه القيمة
المستخدمة لضبط معلمات hostapd.conf
.
واجهات برمجة تطبيقات HAL
تشير رسالة الأشكال البيانية
enable80211BE
منطقية في HwModeParams
في دالة HAL المضيفة التي
بدء Soft AP في وضع Wi-Fi 7.
الإبلاغ عن معلومات Soft AP
يتيح نظام التشغيل Android استخدام واجهة برمجة التطبيقات ليضمّ عرض قناة Wi-Fi 7 و320 ميغاهرتز المعلومات في معلومات Soft AP التي تم الإبلاغ عنها.
واجهات برمجة تطبيقات HAL
ثابت WIFI_STANDARD_11BE
في
Generation.aidl
واجهة AIDL في بروتوكول HAL للمضيفين، وهي مستخدمة
في ApInfo
التي تم الإبلاغ عنها في IHostapdCallback#onApInstanceInfoChanged()
لمعاودة الاتصال، تتيح هذه الميزة الإبلاغ عن معلومات Soft AP.
واجهات برمجة التطبيقات
يمكن للتطبيقات استخدام الطرق التالية (واجهات برمجة تطبيقات النظام) في
SoftApInfo
للإبلاغ عن معلومات Soft AP.
SoftApInfo#getWifiStandard()
: الركلات المردودةScanResults.WIFI_STANDARD_11BE
إذا تم تشغيل نقطة الوصول النائية في وضع Wi-Fi 7.SoftApInfo#getBandwidth()
: الركلات المردودةSoftApInfo#CHANNEL_WIDTH_320MHZ
في حال استخدام عرض القناة الذي يبلغ 320 ميغاهرتز.
ميزات "MLO Wi-Fi 7"
ميزة التشغيل المتعدّد الروابط (MLO) هي الميزة الرئيسية في اتصال Wi-Fi 7 (802.11be) المواصفات. يعد MLO ميزة إلزامية للأجهزة المتعددة الروابط (MLD) تعمل في شبكة Wi-Fi 7، سواء بشكل متزامن أو غير متزامن.
الشكل 1. مخطط MLO.
كما هو موضح في الشكل 1، يحتوي كل من AP-MLD وSTA-MLD على العديد من نقاط الوصول الحالات التي يتم تشغيلها على كل رابط. يحتوي كل رابط على عنوان AP أو STA MAC منفصل. تضم AP أو STA أيضًا عنوان MLD MAC لتحديد الجهاز.
تمثيل رابط MLO
تشير رسالة الأشكال البيانية
android.net.wifi.MloLink
الفئة رابط MLO. وتشمل هذه الفئة المَعلمات التالية:
int getLinkId()
: رقم تعريف الرابط كما هو موضّح من قِبل AP MLD.MacAddress getApMacAddress()
: عنوان AP MAC. معرِّف مجموعة الخدمات الأساسية (BSSID) لمثيل AP لهذا الرابط.MacAddress getStaMacAddress()
: عنوان STA MAC. عنوان MAC المعيّن محليًا لمثيل STA على الرابط.int getChannel()
: ربط القناة رقم القناة للرابط.int getBand()
: شريط الوصلة تمثّل هذه السمة نطاق الرابط.int getState()
: حالة الارتباط يمكن أن تكون إحدى الحالات التالية:MLO_LINK_STATE_INVALID
: البيانات المُدخَلة غير صالحة. تُستخدَم في الإعداد وحالات الأخطاء.MLO_LINK_STATE_UNASSOCIATED
: تم إلغاء الربط. الرابط غير مرتبط بنقطة وصول (AP).MLO_LINK_STATE_IDLE
: في وضع الخمول. الرابط مرتبط ولكنه غير نشط (بدون معرِّف للزيارات (TID) إلى الرابط).MLO_LINK_STATE_ACTIVE
: نشِط الرابط مرتبط ونشط (تم تعيين معرّف TID واحد على الأقل إلى الرابط). ويمكن أن يكون الرابط النشط في وضع توفير الطاقة لأن إطار العمل لا يراقب حالة طاقة الرابط.
معلومات AP MLO على شبكة Wi-Fi 7 الممسوحة ضوئيًا
يمكن للتطبيقات الحصول على مَعلمات MLO لمعيار Wi-Fi 7 AP MLD عند استخدام وحدة Wi-Fi.
يتلقّى
ScanResult
من AP-MLD. يعرض WifiTracker
AOSP معلَمات MLO عندما
في وضع التسجيل المطوَّل.
تجمع وحدة Wi-Fi معلومات MLO من خلال القيام بما يلي:
- تحليل عنصر معلومات الروابط المتعددة (IE) المضمّن في جهاز المرشد أو التحقق من الاستجابة لقراءة عنوان AP MLD MAC ومعرّف الرابط الحالي.
- تحليل تقرير الجيران المصغر (RNR) IE المضمّن في المرشد أو المسبار لقراءة قائمة معلومات الروابط التابعة.
واجهات برمجة التطبيقات
للحصول على معلومات AP MLO التي يتم فحصها، يمكن للتطبيقات استخدام واجهات برمجة التطبيقات التالية:
ScanResult#BSSID
: عنوان MAC لمثيل AP (للرابط الذي تظهر عليه نتيجة الفحص تم الاستلام)MacAddress ScanResult#getApMldMacAddress()
: تعرض عنوان MLD MAC لنقطة الوصول (AP).int ScanResult#getApMloLinkId()
: يعرض رقم تعريف الرابط للرابط الذي تم استلام نتيجة ScanResult عليه.List<MloLink> ScanResult#getAffiliatedMloLinks()
: عرض قائمة من عناصرMloLink
لجميع الروابط المُعلَن عنها من خلال ملف AP-MLD، بما في ذلك الرابط الذي تم تلقّي نتيجة ScanResult عليه.
معلومات الاتصال عبر Wi-Fi 7 AP MLO
عند اتصال جهاز بشبكة Wi-Fi 7 AP-MLD، يجمع إطار العمل
معلَمات MLO للاتصال من الكائن WifiInfo
. بروتوكول AOSP
يعرض الكائن WifiTracker
هذه المعلومات عند التشغيل في وضع التشغيل المطوَّل.
عندما يتصل الجهاز بـ AP-MLD، تنسخ وحدة Wi-Fi دالة MLO
معلومات من عنصر ScanResult
تم تلقّيها من AP. الوحدة بعد ذلك
تستدعي واجهة برمجة تطبيقات HAL ISupplicantStaIface#getConnectionMloLinksInfo()
.
قراءة عناوين MAC لكل رابط لكل من AP وSTA، وتحديث
حالة الروابط المرتبطة.
واجهات برمجة التطبيقات
للحصول على معلومات اتصال MLO، يمكن للتطبيقات استخدام واجهات برمجة التطبيقات التالية:
WifiInfo#getBSSID()
: عرض عنوان MAC لمثيل AP (للرابط الذي يوجد عليه الجهاز مرتبط).MacAddress WifiInfo#getApMldMacAddress()
: تعرض عنوان MLD MAC لنقطة الوصول (AP).int WifiInfo#getApMloLinkId()
: عرض رقم تعريف الرابط للرابط الذي ارتبطت عليه STA نقطة الوصولList<MloLink> WifiInfo#getAffiliatedMloLinks()
: عرض قائمة من عناصرMloLink
لجميع الروابط المُعلَن عنها من خلال AP-MLD، بما في ذلك الرابط ذي الصلة يمكن لعنواني AP وSTA MAC على كل كائنMloLink
.
فحص AP-MLD
يوفر برنامج البائع إطار عمل Wi-Fi مع نتائج البحث عن كل مرشد أو استجابة استقصائية تتلقاها. وهذا يعني أن اتصال Wi-Fi إطار العمل:
- قد تتلقّى كائنات
ScanResults
متعددة من AP-MLD نفسها (لأنّه يمكن أن تحتوي نقطة الوصول على روابط إشارات متعددة). - قد تتلقّى مجموعة جزئية فقط من نتائج الفحص لروابط AP الخاصة بمعيار AP-MLD لأن بعض إشارات الروابط هذه قد لا يتم تلقيها بواسطة البرامج الثابتة.
لا تفحص تقارير برنامج المورد سوى النتائج التي يتم استلامها عبر شبكة غير سلكيّة، ويجب أن عدم إنشاء نتائج فحص (تجميع مصطنع) استنادًا إلى الروابط المُعلَن عنها من خلال وAP-MLD.
يجب أن يشتمل برنامج المورّد على الصيغة الأساسية المتعددة الروابط وRNR IE. الواردة من حالات AP في نتائج الفحص التي تم الإبلاغ عنها. إذا كانت AP تابعة التفاصيل مفقودة في نتائج الفحص، فيمكن لبرنامج المورد إرسال روابط متعددة طلبات التحقيق (إطار طلب التحقيق الذي يتضمّن روابط متعددة لطلب التحقيق ) لتضمين المجموعة الكاملة أو الجزئية للقدرات والمعلمات عناصر تشغيل AP مع AP-MLD المستهدف في وإطار الاستجابة.
برنامج البائع يمكن أن يؤدي إلى تشغيل استقصاء تعلُّم الآلة (باستخدام صيغة طلب البحث ML IE في إطار طلب الفحص) إذا لزم الأمر.
ربط شبكة AP-MLD
عندما ينضم جهاز إلى شبكة AP-MLD، يستخدم برنامج المورّد نقطة الوصول المحددة (رابط مقترن) للإشارة. يمكن لبرنامج البائع المقترنة بجميع الروابط التي يتيحها الجهاز أو بعضها.
عند إجراء الربط بنجاح، يُعلمك السائق
ISupplicantStaIfaceCallback#onStateChanged()
باستخدام معرّف مجموعة الخدمات الأساسية (BSSID) لرابط لـ
وAP-MLD. يختار السائق بعد ذلك رابط AP-MLD بشرط أن
نتائج الفحص ضمن إطار العمل الخاص بذلك الرابط.
نتائج الشبكة
بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو الإصدارات الأحدث، اختيار شبكة Wi-Fi لنظام التشغيل Android يتوافق مع Wi-Fi 7 MLO. يعني ذلك أنّ Android يختار أفضل شبكة Wi-Fi للجهاز استنادًا إلى عدد الروابط المتاحة لـ MLO.
لإتاحة تعدين الحسابات المتعددة (MLO)، تستخدم خوارزمية اختيار الشبكة العمليات التالية المتعدّدة (MLO) الإمكانات من شريحة Wi-Fi:
- الحد الأقصى لعدد روابط STR
- الحدّ الأقصى لعدد روابط الربط
- مجموعات نطاقات متزامنة
الشكل 2. اختيار شبكة MLO
الحد الأقصى لعدد روابط STR
الإرسال والاستلام المتزامنان (STR) هو مخطط تعارُض متوسط لشبكات Wi-Fi عملية روابط متعددة. يكفي فصل الإشارة بين الروابط المختلفة. بحيث تعمل الروابط بشكل مستقل وتكون قادرة على نقل البيانات وتلقيها في وقت واحد في روابط مختلفة. تختلف STR عن الأغنية القديمة (SL) STA وSTA مزدوج النطاق قديم (DBDC). تابع لـ STA بوحدات STA MLD التي تشترك في رقم تسلسلي مشترك للإرسال (SN) هي مساحة لنقل البيانات المخصّصة لروابط مختلفة إذا كانت هناك روابط متعددة ناقل الحركة يحتوي على نفس فئة الوصول (AC).
يمكن أن يختلف الحد الأقصى لعدد روابط STR المستخدمة عن الحد الأقصى لعدد لأجهزة الراديو المتوافقة مع الشريحة في المثال الوارد في الشكل 2، يكون الحد الأقصى لـ STR عدد الروابط هو 2.
تدعم واجهات AIDL HAL التالية الحد الأقصى لعدد روابط STR والحد الأقصى لإمكانيات عدد روابط الربط:
hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl
hardware/interfaces/wifi/aidl/android/hardware/wifi/WifiChipCapabilities.aidl
الحدّ الأقصى لعدد روابط الربط
ويمكن تشغيل روابط متعددة على جهاز راديو واحد باستخدام نظام التكافؤ، راديو فردي متعدد الروابط (eMLSR) محسَّن يستخدم الجهاز متعدد الروابط eMLSR عبر من الروابط إذا كان بإمكانه تلقي إطارات تحكم أساسية معينة وتنفيذ مهام واضحة تقييم القناة (CCA) في الوقت نفسه على مجموعة الروابط. ومع ذلك، يمكن لـ MLD ينقل أو يستقبل البيانات على ارتباط واحد فقط (الرابط الذي يتم اختياره ديناميكيًا في كل فترة فرصة إرسال (TXOP) في المرة الواحدة.
يمكن لمحطة MLD زيادة عدد روابط الاقتران لتحقيق نتائج أفضل وموثوقية وسرعة معالجة أفضل ووقت استجابة أقل (مقارنة برابط واحد الخدمة القديمة) من خلال العمل بالتزامن في STR وeMLSR إذا كانت متوافقة مع رقاقة. في الشكل 2، يكون الحد الأقصى لعدد روابط الربط هو 3.
تتيح واجهات AIDL HAL التالية الحد الأقصى لعدد روابط الربط الإمكانيات:
hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl
hardware/interfaces/wifi/aidl/android/hardware/wifi/WifiChipCapabilities.aidl
مجموعات نطاقات متزامنة
يطلب إطار العمل الشريحة للحصول على مجموعات الراديو المسموح بها (من خلال
واجهة AIDL لـ IWifiChip.aidl
) التي يمكنها العمل في الوقت نفسه. من هذا
يشتق إطار العمل مجموعات نطاقات متزامنة محتملة. تشير رسالة الأشكال البيانية
وفي ما يلي مثال على قائمة بمجموعات النطاقات المتزامنة (غيغاهرتز):
- 2.4
- 5
- 6
- 2.4 x 5
- 2.4 x 6
- 5 × 6
تتوافق واجهة AIDL HAL التالية مع المجموعات اللاسلكية المتزامنة:
hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl
اختيار الشبكة
أثناء اختيار الشبكة (MLO)، يتم تجميع القائمة المرشحة حسب الأعضاء الذين نفس عنوان MLD MAC. الحد الأقصى المتوقّع لنتيجة معالجة بيانات الروابط المتعددة هو لكل مجموعة، بناءً على الحد الأقصى لعدد روابط STR وعدد النطاقات التي تدعمها الشريحة. في حال كان المرشح قادرًا على استخدام روابط متعددة وتتوافق الشريحة مع STR، يتم استبدال درجة معالجة البيانات المتوقعة نتيجة البيانات المستندة إلى روابط متعددة. هذا يعزز مرشّحي MLO أثناء اختيار الشبكة.
عند الانضمام إلى شبكة AP-MLD، ينفِّذ إطار العمل اختيار SSID استنادًا إلى
على المعلومات المُستلَمة في العنصر ScanResults
كما أبلغ عنه المورّد
البرامج. عند تحديد SSID وفقًا لإطار العمل، يصبح برنامج البائع
مسؤول عن اختيار معرّف مجموعة الخدمات الأساسية (BSSID) لأفضل نقطة وصول (AP) لاستخدامها من أجل
المرتبطة بها.
معالجة عنوان STA MAC للجهاز
يصف هذا القسم كيفية استخدام عناوين STA MAC للجهاز (عناوين MLD MAC. وعناوين STA MAC لكل رابط).
عنوان MLD MAC
يدير إطار عمل Wi-Fi عنوان MLD MAC للجهاز. عنوان MAC لـ MLD
يتم التعامل مع عنوان MAC بالطريقة نفسها التي يتعامل بها الجهاز غير المزوّد بخدمة MLD مع عنوان MAC الخاص به.
يمكن أن يكون عنوان MAC عنوان MAC عشوائيًا أو عنوان MAC يتم توفيره من الأجهزة
بناءً على اختيار المستخدم. يتم ضبط عنوان MLD MAC من خلال إطار العمل.
باستخدام واجهة برمجة تطبيقات HAL IWifiStaIface#setMacAddress()
.
عنوان STA MAC لكل رابط
يدير برنامج المورد عناوين STA MAC الافتراضية (لكل رابط). عندما يربط بين الجهاز ونقطة الوصول (AP)، يعيّن برنامج البائع عنوان MAC لمثيل لكل رابط مرتبط.
يعين برنامج المورد عناوين MAC لكل رابط بناءً على الخوارزمية. تشير رسالة الأشكال البيانية يجب أن تكون الخوارزمية قابلة للتكرار وأن تعمل على النحو التالي:
- عنوان MAC لـ STA-MLD تم ضبطه من خلال إطار عمل Wi-Fi.
- رقم تعريف الرابط (المستلم من AP)
وهذا يعني أنّه إذا أعاد إطار العمل استخدام عنوان MAC نفسه لمعيار MLD، إعادة استخدام عناوين MAC نفسها المرتبطة بها والعكس صحيح. هذا النمط أنه عندما يتم إنشاء عنوان STA-MLD في إطار العمل، فإنه يستمر SSID، فإن عناوين MAC لكل STA تظل أيضًا ثابتة.
في ما يلي مثال على خوارزمية لتخصيص عنوان STA MAC لكل رابط. (يمكن للمورّدين تطبيق أي خوارزمية تستوفي معايير الخوارزمية):
- الثماني 0: التأكد من تعيين وحدة البت المُدارة محليًا
- ثمانية - 4: مثل عنوان STA-MLD MAC
- الثمانيات 5: لكل-STA = (STA-MLD + معرف الرابط + 1) MOD (256)
معالجة الروابط المتعددة
يمكن للبرامج الثابتة للمورد تبديل الروابط وإدارة حالة توفير الطاقة الروابط الخاصة بالتفعيل أو الإيقاف بدون الدخول من شبكة Wi-Fi إطار العمل.
لا يتوقع إطار عمل Wi-Fi إشعارًا عندما تكون حالة الرابط بتغييره.
إدارة حالة توفير الطاقة
تكون حالة توفير الطاقة مفعَّلة تلقائيًا في إطار عمل شبكة Wi-Fi. في جلسة المعمل، حالة توفير الطاقة، فإن البرامج الثابتة للمورد تدير توفير الطاقة حالة الروابط الفردية بناءً على أنماط حركة البيانات وتفعيل الروابط أو قرارات الإيقاف.
ومع ذلك، يمكن أن يفرض إطار عمل Wi-Fi إيقاف حالة توفير الطاقة عن طريق
عن طريق استدعاء واجهة برمجة تطبيقات HAL ISupplicantStaIface::setPowerSave(false)
. إذا كانت
يتم إيقاف حالة توفير الطاقة بواسطة إطار العمل، فيجب على البرامج الثابتة للمورد الاحتفاظ بها
رابط واحد نشط على الأقل (تم إيقاف وضع توفير الطاقة). في هذه الحالة، لا يمكن إصلاح
عملية التنفيذ إلى تحديد الرابط الذي يتم إعداده.
مسار البيانات
يصف هذا تنفيذ البرامج الثابتة الخاصة بالمورد للتعامل مع الارتباط الأعلى عدد الزيارات التي يتم تنزيلها
عدد زيارات الرابط الأعلى
توجه البرامج الثابتة حركة بيانات الإرسال إلى رابط واحد (أو أكثر) استنادًا إلى التنفيذ. تقرر البرامج الثابتة للمورد وقت إجراء موازنة التحميل، أو تكرار أو تجميع حركة المرور بناءً على أنماط حركة المرور. ننصحك بما يلي: تكرار عدد الزيارات إلى البرامج الثابتة لروابط متعددة في الحالات التالية:
- عند ضبط وقت الاستجابة السريع من خلال
IWifiChip#setLatencyMode()
واجهة برمجة تطبيقات HAL. - عندما تكون هناك حركة مرور ذات أولوية المستخدم 6 و7.
عدد زيارات الرابط للأسفل
يجب أن تحل البرامج الثابتة محل عنوان MAC (الوجهة) لكل STA. مع عنوان MLD-STA MAC و (المصدر) لكل AP MAC عنوان MAC باستخدام عنوان MLD-AP MAC. يجب أن تعمل البرامج الثابتة بديل عنوان MAC هذا قبل المرور بفلتر APF نظرًا لأن تحتوي أوامر فلاتر APF على فلاتر تستند إلى عناوين MLD MAC. توجد واحدة فلتر APF لجميع روابط AP-MLD
التزامن
في سيناريوهات التزامن، التي يتم فيها استخدام الراديو لواجهة جديدة، يجب أن يكون لها الأولوية أكثر من تخصيص عدة أجهزة لاسلكية لروابط الواجهة نفسها. يجب أيضًا أن تحظى سيناريوهات التزامن بالأولوية على MLO بغض النظر عن الحالات التي تأتي أولاً. يعد استخدام روابط متعددة لواجهة واحدة فرصة، مما يعني من عدم استخدام روابط متعددة إلا في الحالات التالية:
- مطلوب العديد من الحسابات المتعددة المهام بناءً على قرار البرامج الثابتة لموازنة التحميل، أو التجميع أو التكرار.
- يتوفّر العديد من الحسابات المتعددة (MLO)، ما يعني أنّ الاتصال اللاسلكي غير مطلوب لواجهة أخرى.
ربط مقياس TID بالربط
بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو الإصدارات الأحدث، عند تُعلن AP من شبكة Wi-Fi 7 عن الإيقاف المؤقت لأحد الروابط من خلال عنصر تعيين TID-to-link الذي يتم إرساله في المرشد واستجابة التحقيق لإطارات استجابة الارتباط، فإن محطة Wi-Fi 7 تستمر في الاتصال نقطة الوصول باستخدام الروابط المتبقية التي تم إعدادها، بدون إجراء عملية أخرى المرتبطة بها.
بالنسبة إلى الأجهزة التي تعمل بنظام التشغيل Android 13 أو الإصدارات الأقدم، يمكن استخدام شبكة Wi-Fi لا يتيح إطار العمل تلقّي الإشعارات عندما تكون حالة الرابط بسبب تعيين TID إلى رابط، حتى إذا لم يكن الرابط المرتبط مرتبطًا وTID.
قناة AIDL HAL
يرسل مشغّل شبكة Wi-Fi إشعارًا إلى إطار عمل Wi-Fi الخاص بربط "تقنية TID" بالربط. التغييرات من خلال واجهات AIDL التالية:
hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant/ISupplicantStaIfaceCallback.aidl
hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant/ISupplicantStaIface.aidl
hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant/MloLinksInfo.aidl
واجهات برمجة التطبيقات
يمكن للتطبيقات الحصول على معلومات عن تغييرات ربط TID-to-link باستخدام واجهات برمجة التطبيقات التالية:
ConnectivityManager.NetworkCallback.onCapabilitiesChanged()
: يتم تشغيل استدعاء الشبكة بواسطة إطار العمل عند وجود معرّف TID للربط تغيير في التعيين.WifiInfo#getAssociatedMloLinks()
: تعرض روابط MLO المرتبطة.MloLink#getState()
: يعرض حالة الرابط،MLO_LINK_STATE_ACTIVE
أوMLO_LINK_STATE_IDLE
إمكانات التفاوض على ربط ربط TID وربط
بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو الإصدارات الأحدث، يجب مراعاة ما يلي: تتوفر واجهات برمجة التطبيقات للحصول على إمكانات التفاوض على خريطة TID للربط المحطة وAP.
إمكانات الشريحة
تتيح الواجهات التالية إمكانية الشريحة لربط معرّف TID بالربط. والتفاوض.
بروتوكول AIDL HAL
واجهة AIDL للتفاوض على ربط TID للربط متوفرة في FeatureSetMask
في hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl
. تشير رسالة الأشكال البيانية
T2LM_NEGOTIATION = 1 << 8
تشير إلى أنّ الشريحة متوافقة
ربط مقياس TID بالربط
واجهات برمجة التطبيقات
WifiManager.isTidToLinkMappingNegotiationSupported()
: تعرض الشريحة التي تتوافق مع تفاوض ربط TID-link.
إمكانية وصول نقطة الوصول
تتيح الواجهات التالية إمكانية استخدام نقطة الوصول (AP) لتعيين معرّف TID للربط. والتفاوض.
بروتوكول AIDL HAL
يستفسر إطار العمل عن إمكانية نقطة الوصول من مقدم الطلب إلى جانب إمكانية الاتصال الحالية.
apTidToLinkMapNegotiationSupported
: تتحقّق مما إذا كانت نقطة الوصول تدعم إمكانية التفاوض على خريطة "TID" للربط.
واجهات برمجة التطبيقات
WifiInfo.isApTidToLinkMappingNegotiationSupported()
: تعرِض ما إذا كانت AP تتوافق مع تفاوض ربط TID للربط.
إحصاءات طبقة الرابط
تتضمن إحصاءات طبقة الرابط تفاصيل خاصة برابط Wi-Fi، مثل RSSI والعديد من سمات TX. وعدادات حزم RX وإحصائيات الراديو. يُجري إطار عمل شبكة Wi-Fi استطلاعًا دوريًا. إحصائيات طبقة الروابط وRSSI لاختيار أفضل شبكة أو تقييم جودة الشبكة المتصلة. للأجهزة التي تعمل بنظام التشغيل Android 14 أو أعلى، تتضمن إحصاءات طبقة الرابط دعم الروابط المتعددة. للتوافق مع Wi-Fi 7، يدعم Android MLO في كلتا طبقتي الروابط والإحصاءات واستطلاع الإشارات.
يمكن العثور على إحصاءات خاصة بالروابط في واجهات AIDL لطبقة الروابط التالية:
hardware/interfaces/wifi/aidl/android/hardware/wifi/StaLinkLayerIfaceStats.aidl
hardware/interfaces/wifi/aidl/android/hardware/wifi/StaLinkLayerLinkStats.aidl
تشير رسالة الأشكال البيانية
android.net.wifi.WifiManager#addOnWifiUsabilityStatsListener()
تصغي واجهة برمجة تطبيقات النظام إلى جميع إحصاءات طبقة الروابط. يستدعي إطار العمل بشكل دوري
واجهة برمجة التطبيقات هذه لتعديل إحصاءات قابلية استخدام Wi-Fi.
تتوفر واجهات برمجة التطبيقات التالية الخاصة بالروابط في
android.net.wifi.WifiUsabilityStatsEntry
int getRssi(int linkId)
int getLinkState(int linkId)
int getRadioId(int linkId)
int getTxLinkSpeedMbps(int linkId)
long getTotalTxSuccess(int linkId)
long getTotalTxRetries(int linkId)
long getTotalTxBad(int linkId)
long getTotalRxSuccess(int linkId)
long getTotalBeaconRx(int linkId)
int getRxLinkSpeedMbps(int linkId)
int getTimeSliceDutyCycleInPercent(int linkId)
ContentionTimeStats getContentionTimeStats(int linkId, @WmeAccessCategory int ac)
List<RateStats> getRateStats(int linkId)
للاستعلام عن أرقام تعريف الروابط المتاحة، يمكن للتطبيقات استدعاء دالة الرسم
android.net.wifi.WifiUsabilityStatsEntry#getLinkIds()
.
واجهات برمجة التطبيقات في
android.net.wifi.WifiUsabilityStatsEntry
لرابط واحد (وليس MLO) عرض الإحصاءات المجمّعة لاتصالات MLO، تشير رسالة الأشكال البيانية
فيما يلي معايير التجميع:
تستخدم إحصاءات الحزم المجمّعة التالية مجموع الإحصاءات لكل رابط:
public long getTotalTxSuccess() public long getTotalTxRetries() public long getTotalTxBad() public long getTotalRxSuccess() public int getRxLinkSpeedMbps()
تستخدم الإحصاءات التالية البيانات من الرابط الذي يتضمّن أعلى RSSI:
public int getRssi() public int getLinkSpeedMbps() public long getTotalBeaconRx() public int getTimeSliceDutyCycleInPercent() public ContentionTimeStats getContentionTimeStats(@WmeAccessCategory int ac) public List<RateStats> getRateStats()
إحصاءات طبقة الروابط في Android 13
إحصاءات طبقة الروابط على الأجهزة التي تعمل بنظام التشغيل Android 13
لا تأخذ في الاعتبار
استخدام روابط متعددة لواجهة واحدة. لدعم MLO، وبرامج البائعين
يجب تطبيق منطق التجميع التالي عند الإبلاغ عن LinkLayerStats
من خلال واجهة برمجة تطبيقات HAL IWifi# getLinkLayerStats_1_6()
. الرابط الأفضل هو
ذات أعلى معيار RSSI.
StaLinkLayerStats.iface.beaconRx
: الإبلاغ عن عدد المؤشّرات للحصول على أفضل النتائج الرابط المُستخدم للواجهة.StaLinkLayerStats.iface.avgRssiMgmt
: الإبلاغ عنavgRssiMgmt
عن أفضل رابط مستخدم للواجهة.StaLinkLayerStats.iface.wmeXxPktStats
(Xx = Vo, Vi, Be,Bk): تقرير إحصاءات حزم البيانات المجمّعة (الإجمالي) عبر روابط الواجهة.StaLinkLayerStats.iface.wmeXxContentionTimeStats
(Xx = Vo, Vi، Be,Bk): الإبلاغ عن إحصاءات وقت المنافسة لأفضل رابط تم استخدامه في واجهة (أقل إحصاءات وقت التنافس).
إعادة ضبط رابط MLO
عندما تتم إعادة استخدام أحد روابط نقطة وصول Wi-Fi 7، فإن AP الإعلان عن إزالة الرابط من خلال إعادة تكوين رابط MLO. المحطات المحافظة على اتصال سلس مع AP بدون الارتباط مرة أخرى الروابط المتبقية
تشير رسالة الأشكال البيانية
onMloLinksInfoChanged
واجهة AIDL، موجودة في خدمة Wi-Fi على
ISupplicantStaIfaceCallback.aidl
،
يدعم إعادة تكوين الرابط (إزالة الرابط باستخدام ملف AP).
عندما يعالج إطار عمل Wi-Fi إزالة رابط، يتم ضبط حالة الرابط.
إلى
MLO_LINK_STATE_UNASSOCIATED
بعد ذلك، يشغّل إطار العمل
ConnectivityManager.NetworkCallback#onCapabilitiesChanged()
لتغيير حالة الرابط.
تشير رسالة الأشكال البيانية
WifiInfo#getAffiliatedMloLinks
روابط MLO التابعة. تشير رسالة الأشكال البيانية
MloLink#getState
تُرجع حالة الرابط. وفي حال إزالة الرابط، سيتم عرض
الولاية هي
MLO_LINK_STATE_UNASSOCIATED
استراتيجية التوافق مع الحسابات المتعددة العملاء (MLO)
تسمح ميزة MLO للأجهزة بإرسال البيانات واستلامها على روابط Wi-Fi متعددة في نفس الوقت الوقت، ما قد يحسّن أداء التطبيقات التي لها متطلبات محدّدة مثل وقت الاستجابة البطيء، والنطاق الترددي العالي، والطاقة المنخفضة. يمكن لمورّدي الشرائح تطوير الخوارزميات حول كيفية استخدام الروابط المتاحة.
ويمكن للتطبيقات المميزة تعديل هذه الخوارزميات باستخدام
setMloMode
في Wifimanager
وتعيين
الأوضاع التالية:
MLO_MODE_DEFAULT = 0
MLO_MODE_LOW_LATENCY = 1
MLO_MODE_HIGH_THROUGHPUT = 2
MLO_MODE_LOW_POWER = 3
يستخدم إطار العمل
setMloMode
في واجهة AIDL الخاصة بـ IWifiChip
لضبط وضع MLO.