http Protocol에 대해서 알아보자

jimin·2021년 10월 30일
0

백엔드

목록 보기
2/2
post-thumbnail

학습용으로 작성된 문서입니다. 틀린점에 대한 지적이나 보완점을 남겨주시면 감사하겠습니다.☺️


0. 프로토콜이란?

통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계이다. 통신 프로토콜은 신호 체계, 인증, 그리고 오류 감지 및 수정기능을 포함할 수 있다. (위키백과)

즉 프로토콜은 "데이터를 주고받는 통신에 대해서 미리 약속된 규칙"이다.


1.HTTP(HyperText Transfer Protocol)에 대해서

http는 주로 html같은 Hyper Text같은 문서를 주고받기 위해 설계된 프로토콜이나 웹에서도 브라우저와 서버간에 통신을 위해 http 프로토콜을 사용한다. http에 대한 특징은 다음과 같다.

http 프로토콜은 비연결성(connectionless) 프로토콜이다.

http는 클라이언트와 서버가 연결을 한 후 클라이언트 요청에 대해 서버가 응답을 마치면 연결을 끊어버린다.

불특정다수와 통신하는 서버입장에서 연결이 끊어지지 않고 계속 이어진다면 이는 리소스에 대한 부담을 가져올것이다. 이에 대해 http는 비연결성이란 특징을 갖고있기에 더 많은 연결을 할 수 있고 효율적으로 리소스 관리를 할 수 있다는 메리트를 가진다.

하지만 http는 클라이언트를 기억하고 있지 않기에 동일한 클라이언트의 요청을 처리할때도 매번 연결/해제를 해야하기에 이에 대한 오버헤드를 초래할 수도 있다. (해결방법 : keep alive)

http 프로토콜은 상태가 없는(stateless) 프로토콜이다.

비연결성을 지향하는 http 프로토콜에서 서버는 클라이언트를 식별할 수 없으며, 클라이언트를 식별하기 위한 세션, 쿠키에 대한 책임은 클라이언트가 갖고있다.

http의 이러한 특징은 scailng에 대해 자유롭다는 이점을 갖게 해준다. 서버는 클라이언트에 대한 세션을 갖고있지 않다. 서버를 늘리거나 줄일 때에 편하다는 것이 statefule 프로토콜과의 차이점이다. (어떠한 컴퓨터가 요청을 받더라도 응답이 가능하다.)


2. HTTP의 구조

http는 클라이언트와 서버가 요청(Request)과 응답(Response)을 하며 데이터를 주고받는다. 요청은 "클라이언트가 서버에게", 응답은 "서버가 클라이언트에게" 보내는 메시지이다.


3.세줄요약

  • http는 비연결성과 무상태성이라는 특징을 가진다.
  • 위의 특성덕분에 http 프로토콜을 사용하는 서버는 스케일링에 대한 메리트를 가진다.
  • 응애

참고자료 :

profile
ᕦ( ᐛ )ᕡ

0개의 댓글