도구스개발

웹소켓 종료 코드 사전

웹소켓(WebSocket) 연결 종료 코드(1000~1015)의 뜻을 찾아봅니다. RFC 6455 명세와 IANA 등록 코드를 함께 담았습니다.

1000Normal ClosureRFC 6455

목적을 다하고 정상적으로 닫혔습니다.

1001Going AwayRFC 6455

서버가 내려가거나 브라우저가 페이지를 떠나는 등 한쪽이 떠납니다.

1002Protocol ErrorRFC 6455

프로토콜 위반으로 연결을 끊습니다.

1003Unsupported DataRFC 6455

받아들일 수 없는 종류의 데이터를 받아 연결을 끊습니다(예: 텍스트만 처리하는 쪽이 바이너리를 받음).

1004Reserved예약값(전송 안 됨)

향후 정의를 위해 예약된 값입니다. 지금은 쓰이지 않습니다.

1005No Status Rcvd예약값(전송 안 됨)

종료 코드가 아예 없었다는 뜻입니다. 실제 종료 프레임에는 실려 전송되지 않는 예약값입니다.

1006Abnormal Closure예약값(전송 안 됨)

제대로 된 종료 프레임 없이 연결이 끊겼습니다. 실제로 전송되지 않고 클라이언트가 로컬에서 표시하는 값입니다.

1007Invalid frame payload dataRFC 6455

메시지 타입과 맞지 않는 데이터를 받았습니다(예: 텍스트 메시지 안에 UTF-8이 아닌 데이터).

1008Policy ViolationRFC 6455

다른 코드로 정확히 설명되지 않는, 정책 위반에 해당하는 일반적인 종료입니다.

1009Message Too BigRFC 6455

처리할 수 없을 만큼 큰 메시지를 받아 연결을 끊습니다.

1010Mandatory ExtensionRFC 6455

클라이언트가 요청한 확장(extension)을 서버가 핸드셰이크에서 응답하지 않아 클라이언트가 연결을 끊습니다.

1011Internal ErrorRFC 6455

서버가 요청을 처리하다 예상치 못한 상태를 만나 연결을 끊습니다.

1012Service RestartIANA 확장

서비스가 재시작되고 있습니다. IANA 등록 확장 코드입니다.

1013Try Again LaterIANA 확장

서비스가 과부하 상태입니다. 잠시 후 다시 시도하세요. IANA 등록 확장 코드입니다.

1014Bad GatewayIANA 확장

게이트웨이·프록시로 동작하는 서버가 상위 서버로부터 잘못된 응답을 받았습니다. IANA 등록 확장 코드입니다.

1015TLS Handshake예약값(전송 안 됨)

TLS 핸드셰이크에 실패했습니다. 실제로 전송되지 않는 예약값입니다.

사용 방법

  1. 1코드 번호나 이름으로 검색합니다.
  2. 2설명을 읽고 어떤 상황에서 나는 종료인지 확인합니다.

자주 묻는 질문

RFC 6455(웹소켓 프로토콜) 7.4.1절이 1000~1011번 코드를 정의합니다. 1012~1015번은 이후 IANA 레지스트리에 등록된 확장 코드입니다.

1006(비정상 종료)과 1005(상태 코드 없음)는 실제 종료 프레임에 담겨 전송되는 값이 아니라, 브라우저 등 클라이언트가 "제대로 된 종료 프레임 없이 연결이 끊겼다"는 것을 로컬에서 나타내기 위해 쓰는 예약값입니다.

1000은 목적을 다하고 정상적으로 닫힌 경우입니다. 1001은 서버가 내려가거나 브라우저가 페이지를 떠나는 등 한쪽이 "떠나는" 상황에서 씁니다.

알아두면 좋은 점

  • RFC 6455 §7.4.1(datatracker.ietf.org/doc/html/rfc6455)과 websocket.org 참고 문서를 WebSearch로 교차 확인했습니다(2026-09-05). 1012~1015는 RFC 6455 본문이 아니라 IANA WebSocket Close Code Number Registry에 등록된 확장 코드로, 구현체마다 지원 여부가 다를 수 있습니다.
  • 1005·1006·1015는 프로토콜상 종료 프레임에 실려 전송되지 않는 예약값입니다. 이 계산기에는 참고용으로 함께 실었습니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 5일 · 결과는 참고용 추정치입니다.