TCP states

상태명은 무엇을 보냈고 무엇을 기다리는지 말한다

연결 수립과 종료에서 클라이언트와 서버 상태는 대칭이 아니며, 운영 증상은 상태 이름에서 단서를 얻는다.

open close 운영 신호
LISTEN서버가 SYN 대기
SYN-SENT클라이언트가 SYN-ACK 대기
ESTABLISHED양쪽 데이터 송수신 가능
FIN-WAIT-1/2active closer가 상대 FIN 대기
CLOSE-WAIT상대 FIN 수신, 앱 close 대기
LAST-ACK내 FIN의 ACK 대기
TIME-WAIT마지막 ACK 후 지연 세그먼트 격리
CLOSEDTCB 제거
SYN-RECEIVED최종 ACK 전 반연결 상태
CLOSE-WAIT

앱 문제 가능성

프로그램이 close를 호출하지 못하는 경우가 많다.

TIME-WAIT

대체로 정상

짧은 연결이 많으면 포트와 테이블 압박을 점검한다.

SYN 상태

경로와 listen 확인

방화벽, 라우팅, backlog, SYN flood를 의심한다.