Wi-Fi는 IEEE 802.11 표준으로 작동하는 무선 근거리 통신망(WLAN) 기술로, 11Mbps(802.11b)에서 9.6Gbps(802.11be, Wi-Fi 7) 속도로 기기에 인터넷 연결을 제공합니다. 모바일 애플리케이션에서 Wi-Fi는 콘텐츠 다운로드, 데이터 동기화, 스트리밍 및 로컬 네트워크를 통한 파일 전송에 사용됩니다. Wi-Fi Alliance, 2024에 따르면 195억 개 이상의 기기가 Wi-Fi를 지원하며, 모바일 트래픽의 82%가 이 기술을 통해 전송됩니다.
주요 포인트
Wi-Fi는 IEEE 802.11 표준을 준수하는 것으로 인증된 제품에 대한 Wi-Fi Alliance의 상표입니다. 이 기술은 액세스 포인트(AP)를 통해 기기를 로컬 네트워크와 인터넷에 무선으로 연결합니다. 셀룰러 통신과 달리 Wi-Fi는 비면허 ISM 대역에서 작동하며 실내에서 최대 50~100미터의 로컬 커버리지를 위해 설계되었습니다.
Wi-Fi 아키텍처에는 인프라스트럭처 모드(AP를 통한 클라이언트-서버)와 애드혹 모드(기기 간 피어투피어)의 두 가지 작동 모드가 있습니다. 모바일 애플리케이션은 인프라스트럭처 모드를 사용합니다. 스마트폰이 라우터에 연결되고 라우터가 ISP에 연결됩니다. 기기 간 직접 전송(AirDrop, Nearby Share)에는 라우터 없이 P2P 연결을 구성하는 확장 기능인 Wi-Fi Direct가 사용됩니다.
Cisco Annual Internet Report(2023)에 따르면 Wi-Fi는 실내에서 모바일 기기의 주요 연결 유형으로 남아 있습니다. 전체 모바일 트래픽의 59%가 Wi-Fi를 통해 생성되며, 메시 네트워크와 Wi-Fi 6의 보급으로 이 비율은 매년 3~5%씩 증가하고 있습니다.
Wi-Fi의 진화는 802.11b(1999)부터 802.11be(Wi-Fi 7, 2024)까지 7세대에 걸쳐 있습니다. 각각의 새로운 표준은 처리량, 연결 밀도 및 에너지 효율성을 향상시켰습니다. Wi-Fi 6(802.11ax)은 가장 중요한 업데이트였습니다. OFDMA와 MU-MIMO를 통해 속도 저하 없이 수십 대의 기기를 동시에 서비스할 수 있습니다.
| 세대 | 표준 | 연도 | 최대 속도 | 대역 |
|---|---|---|---|---|
| Wi-Fi 4 | 802.11n | 2009 | 600Mbps | 2.4 / 5GHz |
| Wi-Fi 5 | 802.11ac | 2014 | 3.5Gbps | 5GHz |
| Wi-Fi 6 | 802.11ax | 2019 | 9.6Gbps | 2.4 / 5GHz |
| Wi-Fi 6E | 802.11ax (6GHz) | 2021 | 9.6Gbps | 6GHz |
| Wi-Fi 7 | 802.11be | 2024 | 46Gbps | 2.4 / 5 / 6GHz |
하위 호환성은 Wi-Fi의 주요 특징입니다. Wi-Fi 6 라우터는 Wi-Fi 4 클라이언트를 서비스할 수 있지만 최대 속도로 작동합니다. 모바일 애플리케이션 개발자는 표준 선택을 직접 제어할 수 없으며, 드라이버와 OS가 최적의 PHY 모드를 자동으로 선택합니다.
Wi-Fi는 세 가지 주파수 대역을 사용하며, 각각 물리적 제한이 있습니다. 2.4GHz는 가장 혼잡합니다. Bluetooth, Zigbee, 전자레인지 및 인접 네트워크가 간섭을 일으킵니다. 겹치지 않는 채널은 3개(20MHz 폭에서 1, 6, 11)만 사용할 수 있습니다.
5GHz 대역은 23개의 비중복 채널(20MHz)을 제공하며 80MHz 및 160MHz 폭을 지원합니다. 파장이 짧아 벽 투과성이 낮아 동일한 송신기 전력에서 2.4GHz보다 범위가 30~40% 적습니다. 그러나 낮은 노이즈로 더 안정적인 속도를 제공합니다.
6GHz 대역은 Wi-Fi 6E 및 Wi-Fi 7 전용으로, 59개의 추가 20MHz 채널이 있습니다. 오래된 기기로부터의 간섭이 없으며 인증된 클라이언트만 허용됩니다. Qualcomm 테스트(2024)에 따르면 5미터 거리에서 6GHz의 Wi-Fi 6E는 5GHz의 Wi-Fi 6보다 40% 더 높은 속도를 보여줍니다.
최신 라우터는 Band Steering을 사용합니다. 액세스 포인트가 RSSI와 부하에 따라 클라이언트에게 최적의 대역을 제공하는 메커니즘입니다. 개발자는 애플리케이션 측에서 Band Steering을 제어할 수 없지만 Android의 WifiNetworkSpecifier.Builder 또는 iOS의 NEHotspotNetwork를 통해 선호도에 영향을 줄 수 있습니다.
무선 네트워크 보호는 구식 WEP(1997)에서 최신 WPA3(2018)으로 발전했습니다. AES-CCMP를 사용하는 WPA2(2004)는 최소한의 안전한 표준으로 남아 있지만 4방향 핸드셰이크에 대한 KRACK 공격(2017)에 취약합니다. WPA3는 SAE(Simultaneous Authentication of Equals) 프로토콜을 통해 이 취약점을 제거합니다.
WPA3는 세 가지 주요 개선 사항을 도입합니다. 공유 Pre-Shared Key(PSK) 대신 개별 암호화, 오프라인 무차별 대입 공격에 대한 저항성, 그리고 Forward Secrecy(장기 키가 손상되어도 이전에 가로챈 세션을 해독할 수 없음)입니다. Wi-Fi 6E 및 7 기기에 대한 필수 WPA3 인증은 최신 수준의 보호를 보장합니다.
Wi-Fi를 통해 민감한 데이터를 전송하는 모바일 애플리케이션의 경우 추가 애플리케이션 수준 암호화(TLS 1.3)가 권장됩니다. WPA3조차도 기기와 라우터 간의 채널만 보호하며, 데이터는 추가 보호 없이 인터넷을 통해 서버로 이동합니다.
fun isSecureNetwork(context: Context): Boolean {
val cm = context.getSystemService(Context.CONNECTIVITY_SERVICE)
as ConnectivityManager
val network = cm.activeNetwork ?: return false
val caps = cm.getNetworkCapabilities(network) ?: return false
return caps.hasCapability(
NetworkCapabilities.NET_CAPABILITY_NOT_VPN
)
}
코드는 기기가 활성 네트워크(VPN 아님)에 연결되어 있는지 확인합니다. 전체 Wi-Fi 보안 확인을 위해서는 WifiManager를 통한 암호화 유형의 추가 분석이 필요하며, 애플리케이션은 사용자에게 개방형 네트워크 연결에 대해 경고할 수 있습니다.
모바일 OS는 Wi-Fi 연결 관리를 위한 API를 제공합니다. Android에서는 WifiManager와 WifiNetworkSpecifier를 사용할 수 있으며, 애플리케이션은 사용 가능한 네트워크를 스캔하고 연결하며 연결 상태를 모니터링할 수 있습니다. Android 12부터 액세스 포인트 MAC 주소를 통한 사용자 추적을 방지하기 위해 스캔에 ACCESS_FINE_LOCATION 권한이 필요합니다.
iOS는 타사 애플리케이션의 Wi-Fi 관리를 제한합니다. NEHotspotNetwork는 알려진 네트워크에 연결할 수 있지만 스캔은 불가능하며 설정 URL을 통해 시스템 네트워크 목록으로 이동만 가능합니다. 엔터프라이즈 애플리케이션의 경우 iOS는 인증서와 회사 네트워크 자동 연결을 포함한 구성 프로필을 지원합니다.
Wi-Fi Direct(피어투피어)로 작동하는 애플리케이션의 경우 Android는 WifiP2pManager를 제공합니다. iOS는 Wi-Fi Direct용 공개 API가 없으며, 대신 Bluetooth와 Wi-Fi를 통해 작동하는 Multipeer Connectivity Framework가 사용됩니다.
val wifiManager = context.getSystemService(Context.WIFI_SERVICE) as WifiManager
val receiver = object BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
val results = wifiManager.scanResults
results.filter { it.level > -70 }
.sortedByDescending { it.level }
.forEach { network ->
Log.d("WiFi", "${network.SSID} — ${network.level} dBm")
}
}
}
context.registerReceiver(receiver, IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION))
wifiManager.startScan()
BroadcastReceiver는 스캔이 완료되면 애플리케이션에 알립니다. ScanResults에는 SSID, BSSID, 신호 레벨(RSSI) 및 암호화 유형이 포함됩니다. 신호 레벨이 -70dBm보다 큰 것으로 필터링하면 안정적인 연결에 너무 약한 네트워크가 제외됩니다.
Wi-Fi 7은 2024년 Wi-Fi Alliance가 승인한 최신 표준입니다. 주요 혁신은 MLO(Multi-Link Operation)입니다. 기기가 두 개의 대역(예: 5GHz 및 6GHz)에서 동시에 데이터를 전송하여 처리량을 높이고 지연 시간을 줄일 수 있습니다. Broadcom 테스트(2024)에서 MLO는 클라이언트가 커버리지 영역 내에서 이동할 때 50%의 지연 시간 감소를 보여주었습니다.
다른 혁신으로는 1024-QAM 대신 4096-QAM(20% 더 빠른 속도), 320MHz 채널 폭(Wi-Fi 6의 2배), 세션 중단 없는 자동 대역 전환이 있습니다. 모바일 애플리케이션의 경우 Wi-Fi 7은 5ms 미만의 지연 시간으로 8K 비디오 및 AR 장면을 스트리밍할 수 있는 능력을 의미합니다.
Dell'Oro Group(2025)에 따르면 2026년 말까지 새로운 스마트폰의 15%가 Wi-Fi 7을 지원할 것입니다. 개발자는 애플리케이션 코드를 변경할 필요가 없습니다. 개선 사항은 드라이버 및 OS 수준에서 작동하지만 높은 대역폭(화상 회의, 클라우드 게임)에 맞춰진 애플리케이션은 낮은 지연 시간의 이점을 누릴 수 있습니다.
자주 묻는 질문
표준 선택은 애플리케이션에 의존하지 않습니다. 기기 드라이버가 사용 가능한 PHY 모드를 결정합니다. 그러나 지연 시간에 민감한 애플리케이션(VoIP, 스트리밍)의 경우 5GHz 대역이 권장되며 넓은 영역 커버리지에는 2.4GHz가 적합합니다. 애플리케이션이 인터페이스를 통해 사용자에게 이를 제안할 수 있습니다.
Wi-Fi 6E는 추가 6GHz 대역에서 작동하는 동일한 802.11ax 표준입니다. Wi-Fi 6(2.4 + 5GHz)과 달리 6E는 오래된 기기로부터의 간섭 없이 59개의 깨끗한 20MHz 채널을 제공합니다. Wi-Fi 6E는 WPA3 인증이 필요하며 새로운 칩에서만 지원됩니다.
Wi-Fi Direct(P2P)는 두 기기가 중간 액세스 포인트 없이 직접 연결할 수 있도록 합니다. Android에서는 검색 및 연결에 WifiP2pManager가 사용됩니다. iOS는 Wi-Fi Direct용 공개 API를 제공하지 않으며, 대신 전송 선택(Wi-Fi 또는 Bluetooth)이 있는 Multipeer Connectivity가 사용됩니다.
iOS는 개인 정보 보호를 위해 타사 애플리케이션이 Wi-Fi 네트워크를 스캔하는 것을 금지합니다. 애플리케이션은 NEHotspotNetwork를 사용하여 알려진 네트워크에 연결하거나 `UIApplication.openSettingsURLString`을 통해 사용 가능한 네트워크의 시스템 목록을 열 수 있습니다. 전체 스캔은 내장된 설정 애플리케이션에서만 가능합니다.
속도를 측정하려면 서버에서 테스트 파일을 다운로드하고 시간을 측정합니다(다운로드 속도). Android는 전송된 데이터를 추적하기 위해 `TrafficStats.getTotalRxBytes()`를 제공합니다. 정확한 테스트를 위해서는 서버 구성 요소가 필요합니다. 애플리케이션이 알려진 크기의 파일을 다운로드하고 볼륨을 전송 시간으로 나눕니다.
요약
턴키 방식의 모바일 애플리케이션을 개발해 드립니다
IT Sectr는 2017년부터 스타트업과 기업을 위한 iOS 및 Android 애플리케이션을 만듭니다. 저희가 상담해 드리고 최적의 솔루션을 제안하겠습니다.