نظرة عامة

يوفر نظام التشغيل Android عملية تنفيذ تلقائية لإطار عمل Android تتضمّن إمكانية استخدام بروتوكولات وأوضاع Wi-Fi مختلفة، بما في ذلك:

  • البنية الأساسية لشبكة Wi-Fi (محطة)
  • نقطة اتصال Wi-Fi (نقطة وصول برمجية) في وضعَي التوصيل أو الأجهزة المحلية فقط
  • اتصال Wi-Fi مباشر (نظام الند للند)
  • Wi-Fi Aware (NAN)
  • Wi-Fi RTT (IEEE 802.11mc FTM)

يتواصل التطبيق الذي يستخدم خدمات Wi-Fi مباشرةً مع خدمات Wi-Fi المختلفة من خلال Binder. يتم تشغيل خدمات Wi-Fi في "خدمة النظام" وتتواصل مع طبقة HAL عبر واجهات HIDL وAIDL المتوفّرة. يوضّح هذا المخطّط البياني البنية العامة لحزمة Wi-Fi في Android.

بنية شبكة Wi-Fi

الشكل 1: هندسة شبكة Wi-Fi في Android

إطار عمل التطبيق

على مستوى إطار عمل التطبيق، يوجد الرمز البرمجي للتطبيق الذي يستخدم واجهات برمجة التطبيقات المختلفة android.net.wifi للتفاعل مع إطار عمل Wi-Fi والأجهزة. داخليًا، يستدعي هذا الرمز عملية Wi-Fi من خلال آلية Binder IPC.

خدمات Wi-Fi

يتم تشغيل خدمات Wi-Fi في "خدمة النظام"، وهي متوفّرة في packages/modules/Wifi/service/. تتواصل خدمة Wi-Fi مع طبقة تجريد الأجهزة (HAL) الخاصة بشبكة Wi-Fi عبر AIDL.

تتوفّر خدمات Wi-Fi مختلفة:

  • خدمة Wi-Fi: الآلية الأساسية للتحكّم في أوضاع البنية التحتية لشبكة Wi-Fi (كل من STA وAP).
  • خدمة Wi-Fi P2P: تدير وضع اتصال Wi-Fi مباشر.
  • خدمة Wi-Fi Aware: تدير وضع Wi-Fi Aware.
  • خدمة Wi-Fi RTT: تدير وظيفة FTM وفقًا لمعيار IEEE 802.11mc.

يتضمّن إطار عمل Wi-Fi أيضًا عملية مستقلة، wificond، تقع في system/connectivity/wificond. تتواصل عملية wificond مع برنامج تشغيل Wi-Fi من خلال أوامر nl80211 العادية.

طبقات تجريد الأجهزة (HAL) لشبكة Wi-Fi

يحتوي إطار عمل Wi-Fi على ثلاث مساحات عرض لواجهة HAL الخاصة بشبكة Wi-Fi، ويتم تمثيلها بثلاث واجهات مختلفة، وهي: Vendor HAL وSupplicant HAL وHostapd HAL.

للحصول على تفاصيل حول عمليات تنفيذ مختلف طبقات تجريد الأجهزة (HAL)، راجِع طبقة تجريد الأجهزة (HAL) لشبكة Wi-Fi.