Android, Android फ़्रेमवर्क को डिफ़ॉल्ट रूप से लागू करता है. इसमें कई वाई-फ़ाई प्रोटोकॉल और मोड के लिए सहायता शामिल है. जैसे:
- वाई-फ़ाई इन्फ़्रास्ट्रक्चर (एसटीए)
- टेदर किए गए या सिर्फ़ सीमित दायरे में इस्तेमाल होने वाले मोड में वाई-फ़ाई हॉटस्पॉट (सॉफ़्ट एपी)
- Wi-Fi Direct (p2p)
- Wi-Fi Aware (NAN)
- वाई-फ़ाई आरटीटी (आईईईई 802.11mc एफ़टीएम)
वाई-फ़ाई सेवाओं का इस्तेमाल करने वाला ऐप्लिकेशन, Binder के ज़रिए अलग-अलग वाई-फ़ाई सेवाओं से सीधे तौर पर कम्यूनिकेट करता है. वाई-फ़ाई सेवाएं, सिस्टम सर्विस में चलती हैं. साथ ही, उपलब्ध कराए गए एचआईडीएल और एआईडीएल इंटरफ़ेस के ज़रिए एचएएल से कम्यूनिकेट करती हैं. इस डायग्राम में, Android के वाई-फ़ाई स्टैक का सामान्य स्ट्रक्चर दिखाया गया है.
पहली इमेज. Android के वाई-फ़ाई का आर्किटेक्चर
ऐप्लिकेशन फ़्रेमवर्क
ऐप्लिकेशन फ़्रेमवर्क लेवल पर ऐप्लिकेशन कोड होता है. यह अलग-अलग android.net.wifi
एपीआई का इस्तेमाल करके, वाई-फ़ाई फ़्रेमवर्क और हार्डवेयर के साथ इंटरैक्ट करता है. इंटरनली, यह कोड Binder IPC मेकेनिज़्म के ज़रिए Wi-Fi प्रोसेस को कॉल करता है.
वाई-फ़ाई सेवाएं
वाई-फ़ाई सेवाएं, सिस्टम सर्विस में चलती हैं. ये packages/modules/Wifi/service/
में मौजूद होती हैं. वाई-फ़ाई सेवा, एआईडीएल के ज़रिए वाई-फ़ाई एचएएल से कम्यूनिकेट करती है.
वाई-फ़ाई की कई तरह की सेवाएं उपलब्ध हैं:
- वाई-फ़ाई सेवा: यह वाई-फ़ाई इन्फ़्रास्ट्रक्चर मोड (एसटीए और एपी, दोनों) को कंट्रोल करने का मुख्य तरीका है.
- Wi-Fi P2P सेवा: यह Wi-Fi Direct मोड को मैनेज करती है.
- Wi-Fi Aware सेवा: यह Wi-Fi Aware मोड को मैनेज करती है.
- वाई-फ़ाई आरटीटी सेवा: यह IEEE 802.11mc FTM फ़ंक्शन को मैनेज करती है.
वाई-फ़ाई फ़्रेमवर्क में एक स्टैंड-अलोन प्रोसेस भी शामिल होती है, जिसे wificond कहा जाता है. यह system/connectivity/wificond
पर मौजूद होती है. wificond प्रोसेस, स्टैंडर्ड nl80211
कमांड के ज़रिए वाई-फ़ाई ड्राइवर से कम्यूनिकेट करती है.
वाई-फ़ाई एचएएल
वाई-फ़ाई फ़्रेमवर्क में तीन वाई-फ़ाई एचएएल लेयर होती हैं. इन्हें तीन अलग-अलग इंटरफ़ेस से दिखाया जाता है: वेंडर एचएएल, सप्लीकेंट एचएएल, और Hostapd एचएएल.
अलग-अलग एचएएल को लागू करने के बारे में जानकारी के लिए, Wi-Fi HAL देखें.