11. HTTP/1.1 vs HTTP/2 vs HTTP/3

HTTP/1.1과 HTTP/2는 이 서버에서 실제로 구동합니다. HTTP/3(QUIC)는 Node.js가 네이티브로 지원하지 않아 이 서버에는 없습니다 — 대신 아래 개념 설명과 외부 사이트로 직접 확인하는 가이드를 참고하세요.

1) HTTP/1.1 vs HTTP/2 직접 비교

동일한 페이지(이미지 30장)를 두 프로토콜로 열어서 DevTools Network의 Protocol 컬럼과 전체 로딩 시간을 비교해 보세요.

HTTP/2는 자가서명 인증서를 사용합니다 — 처음 접속 시 "안전하지 않음" 경고가 뜨면 "고급(Advanced) → 계속 진행"을 눌러주세요.

2) HTTP 발전 타임라인

HTTP/0.9HTTP/1.0HTTP/1.1SPDYQUICHTTP/2HTTP/3
1991199519972012201320152019

3) Head-of-Line Blocking (HOLB) 비교

프로토콜HTTP 레벨 HOLB전송 레벨 HOLB
HTTP/1.1❌ 있음 (커넥션당 순차 처리, 파이프라이닝도 제한적)해당 없음
HTTP/2✅ 해결 (멀티플렉싱으로 여러 스트림 동시 처리)❌ 남아있음 (TCP 패킷 하나 손실 시 전체 스트림 대기)
HTTP/3✅ 해결✅ 해결 (QUIC은 스트림별로 독립적인 순서 보장)

4) 연결 설정 비용 (0-RTT)

TCPTCP + TLSQUIC (HTTP/3)
재연결~1 RTT~2 RTT0 RTT
최초 연결~1 RTT~3 RTT~1 RTT (전송+암호화 핸드셰이크 통합)

5) 실제 HTTP/3 사이트 확인하기

Chrome DevTools → Network 탭 → 컬럼 헤더 우클릭 → Protocol 컬럼 추가 → google.com, cloudflare.com 같은 실제 서비스에 접속해 보세요. h3로 표시되는 요청을 확인할 수 있습니다.

← 실습 목록으로 돌아가기