QUIC

Protocol

개요

QUIC은 UDP 위에서 동작하도록 구글이 설계하고 IETF가 표준화한 전송 프로토콜로, HTTP/3의 기반입니다.

TLS 1.3 암호화를 프로토콜 자체에 내장하고, 스트림별 독립 전송으로 TCP의 Head-of-Line 블로킹을 제거하며, 연결 설정을 빠르게 만든 것이 특징입니다.

자세히

왜 하필 UDP 위인가? TCP는 운영체제 커널과 중간 장비에 깊이 박혀 있어 새 기능을 넣기 어렵고, 순서 보장 때문에 전송 계층 HoL 블로킹이 구조적으로 발생합니다. QUIC은 UDP라는 얇은 층 위에 신뢰성·혼잡 제어·다중 스트림·암호화를 사용자 공간에서 새로 구현해, 스트림마다 독립적으로 손실을 복구합니다 — 한 스트림의 패킷 손실이 다른 스트림을 멈추지 않습니다.

추가 이점으로, TLS 1.3을 통합해 핸드셰이크와 암호화 협상을 한 번에 처리하므로 연결 수립이 1-RTT(재접속은 0-RTT)로 빨라집니다. 또 연결을 IP·포트가 아니라 'Connection ID'로 식별하므로, 와이파이↔셀룰러 전환처럼 네트워크가 바뀌어도 연결이 끊기지 않는 connection migration을 지원합니다. 단점으로는 UDP를 차단·제한하는 일부 네트워크, 상태 없는 UDP 특성상 방화벽·미들박스 호환성, CPU 사용량 등이 있어 보통 TCP로의 폴백을 함께 둡니다.

관련 타입