IBM Cloud Docs
HTTP/2 및 HTTP/3 프로토콜

HTTP/2 및 HTTP/3 프로토콜

HTTP/2 와 HTTP/3 는 페이지 로딩 시간을 단축하며 모든 IBM Cloud® Internet Services 요금제에 포함되어 있습니다. HTTP/2는 기본적으로 활성화되어 있으며 CIS 에지 네트워크에서 SSL 인증서가 필요합니다. 평가판 요금제를 사용하는 도메인은 HTTP/2 을 비활성화할 수 없습니다.

브라우저와 웹 서버는 사용 가능한 가장 높은 프로토콜을 자동으로 협상하므로 HTTP/3 은 HTTP/2 보다 우선합니다. CIS 은 원본 웹 서버와 CIS 엣지 간의 통신에만 HTTP/1.x 을 사용합니다.

연결에 사용되는 프로토콜을 확인하려면 웹 브라우저 또는 HTTP 클라이언트에 example.com/cdn-cgi/trace 을 입력하고 example.com 을 도메인으로 바꿉니다. 결과의 http= 값은 프로토콜을 나타냅니다:

  • http=h2 는 사용 된 연결이 HTTP/2
  • http=http2+quic/99 는 HTTP/3
  • http=http/1.x 는 HTTP/1.x

HTTP/2

HTTP/2는 다음을 통해 페이지 로드 시간을 개선합니다.

연결 멀티플렉싱
단일 네트워크 연결을 통해 여러 리소스를 검색합니다. 리소스를 사용할 수 있게 되면 응답이 전송되므로 페이지 렌더링이 지연되는 것을 방지할 수 있습니다.
HTTP 헤더 압축
헤더를 압축하고 HTTP 요청을 간소화하여 헤더 재전송을 방지합니다.
HTTP/2 서버 푸시
페이지 로드 속도를 개선하기 위해 CIS 에서는 클라이언트가 추가 요청을 기다리지 않고 캐싱할 수 있는 추가 리소스를 제공합니다.

모든 브라우저가 HTTP/2를 지원하고 대신 HTTP 1.x를 사용하는 것은 아닙니다. 연결 멀티플렉싱은 도메인 단위로 처리됩니다.

HTTP/3

HTTP/3는 빠르고 안정적이며 보안 연결을 가능하게 합니다. 기본적으로 HTTP/3 은 Google 에서 개발한 프로토콜인 QUIC을 사용하여 인터넷 전송을 암호화합니다. Cloudflare 네트워크 애플리케이션을 통해 HTTP/3 을 활성화할 수 있습니다. 다음 방법은 HTTP/3 를 실험하는 방법을 보여줍니다.

Google Chrome을 HTTP/3 클라이언트로 사용

Chrome을 사용하여 HTTP/3 을 통해 웹사이트에 연결하려면 먼저 최신 Chrome 카나리아 빌드를 다운로드하여 설치하세요. 그런 다음 --enable-quic--quic-version=h3-23 명령줄 인수를 사용하여 Chrome Canary에서 HTTP/3 지원을 사용하도록 설정합니다.

Chrome이 시작되면 주소창에 도메인을 입력합니다. 프로토콜 버전을 확인하려면 Chrome의 Developer Tools 을 열고 네트워크 탭으로 이동합니다. http2+quic/99프로토콜 열에 표시되지 않으면 페이지를 새로고침해 보세요.

cURL 사용

cURL 명령행 도구는 HTTP/3를 지원합니다. 최신 버전을 다운로드 하고 지침에 따라 HTTP/3 지원을 활성화하세요.

macOS의 경우 Homebrew를 사용하여 HTTP/3가 지원되는 cURL을 설치하십시오.

brew install --HEAD -s https://raw.githubusercontent.com/cloudflare/homebrew-cloudflare/master/curl.rb

그런 다음 --http3 명령줄 플래그를 사용하여 HTTP/3 cURL 을 실행합니다:

./curl -I https://blog.cloudflare.com/ --http3

응답에 HTTP/3 이 표시되고 오류 메시지가 없는지 확인합니다.