HTTP 버전
포스트
취소

HTTP 버전

HTTP 0.9

  • 1991년에 출시된 HTTP 프로토콜 버전
  • 정식 버전은 아니지만 HTTP 초기 버전을 구분하기 위해 HTTP 0.9 버전이라고 부른다.
  • 요청은 단일 라인으로 구성되며, 리소스에 대한 메소드는 GET만 존재한다.
  • 응답이 극도로 단순하다.
    • 파일 내용 자체로만 구성되어 있다.
  • HTTP 헤더가 없다.
  • HTML파일만 전송 가능했었다.

HTTP 1.0

  • 1996년에 출시된 최초의 HTTP 프로토콜 정식 버전
  • HTTP 헤더 개념이 도입되어서 요청과 응답에 추가되며, 메타 데이터를 주고 받고,
    프로토콜을 유연하고 확장 가능하도록 개선됬다.
  • 버전 정보와 요청 메소드가 함께 전송되기 시작했다.
  • 상태 코드 라인도 응답의 시작부분에 추가되어 브라우저 요청의 성공과 실패를 파악 가능해졌다.
    • 해당 결과에 대한 로컬 캐시 갱신 등의 사용이 가능해졌다.
  • Content-Type 도입으로 HTML 이외의 문서 전송 기능이 가능해졌다.
  • 커넥션 하나당 요청 하나와 응답 하나만 처리 가능했다.
    • HTTP 1.1에서 개선된 사항이다.
  • 압축, 캐싱 등의 기능을 지원하지 않는다.
  • 현재는 거의 사용되지 않는다.

HTTP 1.1

  • 1997년에 출시된 HTTP 1.0의 후속 버전
  • 지속 연결을 지원하여 여러 요청/응답 쌍을 하나의 TCP 연결에서 처리할 수 있다.
  • 파이프라이닝을 지원하여 한 번에 여러 요청을 보낼 수 있다.
  • 압축, 캐싱 기능을 지원하여 성능을 향상시킬 수 있다.
  • 호스트 헤더를 지원하여 가상 호스팅을 지원한다.
  • 현재 가장 많이 사용되는 HTTP 프로토콜 버전

HTTP 2

  • 2015년에 출시된 HTTP 1.1의 후속 버전
  • 기존 HTTP 1.1 버전의 성능 향상에 초점을 맞춘 프로토콜
  • 표준의 대체가 아닌 확장을 위해 만들어졌다.
  • 다중 스트림을 지원하여 여러 요청/응답 쌍을 동시에 처리할 수 있다.
  • 헤더 압축을 지원하여 데이터 전송량을 줄일 수 있다.
  • 서버 푸시를 지원하여 클라이언트가 요청하기 전에 데이터를 미리 전송할 수 있다.
  • HTTP/1.1에 비해 성능이 크게 향상되었습다.

HTTP 3

  • 2021년에 출시된 HTTP 2의 후속 버전
  • QUIC 프로토콜을 사용하여 TCP 연결의 오버헤드를 줄인다.
  • 0-RTT 연결 재사용을 지원하여 이전 연결 정보를 사용하여 새로운 연결을 빠르게 설정할 수 있다.
  • 다중 스트림을 지원한다.
  • HTTP/2에 비해 연결 속도가 빠르고 성능이 높다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.