Wi-Fi AP/AP 동시 실행

Android 12에서는 기기가 두 개의 액세스 포인트(AP) 인터페이스를 생성할 수 있는 Wi-Fi AP/AP 동시 실행 기능이 도입되었습니다. 이 기능을 사용하면 기기에서 듀얼 밴드 동시(DBS) Wi-Fi 핫스팟(소프트 AP)을 통해 테더링을 지원할 수 있습니다. 단일 Wi-Fi 핫스팟을 통한 테더링 지원에 관해 자세히 알아보려면 Wi-Fi 핫스팟(소프트 AP) 지원을 참고하세요.

이 페이지에서는 이 기능이 사용 설정된 경우의 기기 동작과 기기 제조업체 및 공급업체를 위한 구현 세부정보를 설명합니다.

작동 방식

Wi-Fi AP/AP 동시 실행이 지원되는 경우 기기는 2.4GHz 대역에서 작동하는 인터페이스 하나와 5GHz 대역에서 작동하는 인터페이스 하나 등 AP 인터페이스 두 개를 만들 수 있습니다. 그런 다음 각 AP 인터페이스에 클라이언트를 연결할 수 있습니다.

Wi-Fi HAL은 두 AP 인터페이스와 브리지로 연결된 단일 인터페이스를 생성하고 스택이 소프트 AP를 사용 설정할 때 이 인터페이스를 Wi-Fi 및 연결 스택에 노출합니다. 소프트 AP가 사용 설정된 후 Wi-Fi HAL은 두 인터페이스를 사용할 수 있음을 표시하고 각 AP의 정보(예: 작업 채널, 대역폭, BSSID)를 업데이트합니다.

전력을 절약하기 위해 프레임워크는 일정 시간 동안 사용되지 않는 미사용 AP(2.4GHz, 5GHz 또는 6GHz)를 사용 중지합니다. 프레임워크는 연결된 클라이언트가 없을 때 AP를 비활성 상태로 간주합니다. 기기 제조업체는 이 비활성 기간을 맞춤설정할 수 있습니다. 자세한 내용은 비활성 기간 맞춤설정을 참고하세요.

기기는 다음과 같이 브리지로 연결된 소프트 AP 구성 중 하나를 사용하여 Wi-Fi AP/AP 동시 실행을 지원합니다.

  • 대역 두 개 구성(채널은 프레임워크 또는 드라이버에 의해 자동으로 선택됨)
  • 듀얼 밴드 AP에서 채널 두 개 구성

요구사항

Wi-Fi AP/AP 동시 실행을 구현하려면 기기가 다음 요구사항을 충족해야 합니다.

  • Wi-Fi 칩이나 펌웨어는 동시 AP 연결 두 개를 지원해야 합니다. 펌웨어는 두 연결 모두에 대해 채널과 대역의 모든 조합을 지원해야 합니다. 성능 문제를 피하려면 2x2+2x2 DBS 지원 Wi-Fi 칩을 사용하는 것이 좋습니다.

  • 기기가 Wi-Fi 공급업체 HAL의 다음 메서드를 지원해야 합니다.

    • IWifiChip.createBridgedApIface()
    • IWifiChip.removeIfaceInstanceFromBridgedApIface()
    • IWifiApIface.resetToFactoryMacAddress()
    • IWifiApIface.getBridgedInstances()

구현

Wi-Fi AP/AP 동시 실행을 구현하려면 다음을 따르세요.

  1. 런타임 리소스 오버레이를 사용하여 다음 함수 중 하나 이상을 사용 설정합니다(기본적으로 사용 중지됨).

    • config_wifiBridgedSoftApSupported: 브리지로 연결된 여러 AP를 지원합니다.
    • config_wifiStaWithBridgedSoftApConcurrencySupported: 스테이션(STA) 및 브리지로 연결된 여러 AP의 동시 실행을 지원합니다.
  2. AIDL Wi-Fi HAL 또는 HIDL Wi-Fi HAL 1.6을 사용하는 기기의 경우 Wi-Fi HAL 인터페이스 조합에서 AP_BRIDGED를 정의합니다. 자세한 내용은 Wi-Fi 다중 인터페이스 동시 실행을 참고하세요.

  3. 다음 메서드 중 하나를 호출하여 브리지로 연결된 소프트 AP 구성을 설정합니다.

  4. WifiManager#registerSoftApCallback을 사용하여 기기 기능을 가져오기 위한 콜백을 등록합니다. SoftApCallback 콜백은 브리지로 연결된 소프트 AP 구성을 위해 다음 메서드를 제공합니다.

비활성 기간 맞춤설정

비활성 기간을 맞춤설정하려면 packages/modules/Wifi/service/ServiceWifiResources/res/values/config.xml에 있는 다음 오버레이를 구성합니다.

  • config_wifiFrameworkSoftApShutDownIdleInstanceInBridgedModeTimeoutMillisecond: 기본 종료 시간 제한 간격. SoftApConfiguration#setBridgedModeOpportunisticShutdownEnabled가 사용 설정된 경우에만 유효합니다.

  • (13부터 사용 가능) config_wifiFrameworkSoftApDisableBridgedModeShutdownIdleInstanceWhenCharging: 충전 시 비활성 종료 타이머를 사용 중지할지 여부를 나타냅니다.