Wi-Fi 7

Đối với các thiết bị chạy Android 13 trở lên, Android hỗ trợ chuẩn Wi-Fi 7 (IEEE 802.11be). Trang này mô tả các tính năng của Android Wi-Fi 7, bao gồm hoạt động cơ bản và hoạt động đa liên kết (MLO).

Các tính năng cơ bản của Wi-Fi 7

Phần này mô tả các tính năng cơ bản của Wi-Fi 7 có trong Android 13 trở lên.

Hỗ trợ thiết bị Wi-Fi 7

Khung Android bao gồm API WifiManager#isWifiStandardSupported(int standard) , ứng dụng nào có thể gọi bằng đối số ScanResults.WIFI_STANDARD_11BE để kiểm tra xem thiết bị có hỗ trợ Wi-Fi 7 hay không.

Khi API này được gọi, mô-đun Wi-Fi sẽ kiểm tra xem lớp phủ cấu hình config_wifi11beSupportOverride có được sử dụng làm ghi đè hay không và thực hiện như sau:

  • Nếu lớp phủ được đặt thành true , thiết bị được cho là hỗ trợ Wi-Fi 7 bất kể phản hồi từ nl80211. Ghi đè này chỉ hữu ích cho các nhà sản xuất thiết bị không có trình điều khiển hỗ trợ Wi-Fi 7.
  • Nếu lớp phủ được đặt thành false (giá trị mặc định), mô-đun Wi-Fi sẽ sử dụng thông tin từ nl80211. Mô-đun Wi-Fi yêu cầu thông tin từ wificond, gọi lệnh nl80211 NL80211_CMD_GET_WIPHY . Nếu thuộc tính NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY nằm trong phản hồi từ trình điều khiển, thiết bị được cho là hỗ trợ Wi-Fi 7.

Hỗ trợ AP Wi-Fi 7 được quét

Khung Android bao gồm API int ScanResult#getWifiStandard() mà ứng dụng có thể gọi để kiểm tra xem điểm truy cập (AP) được quét có hỗ trợ Wi-Fi 7 hay không. Nếu AP hỗ trợ Wi-FI 7 thì API sẽ trả về ScanResults.WIFI_STANDARD_11BE . Thiết bị không bắt buộc phải hỗ trợ Wi-Fi 7 để các ứng dụng sử dụng API này.

Khi API này được gọi, mô-đun Wi-Fi sẽ kiểm tra xem EHT Capability IE có nằm trong kết quả quét kết nối được trả về hay không. Nếu EHT Capability IE có trong kết quả quét thì AP được quét hỗ trợ Wi-Fi 7. Lớp AOSP WifiTracker hiển thị thông tin hỗ trợ này trong giao diện người dùng khi chạy ở chế độ dài dòng.

Chế độ kết nối STA

Khung Android bao gồm API int WifiInfo#getWifiStandard() mà ứng dụng có thể gọi để kiểm tra xem chế độ kết nối trạm (STA) hiện tại có phải là Wi-Fi 7 hay không. Chế độ kết nối STA là Wi-Fi 7 khi cả thiết bị và thiết bị được kết nối AP hỗ trợ Wi-Fi 7. Nếu chế độ kết nối là Wi-Fi 7, API sẽ trả về ScanResults.WIFI_STANDARD_11BE .

Khi getWifiStandard được gọi, mô-đun Wi-Fi sẽ xác định chế độ bằng cách gọi API HAL ISupplicantStaIface#getConnectionCapabilities() . Việc triển khai API HAL này trong lớp AIDL wpa_supplicant sẽ kiểm tra xem EHT Capability IE có ở cả AssocReqAssocRsp trong quá trình thiết lập kết nối hay không.

Lựa chọn mạng

Trong Android 13, việc chọn mạng sử dụng một số tham số để xác định AP nào sẽ kết nối. Một trong những tham số là thông lượng ước tính của AP, được ước tính bằng khối ThroughputPredictor . Khối ThroughputPredictor sử dụng các tham số PHY của cả thiết bị và AP được quét.

Trong Android 13, ThroughputPredictor sử dụng các khả năng AP sau trong tính toán của mình:

  • Hỗ trợ Wi-Fi 7 (802.11be)
  • Hỗ trợ độ rộng kênh 320 MHz

Việc đưa các khả năng này vào logic ThroughputPredictor sẽ tăng cơ hội chọn các AP có khả năng Wi-Fi 7 khi thiết bị có thể sử dụng các tính năng này.

Phạm vi dựa trên Wi-Fi RTT

Android cung cấp hỗ trợ API cho phần mở đầu EHT và độ rộng kênh 320 MHz cho Wi-Fi RTT . Điều này cho phép hỗ trợ các khả năng liên quan đến Wi-Fi 7 trong RTT bất cứ khi nào chip này hỗ trợ.

API HAL

Các API HAL sau hỗ trợ khả năng của Wi-Fi 7 cho phạm vi dựa trên RTT:

API

Các ứng dụng có thể sử dụng các API sau cho phạm vi dựa trên Wi-Fi 7 RTT:

AP mềm

Android hỗ trợ Wi-Fi 7 trong Soft AP và cung cấp các tính năng sau.

Bắt đầu AP mềm

Android hỗ trợ khởi động Soft AP ở chế độ Wi-Fi 7. Điều này được điều chỉnh bởi cấu hình lớp phủ config_wifiSoftapIeee80211beSupported .

Mô-đun Wi-Fi sử dụng lớp phủ config_wifiSoftapIeee80211beSupported để đặt boolean HwModeParams#enable80211BE trong lệnh gọi API IHostApd#addAccessPoint() . Trong lớp AIDL của Hostapd, giá trị này được sử dụng để đặt các tham số hostapd.conf .

API HAL

Boolean enable80211BE trong HwModeParams trong Hostapd HAL hỗ trợ khởi động Soft AP ở chế độ Wi-Fi 7.

Báo cáo thông tin Soft AP

Android bao gồm hỗ trợ API để đưa thông tin về độ rộng kênh Wi-Fi 7 và 320 MHz vào thông tin Soft AP được báo cáo.

API HAL

Hằng số WIFI_STANDARD_11BE trong giao diện Generation.aidl AIDL trong Hostapd HAL, được sử dụng trong ApInfo được báo cáo trong lệnh gọi lại IHostapdCallback#onApInstanceInfoChanged() , hỗ trợ báo cáo thông tin Soft AP.

API

Ứng dụng có thể sử dụng các phương pháp sau (API hệ thống) trong SoftApInfo để báo cáo thông tin Soft AP.

Tính năng MLO Wi-Fi 7

Hoạt động đa liên kết (MLO) là tính năng chính trong thông số kỹ thuật Wi-Fi 7 (802.11be). MLO là tính năng bắt buộc đối với các thiết bị đa liên kết (MLD) chạy trong Wi-Fi 7, dù đồng thời hay không đồng thời.

sơ đồ MLO

Hình 1. Sơ đồ MLO.

Như được hiển thị trong Hình 1, cả AP-MLD và STA-MLD đều có nhiều phiên bản AP hoặc STA chạy trên mỗi liên kết. Mỗi liên kết có một địa chỉ MAC AP hoặc STA riêng biệt. AP hoặc STA cũng có địa chỉ MAC MLD để nhận dạng thiết bị.

Lớp android.net.wifi.MloLink đại diện cho liên kết MLO. Lớp này bao gồm các tham số sau:

  • int getLinkId() : ID liên kết được quảng cáo bởi AP MLD.
  • MacAddress getApMacAddress() : Địa chỉ MAC của AP. BSSID của phiên bản AP cho liên kết đó.
  • MacAddress getStaMacAddress() : Địa chỉ MAC STA. Địa chỉ MAC được gán cục bộ cho phiên bản STA trên liên kết.
  • int getChannel() : Liên kết kênh. Số kênh của liên kết.
  • int getBand() : Băng liên kết. Ban nhạc của liên kết.
  • int getState() : Trạng thái liên kết. Có thể là một trong các trạng thái sau:

    • MLO_LINK_STATE_INVALID : Không hợp lệ. Được sử dụng cho các trường hợp khởi tạo và lỗi.
    • MLO_LINK_STATE_UNASSOCIATED : Chưa liên kết. Liên kết không được liên kết với AP.
    • MLO_LINK_STATE_IDLE : Không hoạt động. Liên kết được liên kết nhưng không hoạt động (không có mã định danh lưu lượng truy cập (TID) nào được ánh xạ tới liên kết).
    • MLO_LINK_STATE_ACTIVE : Đang hoạt động. Liên kết được liên kết và đang hoạt động (ít nhất một TID được ánh xạ tới liên kết). Liên kết hoạt động có thể ở chế độ tiết kiệm năng lượng vì khung không giám sát trạng thái nguồn của liên kết.

Thông tin Wi-Fi 7 AP MLO được quét

Các ứng dụng có thể lấy tham số MLO cho Wi-Fi 7 AP MLD khi mô-đun Wi-Fi nhận được đối tượng ScanResult từ AP-MLD. AOSP WifiTracker hiển thị các thông số MLO khi chạy ở chế độ dài dòng.

Mô-đun Wi-Fi thu thập thông tin MLO bằng cách thực hiện như sau:

  • Phân tích phần tử thông tin đa liên kết (IE) có trong phản hồi đèn hiệu hoặc đầu dò để đọc địa chỉ MAC AP MLD và ID liên kết hiện tại.
  • Phân tích cú pháp báo cáo lân cận đã giảm (RNR) IE có trong phản hồi báo hiệu hoặc thăm dò để đọc danh sách thông tin liên kết liên kết.

API

Để nhận thông tin AP MLO được quét, ứng dụng có thể sử dụng các API sau:

Thông tin Wi-Fi 7 AP MLO được kết nối

Khi một thiết bị kết nối với Wi-Fi 7 AP-MLD, khung sẽ thu thập các tham số MLO của kết nối từ đối tượng WifiInfo . Đối tượng AOSP WifiTracker hiển thị thông tin này khi chạy ở chế độ dài dòng.

Khi thiết bị kết nối với AP-MLD, mô-đun Wi-Fi sẽ sao chép thông tin MLO từ đối tượng ScanResult nhận được từ AP. Sau đó, mô-đun này gọi API HAL ISupplicantStaIface#getConnectionMloLinksInfo() để đọc địa chỉ MAC của từng liên kết cho cả AP và STA, đồng thời cập nhật trạng thái của các liên kết được liên kết.

API

Để nhận thông tin kết nối MLO, ứng dụng có thể sử dụng các API sau:

Quét AP-MLD

Phần mềm của nhà cung cấp cung cấp cho khung Wi-Fi kết quả quét cho từng phản hồi đèn hiệu hoặc đầu dò mà nó nhận được. Điều này có nghĩa là khung Wi-Fi:

  • Có thể nhận nhiều đối tượng ScanResults từ cùng một AP-MLD (vì AP có thể có nhiều liên kết báo hiệu).
  • Có thể chỉ nhận được một phần kết quả quét cho các liên kết AP của AP-MLD vì phần sụn có thể không nhận được một số tín hiệu liên kết này.

Phần mềm của nhà cung cấp chỉ báo cáo kết quả quét nhận được qua mạng và không được tạo kết quả quét (tổng hợp nhân tạo) dựa trên các liên kết được quảng cáo bởi AP-MLD.

Phần mềm của nhà cung cấp phải bao gồm các biến thể cơ bản đa liên kết và RNR IE nhận được từ các phiên bản AP trong kết quả quét được báo cáo. Nếu chi tiết AP liên kết bị thiếu trong kết quả quét, phần mềm của nhà cung cấp có thể gửi yêu cầu thăm dò đa liên kết (khung yêu cầu thăm dò bao gồm phần tử đa liên kết Yêu cầu thăm dò) để bao gồm bộ khả năng, thông số và thành phần vận hành hoàn chỉnh hoặc một phần của AP với AP-MLD được nhắm mục tiêu trong khung phản hồi.

Phần mềm của nhà cung cấp có thể kích hoạt thăm dò ML (sử dụng biến thể yêu cầu thăm dò ML IE trong khung yêu cầu thăm dò) nếu được yêu cầu.

Hiệp hội mạng AP-MLD

Khi một thiết bị tham gia mạng AP-MLD, phần mềm của nhà cung cấp sẽ sử dụng liên kết AP đã chọn (liên kết liên kết) để báo hiệu. Phần mềm của nhà cung cấp có thể liên kết với tất cả hoặc một số liên kết được thiết bị hỗ trợ.

Sau khi liên kết thành công, trình điều khiển sẽ báo cáo ISupplicantStaIfaceCallback#onStateChanged() kèm theo BSSID của liên kết dành cho AP-MLD. Sau đó, trình điều khiển sẽ chọn một liên kết của AP-MLD với điều kiện là kết quả quét đã được báo cáo lên khung cho liên kết đó.

Tính điểm mạng

Đối với các thiết bị chạy Android 14 trở lên, Lựa chọn mạng Wi-Fi của Android hỗ trợ Wi-Fi 7 MLO. Điều này có nghĩa là Android chọn mạng Wi-Fi tốt nhất cho thiết bị dựa trên số lượng liên kết có sẵn cho MLO.

Để hỗ trợ MLO, thuật toán chọn mạng sử dụng các khả năng MLO sau từ chip Wi-Fi:

  • Số lượng liên kết STR tối đa
  • Số lượng liên kết liên kết tối đa
  • Kết hợp băng tần đồng thời

Lựa chọn mạng Wi-Fi MLO

Hình 2. Lựa chọn mạng MLO.

Truyền và nhận đồng thời (STR) là sơ đồ tranh chấp môi trường Wi-Fi dành cho hoạt động đa liên kết. Sự cách ly tín hiệu giữa các liên kết khác nhau là đủ để các liên kết có thể hoạt động độc lập và có khả năng truyền và nhận đồng thời ở các liên kết khác nhau. STR khác với STA liên kết đơn (SL) kế thừa và STA đồng thời băng tần kép kế thừa (DBDC). STA liên kết với STA MLD chia sẻ một số thứ tự máy phát (SN) chung và một không gian chung để truyền dữ liệu được phân bổ cho các liên kết khác nhau nếu truyền nhiều liên kết có cùng loại truy cập (AC).

Số lượng liên kết STR tối đa được sử dụng có thể khác với số lượng sóng vô tuyến tối đa được chip hỗ trợ. Trong ví dụ ở Hình 2, số lượng liên kết STR tối đa là 2.

Các giao diện AIDL HAL sau đây hỗ trợ số lượng liên kết STR tối đa và số lượng khả năng đếm liên kết liên kết tối đa:

Nhiều liên kết có thể hoạt động trên một đài duy nhất bằng cách sử dụng sơ đồ tranh chấp, Đài phát thanh đơn đa liên kết nâng cao (eMLSR). Thiết bị đa liên kết sử dụng eMLSR trên một tập hợp các liên kết nếu thiết bị này có thể nhận các khung điều khiển cơ bản nhất định và thực hiện đồng thời đánh giá kênh rõ ràng (CCA) trên tập hợp các liên kết. Tuy nhiên, MLD chỉ truyền hoặc nhận dữ liệu trên một liên kết (liên kết được chọn động trong mỗi khoảng thời gian cơ hội truyền (TXOP)) tại một thời điểm.

Trạm MLD có thể tối đa hóa số lượng liên kết liên kết để có độ tin cậy cao hơn, thông lượng tốt hơn và độ trễ thấp hơn (so với trạm kế thừa liên kết đơn) bằng cách hoạt động đồng thời trong STR và eMLSR nếu được chip hỗ trợ. Trong Hình 2, số lượng liên kết liên kết tối đa là 3.

Các giao diện AIDL HAL sau đây hỗ trợ khả năng đếm liên kết tối đa:

Kết hợp băng tần đồng thời

Khung này truy vấn chip để nhận được các kết hợp vô tuyến được phép (thông qua giao diện IWifiChip.aidl AIDL) có thể hoạt động đồng thời. Từ thông tin này, khung này rút ra các kết hợp băng tần đồng thời có thể có. Sau đây là danh sách ví dụ về kết hợp băng tần đồng thời (GHz):

  • 2.4
  • 5
  • 6
  • 2,4 x 5
  • 2,4 x 6
  • 5 x 6

Giao diện AIDL HAL sau đây hỗ trợ kết hợp vô tuyến đồng thời:

Lựa chọn mạng

Trong quá trình lựa chọn mạng (MLO), danh sách ứng viên được nhóm theo các thành viên có cùng địa chỉ MAC MLD. Điểm thông lượng đa liên kết dự đoán tối đa được tính cho mỗi nhóm, dựa trên số lượng liên kết STR tối đa và sự kết hợp băng tần đồng thời được chip hỗ trợ. Nếu ứng viên có khả năng đa liên kết và chip hỗ trợ STR thì điểm thông lượng dự đoán sẽ được thay thế bằng điểm thông lượng dự đoán đa liên kết. Điều này mang lại sự thúc đẩy cho các ứng viên MLO trong quá trình lựa chọn mạng.

Khi tham gia mạng AP-MLD, khung thực hiện lựa chọn SSID dựa trên thông tin nhận được trong đối tượng ScanResults do phần mềm của nhà cung cấp báo cáo. Sau khi khung lựa chọn SSID, phần mềm của nhà cung cấp chịu trách nhiệm chọn BSSID cho AP (hoặc liên kết AP) tốt nhất để sử dụng cho liên kết.

Xử lý địa chỉ MAC STA của thiết bị

Phần này mô tả cách xử lý các địa chỉ MAC STA của thiết bị (địa chỉ MAC MLD và địa chỉ MAC STA trên mỗi liên kết).

Địa chỉ MAC MLD

Khung Wi-Fi quản lý địa chỉ MAC MLD của thiết bị. Địa chỉ MAC MLD được xử lý giống như cách thiết bị không phải MLD xử lý địa chỉ MAC của chính nó. Địa chỉ MAC có thể là địa chỉ MAC ngẫu nhiên hoặc địa chỉ MAC được cung cấp phần cứng dựa trên lựa chọn của người dùng. Địa chỉ MAC MLD được đặt theo khung bằng cách sử dụng API HAL IWifiStaIface#setMacAddress() .

Phần mềm của nhà cung cấp quản lý các địa chỉ MAC STA phiên bản (cho mỗi liên kết). Khi một thiết bị liên kết với một AP, phần mềm của nhà cung cấp sẽ chỉ định một địa chỉ MAC phiên bản cho mỗi liên kết được liên kết.

Phần mềm của nhà cung cấp chỉ định địa chỉ MAC cho mỗi liên kết dựa trên thuật toán của nó. Thuật toán phải có tính lặp lại và là một hàm như sau:

  • Địa chỉ MAC STA-MLD do khung Wi-Fi đặt.
  • ID liên kết (nhận được từ AP)

Điều này có nghĩa là nếu khung sử dụng lại cùng một địa chỉ MAC MLD thì nhà cung cấp phải sử dụng lại cùng một địa chỉ MAC cho mỗi phiên bản được liên kết và ngược lại. Điều này đảm bảo rằng khi địa chỉ STA-MLD được tạo trong khung là liên tục đối với SSID, thì địa chỉ MAC trên mỗi STA cũng liên tục.

Sau đây là thuật toán mẫu để gán địa chỉ MAC STA trên mỗi liên kết (nhà cung cấp có thể triển khai bất kỳ thuật toán nào đáp ứng tiêu chí thuật toán):

  • Octet 0: Đảm bảo bit quản lý cục bộ được đặt
  • Octet 1-4: Giống như địa chỉ MAC STA-MLD
  • Tháng 10 5: Per-STA = (STA-MLD + ID liên kết + 1) MOD (256)

Chương trình cơ sở của nhà cung cấp có thể thực hiện chuyển đổi liên kết và quản lý trạng thái tiết kiệm năng lượng của các liên kết để kích hoạt hoặc hủy kích hoạt mà không cần đầu vào từ khung Wi-Fi.

Khung Wi-Fi không mong đợi thông báo khi trạng thái liên kết được thay đổi.

Quản lý trạng thái tiết kiệm điện

Trạng thái tiết kiệm năng lượng được bật theo mặc định trên khung Wi-Fi. Ở trạng thái tiết kiệm năng lượng, chương trình cơ sở của nhà cung cấp quản lý trạng thái tiết kiệm năng lượng của các liên kết riêng lẻ dựa trên mô hình lưu lượng truy cập và các quyết định kích hoạt hoặc hủy kích hoạt liên kết.

Tuy nhiên, khung Wi-Fi có thể buộc tắt trạng thái tiết kiệm năng lượng bằng cách gọi API HAL ISupplicantStaIface::setPowerSave(false) . Nếu khung tiết kiệm năng lượng bị vô hiệu hóa thì chương trình cơ sở của nhà cung cấp phải duy trì ít nhất một liên kết hoạt động (tắt tính năng tiết kiệm năng lượng). Ở trạng thái này, việc triển khai chương trình cơ sở sẽ quyết định liên kết nào được đặt.

Đường dẫn dữ liệu

Phần này mô tả việc triển khai chương trình cơ sở của nhà cung cấp để xử lý lưu lượng truy cập đường lên và tải xuống.

Phần sụn định tuyến lưu lượng truy cập đường lên đến một (hoặc nhiều) liên kết dựa trên việc triển khai nội bộ của nó. Chương trình cơ sở của nhà cung cấp quyết định thời điểm thực hiện cân bằng tải, sao chép hoặc tổng hợp lưu lượng dựa trên mẫu lưu lượng. Chúng tôi khuyên bạn nên sao chép lưu lượng truy cập chương trình cơ sở vào nhiều liên kết trong các trường hợp sau:

  • Khi chế độ độ trễ thấp được đặt thông qua API HAL IWifiChip#setLatencyMode() .
  • Khi có lưu lượng truy cập với mức độ ưu tiên của người dùng là 6 và 7.

Phần sụn phải thay thế địa chỉ MAC (đích) trên mỗi STA của tiêu đề MAC bằng MAC MLD-STA và địa chỉ MAC (nguồn) trên mỗi AP của tiêu đề MAC bằng địa chỉ MAC MLD-AP. Phần sụn phải thực hiện việc thay thế địa chỉ MAC này trước khi đi qua bộ lọc APF vì các lệnh bộ lọc APF có các bộ lọc dựa trên địa chỉ MAC MLD. Có một bộ lọc APF duy nhất cho tất cả các liên kết của AP-MLD.

Đồng thời

Các kịch bản đồng thời, trong đó một sóng vô tuyến được sử dụng cho một giao diện mới, phải được ưu tiên hơn việc dành nhiều sóng vô tuyến cho các liên kết của cùng một giao diện. Các kịch bản tương tranh cũng phải được ưu tiên hơn MLO bất kể điều gì đến trước. Việc sử dụng nhiều liên kết cho một giao diện duy nhất mang tính cơ hội, nghĩa là nhiều liên kết chỉ được sử dụng khi:

  • MLO được yêu cầu dựa trên quyết định của phần sụn để cân bằng tải, tổng hợp hoặc sao chép.
  • MLO có sẵn , nghĩa là giao diện khác không yêu cầu radio.

Đối với các thiết bị chạy Android 14 trở lên, khi Wi-Fi 7 AP thông báo tạm thời vô hiệu hóa một trong các liên kết thông qua phần tử ánh xạ TID-to-link được truyền trong đèn hiệu, phản hồi đầu dò và khung phản hồi liên kết, Wi-Fi 7 trạm tiếp tục kết nối với AP bằng cách sử dụng các liên kết còn lại đã được thiết lập mà không thực hiện liên kết khác.

Đối với các thiết bị chạy Android 13 trở xuống, khung Wi-Fi không hỗ trợ nhận thông báo khi trạng thái liên kết bị thay đổi do ánh xạ TID-to-link, ngay cả khi liên kết được liên kết không được liên kết với TID.

Trình cung cấp Wi-Fi thông báo cho khung Wi-Fi về các thay đổi ánh xạ TID-to-link thông qua các giao diện AIDL sau:

Ứng dụng có thể nhận thông tin về các thay đổi ánh xạ TID-to-link bằng cách sử dụng các API sau:

Đối với các thiết bị chạy Android 14 trở lên, các API sau có sẵn để có được khả năng đàm phán bản đồ TID-to-link cho trạm và AP.

Khả năng chip

Các giao diện sau đây hỗ trợ khả năng của chip để đàm phán ánh xạ TID-to-link.

AIDL HAL

Giao diện AIDL để đàm phán ánh xạ TID-to-link có trong FeatureSetMask trong hardware/interfaces/wifi/aidl/android/hardware/wifi/IWifiChip.aidl . Khả năng T2LM_NEGOTIATION = 1 << 8 cho biết chip hỗ trợ ánh xạ TID-to-link. API

khả năng AP

Các giao diện sau hỗ trợ khả năng của AP để đàm phán ánh xạ TID-to-link.

AIDL HAL

Hệ thống truy vấn khả năng AP từ người thay thế cùng với khả năng kết nối hiện tại.

API

Số liệu thống kê của lớp liên kết bao gồm các chi tiết dành riêng cho liên kết Wi-Fi như RSSI, các bộ đếm gói TX và RX khác nhau cũng như số liệu thống kê radio. Khung Wi-Fi thăm dò định kỳ số liệu thống kê lớp liên kết và RSSI để chọn mạng tốt nhất hoặc để đánh giá chất lượng của mạng được kết nối. Đối với các thiết bị chạy Android 14 trở lên, số liệu thống kê của lớp liên kết bao gồm hỗ trợ đa liên kết. Để hỗ trợ Wi-Fi 7, Android hỗ trợ MLO ở cả số liệu thống kê lớp liên kết và thăm dò tín hiệu.

Số liệu thống kê dành riêng cho liên kết được tìm thấy trong các giao diện AIDL của lớp liên kết sau:

API hệ thống android.net.wifi.WifiManager#addOnWifiUsabilityStatsListener() lắng nghe tất cả số liệu thống kê của lớp liên kết. Khung này gọi API này theo định kỳ để cập nhật số liệu thống kê về khả năng sử dụng Wi-Fi.

Các API dành riêng cho liên kết sau đây có sẵn trong android.net.wifi.WifiUsabilityStatsEntry .

int getRssi(int linkId)
int getLinkState(int linkId)
int getRadioId(int linkId)
int getTxLinkSpeedMbps(int linkId)
long getTotalTxSuccess(int linkId)
long getTotalTxRetries(int linkId)
long getTotalTxBad(int linkId)
long getTotalRxSuccess(int linkId)
long getTotalBeaconRx(int linkId)
int getRxLinkSpeedMbps(int linkId)
int getTimeSliceDutyCycleInPercent(int linkId)
ContentionTimeStats getContentionTimeStats(int linkId, @WmeAccessCategory int ac)
List<RateStats> getRateStats(int linkId)

Để truy vấn ID liên kết có sẵn, ứng dụng có thể gọi phương thức android.net.wifi.WifiUsabilityStatsEntry#getLinkIds() .

API trong android.net.wifi.WifiUsabilityStatsEntry cho liên kết đơn (không phải MLO) trả về số liệu thống kê tổng hợp cho các kết nối MLO. Sau đây là tiêu chí tổng hợp:

  • Thống kê gói tổng hợp sau đây sử dụng tổng số liệu thống kê trên mỗi liên kết:

    public long getTotalTxSuccess()
    public long getTotalTxRetries()
    public long getTotalTxBad()
    public long getTotalRxSuccess()
    public int getRxLinkSpeedMbps()
    
  • Thống kê sau đây sử dụng dữ liệu từ liên kết có RSSI cao nhất:

    public int getRssi()
    public int getLinkSpeedMbps()
    public long getTotalBeaconRx()
    public int getTimeSliceDutyCycleInPercent()
    public ContentionTimeStats getContentionTimeStats(@WmeAccessCategory int ac)
    public List<RateStats> getRateStats()
    

Đối với các thiết bị chạy Android 13, số liệu thống kê của lớp liên kết không tính đến việc sử dụng nhiều liên kết cho một giao diện. Để hỗ trợ MLO, phần mềm của nhà cung cấp phải áp dụng logic tổng hợp sau khi báo cáo LinkLayerStats thông qua API HAL IWifi# getLinkLayerStats_1_6() . Link tốt nhất là link có RSSI cao nhất.

  • StaLinkLayerStats.iface.beaconRx : Báo cáo số lượng đèn hiệu cho liên kết tốt nhất được sử dụng cho giao diện.
  • StaLinkLayerStats.iface.avgRssiMgmt : Báo cáo avgRssiMgmt để có liên kết tốt nhất được sử dụng cho giao diện.
  • StaLinkLayerStats.iface.wmeXxPktStats (Xx = Vo, Vi, Be,Bk): Báo cáo số liệu thống kê gói tổng hợp (tổng cộng) qua các liên kết của giao diện.
  • StaLinkLayerStats.iface.wmeXxContentionTimeStats (Xx = Vo, Vi, Be,Bk): Báo cáo số liệu thống kê về thời gian tranh chấp cho liên kết tốt nhất được sử dụng trên giao diện (số liệu thống kê về thời gian tranh chấp thấp nhất).

Khi một trong các liên kết của điểm truy cập Wi-Fi 7 được thay đổi mục đích, AP có thể thông báo xóa liên kết thông qua cấu hình lại liên kết MLO. Các trạm có thể duy trì kết nối liền mạch với AP mà không cần liên kết lại trên các liên kết còn lại.

Giao diện onMloLinksInfoChanged AIDL, nằm trong bộ thay thế Wi-Fi tại ISupplicantStaIfaceCallback.aidl , hỗ trợ cấu hình lại liên kết (AP loại bỏ liên kết).

Khi khung Wi-Fi xử lý việc xóa liên kết, trạng thái liên kết được đặt thành MLO_LINK_STATE_UNASSOCIATED . Sau đó, khung này sẽ kích hoạt ConnectivityManager.NetworkCallback#onCapabilitiesChanged() để thay đổi trạng thái liên kết.

Phương thức WifiInfo#getAffiliatedMloLinks trả về các Liên kết MLO được liên kết. Phương thức MloLink#getState trả về trạng thái của liên kết. Nếu liên kết bị xóa, trạng thái liên kết được trả về là MLO_LINK_STATE_UNASSOCIATED .

Chiến lược chip MLO

MLO cho phép các thiết bị gửi và nhận dữ liệu trên nhiều liên kết Wi-Fi cùng một lúc, điều này có thể cải thiện hiệu suất cho các ứng dụng có yêu cầu cụ thể như độ trễ thấp, băng thông cao và năng lượng thấp. Các nhà cung cấp chip có thể phát triển các thuật toán về cách sử dụng các liên kết có sẵn.

Các ứng dụng đặc quyền có thể sửa đổi các thuật toán này bằng phương thức setMloMode trong Wifimanager và đặt các chế độ sau:

  • MLO_MODE_DEFAULT = 0
  • MLO_MODE_LOW_LATENCY = 1
  • MLO_MODE_HIGH_THROUGHPUT = 2
  • MLO_MODE_LOW_POWER = 3

Khung sử dụng setMloMode trong giao diện IWifiChip AIDL để đặt chế độ MLO.