HTTP
HyperText Transfer Protocol
HTTP의 특징
- 클라이언트 서버 구조
- 무상태 프로토콜(Stateless), 비연결성
- HTTP 메세지
- 단순함, 확장 가능
HTTP 버전
- HTTP/1.1 : TCP -> 주로 해당 버전 사용
- HTTP/2 : TCP
- HTTP/3 : UDP
1. 클라이언트와 서버 구조
클라이언트와 서버는 요청(Request)과 응답(Response)을 주고 받는다.
클라이언트는 요청을 보내고 응답을 대기하며, 서버는 요청에 대한 결과를 만들어서 응답한다.
2. 무상태 프로토콜(Stateless)
서버가 클라이언트의 상태를 보존하지 않기에, 서버 확장성이 높지만, 클라이언트가 지속적으로 추가 데이터를 전송해야한다.
3. 비연결성
HTTP는 연결을 유지하지 않는 모델로, 서버 자원을 매우 효율적으로 사용이 가능하다.
하지만 TCP/IP 연결을 해야하기에, 3 Way HandShake 시간이 추가되고, 많은 자원이 함께 다운로드 된다는 한계가 있지만 HTTP 지속 연결로 해결 할 수 있다.
4. HTTP 메세지
HTTP에 담기는 메세지로, 시작 라인, 요청 헤더, 공백라인, 본문으로 구성된다.
시작 라인에는 요청 메세지는 [메소드, 요청 대상, HTTP 버전]이 담겨지며, 응답 메세지에는 [버전, 상태코드, 이유 문구]가 담겨진다.
헤더에는 HTTP 전송에 필요한 모든 부가 정보가 담겨진다.
바디에는 요청과 응답에 필요한 데이터가 담겨진다.
'CS > Network' 카테고리의 다른 글
[HTTP] HTTP Header에 대해서 알아보자(1) (0) | 2022.08.22 |
---|---|
[HTTP] HTTP 상태 코드 (0) | 2022.08.12 |
[인터넷 통신] URI (0) | 2022.07.20 |
[인터넷 통신] IP, TCP/UDP, PORT, DNS (0) | 2022.07.19 |