HTTP?
HTTP(HyperText Transfer Protocol)는 웹 상에서 문서, 이미지, 동영상 등의 데이터를 주고받는 데 사용되는 프로토콜이다. 클라이언트(웹 브라우저)와 서버 간에 요청(request)과 응답(response) 방식으로 통신을 한다.
HTTP가 어떻게 작동하는지 실제로 통신을 하면서 알아보고 싶다면 postman과 같은 소프트웨어를 사용하는 것도 좋다.
Postman API Platform | Sign Up for Free
Postman is an API platform for building and using APIs. Postman simplifies each step of the API lifecycle and streamlines collaboration so you can create better APIs—faster.
www.postman.com
HTTP의 버전으로는 크게 HTTP/1.0, HTTP/1.1, HTTP/2, HTTP/3 가 있다. 이번 글에서는 이 버전들의 차이점에 대한 내용을 작성했다.
HTTP/1.0, HTTP/1.1
HTTP/1.0은 HTTP의 초기 버전으로, 간단한 요청-응답 모델을 사용해 만들어졌다. 이 버전에서는 각 요청에 대해 별도의 TCP 연결을 생성하고 사용한 후 종료하는 방식을 사용했다.
그래서 많은 연결이 생성되고 종료되는 오버헤드가 발생해 시스템의 자원을 낭비하는 문제가 있었다.
HTTP/1.1은 지속적인 연결(persistent connection)을 도입하여 연결 생성 및 종료에 대한 오버헤드를 줄였다. 또한, 파이프라이닝 기능을 통해 여러 요청을 동시에 처리할 수 있게 되어 시스템 자원 낭비를 훨씬 줄였다.
HTTP/2
HTTP/2는 다중화(multiplexing) 기능을 도입하여 여러 요청과 응답을 동시에 하나의 연결에서 처리할 수 있다.
그래서 페이지 로드시간이 더욱 단축되었고, 헤더 압축 기능을 도입하여 데이터 전송량을 줄여 성능을 향상시켰다. HTTP/2는 이전 버전에 비해 보안성도 향상되었으며, 주로 HTTP에서 암호화를 통해 보안성을 강화한 HTTPS와 함께 사용된다.
HTTP/3
HTTP/3는 HTTP/2의 성능 향상을 이어받아, 더욱 향상된 통신 효율성과 속도를 가진다.
HTTP/3의 가장 큰 특징은 기존의 TCP 대신 QUIC(Quick UDP Internet Connections) 프로토콜을 사용한다는 점이다. QUIC는 기존 TCP보다 더 낮은 지연 시간을 가지며, 패킷 손실 시에도 연결의 성능 저하가 덜하다는 장점이 있다.
물론 암호화와 보안 기능을 기본적으로 제공하고, 이전 버전의 HTTP/2보다 강화된 보안성을 가진. 대부분의 최신 웹 브라우저와 웹 서버는 이미 HTTP/3를 지원하고 있습니다.
결론적으로, HTTP/3는 웹 통신의 더욱 향상된 성능과 보안성을 제공하며, 성능면에서도 우수하다. 그래서 최신 브라우저들은 대부분 HTTP/3을 지원한다.
참고 : https://www.cloudflare.com/ko-kr/learning/ddos/glossary/hypertext-transfer-protocol-http/
https://ko.wikipedia.org/wiki/HTTP/3
HTTP/3 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전.
ko.wikipedia.org
'Network, Web' 카테고리의 다른 글
[Network] IP 주소와 서브넷 마스크 (0) | 2023.07.11 |
---|---|
[Network] 4/7 TIL : 아키텍처의 구성요소들 (0) | 2023.04.07 |
[Network] 소켓과 포트의 의미와 차이점 (0) | 2023.04.06 |
[NetWork] nginx를 사용한 정적 웹페이지 호스팅 (0) | 2023.03.27 |
[Network] HTTP 상태 코드 정리 (0) | 2023.03.16 |