Pemilihan Jaringan Wi-Fi Android

Halaman ini menguraikan algoritme dan prosedur yang digunakan di Android 12 untuk memilih dan beralih di antara jaringan Wi-Fi. Android terus mengevaluasi kualitas jaringan yang terhubung dan menilai kualitas jaringan yang tersedia.

Kehidupan koneksi otomatis

Ini menjelaskan proses bagaimana 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 hidup atau mati.

    • Layar aktif (tersambung): Subsistem konektivitas Android secara berkala mengevaluasi apakah koneksi saat ini cukup baik untuk melewati pemindaian (sebagaimana didefinisikan dalam pemindaian layar aktif ). Jika koneksi tidak cukup baik untuk melewati pemindaian, subsistem konektivitas memicu pemindaian untuk mendeteksi jaringan yang tersedia. Pemindaian ini juga dapat dipicu oleh komponen sistem lain seperti sistem lokasi atau aplikasi (termasuk aplikasi Pengaturan).
    • Layar aktif (terputus): Subsistem konektivitas Android mengeluarkan pemindaian berkala setelah jadwal backoff eksponensial. Modul mengevaluasi semua hasil pemindaian yang diterima dan mencoba memilih jaringan terbaik untuk dihubungkan.
    • Layar mati (terputus): CPU host memprogram firmware dengan daftar jaringan pilihan menggunakan pemindaian network offload (PNO) pilihan segera setelah layar mati. Firmware membangunkan host jika menemukan salah satu jaringan pilihan. AOSP mengasumsikan bahwa PNO didukung pada perangkat.

    Metode WifiManager#allowAutojoinGlobal(boolean) dapat digunakan untuk menonaktifkan koneksi otomatis. Ini adalah API istimewa yang dapat digunakan oleh produsen perangkat dalam keadaan terbatas (misalnya, perangkat nonseluler yang telah dikonfigurasi sebelumnya).

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

  2. Hasil pemindaian dievaluasi.

    • Jika perangkat terhubung ke jaringan Wi-Fi, kerangka kerja mengevaluasi apakah jaringan saat ini cukup baik untuk melewati pemilihan jaringan .

      Sebuah jaringan didefinisikan sebagai cukup baik untuk melewati pemilihan jaringan jika salah satu persyaratan berikut terpenuhi:

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

        • RSSI berada di atas ambang RSSI yang diperlukan atau lalu lintas yang cukup mengalir melalui sambungan (lihat pemindaian di layar untuk RSSI dan ambang lalu lintas).
        • Jaringan divalidasi (terhubung ke internet) atau disetujui pengguna untuk digunakan tanpa akses internet.
    • Jika jaringan cukup baik untuk melewati pemilihan jaringan , tidak ada tindakan lebih lanjut yang diambil.

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

    • Hasil pemindaian disaring 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 akan difilter. BSSID dapat diblokir berdasarkan kegagalan koneksi yang berulang, pemutusan yang sering, dan permintaan eksplisit dari AP untuk tidak mencoba asosiasi untuk jangka waktu tertentu (MBO-OCE). Pemblokiran BSSID dijelaskan di bawah ini dalam pemblokiran SSID dan BSSID .

    • Saat perangkat bergerak cepat, hasil pemindaian secara opsional disaring lebih lanjut untuk menghapus BSSID yang RSSI-nya bervariasi dengan cepat (menunjukkan bahwa mereka tidak bergerak bersama perangkat). Pengoptimalan ini dapat dikonfigurasi menggunakan config_wifiHighMovementNetworkSelectionOptimizationEnabled (mengaktifkan/menonaktifkan pengoptimalan), dan lapisan config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs dan config_wifiHighMovementNetworkSelectionOptimizationRssiDelta , yang mengonfigurasi perubahan waktu RSSI secara memadai pada hasil pemindaian.

  3. Framework menjalankan kandidat pencetak skor untuk menghasilkan skor untuk setiap kandidat service set identifier (SSID). Kandidat SSID dapat mencakup beberapa kandidat basic service set identifier (BSSID) (dihasilkan oleh nominator jaringan). Kandidat dengan skor tertinggi adalah kandidat pemenang .

  4. Kerangka kerja menjalankan algoritme pilihan koneksi pengguna , yang mungkin membuat jaringan yang dipilih pengguna menjadi kandidat pemenang baru alih-alih menggunakan kandidat pemenang dari kandidat pencetak gol.

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

    • Kandidat pemenang dan jaringan Wi-Fi yang terhubung memiliki BSSID yang sama.
    • Jika roaming firmware tersedia (termasuk kemampuan blacklist BSSID), kandidat pemenang dan jaringan yang terhubung memiliki SSID dan jenis keamanan yang sama.

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

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

Evaluasi jaringan yang terhubung

Kerangka kerja atau firmware Android secara berkala mengevaluasi kualitas jaringan yang terhubung. Bagian ini menjelaskan bagaimana jaringan yang terhubung dievaluasi saat layar hidup atau mati.

Evaluasi ini dilakukan selain pemilihan jaringan yang dibahas di atas.

Layar aktif

Kerangka kerja Android mengevaluasi jaringan yang terhubung dengan cara berikut:

  1. Layanan Wi-Fi melakukan polling RSSI dan statistik link-layer setiap 3 detik (dapat dikonfigurasi menggunakan overlay config_wifiPollRssiIntervalMilliseconds ).
  2. Layanan Wi-Fi menghitung skor terhubung berdasarkan RSSI dan statistik lapisan tautan.
  3. Layanan Wi-Fi meneruskan skor ke layanan konektivitas, yang menggunakan skor untuk menentukan apakah akan tersambung ke jaringan Wi-Fi atau ke jenis jaringan lain yang tersedia, seperti jaringan seluler.

Layar mati

Kerangka kerja tidak memulai evaluasi pada jaringan yang terhubung, tetapi proses pemilihan jaringan mungkin masih terjadi jika pemindaian dimulai oleh komponen lain (misalnya, layanan lokasi). Firmware mengevaluasi kualitas jaringan dan jika kualitas jaringan buruk, firmware mungkin berkeliaran atau (akhirnya) terputus dari jaringan dan membangunkan host.

Pemindaian konektivitas

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

Layar aktif

Kerangka kerja memicu keputusan pemindaian pada interval yang meningkat saat layar dihidupkan. Interval keputusan pemindaian dikonfigurasi dengan config_wifiDisconnectedScanIntervalScheduleSec , config_wifiConnectedScanIntervalScheduleSec , dan config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec (yang merupakan larik bilangan bulat). Secara default, pemindaian terjadi menggunakan interval backoff eksponensial 20, 40, 80, dan 160 detik, dengan pemindaian berikutnya mungkin dilakukan pada interval 160 detik (ini adalah nilai default dari overlay di atas).

Interval pemindaian mundur eksponensial diatur ulang dan dimulai ulang pada 20 detik setiap kali status layar berubah, yaitu saat layar diaktifkan atau dinonaktifkan.

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

  • Perangkat terhubung ke koneksi pendaftaran online (OSU).
  • Lalu lintas yang cukup mengalir melalui sambungan (lihat ambang lalu lintas di bawah).
  • RSSI berada di atas ambang RSSI yang diperlukan (lihat ambang RSSI di bawah), dan pemilihan jaringan dilakukan baru-baru ini (10 menit secara default tetapi dapat dikonfigurasi menggunakan overlay config_wifiConnectedHighRssiScanMinimumWindowSizeSec ), dan jaringan divalidasi (terhubung ke internet) atau pengguna -disetujui untuk digunakan tanpa akses internet.

RSSI dan ambang lalu lintas adalah:

  • RSSI di atas -73 dBm untuk pita 2,4 GHz, dikonfigurasikan dengan overlay config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , atau -70 dBm untuk pita 5 GHz dan 6 GHz, dikonfigurasi dengan config_wifi_framework_wifi_score_low_rssi_threshold_5GHz dan config_wifiFrameworkScoreLowRssiThreshold6ghz
  • Lalu lintas (mengirim atau menerima) di atas 16 paket per detik (pps) yang dikonfigurasi dengan overlay config_wifiFrameworkMinPacketPerSecondActiveTraffic .

Layar mati dan terhubung ke Wi-Fi

Saat layar mati dan perangkat terhubung ke jaringan Wi-Fi, firmware (SoC Wi-Fi) melakukan pemindaian jelajah. Kerangka kerja tidak melakukan pemindaian apa pun saat layar mati.

Layar mati dan tidak terhubung ke Wi-Fi (kondisi terputus)

Saat layar mati dan Wi-Fi terputus, firmware melakukan pemindaian PNO untuk SSID. Kerangka kerja mengonfigurasi firmware dengan daftar SSID yang akan dipindai dan daftar saluran yang akan dipindai. Jika SSID yang dikonfigurasi ditemukan, firmware akan membangunkan kerangka kerja.

Kerangka kerja juga mengonfigurasi interval di mana 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 hamparan config_wifiStationaryPnoScanIntervalMillis ), dan 180 detik (pengganda 3x tetap dari hamparan) untuk pemindaian berikutnya. Dalam keadaan mobilitas tinggi, intervalnya adalah 20 detik untuk tiga pemindaian pertama (dikontrol oleh overlay config_wifiMovingPnoScanIntervalMillis ), dan 60 (pengganda 3x tetap dari overlay) detik untuk pemindaian berikutnya.

Nominator jaringan

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

  • Saat ini tersedia (berdasarkan hasil pemindaian) atau jaringan yang saat ini terhubung (yang terkadang hilang dari hasil pemindaian yang tidak stabil).
  • Memiliki RSSI minimal. RSSI minimal adalah -80 dBm untuk pita 2,4 GHz dan -77 dBm untuk pita 5 GHz dan 6 GHz, dapat dikonfigurasi menggunakan config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz config_wifiFrameworkScoreEntryRssiThreshold6ghz config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz
  • Tidak diblokir, misalnya, karena kegagalan koneksi sebelumnya.
  • Jaringan tidak menunjukkan bahwa itu 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 disimpan (termasuk langganan Passpoint yang disimpan).
  • Nominator jaringan yang disarankan: Mengevaluasi semua jaringan yang disediakan oleh aplikasi menggunakan API Saran (termasuk langganan Passpoint yang disarankan).
  • Nominator jaringan dengan skor eksternal: Mekanisme OEM untuk menyediakan opsi konektivitas jaringan ke perangkat. Untuk informasi lebih lanjut, lihat Penyedia peringkat jaringan eksternal .

Calon pencetak gol

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

  • Skor dasar dihitung berdasarkan RSSI di mana RSSI dibatasi pada -73 dBm untuk pita 2,4 GHz atau -70 dBm untuk pita 5 GHz dan 6 GHz (dikonfigurasi dengan config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , config_wifi_framework_wifi_score_low_rssi_threshold_5GHz config_wifiFrameworkScoreLowRssiThreshold6ghz .
  • Peningkatan skor dihitung berdasarkan perkiraan throughput yang diperoleh dari teknologi, frekuensi saluran, bandwidth, RSSI, kondisi saluran, jumlah maksimum aliran spasial, dan parameter lainnya. Peningkatan skor dapat dikonfigurasi menggunakan config_wifiFrameworkThroughputBonusNumerator dan config_wifiFrameworkThroughputBonusDenominator overlay, dan terbatas pada nilai maksimal yang ditentukan menggunakan overlay config_wifiFrameworkThroughputBonusLimit .
  • Jaringan kandidat yang baru-baru ini dipilih oleh pengguna atau oleh aplikasi mendapat peningkatan skor yang besar untuk durasi yang dapat dikonfigurasi menggunakan overlay config_wifiFrameworkLastSelectionMinutes (untuk durasi tersebut jaringan dijamin akan dipilih melalui jaringan yang tidak dipilih pengguna).
  • Kandidat yang cocok dengan jaringan saat ini mendapatkan peningkatan skor yang dikonfigurasi oleh overlay config_wifiFrameworkCurrentNetworkBonusMin dan config_wifiFrameworkCurrentNetworkBonusPercent (ia mendapat bonus tambahan berdasarkan persentase RSSI dan skor berbasis throughput, hingga minimum yang dapat dikonfigurasi).
  • Jaringan aman dinilai lebih tinggi daripada jaringan terbuka. Bonus dikonfigurasi menggunakan overlay config_wifiFrameworkSecureNetworkBonus .
  • Jaringan tanpa meteran (gratis) mendapat skor lebih tinggi daripada jaringan terukur (berbayar). Bonus dikonfigurasi menggunakan overlay config_wifiFrameworkUnmeteredNetworkBonus .
  • Jaringan yang disimpan diberi skor lebih tinggi daripada jaringan yang disarankan menggunakan API Saran. Bonus dikonfigurasi menggunakan overlay config_wifiFrameworkSavedNetworkBonus .
  • Jaringan tidak tepercaya (yang dapat diminta sebagai bagian dari API Saran) diberi skor lebih rendah daripada jaringan lainnya.
  • Sebuah jaringan yang sebelumnya terdeteksi tidak memiliki internet mendapat skor 0 jika perangkat saat ini terhubung ke jaringan lain yang memiliki akses internet.

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

  1. Jaringan tidak terukur yang tersimpan
  2. Jaringan tanpa meteran yang disarankan
  3. Jaringan terukur yang disimpan
  4. Jaringan terukur yang disarankan

Ini berarti jaringan terukur (gratis) yang disimpan selalu dipilih sebelum jaringan terukur (berbayar) yang disimpan. Bonus skor yang baru-baru ini dipilih (oleh pengguna atau aplikasi) dapat mengesampingkan prioritas ketat itu.

Kerangka kerja dapat memiliki beberapa calon pencetak gol yang diinstal tetapi hanya satu yang dapat aktif pada satu waktu. Pencetak gol lainnya dapat digunakan untuk metrik (untuk menyelidiki algoritme alternatif). Di Android 11, pencetak gol default adalah ThroughputScorer .

Pemblokiran SSID dan BSSID

Kerangka kerja dapat memblokir SSID dan/atau BSSID, yaitu, tidak mempertimbangkannya untuk koneksi baik sementara atau permanen.

Pemblokiran BSSID

Pemblokiran BSSID bekerja dengan menjaga dua penghitung kegagalan, penghitung kegagalan kontinu dan penghitung beruntun, per jenis kegagalan tertentu (lihat di bawah untuk daftar jenis kegagalan). Ketika terjadi kegagalan:

  • Penghitung untuk jenis kegagalan yang sesuai bertambah.
  • Jika ambang kegagalan untuk jenis kegagalan tersebut tercapai:
    • BSSID diblokir.
    • Penghitung beruntun untuk kegagalan bertambah.

Durasi pemblokiran BSSID untuk memulai pada nilai dasar (dapat dikonfigurasi) (ditentukan oleh overlay config_wifiBssidBlocklistMonitorBaseBlockDurationMs atau config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs , tergantung pada config_wifiBssidBlocklistMonitorFailureStreakCap ). Durasi meningkat jika kegagalan terus menerus terjadi pada BSSID yang sama. Durasi adalah durasi dasar yang meningkat secara eksponensial oleh garis kegagalan, yaitu, garis kegagalan 2 menyiratkan 4x durasi blok dasar.

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

  • AP menolak pengaitan menggunakan MBO/OCE Tidak dapat menangani kode STA baru : config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold .
  • Validasi internet melalui jaringan ini gagal: config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold .
  • Kode kegagalan otentikasi kata sandi salah: config_wifiBssidBlocklistMonitorWrongPasswordThreshold .
  • Kode kegagalan otentikasi kegagalan EAP untuk jaringan EAP: config_wifiBssidBlocklistMonitorEapFailureThreshold .
  • Penolakan asosiasi, penolakan asosiasi umum lainnya: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold .
  • Batas waktu asosiasi: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold .
  • Kegagalan otentikasi, kegagalan otentikasi umum lainnya: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold .
  • Kegagalan DHCP, kegagalan untuk menyediakan DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold .
  • Putus tidak normal, perangkat telah terputus dari jaringan dalam waktu yang sangat singkat setelah terhubung: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold . Jendela waktu dapat dikonfigurasi dengan config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs .

Ketentuan kliring daftar blokir BSSID

BSSID dihapus dari daftar blokir ketika:

  • Wi-Fi diaktifkan: Semua BSSID dihapus dari daftar blokir.
  • Pengguna mengetuk jaringan di pemilih Wi-Fi: Semua BSSID dari jaringan yang dipilih pengguna dihapus dari daftar blokir.
  • Timeout: BSSID dihapus dari daftar blokir ketika durasi blokir tercapai.
  • Reboot: Semua daftar blokir dihapus.
  • Jaringan dihapus: Semua BSSID yang terkait dengan jaringan ini dihapus dari daftar blokir.

Kondisi reset kegagalan dan penghitung beruntun:

  • Reboot: Reset untuk semua BSSID.
  • Jaringan dihapus: Setel ulang untuk BSSID yang terkait dengan jaringan.
  • Koneksi L2 berhasil: Atur ulang untuk kode kesalahan 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 terhubung ke BSSID ini lebih dari 3 jam yang lalu)
    • REASON_NONLOCAL_DISCONNECT_CONNECTING
  • Validasi jaringan berhasil: Menyetel ulang kode kesalahan berikut.

    • REASON_NETWORK_VALIDATION_FAILURE
  • Keberhasilan penyediaan DHCP: Mengatur ulang untuk kode kesalahan berikut.

    • REASON_DHCP_FAILURE

pemblokiran SSID

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

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

Kode kegagalan Keterangan Ambang Durasi penonaktifan dasar* Nonaktifkan jenis
DISABLED_DHCP_FAILURE Kegagalan untuk menyediakan DHCP 5 5 menit Sementara
DISABLED_NO_INTERNET_TEMPORARY Validasi jaringan gagal tetapi pengguna menyatakan bahwa mereka ingin tetap terhubung ke jaringan ini di masa mendatang 1 10 menit Sementara
DISABLED_AUTHENTICATION_NO_CREDENTIALS Pemohon tidak memiliki kredensial untuk terhubung ke jaringan 1 tidak Permanen
DISABLED_NO_INTERNET_PERMANENT Default untuk kegagalan validasi jaringan 1 tidak Permanen
DISABLED_BY_WIFI_MANAGER Usang dan tidak digunakan 1 tidak Permanen
DISABLED_BY_WRONG_PASSWORD Kata sandi salah, dan jaringan ini tidak pernah berhasil tersambung ke 1 tidak Permanen
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION Kegagalan EAP di mana kartu SIM tidak berlangganan 1 tidak Permanen
DISABLED_ASSOCIATION_REJECTION Kegagalan penolakan asosiasi 5 5 menit Sementara
DISABLED_AUTHENTICATION_FAILURE Kegagalan otentikasi lainnya (yaitu, bukan kata sandi yang salah atau kegagalan EAP) 5 5 menit Sementara
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR Kegagalan EAP (pribadi) khusus penyedia. 1 tidak Permanen
DISABLED_NETWORK_NOT_FOUND Pemohon gagal menemukan jaringan dalam hasil pemindaian yang cocok dengan jaringan yang diminta oleh kerangka kerja untuk koneksi (termasuk kemampuan jaringan). 2 5 menit Sementara
DISABLED_CONSECUTIVE_FAILURES Jaringan gagal tersambung lima kali atau lebih secara berurutan. Jenis kegagalan untuk kegagalan ini termasuk tetapi tidak terbatas pada jenis kegagalan yang tercantum dalam tabel ini.
5 5 menit Sementara

Jaringan yang dinonaktifkan sementara diaktifkan kembali ketika:

  • Durasi penonaktifan telah berlalu.
  • Pengguna secara manual memilih jaringan yang akan dihubungkan.
  • Pengguna mengaktifkan Wi-Fi.
  • Sistem di-boot ulang.

Jaringan yang dinonaktifkan secara permanen diaktifkan kembali ketika:

  • Pengguna secara manual memilih jaringan yang akan dihubungkan.

Penghitung kegagalan untuk jaringan direset ketika:

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

Kartu skor

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

Kartu skor tidak digunakan dalam pemilihan jaringan Android 11.

Pilihan koneksi pengguna

Android memiliki algoritme pilihan koneksi pengguna yang memungkinkan proses pemilihan untuk memilih jaringan Wi-Fi yang telah terhubung secara eksplisit oleh pengguna, misalnya, jaringan rumah. Pengguna mungkin lebih suka jaringan seperti itu daripada jaringan publik bahkan ketika kinerjanya lebih rendah daripada jaringan publik karena mereka menyediakan layanan tambahan seperti kemampuan untuk mengontrol perangkat rumah.

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

  • Jaringan pilihan koneksi pengguna memiliki akses internet terakhir kali digunakan
  • Pilihan koneksi pengguna memiliki kekuatan sinyal yang tidak lebih buruk daripada saat awalnya dipilih dengan margin kesalahan. Margin kesalahan ini dapat dikonfigurasi menggunakan overlay config_wifiEstimateRssiErrorMarginDb .

Jaringan pilihan koneksi pengguna tetap ada setelah reboot. Pilihan koneksi pengguna berfungsi untuk jaringan yang disimpan, jaringan Passpoint, dan jaringan saran.

Stasiun bersamaan ganda

Bagian ini menjelaskan pemilihan jaringan Wi-Fi saat perangkat mendukung koneksi ke dua jaringan Wi-Fi secara bersamaan.

Buat-sebelum-istirahat

Jika fungsi make-before-break diaktifkan, perangkat akan mencoba menyambung ke jaringan baru sebelum memutuskan sambungan dari jaringan lama. Alur make-before-break menggunakan algoritme pemilihan jaringan yang sama dengan peralihan jaringan break-before-make (yaitu ketika perangkat terputus dari jaringan lama sebelum terhubung ke yang baru). Jika algoritme pemilihan jaringan memilih jaringan yang tidak dapat dialihkan menggunakan make-before-break, perangkat secara otomatis kembali ke break-before-make.

Dibatasi dan koneksi internet secara bersamaan

Jika fungsi koneksi internet dan terbatas bersamaan diaktifkan, perangkat dapat terhubung ke jaringan Wi-Fi terbatas sekunder yang hanya tersedia untuk aplikasi tertentu yang dikonfigurasi oleh produsen perangkat. Petunjuk bagi produsen perangkat untuk mengonfigurasi ini ada di Pembatasan serentak dan koneksi internet .

Ketika algoritme pemilihan jaringan mendeteksi hasil pemindaian yang cocok dengan saran berbayar/pribadi OEM, maka secara otomatis akan terhubung sebagai jaringan kedua. Pemilihan jaringan untuk jaringan Wi-Fi utama (yang menyediakan koneksi internet ke aplikasi biasa) biasanya terjadi secara paralel.

Pertanyaan yang sering diajukan (FAQ)

  1. Apakah jaringan aman selalu diprioritaskan daripada jaringan terbuka?

    Tidak. Disimpan versus disarankan dan diukur versus tidak diukur adalah kategori utama di mana jaringan dievaluasi. Dalam setiap kategori, jaringan aman memiliki beberapa prioritas di atas jaringan terbuka tetapi bobot yang jauh lebih tinggi diberikan pada kualitas koneksi.

    Alasannya adalah bahwa keamanan data pengguna yang sebenarnya disediakan oleh enkripsi ujung ke ujung (misalnya, TLS). Jaringan aman hanya mengenkripsi bagian pertama komunikasi, dan bahkan untuk jaringan dengan kunci yang dibagikan sebelumnya, tidak memberikan banyak privasi.

  2. Mengapa jaringan yang disimpan diprioritaskan daripada jaringan yang disarankan?

    Jaringan gratis (tidak terukur) yang disimpan diprioritaskan daripada jaringan gratis yang disarankan dan jaringan terukur yang disimpan diprioritaskan daripada jaringan terukur yang disarankan.

    Jaringan yang disimpan diprioritaskan daripada jaringan yang disarankan karena jaringan yang disimpan adalah jaringan yang ditambahkan pengguna ke perangkat secara eksplisit. Itu menyiratkan preferensi untuk terhubung ke jaringan ini bila memungkinkan.

    Perhatikan bahwa pengguna dapat menonaktifkan perilaku koneksi otomatis untuk jaringan tersimpan individual, yaitu, menunjukkan bahwa jaringan ini hanya digunakan secara manual dan tidak dipertimbangkan secara otomatis oleh perangkat.

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

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