피드로 돌아가기
Dev.toInfrastructure
원문 읽기
RTT 최적화와 HOL Blocking 해결을 통한 HTTP 프로토콜의 진화
How the Web Actually Works: HTTP from the Ground Up
AI 요약
Context
웹 페이지 구성 요소의 개별 요청 구조로 인한 다수의 RTT 발생과 네트워크 지연 문제 분석. TCP 기반의 연결 설정 오버헤드와 전송 계층의 병목 현상이 사용자 경험을 저해하는 핵심 요인으로 작용.
Technical Solution
- Persistent Connection 도입을 통한 TCP Handshake 횟수 감소 및 후속 요청의 RTT 1회 단축
- Stateless 구조의 한계를 보완하기 위해 Server-side 상태를 유지하고 Client에 Key를 전달하는 Cookie 메커니즘 설계
- Web Cache 도입으로 Access Link의 Utilization을 낮추고 큐잉 지연(Queuing Delay)을 원천적으로 제거
- If-Modified-Since 헤더를 활용한 Conditional GET 방식으로 불필요한 데이터 전송을 방지하는 304 Not Modified 응답 구현
- HTTP/2의 Parallel Streams 도입을 통한 Application Layer의 HOL Blocking 해결
- QUIC(UDP 기반) 채택으로 Transport Layer의 HOL Blocking을 제거하고 연결 설정 시간을 단축한 HTTP/3 구조 설계
실천 포인트
1. 다량의 리소스 요청이 필요한 페이지의 경우 HTTP/2 이상의 프로토콜 적용 여부 확인
2. 캐시 효율성 증대를 위해 Conditional GET 및 적절한 Cache-Control 전략 수립
3. 전송 계층의 패킷 손실이 심한 환경이라면 UDP 기반의 QUIC/HTTP3 도입 검토