Współbieżność Wi-Fi STA/AP

W Androidzie 9 wprowadzono możliwość jednoczesnej pracy urządzeń w trybie STA i AP. W przypadku urządzeń obsługujących Dual Band Simultaneous (DBS) ta funkcja otwiera nowe możliwości, takie jak niezakłócanie sieci Wi-Fi STA, gdy użytkownik chce włączyć hotspot (softAP).

Przykłady i źródło

Współbieżność Wi-Fi STA/AP jest obsługiwana w domyślnym kodzie platformy AOSP Android. Jest także wspierany przez referencyjną implementację HAL opisaną w Wi-Fi HAL . Flaga czasu kompilacji WIFI_HIDL_FEATURE_DUAL_INTERFACE opisana w sekcji Implementacja poniżej umożliwia specyfikację współbieżności interfejsu wskazującą współbieżną obsługę STA i AP.

Realizacja

Aby zaimplementować współbieżność Wi-Fi STA/AP na swoim urządzeniu:

  1. Włącz flagę czasu kompilacji, aby włączyć obsługę dwóch interfejsów w warstwie HAL. Flaga znajduje się w device/<oem>/<device>/BoardConfig-common.mk .

    • WIFI_HIDL_FEATURE_DUAL_INTERFACE:= prawda
  2. Ujawnij dwa interfejsy sieciowe:

    • wlan0 i wlan1

Flaga WIFI_HIDL_FEATURE_DUAL_INTERFACE jest ignorowana, jeśli określono flagę WIFI_HAL_INTERFACE_COMBINATIONS . Aby uzyskać więcej informacji, zobacz temat Współbieżność wielu interfejsów Wi-Fi .

Walidacja

Aby sprawdzić, czy funkcja działa zgodnie z oczekiwaniami, uruchom zarówno test integracji (ACTS), jak i test ręczny.

Plik ACTS, WifiStaApConcurrencyTest.py , znajdujący się w tools/test/connectivity/acts_tests/tests/google/wifi , zawiera zestaw testów, które wyświetlają różne kombinacje STA i AP.

Aby ręcznie sprawdzić tę funkcję, włącz i wyłącz interfejsy STA i AP niezależnie od interfejsu użytkownika.

Jeśli zarówno AP, jak i STA znajdują się w tej samej podsieci, mogą wystąpić problemy z routingiem na testowanym urządzeniu (DUT). Aby uniknąć kolizji, spróbuj przenieść punkt dostępowy do innej podsieci.

Niektórzy dostawcy chipów Wi-Fi przełączają radio w tryb podziału czasu, jeśli STA i AP znajdują się w tym samym paśmie, ale na różnych kanałach. Prowadzi to do poważnego spadku wydajności. Aby rozwiązać ten problem, chip może wykorzystywać funkcję unikania przełączania kanałów (CSA) w celu:

  • Przenieś AP na ten sam kanał co STA
  • Przenieś AP na inne pasmo niż STA