본문 바로가기

CS/HTTP

HTTP 란 무엇을 의미하는가?

HyperText Transfer Protocol

초기에는 HTML 문서를 전송하는 프로토콜로 시작이 되었음.

현재는 거의 모든것을 HTTP 로 전송

- HTML, Text

- Image, 음성, 영상, 파일

- JSON, XML (API)

- 거의 모든 형태의 데이터 전송 가능

- 서버간에 데이터를 주고 받을때도 대부분 HTTP 사용

시간이 지나며 거의 모든것이 전송 가능해졌음

 

HTTP 역사

- HTTP / 0.9 <1991> : GET 만 지원, HTTP 헤더가 없음

- HTTP / 1.0 <1996> : 메서드, 헤더 추가

- HTTP / 1.1 <1997> : 가장 많이 사용, 우리에게 가장 중요한 버전

  > RFC 2068 ( 1997 ) -> RFC 2616 ( 1999 ) -> RFC 7230 ~ 7235 ( 2014 )

- HTTP / 2 <2015> : 성능 개선

- HTTP / 3 <진행중> : TCP 대신에 UDP 사용, 성능 개선

 

기반 프로토콜 

TCP : HTTP / 1.1, HTTP / 2 

UDP : HTTP / 3

현재 HTTP / 1.1 주로 사용, HTTP / 2 , HTTP / 3 도 점점 증가

HTTP / 3 는 TCP 의 메커니즘 자체가 ( 다루는 데이터양이 많고 3 way handshaking 등 ) 느리기 떄문에,
UDP 를 통해 개선 된것

 

구글에 검색하거나, 어떤 사이트를 방문하고 개발자 도구를 열어 네트워크 탭을 확인하면

위와 같이 사용하는 프로토콜을 확인 할수 있다 

최근에는 HTTP / 2, 3 이 빠른속도로 적용되어 가는 추세이다.

'CS > HTTP' 카테고리의 다른 글

HTTP API 를 만들어보자 - URI 설계  (0) 2022.09.06
HTTP 메시지  (0) 2022.09.06
비 연결성 ( Connectionless )  (0) 2022.09.05
무상태 프로토콜 ( Stateless ) 지향  (1) 2022.09.05
웹 브라우저 요청 흐름  (0) 2022.09.05