Web

Socket (소켓) 에 대해 알아보고, Websocket (웹소켓) 과 구분해보자!

hoonylab 2025. 4. 28. 10:37
728x90
반응형

✅ 소켓(Socket)이란?

소켓(Socket)은 네트워크 통신을 위한 기본 단위입니다.
IP 주소와 포트 번호를 조합해, 컴퓨터끼리 데이터를 주고받을 수 있는 통로를 만드는 기술입니다.

  • TCP 소켓, UDP 소켓처럼 사용됩니다.
  • 통신을 열고 데이터를 주고받는 역할을 합니다.

 

✅ WebSocket이란?

WebSocket은 웹 환경에서 실시간 양방향 통신을 가능하게 하는 프로토콜입니다.
초기 연결은 HTTP로 시작하지만, 이후에는 소켓을 통해 지속적으로 통신합니다.

  • HTTP 프로토콜을 업그레이드해서 사용합니다.
  • 브라우저와 서버 간에 빠른 실시간 데이터 송수신이 가능합니다.

 

✅ 소켓 vs WebSocket 차이 정리

항목 소켓(Socket) 웹소켓(WebSocket)
개념 네트워크 통신의 기본 단위 웹 실시간 통신을 위한 프로토콜
사용 계층 TCP/UDP TCP + HTTP
연결 방식 직접 연결 (listen, connect) HTTP 업그레이드 후 연결
특징 기초 통신 기술 웹에 최적화된 지속 통신
대표 사용 예시 서버-서버 통신, 저수준 통신 웹 채팅, 실시간 알림

 

✅ HTTP → WebSocket Upgrade 흐름

클라이언트 (브라우저)
    ↓ (HTTP 요청)
    요청: Upgrade: websocket
    Sec-WebSocket-Key: (랜덤 키)
    
서버
    ↓ (HTTP 응답)
    응답: 101 Switching Protocols
    Upgrade: websocket
    Sec-WebSocket-Accept: (서명된 키)

==> WebSocket 연결 성공!

이후에는 WebSocket 통신 시작 (양방향 실시간 데이터 송수신)

 

✅ 한 줄 요약

소켓은 "통신 그 자체"이고, WebSocket은 "웹에서 소켓을 활용해 실시간 통신을 하는 프로토콜"입니다!

728x90
반응형