Android, aşağıdakiler dahil olmak üzere çeşitli kablosuz ağ protokolleri ve modları için destek içeren varsayılan bir Android çerçevesi uygulaması sağlar:
- Kablosuz 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 bağlantı hizmetlerini kullanan bir uygulama, Binder aracılığıyla çeşitli kablosuz bağlantı hizmetleriyle doğrudan iletişim kurar. Kablosuz ağ hizmetleri, Sistem Hizmeti'nde çalışır ve sağlanan HIDL ve AIDL arayüzleri üzerinden HAL ile iletişim kurar. Bu şemada, Android kablosuz yığınının genel yapısı gösterilmektedir.
Şekil 1. Android kablosuz ağ mimarisi
Uygulama çerçevesi
Uygulama çerçevesi düzeyinde, Wi-Fi ç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 kablosuz ağ sürecini çağırır.
Kablosuz hizmetler
Kablosuz ağ hizmetleri Sistem Hizmeti'nde çalışır ve packages/modules/Wifi/service/
bölgesinde bulunur. Kablosuz ağ hizmeti, AIDL üzerinden kablosuz ağ HAL ile iletişim kurar.
Çeşitli Wi-Fi hizmetleri vardır:
- Kablosuz Ağ Hizmeti: Kablosuz altyapı modlarını (STA ve AP) kontrol eden birincil mekanizma.
- Kablosuz P2P Hizmeti: Kablosuz Direkt modunu yönetir.
- Wi-Fi Aware Service: Wi-Fi Aware modunu yönetir.
- Wi-Fi RTT Hizmeti: IEEE 802.11mc FTM işlevini yönetir.
Kablosuz ağ çerçevesi, system/connectivity/wificond
adresinde bulunan wificond adlı bağımsız bir işlem de içerir. wificond işlemi, standart nl80211
komutları üzerinden kablosuz sürücüyle iletişim kurar.
Kablosuz HAL'ler
Kablosuz ağ çerçevesi, üç farklı arayüzle temsil edilen üç kablosuz ağ HAL yüzeyine sahiptir: Tedarikçi HAL, İstemci HAL ve Hostapd HAL.
Çeşitli HAL'lerin uygulamaları hakkında ayrıntılı bilgi için Kablosuz HAL başlıklı makaleyi inceleyin.