Web

웹소켓이란

필립 2024. 6. 21. 00:16

웹소켓(WebSocket)은 웹 브라우저와 웹 서버 간의 양방향 통신 채널을 제공하는 프로토콜이다. 

 

웹소켓의 특징

  • 클라이언트와 서버 간 실시간 양방향 통신이 가능하다. 서버에서 클라이언트로 데이터를 보낼 수 있고, 클라이언트에서도 서버로
    데이터를 보낼 수 있다. 
  • HTTP 프로토콜과 달리 헤더 오버헤드가 작아 효율적이다. 초기 핸드셰이크 후에는 작은 데이터 프레임만 주고받는다. 
  • 웹소켓 연결은 지속적이며, 서버나 클라이언트 중 어느 한쪽에서 연결을 끊을 때까지 유지된다

웹소켓의 동작 과정 

  1. Opening Handshake : 클라이언트가 웹소켓 연결을 요청하면 서버와 핸드셰이크를 수행한다. 이 과정에서 HTTP 프로토콜을 
    업그레이드 한다. 
  2. Data Transfer : 핸드셰이크 후 웹소켓 프로토콜로 데이터를 주고받는다. 데이터는 프레임 단위로 전송되며, 여러 프레임이 모여 하나의 메시지를 구성한다. 
  3. Closing Handshake : 클라이언트나 서버 중 한쪽에서 연결을 종료하면 핸드셰이크 과정을 거쳐 연결이 안전하게 종료된다

웹소켓은 실시간 양방향 통신이 필요한 웹 애플리케이션에 적합하다. 

 

'Web' 카테고리의 다른 글

HTTP 메서드와 상태코드  (0) 2024.06.24
HTTP 메서드가 가지는 의미는 ?  (0) 2024.06.21
redis 연결 시 await 설정  (0) 2024.06.20
Redis란 ?  (0) 2024.06.19
웹소켓이란?  (0) 2024.06.17