HTTP

[HTTP 웹 기본 지식] 02. HTTP 기본

binning 2025. 2. 4. 20:51

1. HTTP 역사

- HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X

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

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

- HTTP/2 2015년: 성능 개선

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

- TCP에서 HTTP/1.1, HTTP/2, UDP에서 HTTP/3 사용

 

2. HTTP 특징

클라이언트 서버 구조

- 클라이언트는 서버에 요청을 보내고, 응답을 대기

- 서버가 요청에 대한 결과를 만들어서 응답

 

무상태 프로토콜

- 서버가 클라이언트의 상태를 보존X

- 응답 서버를 쉽게 바꿀 수 있음 > 서버 확장성이 높음

- 상태 유지는 최소한만 사용 (쿠키, 세션...)

 

비연결성

- 통신 후 연결을 유지하지 않음

- 서버 자원을 매우 효율적으로 사용할 수 있음

- HTTP 지속 연결을 통해 최적화

 

3. HTTP 메시지

시작 라인

- 요청 메시지: HTTP 메서드, 요청 대상, HTTP 버전

- 응답 메시지: HTTP 버전, HTTP 상태 코드, 이유 문구

 

HTTP 헤더

- HTTP 전송에 필요한 모든 부가정보

- 필요시 임의의 헤더 추가 가능

 

HTTP 메시지 바디

- 실제 전송할 데이터

- HTML 문서, 이미지, 영상, JSON 등등 byte로 표현할 수 있는 모든 데이터 전송 가능