การเลือกเครือข่าย Android Wi-Fi

หน้านี้สรุปอัลกอริทึมและขั้นตอนที่ใช้ใน Android 12 สำหรับการเลือกและสลับระหว่างเครือข่าย Wi-Fi Android ประเมินคุณภาพของเครือข่ายที่เชื่อมต่ออย่างต่อเนื่องและประเมินคุณภาพของเครือข่ายที่มีอยู่

ชีวิตของการเชื่อมต่ออัตโนมัติ

ข้อมูลนี้จะอธิบายกระบวนการที่อุปกรณ์ Android ประเมินและเชื่อมต่อกับเครือข่าย Wi-Fi ที่พร้อมใช้งาน

  1. อุปกรณ์จะสแกนหาเครือข่ายที่ใช้ได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้ ขึ้นอยู่กับว่าหน้าจอเปิดหรือปิดอยู่

    • บนหน้าจอ (เชื่อมต่อ): การเชื่อมต่อระบบย่อย Android ประจำประเมินว่าการเชื่อมต่อปัจจุบันคือที่ดีพอที่จะข้ามสแกน (ตามที่กำหนดไว้ใน หน้าจอในการสแกน ) หากการเชื่อมต่อไม่ดีพอที่จะข้ามการสแกนการเชื่อมต่อระบบย่อยทริกเกอร์ สแกน ในการตรวจสอบเครือข่ายที่ใช้ได้ การสแกนเหล่านี้ยังสามารถทริกเกอร์โดยส่วนประกอบอื่นๆ ของระบบ เช่น ระบบตำแหน่งหรือแอป (รวมถึงแอปการตั้งค่า)
    • บนหน้าจอ (ตัดการเชื่อมต่อ): ผู้ Android ปัญหาการเชื่อมต่อระบบย่อยระยะสแกนตามกำหนดการ backoff ชี้แจง โมดูลจะประเมินผลการสแกนทั้งหมดที่ได้รับ และพยายามเลือกเครือข่ายที่ดีที่สุดที่จะเชื่อมต่อ
    • ปิดหน้าจอ (ตัดการเชื่อมต่อ): โปรแกรมโฮสต์ CPU เฟิร์มที่มีรายชื่อของเครือข่ายที่ต้องการใช้ถ่ายข้อมูลเครือข่ายที่ต้องการ (PNO) สแกนทันทีที่หน้าจอจะดับลง เฟิร์มแวร์จะปลุกโฮสต์หากพบเครือข่ายที่ต้องการ AOSP ถือว่าอุปกรณ์รองรับ PNO

    WifiManager#allowAutojoinGlobal(boolean) วิธีการสามารถใช้ในการเชื่อมต่ออัตโนมัติปิดการใช้งาน นี่เป็น API ที่มีสิทธิพิเศษที่ผู้ผลิตอุปกรณ์สามารถใช้ได้ในบางกรณี (เช่น อุปกรณ์ที่ไม่ใช่อุปกรณ์เคลื่อนที่และกำหนดค่าไว้ล่วงหน้า)

    หากอุปกรณ์ที่มีการเชื่อมต่อและ config_wifi_framework_enable_associated_network_selection ซ้อนทับถูกตั้งค่าเป็น false , ไม่สแกนการเชื่อมต่อที่มีการดำเนินการและผลการสแกนไม่ได้เลือกเครือข่ายทริกเกอร์ การตั้งค่านี้ไม่มีผลเมื่อยกเลิกการเชื่อมต่ออุปกรณ์ หมายความว่าการสแกนการเชื่อมต่อและการเลือกเครือข่ายยังคงเกิดขึ้น

  2. ผลการสแกนจะถูกประเมิน

    • หากอุปกรณ์ที่มีการเชื่อมต่อกับเครือข่าย Wi-Fi ประเมินกรอบการทำงานไม่ว่าจะเป็นเครือข่ายในปัจจุบันเป็นที่ดีพอที่จะข้ามการเลือกเครือข่าย

      เครือข่ายถูกกำหนดให้เป็นที่ดีพอที่จะข้ามการเลือกเครือข่ายถ้ามีข้อกำหนดดังต่อไปนี้:

      • ผ่านไปน้อยกว่า 10 วินาทีนับตั้งแต่การเลือกเครือข่ายครั้งล่าสุด
      • เมื่อเร็ว ๆ นี้ผู้ใช้เชื่อมต่อกับเครือข่ายด้วยตนเอง (ที่เมื่อเร็ว ๆ นี้จะกำหนดใช้ config_wifiSufficientDurationAfterUserSelectionMilliseconds ซ้อนทับ)
      • อุปกรณ์เชื่อมต่อกับการเชื่อมต่อการลงชื่อสมัครใช้ออนไลน์ (OSU)
      • ตรงตามข้อกำหนดทั้งหมดต่อไปนี้:

        • RSSI อยู่เหนือ RSSI เกณฑ์ต้องหรือการจราจรเพียงพอที่ไหลผ่านการเชื่อมต่อ (ดู หน้าจอในการสแกน สำหรับ RSSI และเกณฑ์การจราจร)
        • เครือข่ายได้รับการตรวจสอบแล้ว (เชื่อมต่อกับอินเทอร์เน็ต) หรือได้รับการอนุมัติจากผู้ใช้สำหรับการใช้งานโดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต
    • หากเครือข่ายเป็นสิ่งที่ดีพอที่จะข้ามการเลือกเครือข่ายที่ไม่มีการดำเนินการเพิ่มเติม

    • หากการเชื่อมต่อเครือข่าย Wi-Fi ไม่ดีพอหรือถ้าอุปกรณ์ไม่ได้เชื่อมต่อกับเครือข่ายกรอบเรียก nominators เครือข่าย เพื่อสร้างรายการของผู้สมัครเครือข่าย Wi-Fi เพื่อเชื่อมต่อขึ้นอยู่กับผลการสแกนกรอง ผู้เสนอชื่อเครือข่ายค้นหาการกำหนดค่า Wi-Fi ที่มีอยู่หรือสร้างการกำหนดค่าใหม่สำหรับเครือข่ายตัวเลือก

    • ผลการสแกนจะถูกกรองเพื่อเอา BSSIDs ที่มี RSSI ด้านล่างรายการ RSSI (ที่กำหนดโดยใช้ config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz และ config_wifiFrameworkScoreEntryRssiThreshold6ghz ซ้อนทับ) นอกจากนี้ BSSID ที่ถูกบล็อกจะถูกกรอง BSSID สามารถบล็อกได้โดยอิงจากความล้มเหลวในการเชื่อมต่อซ้ำ การยกเลิกการเชื่อมต่อบ่อยครั้ง และคำขอที่ชัดเจนจาก AP ที่จะไม่พยายามเชื่อมโยงในช่วงระยะเวลาหนึ่ง (MBO-OCE) BSSID ปิดกั้นอธิบายไว้ด้านล่างใน SSID และ BSSID ปิดกั้น

    • เมื่ออุปกรณ์เคลื่อนที่อย่างรวดเร็ว ผลการสแกนจะถูกกรองเพิ่มเติมเพื่อลบ BSSID ที่ RSSI เปลี่ยนแปลงอย่างรวดเร็ว (บ่งชี้ว่าพวกมันไม่ได้เคลื่อนที่ไปพร้อมกับอุปกรณ์) การเพิ่มประสิทธิภาพนี้จะกำหนดโดยใช้ config_wifiHighMovementNetworkSelectionOptimizationEnabled (เปิด / ปิดการใช้งานการเพิ่มประสิทธิภาพ) และ config_wifiHighMovementNetworkSelectionOptimizationScanDelayMs และ config_wifiHighMovementNetworkSelectionOptimizationRssiDelta ซ้อนทับซึ่งกำหนดค่าความต้องการความมั่นคงในผลการสแกน (เปลี่ยนแปลง RSSI มากกว่าผลการสแกนแยกออกจากกันอย่างเพียงพอในเวลา)

  3. กรอบการทำงาน แต้มผู้สมัคร ในการสร้างคะแนนสำหรับแต่ละชุดตัวระบุบริการ (SSID) ผู้สมัคร ตัวเลือก SSID สามารถรวมตัวระบุชุดบริการพื้นฐาน (BSSID) ได้หลายตัว (สร้างโดยผู้เสนอชื่อเครือข่าย) ผู้สมัครที่มีคะแนนสูงสุดเป็นผู้สมัครที่ชนะ

  4. กรอบการดำเนินการ ของผู้ใช้ทางเลือกการเชื่อมต่อ ขั้นตอนวิธีการซึ่งอาจทำให้ผู้ใช้เลือกเครือข่ายผู้สมัครที่ชนะใหม่แทนการใช้ผู้สมัครที่ชนะจากแต้มผู้สมัคร

  5. กรอบงานกำหนดว่าผู้สมัครที่ชนะตรงกับเครือข่ายที่เชื่อมต่ออยู่หรือไม่ ในการพิจารณาการแข่งขัน จะต้องมีคุณสมบัติตรงตามข้อใดข้อหนึ่งต่อไปนี้:

    • ผู้สมัครที่ชนะและเครือข่าย Wi-Fi ที่เชื่อมต่อมี BSSID เดียวกัน
    • หากมีการโรมมิ่งเฟิร์มแวร์ (รวมถึงความสามารถบัญชีดำของ BSSID) ผู้สมัครที่ชนะและเครือข่ายที่เชื่อมต่อจะมี SSID และประเภทความปลอดภัยเหมือนกัน

    หากผู้สมัครที่ชนะตรงกับเครือข่ายที่เชื่อมต่ออยู่ จะไม่มีการดำเนินการใดๆ เพิ่มเติม หากผู้สมัครที่ชนะไม่ตรงกับเครือข่าย อุปกรณ์จะเชื่อมโยงกับผู้สมัครที่ชนะ

หมายเหตุว่าการเชื่อมต่อเครือข่ายโดยอัตโนมัติถูกปิดใช้งานในขณะที่แอปใช้ Wi-Fi และเครือข่ายขอ API ซึ่งแทนที่ระบบและสร้างไม่มีอินเทอร์เน็ต LAN ยกเว้นบนอุปกรณ์ที่สนับสนุนสถานีพร้อมกันคู่

การประเมินเครือข่ายที่เชื่อมต่อ

กรอบงานหรือเฟิร์มแวร์ของ Android จะประเมินคุณภาพของเครือข่ายที่เชื่อมต่อเป็นระยะ ส่วนนี้อธิบายวิธีประเมินเครือข่ายที่เชื่อมต่อเมื่อเปิดหรือปิดหน้าจอ

การประเมินผลนี้จะกระทำนอกเหนือไปจาก การเลือกเครือข่าย ที่กล่าวข้างต้น

เปิดหน้าจอ

กรอบงาน Android ประเมินเครือข่ายที่เชื่อมต่อด้วยวิธีต่อไปนี้:

  1. โพลล์ Wi-Fi บริการ RSSI และเชื่อมโยงชั้นสถิติทุกๆ 3 วินาที (ที่กำหนดโดยใช้ config_wifiPollRssiIntervalMilliseconds ซ้อนทับ)
  2. บริการ Wi-Fi จะคำนวณคะแนนที่เชื่อมต่อตามสถิติ RSSI และลิงค์เลเยอร์
  3. บริการ Wi-Fi จะส่งคะแนนไปยังบริการการเชื่อมต่อ ซึ่งใช้คะแนนเพื่อพิจารณาว่าจะเชื่อมต่อกับเครือข่าย Wi-Fi หรือเครือข่ายประเภทอื่นที่มีให้บริการ เช่น เครือข่ายเซลลูลาร์

ปิดหน้าจอ

กรอบไม่ได้เริ่มต้นการประเมินผลในเครือข่ายที่เชื่อมต่อ แต่ การเลือกเครือข่าย กระบวนการยังอาจเกิดขึ้นหากมีการสแกนที่ริเริ่มโดยส่วนประกอบอื่น ๆ (เช่นบริการสถานที่) เฟิร์มแวร์จะประเมินคุณภาพเครือข่าย และหากคุณภาพเครือข่ายไม่ดี เฟิร์มแวร์อาจข้ามเครือข่ายหรือ (ในที่สุด) แยกออกจากเครือข่ายและปลุกโฮสต์

สแกนการเชื่อมต่อ

การสแกนจะดำเนินการโดยอัตโนมัติโดยขึ้นอยู่กับว่าอุปกรณ์เปิดหน้าจออยู่หรือไม่ ปิดหน้าจอและเชื่อมต่อกับ Wi-Fi หรือปิดหน้าจอและไม่ได้เชื่อมต่อกับ Wi-Fi

เปิดหน้าจอ

เฟรมเวิร์กจะทริกเกอร์การตัดสินใจสแกนในช่วงเวลาที่เพิ่มขึ้นเมื่อเปิดหน้าจอ ช่วงเวลาการตัดสินใจสแกนมีการกำหนดค่ากับ config_wifiDisconnectedScanIntervalScheduleSec , config_wifiConnectedScanIntervalScheduleSec และ config_wifiSingleSavedNetworkConnectedScanIntervalScheduleSec ซ้อนทับ (ซึ่งเป็นอาร์เรย์ของจำนวนเต็ม) โดยค่าเริ่มต้น การสแกนจะเกิดขึ้นโดยใช้ช่วงการถอยกลับแบบเอ็กซ์โพเนนเชียลที่ 20, 40, 80 และ 160 วินาที โดยอาจทำการสแกนครั้งต่อๆ ไปในช่วงเวลา 160 วินาที (เป็นค่าเริ่มต้นของการซ้อนทับด้านบน)

ช่วงเวลาการสแกนแบ็คออฟแบบเอ็กซ์โพเนนเชียลจะถูกรีเซ็ตและรีสตาร์ทที่ 20 วินาทีเมื่อใดก็ตามที่สถานะของหน้าจอเปลี่ยนไป กล่าวคือ เมื่อหน้าจอเปิดหรือปิด

การตัดสินใจว่าจะดำเนินการหรือข้ามสแกนจะขึ้นอยู่กับว่าการเชื่อมต่อเครือข่ายในปัจจุบันเป็นที่ดีพอที่จะข้ามการสแกน มีการเชื่อมต่อที่ดีพอที่จะข้ามสแกนถ้าใด ๆ ของข้อกำหนดดังต่อไปนี้:

  • อุปกรณ์เชื่อมต่อกับการเชื่อมต่อการลงชื่อสมัครใช้ออนไลน์ (OSU)
  • ปริมาณการใช้ที่เพียงพอกำลังไหลผ่านการเชื่อมต่อ (ดูเกณฑ์การรับส่งข้อมูลด้านล่าง)
  • RSSI อยู่เหนือที่จำเป็น RSSI เกณฑ์ (ดูเกณฑ์ RSSI ด้านล่าง) และการเลือกเครือข่ายที่ได้ดำเนินการเมื่อเร็ว ๆ นี้ (10 นาทีโดยค่าเริ่มต้น แต่สามารถกำหนดค่าใช้ config_wifiConnectedHighRssiScanMinimumWindowSizeSec ซ้อนทับ) และทั้งเครือข่ายที่มีการตรวจสอบ (เชื่อมต่อกับอินเทอร์เน็ต) หรือผู้ใช้ -ได้รับการอนุมัติให้ใช้โดยไม่ต้องเชื่อมต่ออินเทอร์เน็ต

RSSI และเกณฑ์การรับส่งข้อมูลคือ:

  • RSSI อยู่เหนือ -73 dBm สำหรับความถี่ 2.4 GHz, การกำหนดค่าด้วย config_wifi_framework_wifi_score_low_rssi_threshold_24GHz ซ้อนทับหรือ -70 dBm สำหรับ 5 GHz และ 6 GHz วงดนตรี, การกำหนดค่าด้วย config_wifi_framework_wifi_score_low_rssi_threshold_5GHz และ config_wifiFrameworkScoreLowRssiThreshold6ghz ซ้อนทับ
  • จราจร (รับหรือส่งข้อมูล) อยู่เหนือ 16 แพ็คเก็ตต่อวินาที (PPS) การกำหนดค่าด้วย config_wifiFrameworkMinPacketPerSecondActiveTraffic ซ้อนทับ

ปิดหน้าจอและเชื่อมต่อกับ Wi-Fi

เมื่อหน้าจอปิดอยู่และอุปกรณ์เชื่อมต่อกับเครือข่าย Wi-Fi เฟิร์มแวร์ (Wi-Fi SoC) จะทำการสแกนข้ามเขต เฟรมเวิร์กจะไม่ทำการสแกนใดๆ เมื่อปิดหน้าจอ

ปิดหน้าจอและไม่ได้เชื่อมต่อกับ Wi-Fi (สถานะตัดการเชื่อมต่อ)

เมื่อปิดหน้าจอและ Wi-Fi เชื่อมต่อประสิทธิภาพการทำงานของเฟิร์มแว PNO สแกนสำหรับ SSIDs กรอบงานกำหนดค่าเฟิร์มแวร์ด้วยรายการ SSID ที่จะสแกนหาและรายการช่องที่จะสแกน หากพบ SSID ที่กำหนดค่าไว้ เฟิร์มแวร์จะปลุกเฟรมเวิร์ก

กรอบงานยังกำหนดค่าช่วงเวลาที่เฟิร์มแวร์จะทำการสแกน PNO โดยใช้สถานะการเคลื่อนย้ายอุปกรณ์เพื่อเลือกช่วงเวลาการสแกนที่แตกต่างกัน อยู่ในสถานะที่เคลื่อนไหวต่ำ (อุปกรณ์อยู่นิ่ง) ช่วงเวลาคือ 60 วินาทีสำหรับสามสแกนครั้งแรก (ควบคุมโดย config_wifiStationaryPnoScanIntervalMillis ซ้อนทับ) และ 180 วินาที (คงที่ 3x คูณซ้อนทับ) ในการสแกนที่ตามมา อยู่ในสถานะที่คล่องตัวสูงช่วงเวลาคือ 20 วินาทีสำหรับสามสแกนครั้งแรก (ควบคุมโดย config_wifiMovingPnoScanIntervalMillis ซ้อนทับ) และ 60 (คูณ 3x คงที่ของการซ้อนทับ) วินาทีในการสแกนที่ตามมา

ผู้เสนอชื่อเครือข่าย

nominators เครือข่ายพบหรือสร้างการกำหนดค่า ( WifiConfiguration ) สำหรับเครือข่ายที่มี:

  • พร้อมใช้งานในปัจจุบัน (ตามผลการสแกน) หรือเครือข่ายที่เชื่อมต่ออยู่ในปัจจุบัน (ซึ่งบางครั้งอาจหายไปจากผลการสแกนที่ไม่สม่ำเสมอ)
  • มี RSSI น้อยที่สุด น้อยที่สุดคือ RSSI -80 dBm สำหรับความถี่ 2.4 GHz และ -77 dBm สำหรับ 5 GHz และ 6 GHz วงดนตรีที่กำหนดโดยใช้ config_wifi_framework_wifi_score_entry_rssi_threshold_24GHz , config_wifi_framework_wifi_score_entry_rssi_threshold_5GHz และ config_wifiFrameworkScoreEntryRssiThreshold6ghz ซ้อนทับ
  • ไม่ถูกบล็อก เช่น เนื่องจากการเชื่อมต่อล้มเหลวครั้งก่อน
  • เครือข่ายไม่ได้ระบุว่าใช้ไม่ได้ (เช่น ใช้ MBO/OCE)
  • สามารถเชื่อมโยงกับการใช้ข้อมูลประจำตัวที่มีอยู่ในอุปกรณ์

มีการใช้ผู้เสนอชื่อเครือข่ายต่อไปนี้:

  • ที่บันทึกไว้ nominator เครือข่าย: ประเมินเครือข่ายที่บันทึกไว้ทั้งหมด (รวมทั้งบันทึกการสมัครสมาชิก Passpoint)
  • แนะนำ nominator เครือข่าย: ประเมินทุกเครือข่ายให้บริการโดยปพลิเคชันโดยใช้ ข้อเสนอแนะ API (รวมถึงปัญหาการสมัครสมาชิก Passpoint)
  • nominator เครือข่ายภายนอกคะแนน: กลไก OEM เพื่อให้ตัวเลือกการเชื่อมต่อเครือข่ายไปยังอุปกรณ์ สำหรับข้อมูลเพิ่มเติมโปรดดูที่ ผู้ให้บริการเครือข่ายภายนอกคะแนน

ผู้ทำประตู

ผู้ทำคะแนนของผู้สมัครประเมินและให้คะแนนสำหรับผู้สมัครแต่ละคน คะแนนสำหรับ ThroughputScorer (แต้มเริ่มต้น) จะขึ้นอยู่กับต่อไปนี้:

  • คะแนนฐานวณ RSSI ที่ RSSI เป็นรากที่ -73 dBm สำหรับความถี่ 2.4 GHz หรือ -70 dBm สำหรับ 5 GHz และ 6 GHz วงดนตรี (กำหนดค่าด้วย config_wifi_framework_wifi_score_low_rssi_threshold_24GHz , config_wifi_framework_wifi_score_low_rssi_threshold_5GHz และ config_wifiFrameworkScoreLowRssiThreshold6ghz ซ้อนทับ)
  • การเพิ่มคะแนนจะคำนวณตามการประมาณการปริมาณงานที่ได้จากเทคโนโลยี ความถี่ของช่องสัญญาณ แบนด์วิดท์ RSSI เงื่อนไขของช่อง จำนวนสตรีมเชิงพื้นที่สูงสุด และพารามิเตอร์อื่นๆ เพิ่มคะแนนจะกำหนดใช้ config_wifiFrameworkThroughputBonusNumerator และ config_wifiFrameworkThroughputBonusDenominator ซ้อนทับและถูก จำกัด ให้เป็นค่าสูงสุดระบุโดยใช้ config_wifiFrameworkThroughputBonusLimit ซ้อนทับ
  • เครือข่ายผู้สมัครที่ได้รับเลือกเมื่อเร็ว ๆ นี้โดยผู้ใช้หรือแอปที่ได้รับเพิ่มคะแนนขนาดใหญ่สำหรับกำหนดระยะเวลาการใช้ config_wifiFrameworkLastSelectionMinutes ซ้อนทับ (สำหรับระยะเวลาที่เครือข่ายมีการรับประกันว่าจะได้รับการคัดเลือกผ่านเครือข่าย nonuser เลือก)
  • ผู้สมัครที่ตรงกับเครือข่ายในปัจจุบันได้รับเพิ่มคะแนนการกำหนดค่าโดย config_wifiFrameworkCurrentNetworkBonusMin และ config_wifiFrameworkCurrentNetworkBonusPercent ซ้อนทับ (จะได้รับโบนัสพิเศษในอัตราร้อยละของ RSSI ของมันและผ่านตามคะแนนลงไปต่ำสุดที่กำหนด)
  • เครือข่ายที่ปลอดภัยมีคะแนนสูงกว่าเครือข่ายแบบเปิด โบนัสมีการกำหนดค่าใช้ config_wifiFrameworkSecureNetworkBonus ซ้อนทับ
  • เครือข่ายที่ไม่มีการตรวจสอบ (ฟรี) จะได้รับคะแนนสูงกว่าเครือข่ายที่มีการคิดค่าบริการตามปริมาณข้อมูล โบนัสมีการกำหนดค่าใช้ config_wifiFrameworkUnmeteredNetworkBonus ซ้อนทับ
  • เครือข่ายที่บันทึกไว้มีคะแนนสูงกว่าเครือข่ายที่แนะนำโดยใช้ Suggestion API โบนัสมีการกำหนดค่าใช้ config_wifiFrameworkSavedNetworkBonus ซ้อนทับ
  • เครือข่ายที่ไม่น่าเชื่อถือ (ซึ่งสามารถขอเป็นส่วนหนึ่งของ Suggestion API) ได้คะแนนต่ำกว่าเครือข่ายอื่นๆ
  • เครือข่ายที่เคยตรวจพบว่าไม่มีอินเทอร์เน็ตจะได้รับคะแนนเป็น 0 หากอุปกรณ์เชื่อมต่อกับเครือข่ายอื่นที่มีการเข้าถึงอินเทอร์เน็ตอยู่

โบนัสเริ่มต้นสำหรับการบันทึกเทียบกับข้อเสนอแนะและไม่ถูกตรวจสอบกับมิเตอร์ (นั่นคือค่าโอเวอร์เลย์เริ่มต้น) จะสร้างลำดับความสำคัญที่เข้มงวดสำหรับการบันทึก แนะนำ ตรวจสอบและไม่คิดค่าบริการ:

  1. บันทึกเครือข่ายที่ไม่มีการตรวจสอบ
  2. แนะนำเครือข่ายที่ไม่มีการตรวจสอบ
  3. เครือข่ายมิเตอร์ที่บันทึกไว้
  4. แนะนำเครือข่ายมิเตอร์

ซึ่งหมายความว่าระบบจะเลือกเครือข่ายที่ไม่มีการตรวจสอบ (ฟรี) ที่บันทึกไว้ก่อนเครือข่ายที่มีการตรวจวัด (แบบชำระเงิน) ที่บันทึกไว้เสมอ โบนัสคะแนนที่เพิ่งเลือก (โดยผู้ใช้หรือแอป) อาจแทนที่ลำดับความสำคัญที่เข้มงวดนั้น

กรอบงานสามารถติดตั้งผู้ให้คะแนนของผู้สมัครได้หลายราย แต่สามารถเปิดใช้งานได้ครั้งละหนึ่งรายการเท่านั้น ผู้ให้คะแนนอื่นๆ สามารถใช้สำหรับเมตริก (เพื่อตรวจสอบอัลกอริทึมทางเลือก) ใน Android 11 แต้มเริ่มต้นคือ ThroughputScorer

การบล็อก SSID และ BSSID

เฟรมเวิร์กอาจบล็อก SSID และ/หรือ BSSID นั่นคือไม่พิจารณาสำหรับการเชื่อมต่อชั่วคราวหรือถาวร

การบล็อก BSSID

การบล็อก BSSID ทำงานโดยเก็บตัวนับความล้มเหลวไว้สองตัว ตัวนับความล้มเหลวอย่างต่อเนื่อง และ ตัวนับสตรีค ตามประเภทความล้มเหลวเฉพาะ (ดูด้านล่างสำหรับรายการประเภทความล้มเหลว) เมื่อเกิดความล้มเหลว:

  • ตัวนับสำหรับประเภทความล้มเหลวที่สอดคล้องกันจะเพิ่มขึ้น
  • หากถึงขีดจำกัดความล้มเหลวสำหรับประเภทความล้มเหลวนั้น:
    • BSSID ถูกบล็อก
    • ตัวนับสตรีคสำหรับความล้มเหลวจะเพิ่มขึ้น

ระยะเวลาที่ BSSID ถูกบล็อกสำหรับการเริ่มต้นที่ (กำหนด) ค่าฐาน (ระบุโดย config_wifiBssidBlocklistMonitorBaseBlockDurationMs หรือ config_wifiBssidBlocklistMonitorBaseLowRssiBlockDurationMs ซ้อนทับขึ้นอยู่กับ RSSI) และชี้แจงเพิ่มขึ้นเพื่อกำหนดขอบเขตบน (ระบุโดย config_wifiBssidBlocklistMonitorFailureStreakCap ซ้อนทับ) ระยะเวลาจะเพิ่มขึ้นหากความล้มเหลวเกิดขึ้นอย่างต่อเนื่องใน BSSID เดียวกัน ระยะเวลาคือระยะเวลาพื้นฐานที่เพิ่มขึ้นแบบทวีคูณโดยสตรีคความล้มเหลว นั่นคือ สตรีคความล้มเหลว 2 ครั้ง หมายถึงระยะเวลาบล็อกฐาน 4x

เกณฑ์สำหรับการบล็อก BSSID ขึ้นอยู่กับสาเหตุของความล้มเหลว และแต่ละรายการสามารถปรับแต่งได้โดยใช้การซ้อนทับ:

  • AP ปฏิเสธการเชื่อมโยงโดยใช้ MBO / OCE ไม่สามารถที่จะจัดการกับรหัส STA ใหม่: config_wifiBssidBlocklistMonitorApUnableToHandleNewStaThreshold
  • การตรวจสอบอินเทอร์เน็ตผ่านเครือข่ายนี้ล้มเหลว: config_wifiBssidBlocklistMonitorNetworkValidationFailureThreshold
  • รหัสผ่านรหัสความล้มเหลวการตรวจสอบผิด: config_wifiBssidBlocklistMonitorWrongPasswordThreshold
  • EAP รหัสการตรวจสอบความล้มเหลวความล้มเหลวสำหรับเครือข่าย EAP: config_wifiBssidBlocklistMonitorEapFailureThreshold
  • สมาคมปฏิเสธอื่น ๆ ปฏิเสธการเชื่อมโยงโดยทั่วไป: config_wifiBssidBlocklistMonitorAssociationRejectionThreshold
  • สมาคมหมดเวลา: config_wifiBssidBlocklistMonitorAssociationTimeoutThreshold
  • ความล้มเหลวในการตรวจสอบอื่น ๆ ความล้มเหลวในการตรวจสอบโดยทั่วไป: config_wifiBssidBlocklistMonitorAuthenticationFailureThreshold
  • ความล้มเหลวของ DHCP ล้มเหลวในการจัดหา DHCP: config_wifiBssidBlocklistMonitorDhcpFailureThreshold
  • ตัดการเชื่อมต่อความผิดปกติของอุปกรณ์ได้ตัดการเชื่อมต่อจากเครือข่ายภายในระยะเวลาที่สั้นมากหลังจากที่เชื่อมต่อ: config_wifiBssidBlocklistMonitorAbnormalDisconnectThreshold หน้าต่างเวลาที่จะกำหนดด้วย config_wifiBssidBlocklistAbnormalDisconnectTimeWindowMs

เงื่อนไขการล้างรายการบล็อก BSSID

BSSID จะถูกล้างออกจากรายการที่บล็อกเมื่อ:

  • Wi-Fi ถูกสลับ: BSSID ทั้งหมดจะถูกลบออกจากรายการที่บล็อก
  • ผู้ใช้แตะเครือข่ายในตัวเลือก Wi-Fi: BSSID ทั้งหมดของเครือข่ายที่ผู้ใช้เลือกจะถูกลบออกจากรายการบล็อก
  • หมดเวลา: BSSID จะถูกลบออกจากรายการบล็อกเมื่อถึงระยะเวลาบล็อก
  • รีบูต: รายการที่บล็อกทั้งหมดจะถูกล้าง
  • ลบเครือข่ายแล้ว: BSSID ทั้งหมดที่เชื่อมโยงกับเครือข่ายนี้จะถูกลบออกจากรายการที่บล็อก

เงื่อนไขการรีเซ็ตตัวนับความล้มเหลวและสตรีค:

  • รีบูต: รีเซ็ตสำหรับ BSSID ทั้งหมด
  • ลบเครือข่าย: รีเซ็ตสำหรับ BSSID ที่เชื่อมโยงกับเครือข่าย
  • สำเร็จในการเชื่อมต่อ L2: รีเซ็ตสำหรับรหัสข้อผิดพลาดต่อไปนี้

    • 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 (ตามเงื่อนไขเคลียร์ แต่ถ้าครั้งสุดท้ายที่อุปกรณ์ที่เชื่อมต่อ BSSID นี้คือมากกว่า 3 ชั่วโมงที่ผ่านมา)
    • REASON_NONLOCAL_DISCONNECT_CONNECTING
  • ความสำเร็จในการตรวจสอบเครือข่าย: รีเซ็ตสำหรับรหัสข้อผิดพลาดต่อไปนี้

    • REASON_NETWORK_VALIDATION_FAILURE
  • ความสำเร็จในการเตรียมใช้งาน DHCP: รีเซ็ตรหัสข้อผิดพลาดต่อไปนี้

    • REASON_DHCP_FAILURE

การปิดกั้น SSID

การบล็อก SSID ทำงานเหมือนกับการบล็อก BSSID ตัวนับความล้มเหลวต่อประเภทความล้มเหลวต่อเครือข่ายจะเพิ่มขึ้นเมื่อเกิดความล้มเหลวในการเชื่อมต่อ (ประเภทนั้น) เมื่อจำนวนความล้มเหลวของประเภทใดประเภทหนึ่งเกินขีดจำกัด SSID จะถูกบล็อกอย่างถาวรหรือชั่วคราวตามการกำหนดค่า การกำหนดค่าสำหรับประเภทความล้มเหลวของแต่ละคนจะถูกเขียนใน WifiConfiguration.NetworkSelectionStatus.DISABLE_REASON_INFOS และมีรายละเอียดดังนี้

* สำหรับเครือข่ายที่ปิดใช้งานชั่วคราว ระยะเวลาการปิดใช้งานจะเปลี่ยนแปลงแบบไดนามิกตามจำนวนความล้มเหลวในการเชื่อมต่อติดต่อกันที่พบในเครือข่าย หลังจากที่เครือข่ายล้มเหลวในการเชื่อมต่อติดต่อกันห้าครั้ง ความล้มเหลวที่ตามมาแต่ละครั้งจะส่งผลให้ระยะเวลาการปิดใช้งานยาวนานเป็นสองเท่าของระยะเวลาก่อนหน้า ตัวอย่างเช่น เครือข่ายที่มีความล้มเหลวติดต่อกันห้าครั้งจะถูกปิดใช้งานเป็นเวลา 5 นาที จากนั้น 10 นาทีสำหรับความล้มเหลวครั้งที่หก 20 นาทีสำหรับความล้มเหลวที่เจ็ด และอื่นๆ จนถึงขีดจำกัดสูงสุด 18 ชั่วโมง

รหัสความล้มเหลว คำอธิบาย เกณฑ์ ระยะเวลาปิดฐาน* ปิดการใช้งานประเภท
DISABLED_DHCP_FAILURE ความล้มเหลวในการจัดเตรียม DHCP 5 5 นาที ชั่วคราว
DISABLED_NO_INTERNET_TEMPORARY การตรวจสอบเครือข่ายล้มเหลว แต่ผู้ใช้ระบุว่าต้องการเชื่อมต่อกับเครือข่ายนี้ต่อไปในอนาคต 1 10 นาที ชั่วคราว
DISABLED_AUTHENTICATION_NO_CREDENTIALS ผู้ร้องขอไม่มีข้อมูลประจำตัวในการเชื่อมต่อกับเครือข่าย 1 NA ถาวร
DISABLED_NO_INTERNET_PERMANENT ค่าเริ่มต้นสำหรับความล้มเหลวในการตรวจสอบเครือข่าย 1 NA ถาวร
DISABLED_BY_WIFI_MANAGER เลิกใช้แล้วและไม่ได้ใช้ 1 NA ถาวร
DISABLED_BY_WRONG_PASSWORD รหัสผ่านไม่ถูกต้อง และเครือข่ายนี้ไม่เคยเชื่อมต่อกับ . สำเร็จ 1 NA ถาวร
DISABLED_AUTHENTICATION_NO_SUBSCRIPTION ความล้มเหลว EAP ที่ไม่ได้สมัครซิมการ์ด 1 NA ถาวร
DISABLED_ASSOCIATION_REJECTION ความล้มเหลวในการปฏิเสธสมาคม 5 5 นาที ชั่วคราว
DISABLED_AUTHENTICATION_FAILURE ความล้มเหลวในการตรวจสอบสิทธิ์อื่นๆ (นั่นคือ ไม่ใช่รหัสผ่านผิดหรือความล้มเหลว EAP) 5 5 นาที ชั่วคราว
DISABLED_AUTHENTICATION_PRIVATE_EAP_ERROR ความล้มเหลว EAP เฉพาะผู้ให้บริการ (ส่วนตัว) 1 NA ถาวร
DISABLED_NETWORK_NOT_FOUND ผู้ร้องขอไม่พบเครือข่ายในผลการสแกนที่ตรงกับเครือข่ายที่ร้องขอโดยเฟรมเวิร์กสำหรับการเชื่อมต่อ (รวมถึงความสามารถของเครือข่าย) 2 5 นาที ชั่วคราว
DISABLED_CONSECUTIVE_FAILURES เครือข่ายล้มเหลวในการเชื่อมต่อห้าครั้งขึ้นไปติดต่อกัน ประเภทความล้มเหลวสำหรับความล้มเหลวเหล่านี้รวมถึงแต่ไม่จำกัดเฉพาะประเภทความล้มเหลวที่ระบุไว้ในตารางนี้
5 5 นาที ชั่วคราว

เครือข่ายที่ปิดใช้งานชั่วคราวจะเปิดใช้งานอีกครั้งเมื่อ:

  • หมดเวลาปิดการใช้งานแล้ว
  • ผู้ใช้เลือกเครือข่ายที่จะเชื่อมต่อด้วยตนเอง
  • ผู้ใช้สลับ Wi-Fi
  • ระบบจะรีบูต

เครือข่ายที่ปิดใช้งานอย่างถาวรจะเปิดใช้งานอีกครั้งเมื่อ:

  • ผู้ใช้เลือกเครือข่ายที่จะเชื่อมต่อด้วยตนเอง

ตัวนับความล้มเหลวสำหรับเครือข่ายจะถูกรีเซ็ตเมื่อ:

  • เครือข่ายจะถูกลบออก
  • อุปกรณ์เชื่อมต่อกับเครือข่ายสำเร็จแล้ว
  • เครือข่ายได้รับการเปิดใช้งานอีกครั้งหลังจากหมดเวลาการปิดใช้งาน
  • ผู้ใช้เลือกเครือข่ายที่จะเชื่อมต่อด้วยตนเอง
  • ระบบจะรีบูต

บัตรคะแนน

บัตรคะแนนที่เปิดตัวใน Android 10 บันทึกสถิติบนอุปกรณ์เกี่ยวกับ BSSID บัตรคะแนนจะยังคงใช้ IpMemoryStore บริการ

บัตรคะแนนไม่ได้ใช้ในการเลือกเครือข่าย Android 11

ตัวเลือกการเชื่อมต่อผู้ใช้

Android มีอัลกอริธึมตัวเลือกการเชื่อมต่อผู้ใช้ที่ช่วยให้กระบวนการเลือกชอบเครือข่าย Wi-Fi ที่ผู้ใช้เชื่อมต่ออย่างชัดเจน เช่น เครือข่ายในบ้าน ผู้ใช้อาจชอบเครือข่ายดังกล่าวมากกว่าเครือข่ายสาธารณะ แม้ว่าประสิทธิภาพจะต่ำกว่าเครือข่ายสาธารณะ เนื่องจากพวกเขาให้บริการเพิ่มเติม เช่น ความสามารถในการควบคุมอุปกรณ์ภายในบ้าน

ค่ากำหนดของผู้ใช้สำหรับเครือข่ายถูกจับโดยทำเครื่องหมายการกำหนดค่า Wi-Fi ที่มองเห็นได้ทั้งหมดและความแรงของสัญญาณในขณะที่ผู้ใช้เลือกเครือข่าย หากหนึ่งในการกำหนดค่า Wi-Fi ที่ทำเครื่องหมายไว้ถูกเลือกไว้ในระหว่างกระบวนการเลือกอัตโนมัติและมีเครือข่ายที่ผู้ใช้เลือก อัลกอริทึมตัวเลือกการเชื่อมต่อผู้ใช้จะแทนที่การเลือกด้วยเครือข่ายที่ผู้ใช้เลือกหากตรงตามเงื่อนไขต่อไปนี้:

  • ผู้ใช้เชื่อมต่อเครือข่ายตัวเลือกมีการเข้าถึงอินเทอร์เน็ตครั้งสุดท้ายที่ใช้
  • ตัวเลือกการเชื่อมต่อผู้ใช้มีความแรงของสัญญาณที่ไม่เลวร้ายไปกว่าเมื่อเลือกไว้แต่เดิมโดยมีขอบข้อผิดพลาด อัตรากำไรข้อผิดพลาดนี้สามารถกำหนดค่าการใช้การซ้อนทับ config_wifiEstimateRssiErrorMarginDb

ผู้ใช้เชื่อมต่อเครือข่ายตัวเลือกยังคงมีอยู่หลังจากรีบูต ตัวเลือกการเชื่อมต่อผู้ใช้ใช้ได้กับเครือข่ายที่บันทึกไว้ เครือข่าย Passpoint และเครือข่ายคำแนะนำ

สถานีคู่พร้อมกัน

ส่วนนี้อธิบายการเลือกเครือข่าย Wi-Fi เมื่ออุปกรณ์รองรับการเชื่อมต่อกับเครือข่าย Wi-Fi สองเครือข่ายพร้อมกัน

ทำก่อนพัก

ถ้า ทำก่อนที่จะแบ่ง การทำงานมีการเปิดใช้ความพยายามในการอุปกรณ์ที่จะเชื่อมต่อกับเครือข่ายใหม่ก่อนที่จะถอดจากเครือข่ายเก่า โฟลว์ make-before-break ใช้อัลกอริธึมการเลือกเครือข่ายเดียวกันกับการสลับเครือข่ายแบบแบ่งก่อนทำ (ซึ่งคือเมื่ออุปกรณ์ยกเลิกการเชื่อมต่อจากเครือข่ายเก่าก่อนที่จะเชื่อมต่อกับเครือข่ายใหม่) หากอัลกอริธึมการเลือกเครือข่ายเลือกเครือข่ายที่ไม่สามารถสลับโดยใช้ make-before-make อุปกรณ์จะกลับไปสู่สถานะ break-before-make โดยอัตโนมัติ

การเชื่อมต่ออินเทอร์เน็ตที่ถูก จำกัด และอินเทอร์เน็ต

ถ้า พร้อมกันที่ จำกัด และการเชื่อมต่ออินเทอร์เน็ต ฟังก์ชั่นถูกเปิดใช้งานอุปกรณ์ที่สามารถเชื่อมต่อไปยัง จำกัด เครือข่าย Wi-Fi รองที่จะใช้ได้เฉพาะเพื่อเลือกปพลิเคชันการกำหนดค่าโดยผู้ผลิตอุปกรณ์ คำแนะนำสำหรับผู้ผลิตอุปกรณ์การกำหนดค่านี้คือใน พร้อมกันที่ จำกัด และการเชื่อมต่ออินเทอร์เน็ต

เมื่ออัลกอริธึมการเลือกเครือข่ายตรวจพบผลการสแกนที่ตรงกับคำแนะนำของ OEM ที่จ่าย/ส่วนตัว อัลกอริธึมจะเชื่อมต่อกับมันเป็นเครือข่ายที่สองโดยอัตโนมัติ การเลือกเครือข่ายสำหรับเครือข่าย Wi-Fi หลัก (ซึ่งให้การเชื่อมต่ออินเทอร์เน็ตกับแอปทั่วไป) เกิดขึ้นพร้อมกันตามปกติ

คำถามที่พบบ่อย (FAQ)

  1. เครือข่ายที่ปลอดภัยมีความสำคัญเหนือเครือข่ายแบบเปิดเสมอหรือไม่

    ไม่ได้ บันทึกเทียบกับที่แนะนำและตามมิเตอร์กับไม่มีการตรวจสอบเป็นหมวดหมู่หลักในการประเมินเครือข่าย ภายในแต่ละหมวดหมู่ เครือข่ายที่ปลอดภัยมีความสำคัญเหนือเครือข่ายแบบเปิด แต่จะมีน้ำหนักที่สูงกว่ามากสำหรับคุณภาพของการเชื่อมต่อ

    เหตุผลก็คือการรักษาความปลอดภัยข้อมูลผู้ใช้จริงนั้นมาจากการเข้ารหัสแบบ end-to-end (เช่น TLS) เครือข่ายที่ปลอดภัยจะเข้ารหัสเฉพาะช่วงแรกของการสื่อสาร และสำหรับเครือข่ายที่มีคีย์ที่แชร์ล่วงหน้า ก็ไม่ได้ให้ความเป็นส่วนตัวมากนัก

  2. เหตุใดเครือข่ายที่บันทึกไว้จึงมีลำดับความสำคัญสูงกว่าเครือข่ายที่แนะนำ

    เครือข่ายฟรี (ไม่มีการตรวจสอบ) ที่บันทึกไว้จะได้รับการจัดลำดับความสำคัญเหนือเครือข่ายฟรีที่แนะนำ และเครือข่ายที่มีการตรวจวัดที่บันทึกไว้จะได้รับการจัดลำดับความสำคัญเหนือเครือข่ายที่มีการวัดปริมาณข้อมูลที่แนะนำ

    เครือข่ายที่บันทึกไว้มีลำดับความสำคัญสูงกว่าเครือข่ายที่แนะนำ เนื่องจากเครือข่ายที่บันทึกไว้เป็นเครือข่ายที่ผู้ใช้เพิ่มลงในอุปกรณ์อย่างชัดเจน นั่นหมายถึงการตั้งค่าที่จะเชื่อมต่อกับเครือข่ายเหล่านี้เมื่อเป็นไปได้

    โปรดทราบว่าผู้ใช้สามารถปิดใช้งานลักษณะการเชื่อมต่ออัตโนมัติสำหรับเครือข่ายที่บันทึกไว้แต่ละเครือข่าย กล่าวคือ แสดงว่าเครือข่ายเหล่านี้มีไว้ใช้งานด้วยตนเองเท่านั้นและจะไม่ได้รับการพิจารณาโดยอัตโนมัติจากอุปกรณ์

  3. ฉันสามารถเปลี่ยนลำดับความสำคัญที่เข้มงวดหรือลบออกทั้งหมดได้หรือไม่

    ผู้ผลิตอุปกรณ์สามารถปรับเปลี่ยนการตัดสินใจเลือกเครือข่ายโดยการปรับเปลี่ยนการวางซ้อนโบนัสที่ระบุไว้ในส่วนดังกล่าวข้างต้น อย่างไรก็ตาม ไม่แนะนำให้เปลี่ยนค่าเริ่มต้นเนื่องจากได้รับเลือกหลังจากพิจารณากรณีการใช้งานหลายกรณีอย่างรอบคอบแล้ว