HTTP (Hyper Text Transfer Protocol)

조성민·2022년 7월 9일
0

HTTP

목록 보기
1/2

1. HTTP란?

HTTP는 서버와 클라이언트가 서로 데이터를 주고받기 위해 사용되는 통신 규약을 말합니다.
TCP/IP(Transmission Control Protocol / Internet Protocol)을 이용하며, 사용 포트 번호는 기본적으로 80입니다.
인터넷 기반 서비스에는 HTTP 외에도 Email, FTP, DNS, NEWS 등이 있습니다.
인터넷 주소를 지정할때 http://www.~~~ 와 같이 시작하는 것은 www.~~이라는 인터넷 주소가 가진 데이터 정보 등의 교환을 http의 통신 규약대로 처리하라는 것을 의미합니다. 또 HTTP는 애플리케이션 계층의 최상위에 있기 때문에, 기본 레이어들은 HTTP의 명세와는 관련이 없습니다.

2. HTTP 요청방식

HTTP의 요청방식은 다음과 같습니다.

  1. ISP를 통해 DNS 서버로 부터 IP를 취득합니다.
  2. 3-way-handshakeVisit Website를 통해 서버 컴퓨터와의 세션을 생성합니다. 일종의 초기화 과정을 가집니다.
  3. 통신이 모두 이루어진 후에는 4-way-handshakeVisit Website를 통해 세션을 종료하고 통신을 마칩니다.

3. HTTP 데이터

HTTP의 요청 데이터는 "HEADER"와 "BODY"로 구성되어 있습니다.
요청과 응답시 주고받는 데이터는 다음과 같은 형태입니다.

Request (요청)

클라이언트가 서버에게 연락하는 것을 요청이라고 하며 요청을 보낼때는 요청에 대한 정보를 담아 서버로 보낸다.

Request Method (요청의 종류)
GET : 자료를 요청할 때 사용
POST : 자료의 생성을 요청할 때 사용
PUT : 자료의 수정을 요청할 때 사용
DELETE : 자료의 삭제를 요청할 때 사용

Response (응답)

서버가 요청에 대한 답변을 클라이언트에게 보내는 것을 응답이라고 한다.

Status Code (상태 코드)

상태 코드에는 굉장히 많은 종류가 있다. 모두 숫자 세 자리로 이루어져 있으며, 아래와 같이 크게 다섯 부류로 나눌 수 있다.

-1XX (조건부 응답) : 요청을 받았으며 작업을 계속한다.
-2XX (성공) : 클라이언트가 요청한 동작을 수신하여 이해했고 승낙했으며 성공적으로 처리했음을 가리킨다.
-3XX (리다이렉션 완료) : 클라이언트는 요청을 마치기 위해 추가 동작을 취해야 한다.
-4XX (요청 오류) : 클라이언트에 오류가 있음을 나타낸다.
-5XX (서버 오류) : 서버가 유효한 요청을 명백하게 수행하지 못했음을 나타낸다.

profile
풀리면 재밌는 알고리즘

0개의 댓글