वाई-फ़ाई

इस पेज पर, Cuttlefish डिवाइस पर वाई-फ़ाई को कंट्रोल करने का तरीका बताया गया है.

Wmediumd का इस्तेमाल करना

Cuttlefish वाई-फ़ाई की सुविधा, वायरलेस मीडियम को सिम्युलेट करने के लिए, सिम्युलेशन टूल Wmediumd का इस्तेमाल करती है. Wmediumd, दो Cuttlefish इंस्टेंस या Cuttlefish इंस्टेंस और OpenWRT इंस्टेंस के बीच वाई-फ़ाई पैकेट की डिलीवरी को मैनेज करता है. कटलफ़िश के लिए Wmedium को /platform/external/wmediumd/ में लागू किया गया है.

Wmediumd इंटरफ़ेस को कंट्रोल करने के लिए, WmediumdService (Android 14 या इसके बाद के वर्शन) या wmedium_control (Android 13 या इससे पहले के वर्शन) टूल का इस्तेमाल करें.

WmediumdService

Android 14 या इसके बाद के वर्शन वाले डिवाइसों पर, Wmedium टूल को कंट्रोल करने के लिए WmediumdService का इस्तेमाल करें. REST API या कमांड-लाइन इंटरफ़ेस (सीएलआई) का इस्तेमाल करके, इस सेवा को कंट्रोल करने के तरीके के बारे में जानने के लिए, Cuttlefish: Environment Control देखें.

यहां दी गई टेबल में, WmediumdService में मौजूद तरीके दिए गए हैं. इन तरीकों के बारे में ज़्यादा जानकारी के लिए, wmediumd.proto देखें.

माटिंग में इस्तेमाल हुए तरीके ब्यौरा
ListStations Wmediumd से जुड़े सभी स्टेशनों की सूची.
LoadConfig किसी फ़ाइल की मदद से Wmediumd कॉन्फ़िगरेशन लोड करें.
ReloadConfig फ़िलहाल लोड की गई Wmediumd कॉन्फ़िगरेशन फ़ाइल को फिर से लोड करें.
SetCivicloc किसी स्टेशन की आधिकारिक जगह की जानकारी (उदाहरण के लिए, डाक पता) सेट करें.
SetLci किसी स्टेशन का एलसीआई (अक्षांश, देशांतर, ऊंचाई) सेट करें.
SetPosition दो डाइमेंशन वाले स्पेस में स्टेशन की पोज़िशन सेट करें.
SetSnr दो स्टेशनों के बीच, सिग्नल-टू-नॉइज़ रेशियो (एसएनआर) वैल्यू (0-255) सेट करें.
SetTxpower किसी स्टेशन के लिए ट्रांसमिशन पावर (TX पावर) सेट करें.
StartPcap एयर पर ट्रांसमिट किए गए सभी फ़्रेम कैप्चर करना शुरू करें और उन्हें .pcap फ़ाइल में सेव करें.
StopPcap मौजूदा पैकेट कैप्चर को रोकें और पूरा करें.

wmediumd_control

Android 13 या इससे पहले के वर्शन वाले डिवाइसों के लिए, Cuttlefish डिवाइसों में वॉयरलेस मीडियम को कंट्रोल करने के लिए, wmediumd_control टूल का इस्तेमाल करें. यहां दी गई टेबल में, wmediumd_control में मौजूद सब-कमांड की सूची दी गई है.

सब-कमांड ब्यौरा
list_stations Wmediumd से जुड़े सभी स्टेशनों की सूची बनाएं.
reload_config [CONFIG_FILE_PATH] CONFIG_FILE_PATH के साथ Wmediumd कॉन्फ़िगरेशन को फिर से लोड करें. अगर CONFIG_FILE_PATH को छोड़ा जाता है, तो फ़िलहाल लोड की गई कॉन्फ़िगरेशन फ़ाइल को फिर से लोड करें.
set_civicloc MAC_ADDR CIVICLOC किसी स्टेशन की जगह की जानकारी सेट करें. उदाहरण के लिए, डाक पता.
set_lci MAC_ADDR LCI किसी स्टेशन का एलसीआई (अक्षांश, देशांतर, और ऊंचाई) सेट करें.
set_position MAC_ADDR X_POSITION Y_POSITION स्टेशन की पोज़िशन को दो डाइमेंशन वाले स्पेस में सेट करें.
set_snr MAC_ADDR1 MAC_ADDR2 SNR_VALUE दो स्टेशनों के बीच सिग्नल-टू-नॉइज़ रेशियो (एसएनआर) की वैल्यू (0-255) सेट करें.
start_pcap PCAP_FILE_PATH स्ट्रीम किए जा रहे सभी फ़्रेम को कैप्चर करना शुरू करें और उन्हें .pcap फ़ाइल में सेव करें.
stop_pcap मौजूदा पैकेट कैप्चर को रोकें और उसे फ़ाइनल करें.

OpenWRT का इस्तेमाल करना

कटलफ़िश वाई-फ़ाई की सुविधा, वाई-फ़ाई ऐक्सेस पॉइंट (एपी) को वर्चुअलाइज़ करने के लिए OpenWRT का इस्तेमाल करने की सुविधा देती है. Cuttlefish के लिए, OpenWRT को लागू करने की प्रोसेस platform/external/openwrt-prebuilts/ पर है.

OpenWRT से कनेक्ट करने के लिए, नीचे दी गई टेबल में दी गई जानकारी का इस्तेमाल करें. अगर कटलफ़िश को लॉन्च करते समय कोई विकल्प नहीं जोड़ा जाता, तो डिवाइस का आईडी cvd-1 है और OpenWRT WAN आईपी पता 192.168.94.2 या 192.168.96.2 है.

कनेक्शन किस तरह का है डेस्टिनेशन
एसएसएच root@OPENWRT_WAN_IP_ADDRESS
वेबपेज https://localhost:1443/devices/DEVICE_ID/openwrt
वेबपेज (लेगसी) https://OPENWRT_WAN_IP_ADDRESS

OpenwrtControlService

Android 14 या इसके बाद के वर्शन पर चलने वाले डिवाइसों के लिए, वर्चुअलाइज़ किए गए वाई-फ़ाई एपी को कंट्रोल और कॉन्फ़िगर करने के लिए, OpenwrtControlService सेवा का इस्तेमाल करें. REST API या CLI का इस्तेमाल करके, इस सेवा को कंट्रोल करने के तरीके के बारे में जानने के लिए, Cuttlefish: Environment Control लेख पढ़ें.

यहां दी गई टेबल में, OpenwrtControlService में मौजूद तरीके दिए गए हैं. तरीकों के बारे में ज़्यादा जानकारी के लिए, openwrt_control.proto देखें.

माटिंग में इस्तेमाल हुए तरीके ब्यौरा
LuciRpc OpenWRT में Luci वेब इंटरफ़ेस को आरपीसी कॉल भेजें.
OpenwrtIpAddr OpenWRT का WAN आईपी पता पाएं. एसएसएच या वेब इंटरफ़ेस की मदद से, OpenWRT इंस्टेंस को कनेक्ट करने के लिए, इस पते का इस्तेमाल करें.