
웹소켓은 HTTP 포트 80, HTTPS 포트 443 위에서 동작한다.
웹소켓은 TCP연결 처럼 핸드셰이크를 이용해 연결을 맺는다. 이때 HTTP 업그레이드 헤더를 사용하여 HTTP 프로토콜에서 웹소켓 프로토콜로 변경한다.
즉, 최초 접속시에는 HTTP 프로토콜을 이용해 핸드셰이킹을 한다.
이후 연결이 맺어지면 어느 한쪽이 연결을 끊지 않는 이상 영구적인(persistent) 동일한 채널이 맺어지고, HTTP 프로토콜이 웹소켓 프로토콜로 변경된다.
이때 데이터를 암호화하기 위해 WSS 프로토콜 등을 이용할 수도 있다.