본문 바로가기

ETC

[#. Web] HTTP, Web Socket, Web RTC란?

반응형

 

 

 

 

 

 

HTTP(HyperText Transfer Protocol)

 

텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜이다

이렇게 규약을 정해두었기 때문에 모든 프로그램이 이 규약에 맞춰 개발해서 서로 정보를 교환할 수 있다

 

 

 

 

브라우저(클라이언트)가 서버에 요청(Requst)하고

서버가 브라우저에 응답(Response)하면

브라우저-서버 간 통신은 끝난다

따라서 HTTP는 연결 상태를 유지하지 않는 비연결성 프로토콜이다

 

 

 

Request Method

 

  • GET
  • POST
  • PUT
  • DELETE

 

 

Request Status Code

 

  • 1XX (Information responses, 조건부 응답) : 서버가 요청을 받았으며, 서버에 연결된 클라이언트는 작업을 계속 진행한다
  • 2XX (Successful responses, 성공) : 클라이언트가 요청한 동작을 수신했고 성공적으로 처리했다
  • 3XX (Redirection messages, 리다이렉션 완료) : 요청에 대해서 하나 이상의 응답이 가능하다 사용자는 그중에 하나를 반드시 선택해야 한다
  • 4XX (Client error responses, 요청 오류) : 브라우저(클라이언트)에 오류가 있다
  • 5XX (Server error reponses, 서버 오류) : 서버에 문제가 있음을 의미한다

 

 

 

 

 

Web Socket

하나의 TCP 접속에 전이중 통신 채널을 제공하는 컴퓨터 통신 프로토콜이다

클라이언트의 브라우저와 서버 사이의 동적인 양방향 연결 채널을 구성한다

Web Socket API를 통해 서버로 메세지를 보내고, 요청 없이 응답을 받아오는 것이 가능하다

HTTP의 Request, Response와 달리 Web Socket은 Open, Close가 존재한다 

 

 

 

HTTP vs Web Socket

HTTP는 클라이언트의 요청(Request)이 있을 때만 서버가 응답(Response)하여 해당 정보를 전송하고 바로 연결을 종료하는 방식이지만,

Socket 통신은 HTTP 통신과 달리 서버와 클라이언트가 특정 포트를 통해 연결을 성립하고 있어 실시간으로 양방향 통신을 하는 방식이다

 

HTTP 통신은 실시간 연결이 아닌, 필요한 경우에만 서버로 접근하는 콘텐츠 위주의 데이터를 사용할 때 용이하다

실시간 스트리밍 중계나 채팅과 같이 즉각적으로 정보를 주고받는 경우에는 Socket을 사용한다

 

 

 

 

 

 

Web RTC(Web Real-Time Communications)

WebRTC는 웹 브라우저 간에 플러그인의 도움 없이 서로 통신할 수 있도록 설계된 API이며, P2P(Peer to Peer) 통신에 최적화되어 있다

웹 어플리케이션 및 사이트들이 별도의 소프트웨어 없이 음성, 영상 미디어 혹은 텍스트, 파일 같은 데이터를 브라우저끼리 주고 받을 수 있게 만든 기술이다

화상 통화, 화상 공유 구현이 가능하다

웹 브라우저 상에서는 어떠한 플러그인도 필요 없이 음성 채팅과 화상채팅, 데이터 교환까지도 가능하게 한다

 

 

 

 

@ P2P(Peer to Peer) 

 

Peer to Peer 방식은 동등 계층간 통신 방식으로 클라이언트, 서버의 개념없이 동등한 노드들로 구성되어 데이터를 주고받는 형식으로 되어있다

 

 

 

 

 

 

 

반응형