한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

게임 렉 백서 › L2 클라이언트 OS·기기

NIC 절전·드라이버 문제 NIC power saving, driver bugs

원인 ID co-driver · 주 담당 외부·외부 · 함께 게임개발팀·클라이언트 개발

그림과 실험이 있는 원본 카드로 열기 →

랜카드·와이파이 칩이 패킷 사이에 절전 상태로 들어가면 다시 활성화되는 데 시간이 걸립니다.

왜 네트워크 장치 절전 기능이 켜져 있거나 드라이버가 오래됨 → 그러면 절전 해제(wake-up) 지연, 가끔 장치 재시작 → 화면에서는 불규칙한 지연, 드물게 수 초 멈춤

증상
뚝뚝 끊김, 멈춤
요인
지터, 손실
누가 겪나
나만
언제
가만히 있다가, 가끔 무작위로
담당
주 담당 외부·외부 · 함께 게임개발팀·클라이언트 개발
게임개발팀 할 일
안드로이드 클라이언트는 게임 중 저지연 와이파이 모드(WIFI_MODE_FULL_LOW_LATENCY)를 요청해 와이파이 절전 끄기.
외부 할 일
유저에게 네트워크 드라이버 업데이트, 장치 관리자에서 네트워크 장치 절전 해제 안내, 화면 전체가 멈칫하고 소리가 지직거리면 LatencyMon으로 원인 드라이버를 찾도록 안내.
그래프에서는
가끔 무작위로 튐 · DPC·ISR 시간, 공유기까지 RTT
확인할 곳
윈도우 성능 레코더(WPR)로 녹화해 윈도우 성능 분석기(WPA)의 DPC/ISR 그래프에서 오래 도는 드라이버(Module 열)를 찾고, 장치 관리자에서 네트워크 어댑터의 전원 관리(절전) 설정을 확인
이러면 맞음
멈칫한 시각에 네트워크 드라이버의 DPC·ISR이 몇 ms씩 이어지거나, 절전을 끄면 불규칙한 지연이 사라짐
이러면 아님
DPC가 짧고 절전을 꺼도 같으면 “와이파이 간섭·신호 약화”나 “와이파이 백그라운드 스캔”
확인 수단
유저 쪽 환경에서 확인
더 알아보기
드라이버가 인터럽트를 처리하느라 CPU를 오래 점유하면(윈도우에서는 DPC 지연이라고 부릅니다) 그동안 게임 스레드도 코어를 못 씁니다. 이때는 CPU 사용률이 낮은데도 화면 전체가 멈칫하고 소리도 지직거립니다. LatencyMon 같은 도구로 어느 드라이버인지 찾을 수 있고 와이파이·랜 드라이버가 흔한 원인입니다.

출처

  1. Introduction to NDIS Selective Suspend Microsoft
    윈도우는 쉬고 있는 네트워크 어댑터를 저전력 상태로 보낼 수 있음(선택적 절전)
  2. Guidelines for Writing DPC Routines Microsoft
    DPC가 도는 동안 그 코어의 모든 스레드가 멈추므로 한 번에 100µs를 넘기지 않도록 권고
  3. Wi-Fi low-latency mode Android (Google)
    안드로이드 저지연 와이파이 모드는 프레임워크가 와이파이 절전을 명시적으로 끔
  4. CPU Analysis Microsoft
    WPA의 DPC/ISR 그래프: DPC·ISR이 끊김 없이 돈 구간별 시간과 그 함수가 들어 있는 모듈(Module)

함께 보면 좋은 원인

같은 층: L2 클라이언트 OS·기기

같은 증상(뚝뚝 끊김)의 다른 층 원인

그림과 실험이 있는 원본 카드 보기