클라이언트는 현재 http 연결을 ws프로토콜로 전환하겠다는 핸드셰이크 요청을 서버로 보냄
클라이언트에서 서버로 HTTP.GET요청을 보내면 이 요청에는 Upgrade: websocket
및 connetion: Upgrade
헤더가 포함된다.
서버는 클라이언트의 핸드셰이크 요청을 받고, 통신을 위한 초기 설정을 진행한다.
서버가 WebSocket 연결을 지원하고 요청을 수락할 경우, HTTP 응답 코드 101 Switching Protocols
를 클라이언트에 보내 연결 프로토콜을 WebSocket으로 전환
서버가 클라이언트에 핸드셰이크 응답을 보낼 때, Id, 서버가 지원하는 프로토콜 버전, 통신을 위한 설정(통신 암호화 여부, 하트비트 간격 등)이 있다면 이 부분을 포함된다.