Pilihan jaringan Wi-Fi

Halaman ini menguraikan algoritma dan prosedur yang digunakan dalam Android 12 untuk memilih dan beralih antarjaringan Wi-Fi. Android terus mengevaluasi kualitas dari jaringan yang terhubung dan menilai kualitas jaringan yang tersedia.

Masa pakai koneksi otomatis

Ini menjelaskan proses cara perangkat Android menilai dan terhubung ke jaringan Wi-Fi yang tersedia.

  1. Perangkat memindai jaringan yang tersedia dengan salah satu cara berikut tergantung pada apakah layar aktif atau nonaktif.

    • Layar aktif (terhubung): Subsistem konektivitas Android secara teratur mengevaluasi apakah koneksi saat ini cukup baik untuk lewati pemindaian (seperti yang ditentukan dalam pemindaian layar aktif). Jika koneksi tidak cukup baik untuk melewatkan pemindaian, konektivitas subsistem yang memicu pemindaian untuk mendeteksi jaringan yang tersedia. Pemindaian ini juga dapat dipicu oleh komponen sistem lainnya seperti sistem lokasi atau aplikasi (termasuk aplikasi Setelan).
    • Layar aktif (terputus): Subsistem konektivitas Android mengeluarkan pemindaian berkala yang mengikuti jadwal backoff eksponensial. Tujuan mengevaluasi semua hasil pemindaian yang diterima dan mencoba memilih jaringan yang tepat.
    • Layar mati (terputus): CPU host memprogram firmware dengan daftar jaringan pilihan menggunakan Network Offload yang Disukai (PNO) memindai segera setelah layar mati. Firmware akan membangunkan host jika telah menemukan salah satu jaringan yang disukai. AOSP mengasumsikan bahwa PNO didukung di perangkat.

    Metode WifiManager#allowAutojoinGlobal(boolean) dapat digunakan untuk menonaktifkan koneksi otomatis. Ini adalah API dengan hak istimewa yang dapat digunakan oleh produsen perangkat dalam situasi tertentu (misalnya, perangkat seluler perangkat yang telah dikonfigurasi sebelumnya).

    Jika perangkat terhubung dan overlay config_wifi_framework_enable_associated_network_selection menjadi disetel ke false, tidak ada pemindaian konektivitas yang dilakukan dan hasil pemindaian tidak memicu pemilihan jaringan. Setelan ini tidak berpengaruh jika perangkat terputus, artinya pemindaian konektivitas dan pemilihan jaringan masih terjadi.

  2. Hasil pemindaian dievaluasi.

    • Jika perangkat terhubung ke jaringan Wi-Fi, framework mengevaluasi apakah jaringan saat ini cukup baik untuk melewati jaringan pilihan.

      Jaringan didefinisikan sebagai cukup baik untuk melewati pemilihan jaringan jika ada memenuhi persyaratan berikut:

      • Kurang dari 10 detik telah berlalu sejak pemilihan jaringan terakhir.
      • Pengguna baru-baru ini tersambung ke jaringan secara manual (di mana baru-baru ini dapat dikonfigurasi menggunakan config_wifiSufficientDurationAfterUserSelectionMilliseconds iklan overlay).
      • Perangkat terhubung ke koneksi pendaftaran online (OSU).
      • Semua persyaratan berikut terpenuhi:

        • RSSI berada di atas nilai minimum RSSI yang diwajibkan atau traffic yang memadai mengalir melalui koneksi (lihat pemindaian layar aktif untuk RSSI dan nilai minimum traffic).
        • Jaringan divalidasi (tersambung ke internet) atau disetujui pengguna untuk digunakan tanpa akses internet.
        • Jaringan tidak berbayar.
    • Jika jaringan cukup baik untuk melewati pemilihan jaringan, tidak ada lagi tindakan dilakukan.

    • Jika jaringan Wi-Fi yang tersambung tidak cukup baik atau jika perangkat tidak terhubung ke jaringan, kerangka kerja memanggil nominator jaringan untuk membuat daftar jaringan Wi-Fi kandidat yang akan dihubungkan berdasarkan hasil pemindaian yang difilter. Nomer jaringan akan menemukan konfigurasi Wi-Fi yang ada atau membuat konfigurasi baru untuk jaringan kandidat.

    • Hasil pemindaian difilter untuk menghapus BSSID yang memiliki RSSI di bawah entri RSSI (dapat dikonfigurasi menggunakan config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz, config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz, dan config_wifiFrameworkScoreEntryRssiThreshold6ghz). Selain itu, BSSID yang diblokir difilter. BSSID dapat diblokir berdasarkan tentang kegagalan koneksi berulang, pemutusan koneksi yang sering terjadi, dan permintaan dari AP untuk tidak mencoba melakukan atribusi selama periode tertentu waktu tertentu (MBO-OCE). Pemblokiran BSSID dijelaskan di bawah ini di Pemblokiran SSID dan BSSID.

    • Saat perangkat bergerak dengan cepat, hasil pemindaian bersifat opsional disaring lebih lanjut untuk menghapus BSSID yang RSSI-nya sangat bervariasi (indikasi bahwa mereka tidak bergerak bersama perangkat). Pengoptimalan ini adalah dapat dikonfigurasi menggunakan config_wifiHighMovementNetworkSelectionOptimizationEnabled (mengaktifkan/menonaktifkan pengoptimalan), dan config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs dan config_wifiHighMovementNetworkSelectionOptimizationRssiDelta overlay, yang mengonfigurasi persyaratan stabilitas pada hasil pemindaian (perubahan RSSI hasil pemindaian yang cukup terpisah dalam waktu yang cukup).

  3. Kerangka kerja ini menjalankan kandidat pencetak gol guna menghasilkan skor untuk setiap kandidat service set identifier (SSID). Tujuan Kandidat SSID dapat menyertakan beberapa kandidat dasar service set identifier (BSSID) (dibuat oleh nomer jaringan). Kandidat dengan skor tertinggi adalah kandidat pemenang.

  4. Framework menjalankan pilihan koneksi pengguna algoritma yang dapat membuat jaringan yang dipilih pengguna menjadi pemenang baru kandidat daripada menggunakan kandidat yang menang dari pencetak gol kandidat.

  5. Kerangka kerja ini menentukan apakah kandidat pemenang sesuai dengan jaringan yang saat ini terhubung. Agar dianggap cocok, salah satu hal berikut harus dipenuhi:

    • Kandidat pemenang dan jaringan Wi-Fi yang tersambung BSSID yang sama.
    • Jika roaming firmware tersedia (termasuk daftar BSSID yang tidak diizinkan kandidat), kandidat pemenang dan jaringan yang terhubung akan memiliki SSID dan jenis keamanan yang sama.

    Jika kandidat pemenang cocok dengan jaringan yang saat ini terhubung, tidak tindakan lebih lanjut diambil. Jika kandidat pemenang tidak sesuai dengan jaringan, perangkat itu dikaitkan dengan kandidat pemenang.

Perhatikan bahwa koneksi jaringan otomatis dinonaktifkan saat aplikasi menggunakan Permintaan Jaringan Wi-Fi API, yang mengganti sistem dan membuat LAN tanpa internet, kecuali pada perangkat yang mendukung stasiun serentak ganda.

Evaluasi jaringan yang terhubung

Framework atau firmware Android secara berkala mengevaluasi kualitas jaringan yang terhubung. Bagian ini menjelaskan cara mengevaluasi jaringan yang terhubung saat layar menyala atau mati.

Evaluasi ini dilakukan selain pemilihan jaringan yang telah dibahas di atas.

Layar aktif

Framework Android mengevaluasi jaringan yang terhubung dengan cara berikut:

  1. Layanan Wi-Fi melakukan polling RSSI dan statistik lapisan link setiap 3 detik (dapat dikonfigurasi menggunakan overlay config_wifiPollRssiIntervalMilliseconds).

    Jika penyesuaian interval dinamis diaktifkan menggunakan Overlay config_wifiAdjustPollRssiIntervalEnabled, interval polling berubah secara dinamis berdasarkan status mobilitas perangkat dan RSSI.

    • Interval polling diperpanjang hingga 6 detik (dikonfigurasi oleh config_wifiPollRssiLongIntervalMilliseconds) saat perangkat diam dan RSSI di atas -68 dBm (dikonfigurasi oleh config_wifiClientRssiMonitorThresholdDbm dan config_wifiClientRssiMonitorHysteresisDb).
    • Interval polling dikurangi kembali menjadi 3 detik (dikonfigurasi oleh config_wifiPollRssiIntervalMilliseconds overlay) saat perangkat non-stasioner atau RSSI di bawah -73 dBm (dikonfigurasi oleh overlay config_wifiClientRssiMonitorThresholdDbm).
  2. Layanan Wi-Fi menghitung skor yang terhubung berdasarkan RSSI dan statistik lapisan tautan.

  3. Layanan Wi-Fi meneruskan skor ke layanan konektivitas, yang menggunakan skor tersebut untuk menentukan apakah akan terhubung ke jaringan Wi-Fi atau jenis jaringan lain yang tersedia, seperti jaringan seluler.

Layar nonaktif

Framework tidak memulai evaluasi pada jaringan yang terhubung, tetapi Proses pemilihan jaringan mungkin masih terjadi jika pemindaian dimulai oleh komponen lain (misalnya, layanan lokasi). Tujuan {i>firmware <i}mengevaluasi kualitas jaringan dan jika kualitas jaringan buruk, {i>firmware<i} mungkin berkeliaran atau (pada akhirnya) terputus dari jaringan dan {i>host<i}.

Pemindaian konektivitas

Pemindaian dilakukan secara otomatis berdasarkan apakah perangkat mengaktifkan layar, mematikan layar dan tersambung ke Wi-Fi, atau layar mati dan tidak terhubung ke Wi-Fi.

Layar aktif

Framework ini memicu keputusan pemindaian pada interval yang meningkat saat layar mengaktifkan fitur ini. Interval keputusan pemindaian dikonfigurasi dengan config_wifiDisconnectedScanIntervalScheduleSec, config_wifiConnectedScanIntervalScheduleSec dan config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec overlay (yang merupakan array bilangan bulat). Secara default, pemindaian dilakukan menggunakan interval backoff eksponensial 20, 40, 80, dan 160 detik, dengan pemindaian yang mungkin dilakukan pada 160 detik interval (ini adalah nilai default dari overlay ini).

Interval pemindaian backoff eksponensial direset dan dimulai ulang setelah 20 detik setiap kali status layar berubah, yaitu, ketika layar dinyalakan atau nonaktif.

(Android 13+) Jika interval pemindaian yang berbeda diperlukan dengan saat ini, aplikasi dengan hak istimewa OEM dapat memanggil WifiManager#setScreenOnScanSchedule(screenOnScanSchedule) API untuk secara dinamis atur jadwal pemindaian layar aktif.

Keputusan untuk menjalankan atau melewatkan pemindaian didasarkan pada apakah koneksi jaringan saat ini cukup baik untuk melewati pemindaian. Koneksi adalah cukup baik untuk melewati pemindaian jika salah satu dari persyaratan berikut terpenuhi:

  • Perangkat terhubung ke koneksi pendaftaran online (OSU).
  • Traffic yang memadai mengalir melalui koneksi (lihat nilai minimum traffic di bawah).
  • RSSI berada di atas nilai minimum RSSI yang diperlukan (lihat nilai minimum RSSI di bawah), dan pemilihan jaringan dilakukan baru-baru ini (10 menit secara default, tetapi dapat dikonfigurasi menggunakan config_wifiConnectedHighRssiScanMinimumWindowSizeSec), dan jaringan divalidasi (terhubung ke internet) atau disetujui pengguna untuk digunakan tanpa akses internet.

RSSI dan nilai minimum traffic adalah:

  • RSSI di atas -73 dBm untuk band 2,4 GHz, yang dikonfigurasi dengan Overlay config_wifi_framework_wifi_score_low_rssi_threshold_24GHz, atau -70 dBm untuk band 5 GHz dan 6 GHz, yang dikonfigurasi dengan config_wifi_framework_wifi_score_low_rssi_threshold_5GHz dan config_wifiFrameworkScoreLowRssiThreshold6ghz overlay.
  • Traffic (mengirimkan atau menerima) di atas 16 paket per detik (pps) dikonfigurasi dengan config_wifiFrameworkMinPacketPerSecondActiveTraffic menjadi overlay.

Saat perangkat terhubung dan layar aktif. Pencetak skor yang terhubung secara berkala memantau kualitas Wi-Fi dengan melihat sinyal seperti RSSI dan jumlah paket ditransfer. Jika kualitas Wi-Fi dipastikan buruk (seperti yang ditetapkan di bawah) dan perangkat mendukung stasiun serentak ganda, maka pemindaian akan terpicu. Tujuan Overlay config_wifiLowConnectedScoreThresholdToTriggerScanForMbb dapat digunakan untuk mengonfigurasi ambang batas skor yang memicu pemindaian. Tujuan Overlay config_wifiLowConnectedScoreScanPeriodSeconds dapat digunakan untuk mengonfigurasi periode pemindaian ini.

Layar nonaktif dan terhubung ke Wi-Fi

Ketika layar mati dan perangkat tersambung ke jaringan Wi-Fi, {i>firmware<i} (Wi-Fi SoC) melakukan pemindaian roaming. Kerangka kerja ini tidak melakukan memindai saat layar mati.

Layar nonaktif dan tidak terhubung ke Wi-Fi (status terputus)

Ketika layar mati dan Wi-Fi terputus, {i>firmware<i} melakukan PNO memindai SSID. Kerangka kerja mengkonfigurasi {i>firmware<i} dengan daftar SSID yang akan dipindai dan daftar saluran yang akan dipindai. Jika SSID yang dikonfigurasi ditemukan, {i>firmware<i} akan mengaktifkan Google Workspace for Education.

Framework ini juga mengonfigurasi interval tempat firmware akan melakukan Pemindaian PNO, menggunakan status mobilitas perangkat untuk memilih interval pemindaian yang berbeda. Dalam keadaan mobilitas rendah (perangkat tidak bergerak) intervalnya adalah 60 detik untuk tiga pemindaian pertama (dikontrol oleh overlay config_wifiStationaryPnoScanIntervalMillis), dan 180 detik (overlay tetap 3x lipat dari overlay) untuk pemindaian berikutnya. Di titik tinggi keadaan mobilitas, intervalnya adalah 20 detik untuk tiga pemindaian pertama (dikontrol oleh overlay config_wifiMovingPnoScanIntervalMillis), dan 60 (3x tetap pengganda overlay) detik untuk pemindaian berikutnya.

Nominator jaringan

Nomer jaringan menemukan atau membuat konfigurasi (WifiConfiguration) untuk jaringan yang:

  • Tersedia (berdasarkan hasil pemindaian) atau terhubung jaringan (yang terkadang hilang dari hasil pemindaian yang tidak stabil).
  • Memiliki RSSI minimal. RSSI minimal adalah -80 dBm untuk band 2,4 GHz dan -77 dBm untuk band 5 GHz dan 6 GHz, dapat dikonfigurasi menggunakan config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz, config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz dan config_wifiFrameworkScoreEntryRssiThreshold6ghz overlay.
  • Tidak diblokir, misalnya, karena kegagalan koneksi sebelumnya.
  • Jaringan tidak menunjukkan bahwa jaringan tidak dapat digunakan (misalnya, menggunakan MBO/OCE).
  • Dapat dikaitkan dengan menggunakan kredensial yang tersedia di perangkat.

Nominator jaringan berikut digunakan:

  • Nominator jaringan tersimpan: Mengevaluasi semua jaringan yang tersimpan (termasuk jaringan tersimpan langganan Passpoint).
  • Nomer jaringan yang disarankan: Mengevaluasi semua jaringan yang disediakan oleh aplikasi menggunakan Suggestion API (termasuk langganan Passpoint yang disarankan).
  • Nominator jaringan yang diberi skor secara eksternal: Mekanisme OEM untuk menyediakan jaringan opsi konektivitas ke perangkat. Untuk informasi selengkapnya, lihat Penyedia rating jaringan eksternal.

Pencetak gol kandidat

Pencetak gol kandidat mengevaluasi dan memberikan skor untuk setiap kandidat. Tujuan skor untuk ThroughputScorer (pencetak skor default) didasarkan pada hal berikut:

  • Skor dasar dihitung berdasarkan RSSI dengan RSSI dibatasi -73 dBm untuk band 2,4 GHz atau -70 dBm untuk 5 GHz dan Band 6 GHz (dikonfigurasi dengan config_wifi_framework_wifi_score_low_rssi_threshold_24GHz, config_wifi_framework_wifi_score_low_rssi_threshold_5GHz dan config_wifiFrameworkScoreLowRssiThreshold6ghz overlay).
  • Peningkatan skor dihitung berdasarkan estimasi throughput yang diperoleh dari teknologi, frekuensi channel, bandwidth, RSSI, kondisi channel, jumlah maksimum streaming spasial, dan parameter lainnya. Peningkatan skor dapat dikonfigurasi menggunakan config_wifiFrameworkThroughputBonusNumerator dan config_wifiFrameworkThroughputBonusDenominator overlay, serta dibatasi ke nilai maksimum yang ditentukan menggunakan Overlay config_wifiFrameworkThroughputBonusLimit.
  • Jaringan kandidat yang baru-baru ini dipilih oleh pengguna atau oleh aplikasi mendapatkan peningkatan skor besar dengan durasi yang dapat dikonfigurasi menggunakan config_wifiFrameworkLastSelectionMinutes overlay (selama durasi tersebut, jaringan dijamin akan dipilih di jaringan yang tidak dipilih pengguna).
  • Kandidat yang cocok dengan jaringan saat ini akan mendapatkan peningkatan skor yang dikonfigurasi oleh config_wifiFrameworkCurrentNetworkBonusMin dan config_wifiFrameworkCurrentNetworkBonusPercent overlay (ada tambahan bonus berdasarkan persentase RSSI dan skor berbasis throughput, hingga ke minimum yang dapat dikonfigurasi).
  • Jaringan aman memiliki skor lebih tinggi dibandingkan jaringan terbuka. Bonusnya adalah dikonfigurasi menggunakan config_wifiFrameworkSecureNetworkBonus menjadi overlay.
  • Jaringan tidak berbayar (gratis) diberi skor lebih tinggi daripada jaringan berkuota (berbayar). Bonus dikonfigurasi menggunakan Overlay config_wifiFrameworkUnmeteredNetworkBonus.
  • Jaringan tersimpan diberi skor lebih tinggi daripada jaringan yang disarankan menggunakan Suggestion API. Bonus dikonfigurasi menggunakan Overlay config_wifiFrameworkSavedNetworkBonus.
  • Jaringan tidak tepercaya (yang dapat diminta sebagai bagian dari Suggestion API) memiliki skor lebih rendah dibandingkan jaringan lainnya.
  • Jaringan yang sebelumnya terdeteksi tidak memiliki internet mendapatkan skor 0 jika perangkat saat ini terhubung ke jaringan lain yang memiliki koneksi internet akses.

Bonus default untuk yang disimpan versus saran dan tidak berbayar versus terukur (yaitu, nilai overlay default) menghasilkan prioritas yang ketat untuk disimpan, disarankan, diukur, dan tidak berbayar:

  1. Jaringan tidak berbayar yang disimpan
  2. Jaringan tidak berbayar yang disarankan
  3. Jaringan berkuota tersimpan
  4. Jaringan berkuota yang disarankan

Ini berarti jaringan tak berbayar (gratis) yang tersimpan selalu dipilih sebelum jaringan berkuota (berbayar). Bonus skor yang baru-baru ini dipilih (oleh pengguna atau aplikasi) mungkin mengganti prioritas ketat tersebut.

Kerangka kerja ini dapat memiliki beberapa kandidat pencetak gol, tetapi hanya satu dapat diaktifkan pada satu waktu. Penskor lainnya dapat digunakan untuk metrik (untuk menyelidiki algoritma alternatif). Di Android 11, pencetak skor default-nya adalah ThroughputScorer

Pemblokiran SSID dan BSSID

Framework mungkin memblokir SSID atau BSSID, yaitu, bukan mempertimbangkannya untuk koneksi, baik untuk sementara atau selamanya.

Pemblokiran BSSID

Pemblokiran BSSID bekerja dengan cara menyimpan dua penghitung kegagalan, kegagalan berkelanjutan dan penghitung berturut-turut, per jenis kegagalan tertentu (lihat daftar jenis kegagalan di bawah). Saat terjadi kegagalan:

  • Penghitung untuk jenis kegagalan yang sesuai akan bertambah.
  • Jika batas kegagalan untuk jenis kegagalan tersebut tercapai:
    • BSSID diblokir.
    • Penghitung berturut-turut untuk kegagalan akan bertambah.

Durasi pemblokiran BSSID untuk dimulai pada nilai dasar (dapat dikonfigurasi) (ditentukan oleh config_wifiBssidBlocklistMonitorBaseBlockDurationMs atau config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs overlay, bergantung pada RSSI), dan secara eksponensial meningkat hingga terikat (ditentukan oleh config_wifiBssidBlocklistMonitorFailureStreakCap iklan overlay). Durasi akan bertambah jika kegagalan terus-menerus terjadi pada {i>BSSID<i}. Durasi adalah durasi dasar yang ditingkatkan secara eksponensial sebesar kegagalan beruntun, yaitu, kegagalan beruntun 2 menyiratkan 4x durasi blok dasar.

Ambang batas untuk pemblokiran BSSID tergantung pada alasan kegagalan dan masing-masing dapat disesuaikan menggunakan overlay:

  • AP menolak pengaitan menggunakan kode MBO/OCE Tidak dapat menangani masalah STA baru: config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold.
  • Validasi internet melalui jaringan ini gagal: config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold.
  • Kode kegagalan autentikasi sandi salah: config_wifiBssidBlocklistMonitorWrongPasswordThreshold.
  • Kode kegagalan autentikasi kegagalan EAP untuk jaringan EAP: config_wifiBssidBlocklistMonitorEapFailureThreshold.
  • Penolakan pengaitan, penolakan pengaitan umum lainnya: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold.
  • Waktu tunggu pengaitan: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold.
  • Kegagalan autentikasi, kegagalan autentikasi umum lainnya: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold.
  • Kegagalan DHCP, kegagalan penyediaan DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold.
  • Terputus secara tidak normal, perangkat telah terputus dari jaringan dalam periode yang sangat singkat setelah tersambung: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold. Waktu dapat dikonfigurasi dengan config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs.

Kondisi penghapusan daftar yang tidak diizinkan BSSID

BSSID dihapus dari daftar yang tidak diizinkan jika:

  • Wi-Fi dialihkan: Semua BSSID dihapus dari daftar yang tidak diizinkan.
  • Pengguna mengetuk jaringan di pemilih Wi-Fi: Semua BSSID jaringan yang dipilih pengguna akan dihapus dari daftar yang tidak diizinkan.
  • Waktu tunggu: BSSID dihapus dari daftar yang tidak diizinkan jika durasi pemblokiran adalah tercapai.
  • Mulai ulang: Semua daftar yang tidak diizinkan dihapus.
  • Jaringan dihapus: Semua BSSID yang terkait dengan jaringan ini dihapus dari yang tidak diizinkan.

Penghitung kegagalan dan berturut-turut mereset kondisi:

  • Mulai ulang: Reset untuk semua BSSID.
  • Jaringan dihapus: Reset untuk BSSID yang terkait dengan jaringan.
  • Koneksi L2 berhasil: Reset untuk kode error berikut.

    • REASON_AP_UNABLE_TO_HANDLE_NEW_STA
    • REASON_WRONG_PASSWORD
    • REASON_EAP_FAILURE
    • REASON_ASSOCIATION_REJECTION
    • REASON_ASSOCIATION_TIMEOUT
    • REASON_AUTHENTICATION_FAILURE
    • REASON_ABNORMAL_DISCONNECT (dihapus bersyarat hanya jika terakhir kali perangkat yang terhubung ke BSSID ini lebih dari 3 jam yang lalu)
    • REASON_NONLOCAL_DISCONNECT_CONNECTING
  • Validasi jaringan berhasil: Reset untuk kode error berikut.

    • REASON_NETWORK_VALIDATION_FAILURE
  • Penyediaan DHCP berhasil: Direset untuk kode error berikut.

    • REASON_DHCP_FAILURE

Pemblokiran SSID

Pemblokiran SSID bekerja sama dengan pemblokiran BSSID. Penghitung kegagalan per kegagalan jenis per jaringan bertambah ketika terjadi kegagalan koneksi. Ketika jumlah kegagalan jenis tertentu melebihi ambang batas, SSID akan diblokir secara permanen atau sementara berdasarkan konfigurasi. Konfigurasi untuk setiap jenis kegagalan dikodekan WifiConfiguration.NetworkSelectionStatus.DISABLE_REASON_INFOS dan dirangkum di bawah ini.

* Untuk jaringan yang dinonaktifkan sementara, durasi penonaktifan berubah secara dinamis berdasarkan jumlah koneksi yang berurutan kegagalan yang dialami pada jaringan. Setelah jaringan berturut-turut gagal terhubung lima kali, setiap kegagalan berikutnya akan menghasilkan menonaktifkan durasi dua kali lebih lama dari durasi sebelumnya. Misalnya, jaringan dengan lima kegagalan berturut-turut akan dinonaktifkan selama 5 menit, kemudian 10 menit pada kegagalan keenam, 20 menit untuk kegagalan ketujuh kegagalan, dan seterusnya hingga batas maksimum 18 jam.

Kode kegagalan Deskripsi Batas Durasi penonaktifan dasar* Nonaktifkan jenis
DISABLED_DHCP_FAILURE Kegagalan dalam menyediakan DHCP 5 5 menit Sementara
DISABLED_NO_INTERNET_TEMPORARY Validasi jaringan gagal tetapi pengguna menyatakan bahwa mereka ingin menyimpannya menyambungkan ke jaringan ini di masa mendatang 1 10 menit Sementara
DISABLED_AUTHENTICATION_NO_CREDENTIALS Supplicant tidak memiliki kredensial untuk terhubung ke jaringan 1 NA Permanen
DISABLED_NO_INTERNET_PERMANENT Default untuk kegagalan validasi jaringan 1 NA Permanen
DISABLED_BY_WIFI_MANAGER Tidak berlaku lagi dan tidak digunakan 1 NA Permanen
DISABLED_BY_WRONG_PASSWORD Sandi salah, dan jaringan ini tidak pernah berhasil terhubung dengan 1 NA Permanen
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION Kegagalan EAP yang menyebabkan kartu SIM tidak berlangganan 1 NA Permanen
DISABLED_ASSOCIATION_REJECTION Kegagalan penolakan pengaitan 5 5 menit Sementara
DISABLED_AUTHENTICATION_FAILURE Kegagalan autentikasi lainnya (yaitu, bukan sandi yang salah atau EAP gagal) 5 5 menit Sementara
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR Kegagalan EAP khusus penyedia (pribadi). 1 NA Permanen
DISABLED_NETWORK_NOT_FOUND Pemohon gagal menemukan jaringan dalam hasil pemindaian yang cocok jaringan yang diminta oleh kerangka kerja untuk koneksi (termasuk jaringan ). 2 5 menit Sementara
DISABLED_CONSECUTIVE_FAILURES Jaringan gagal terhubung lima kali atau lebih secara berurutan. Kegagalan jenis kegagalan ini termasuk, tetapi tidak terbatas pada, jenis kegagalan yang tercantum dalam tabel ini.
5 5 menit Sementara

Jaringan yang dinonaktifkan sementara akan diaktifkan kembali saat:

  • Durasi penonaktifan telah berlalu.
  • Pengguna memilih jaringan yang akan dihubungkan secara manual.
  • Pengguna mengalihkan Wi-Fi.
  • Sistem dimulai ulang.
  • Jaringan dinonaktifkan pada RSSI yang sangat rendah, tetapi jaringan kemudian terdeteksi lagi pada RSSI sedang atau lebih tinggi.

Jaringan yang dinonaktifkan secara permanen diaktifkan kembali saat:

  • Pengguna memilih jaringan yang akan dihubungkan secara manual.

Penghitung kegagalan untuk jaringan akan direset jika:

  • Jaringan dihapus.
  • Perangkat berhasil terhubung ke jaringan.
  • Jaringan telah diaktifkan kembali setelah waktu penonaktifan durasi habis.
  • Pengguna memilih jaringan yang akan dihubungkan secara manual.
  • Sistem dimulai ulang.

Kartu skor

Kartu skor, diperkenalkan di Android 10, merekam di perangkat statistik tentang BSSID. Kartu skor dipertahankan menggunakan IpMemoryStore layanan.

Kartu skor tidak digunakan di jaringan Android 11 pilihan.

Pilihan menghubungkan pengguna

Android memiliki algoritma pilihan koneksi pengguna yang memungkinkan proses seleksi untuk memilih jaringan Wi-Fi yang secara eksplisit telah disambungkan pengguna, misalnya, jaringan rumah. Pengguna mungkin lebih memilih melalui jaringan publik meskipun performanya lebih rendah daripada jaringan publik jaringan karena mereka memberikan layanan tambahan seperti kemampuan untuk mengontrol perangkat smart home.

Preferensi pengguna untuk jaringan ditangkap dengan menandai semua jaringan Wi-Fi yang terlihat dan kekuatan sinyalnya saat pengguna memilih jaringan. Jika salah satu konfigurasi Wi-Fi bertanda dipilih selama proses pemilihan otomatis dan jaringan yang dipilih pengguna tersedia, pengguna algoritma pilihan koneksi mengganti pemilihan dengan jaringan yang dipilih pengguna jika kondisi berikut terpenuhi:

  • Jaringan pilihan koneksi pengguna memiliki akses internet terakhir kali sudah digunakan
  • Pilihan {i>user connect <i}memiliki kekuatan sinyal yang tidak lebih buruk dari ketika itu awalnya dipilih dengan margin kesalahan. Margin {i>error<i} ini dapat dikonfigurasikan menggunakan config_wifiEstimateRssiErrorMarginDb overlay.

Jaringan pilihan koneksi pengguna akan tetap ada setelah reboot. Pilihan menghubungkan pengguna berfungsi untuk jaringan tersimpan, jaringan Passpoint, dan jaringan saran.

Dua stasiun serentak

Bagian ini menjelaskan pemilihan jaringan Wi-Fi jika perangkat mendukung menghubungkan ke dua jaringan Wi-Fi secara bersamaan.

Buat sebelum jeda

Jika buat sebelum istirahat diaktifkan, perangkat akan mencoba terhubung ke jaringan baru sebelum memutuskan sambungan dari jaringan lama. Alur buat sebelum jeda menggunakan metode algoritma pemilihan jaringan sebagai pengalihan jaringan jeda sebelum-membuat (yang saat perangkat terputus dari jaringan lama sebelum menyambungkan ke jaringan baru satu). Jika algoritma pemilihan jaringan memilih jaringan yang tidak dapat dialihkan menggunakan {i>make-before-break<i}, perangkat secara otomatis kembali ke jeda sebelum membuat.

Koneksi internet dan dibatasi serentak

Jika serangan terbatas dan internet koneksi diaktifkan, perangkat dapat tersambung ke Wi-Fi sekunder yang dibatasi jaringan yang hanya tersedia untuk memilih aplikasi yang dikonfigurasi oleh perangkat produsen. Petunjuk bagi produsen perangkat untuk mengonfigurasi hal ini ada di Pembatasan serentak dan internet .

Saat algoritma pemilihan jaringan mendeteksi hasil pemindaian yang cocok dengan OEM saran berbayar atau pribadi, jaringan tersebut secara otomatis terhubung sebagai jaringan kedua. Pilihan jaringan untuk jaringan Wi-Fi utama (yang menyediakan akses internet ke aplikasi reguler) biasanya terjadi secara paralel.

Pertanyaan umum (FAQ)

  1. Apakah jaringan aman selalu diprioritaskan daripada jaringan terbuka?

    Tidak. Tersimpan versus disarankan serta berkuota vs tidak berbayar adalah yang utama kategori di mana jaringan dievaluasi. Dalam setiap kategori, amankan jaringan memiliki beberapa prioritas di atas jaringan terbuka tetapi bobot yang jauh lebih yang diberikan pada kualitas koneksi.

    Alasannya, keamanan data pengguna sebenarnya disediakan oleh enkripsi end-to-end (misalnya, TLS). Jaringan aman hanya mengenkripsi tahap pertama komunikasi, dan bahkan kemudian untuk jaringan dengan kunci {i>preshared<i}, tidak memberikan banyak privasi.

  2. Mengapa jaringan yang tersimpan lebih diprioritaskan daripada jaringan yang disarankan?

    Jaringan gratis (tidak berbayar) yang disimpan lebih diprioritaskan daripada jaringan gratis yang disarankan dan jaringan berkuota yang tersimpan lebih diprioritaskan daripada jaringan berkuota yang disarankan.

    Jaringan tersimpan akan diprioritaskan daripada jaringan yang disarankan karena disimpan jaringan adalah jaringan yang ditambahkan pengguna ke perangkat secara eksplisit. Bahwa menyiratkan preferensi untuk terhubung ke jaringan-jaringan ini jika memungkinkan.

    Perlu diperhatikan bahwa pengguna dapat menonaktifkan perilaku koneksi otomatis untuk setiap jaringan yang tersimpan, yaitu, menunjukkan bahwa jaringan ini hanya untuk digunakan secara manual dan tidak otomatis dianggap oleh perangkat.

  3. Dapatkah saya mengubah urutan prioritas yang ketat atau menghapusnya sepenuhnya?

    Produsen perangkat dapat memodifikasi keputusan pemilihan jaringan dengan memodifikasi overlay bonus yang tercantum di bagian atas. Namun, sebaiknya jangan mengubah nilai default karena nilai tersebut telah dipilih setelah mempertimbangkan beberapa kasus penggunaan dengan cermat.