본문으로 건너뛰기

ping-pong

링크 : 웹소켓 서버 작성하기

핸드쉐이크가 끝난 시점부터 서버 혹은 클라이언트는 언제든지 ping 패킷을 보낼 수 있습니다. 만약 ping 패킷이 수신되면 수신자는 가능한 빨리 응답으로 pong 패킷을 보내야 합니다. (ping에서 전달된 payload와 동일한 payload를 붙여서 pong을 보냅니다. 이 경우 최대 payload length는 125입니다.) 서버는 주기적으로 ping을 보내 클라이언트가 아직 살아있는 상태인지 체크할 수 있습니다.

A ping or pong is just a regular frame, but it's a control frame. Pings have an opcode of 0x9, and pongs have an opcode of 0xA. When you get a ping, send back a pong with the exact same Payload Data as the ping (for pings and pongs, the max payload length is 125). You might also get a pong without ever sending a ping; ignore this if it happens.

ping 은 서버나 클라이언트 양쪽다 보낼 수 있다. ping 을 받은쪽은 pong 패킷을 보낸다.
그로써 서로간의 통신 상태 체크를 하게 된다.
ping 을 보냈을때 응답이 없으면 close 가 되는듯??