[네트워크] HTTP란? non-persistent HTTP vs persistent HTTP | RTT란?

Web 과 HTTP

  • 웹 페이지는 객체(object)로 구성된다.
  • 객체(object)는 HTML 파일, JPEG 이미지, JAVA applet, 오디오 파일 등이 될 수 있다.
  • 웹페이지는 여러 참조된 객체를 포함하는 기본 HTML 파일로 구성되며, 각 개체는 URL로 주소 지정이 가능하다.

 

HTTP

  • HTTP(Hyper Text Transfer Protocol)는 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜이다. 
  • TCP/IP 5계층에서 Application Layer(어플리케이션 계층)에 속하는 프로토콜이다.

 

HTTP의 동작

  • client 측에서 브라우저를 통해 어떠한 서비스를 요청(request)하면 server에서 해당 요청사항에 맞는 결과를 찾아 사용자에게 응답(response)하는 형태로 동작한다.
  • 요청(request) : client -> server
  • 응답(response) : server -> client 

 

HTTP의 특징

  • TCP/IP를 이용하는 응용 프로토콜이다.
  • HTTP 는 연결 상태를 유지하지 않는 비연결성 프로토콜이다. 
  • HTTP 는 stateless 하다. 즉, server가 client의 요청(request)에 대한 정보를 유지하지 않는다.
  • HTTP 는 연결을 유지하지 않기 때문에 요청/응답 방식으로 동작한다.
  • HTTP 메시지는 HTTP 서버와 HTTP 클라이언트에 의해 해석된다.

 

HTTP 요청의 종류(Request Method)

  • GET : 자료를 요청
  • POST : 자료의 생성을 요청
  • PUT : 자료의 수정을 요청
  • DELETE : 자료의 삭제를 요청

 

RTT란?

  • RTT는 작은 packet이 client에서 server로 이동했다가 다시 돌아오는 왕복시간을 의미한다. 

 

HTTP 연결의 두 가지 방식

non-persistent HTTP

  • non-persistent HTTP 방식에서는 TCP 연결 한번에 최대 하나의 객체를 전송할 수 있다.
  • 두 개 이상의 객체를 전송하기 위해서는 두 번 이상의 연결이 필요하다.
  • 각 객체 당 2개의 RTT가 필요하다.
  • non-persistent HTTP response time = 2RTT*객체의 수 + file transmission time

 

persistent HTTP

  • persistent HTTP 방식에서는 TCP 연결 한 번에 여러 개의 객체를 전송할 수 있다.
  • client는 참조된 객체를 만나는 즉시 request를 보낸다.
  • persistent HTTP response time = 1RTT + 1RTT*객체의수 + file transmission time
반응형

댓글

Designed by JB FACTORY