QUIC과 HTTP/3: UDP 기반 전송 프로토콜의 등장 배경

Source

  • Evernote/Technote scraps/QUIC과 HTTP3 - 1. UDP기반 전송 프로토콜의 대두.md

Summary

구글은 웹 속도 향상을 위해 TCP의 한계를 극복하고 새로운 기능을 통합한 UDP 기반 프로토콜인 QUIC과 이를 기반으로 한 HTTP/3를 개발했습니다. TCP는 설계 시기의 제약으로 인해 헤더 확장성이 부족하고, 널리 사용됨에 따라 네트워크 중간 장비(Middlebox)들이 TCP 동작에 강하게 의존하게 되어 새로운 기능(예: TCP Fast Open) 도입 시 호환성 문제(Ossification)가 발생합니다. 또한 새로운 IP 프로토콜을 정의하면 방화벽이나 NAT 환경에서 차단될 위험이 있어, 기존 UDP 위에서 신뢰성 및 보안 기능을 구현한 QUIC이 대안으로 부상했습니다.

Key Points

  • 구글의 ‘Make The Web Faster’ 이니셔티브는 브라우저, 압축 기술뿐만 아니라 전송 계층(TCP 개선, SPDY, TLS 1.3 등)의 혁신을 포함함.
  • TCP의 주요 한계: 1) 헤더 Options 필드 크기 제한(최대 40바이트)으로 인한 기능 확장성 부족, 2) 헤더 비암호화로 인한 네트워크 상태 노출 및 중간 장비의 간섭 가능성.
  • 고착화(Ossification) 문제: TCP가 보편화되면서 방화벽 등 중간 장비들이 TCP 규격에 강하게 의존하게 되어, 새로운 TCP 기능 도입 시 오동작이나 차단이 발생하는 현상.
  • 새로운 IP 프로토콜 정의의 어려움: TCP/UDP 외의 프로토콜(예: SCTP)은 인터넷 인프라(방화벽, NAT)에서 차단되거나 지원되지 않아 보급에 한계가 있음.
  • QUIC의 접근 방식: 새로운 IP 프로토콜 번호를 할당하지 않고, 기존 UDP 위에서 신뢰성 전송, 혼잡 제어, 암호화(TLS 1.3 기반) 등을 사용자 공간(User-space)에서 구현하여 네트워크 장비의 간섭을 피하고 빠른 이터레이션을 가능하게 함.