배경
HTTP/1.1 메시지 포맷→ 구현의 단순성과 접근성에 주안점을 두고 최적화된 프로토콜
- 응답을 받아야만 다음 요청을 보낼 수 있음 → 심각한 회전 latency
- 병렬 or 파이프라인 커넥션이 등장했지만 근본적인 성능 개선 해결책이 되지는 못함.
- Head Of Line Blocking
프로토콜 개선 노력
- HTTP-NG 프로젝트
- WAKA
- Micosoft S+M(Speed + Mobility)
- 구글 SPDY
SPDY
기존의 HTTP에 속도 개선을 위한 여러 기능을 추가함.
- 헤더 압축을 통한 대역폭 절약
- 하나의 TCP 커넥션에 여러 요청을 동시에 보냄
- 클라이언트 요청 없이도 능동적인 서버의 리소스 푸시
HTTP/2.0은 SPDY를 기반으로 초안을 만들기 시작함.
개발자 도구로 어떤 프로토콜을 사용했는지 확인할 수 있다. h2가 http/2.0, h3는 http/3.0