PacketProbe는 단순한 속도나 대역폭이 아닌, 인터넷 연결의 실제 패킷 손실을 측정합니다. 대부분의 속도 테스트는 TCP를 통한 처리량만 측정하며, 실패한 패킷을 자동으로 재전송하여 패킷 손실을 숨깁니다. 이는 게임, 영상 통화, VoIP에서의 연결 품질에 대해 아무것도 알려주지 않습니다.
우리는 WebRTC 전송 보장이 없는 데이터 채널을 사용합니다. 이는 브라우저가 실시간 통신에 사용하는 것과 동일한 기술로, 원시 UDP처럼 동작하도록 구성되어 있습니다. 패킷이 손실되면 그대로 손실로 남으며, 우리는 이를 카운트합니다. 이를 통해 실시간 환경에서 연결이 실제로 어떻게 동작하는지 정확한 그림을 얻을 수 있습니다.
브라우저가 테스트 서버 중 하나와 WebRTC 데이터 채널을 설정합니다. 그런 다음 구성 가능한 속도와 크기로 번호가 매겨진 패킷을 전송합니다. 서버는 어떤 패킷이 도착했는지 기록하고(업로드 손실 측정), 이를 다시 보냅니다(다운로드 손실 측정). 전체 테스트가 브라우저에서 실행되며 소프트웨어 설치가 필요 없습니다.
패킷 손실은 네트워크를 통해 이동하는 데이터 패킷이 목적지에 도달하지 못할 때 발생합니다. 인터넷에서 데이터는 독립적으로 이동하는 작은 패킷으로 분할됩니다. 혼잡한 라우터, 결함이 있는 케이블, 약한 Wi-Fi 신호 등으로 인해 패킷이 도중에 누락되면 손실로 간주됩니다.
온라인 게임, 영상 통화, VoIP와 같은 실시간 애플리케이션에서는 1~2%의 패킷 손실만으로도 눈에 띄는 문제가 발생할 수 있습니다: 게임에서의 러버밴딩, 끊기는 오디오, 멈추는 영상, 통화 끊김 등. 파일 다운로드(손실된 패킷은 단순히 재전송)와 달리 실시간 데이터에는 기한이 있어 패킷이 늦게 도착하면 쓸모가 없습니다.
0%가 이상적입니다. 1% 미만은 대부분의 애플리케이션에서 일반적으로 허용됩니다. 1~2.5%에서는 게임과 음성 통화에서 문제가 나타나기 시작합니다. 5% 이상은 심각한 수준으로, 대부분의 실시간 애플리케이션이 크게 영향을 받습니다.
지터는 패킷 도착 시간의 변동입니다. 패킷이 손실되지 않더라도 일관되지 않은 타이밍은 문제를 일으킵니다. 지터가 높은 음성 통화는 끊겨 들립니다. 지터가 높은 게임은 렉이 심하고 예측 불가능하게 느껴집니다. 지터는 30ms 미만이 이상적이며, 50ms 이상이면 체감됩니다.
속도 테스트는 처리량을 측정합니다. 즉, TCP를 통해 초당 얼마나 많은 데이터를 이동할 수 있는지입니다. TCP는 손실된 패킷을 자동으로 재전송하므로 속도 테스트에서는 패킷 손실이 완전히 가려집니다. PacketProbe는 전송 보장이 없는(UDP와 유사한) 채널을 사용하여 실시간 환경에서 연결이 실제로 발생시키는 손실과 지터를 드러냅니다.
각 프리셋은 특정 애플리케이션의 네트워크 동작을 모방하도록 테스트를 구성합니다. 예를 들어, "게임 (FPS)" 프리셋은 80ms의 엄격한 지연 임계값으로 초당 64개의 작은 패킷을 보냅니다. 이는 경쟁형 슈팅 게임이 실제로 연결에 요구하는 것과 일치합니다. 이를 통해 연결이 해당 특정 사용 사례를 처리할 수 있는지 알 수 있습니다.