Genel bakış

Android, aşağıdakiler de dahil olmak üzere çeşitli Wi-Fi protokolleri ve modları için destek içeren varsayılan bir Android çerçevesi uygulaması sağlar:

  • Wi-Fi altyapısı (STA)
  • Tethering veya yalnızca yerel modlarda kablosuz hotspot (Soft AP)
  • Wi-Fi Direct (p2p)
  • Wi-Fi Aware (NAN)
  • Kablosuz RTT (IEEE 802.11mc FTM)

Kablosuz hizmetlerini kullanan bir uygulama, Binder aracılığıyla çeşitli kablosuz hizmetleriyle doğrudan iletişim kurar. Kablosuz hizmetler, Sistem Hizmeti'nde çalışır ve sağlanan HIDL ve AIDL arayüzleri üzerinden HAL ile iletişim kurar. Bu şemada, Android Wi-Fi yığınının genel yapısı gösterilmektedir.

Kablosuz ağ mimarisi

Şekil 1. Android Wi-Fi mimarisi

Uygulama çerçevesi

Uygulama çerçevesi düzeyinde, kablosuz çerçevesi ve donanımıyla etkileşim kurmak için çeşitli android.net.wifi API'lerini kullanan uygulama kodu bulunur. Bu kod, dahili olarak Binder IPC mekanizması aracılığıyla Wi-Fi sürecini çağırır.

Kablosuz hizmetler

Kablosuz hizmetler, Sistem Hizmeti'nde çalışır ve packages/modules/Wifi/service/ konumundadır. Kablosuz hizmeti, AIDL üzerinden Kablosuz HAL ile iletişim kurar.

Çeşitli kablosuz bağlantı hizmetleri vardır:

  • Kablosuz Hizmeti: Kablosuz altyapı modlarını (hem STA hem de AP) kontrol etmek için kullanılan birincil mekanizma.
  • Kablosuz P2P Hizmeti: Kablosuz Doğrudan Bağlantı modunu yönetir.
  • Wi-Fi Aware Hizmeti: Wi-Fi Aware modunu yönetir.
  • Kablosuz RTT Hizmeti: IEEE 802.11mc FTM işlevini yönetir.

Kablosuz ağ çerçevesi, system/connectivity/wificond konumunda bulunan bağımsız bir işlem olan wificond'u da içerir. wificond işlemi, standart nl80211 komutları üzerinden kablosuz sürücüyle iletişim kurar.

Kablosuz HAL'leri

Kablosuz çerçevesinde üç farklı arayüzle temsil edilen üç Kablosuz HAL yüzeyi bulunur: Vendor HAL, Supplicant HAL ve Hostapd HAL.

Çeşitli HAL'lerin uygulanmasıyla ilgili ayrıntılar için Wi-Fi HAL başlıklı makaleye bakın.