TIME-WAIT

TIME_WAIT는 마지막 ACK와 지연 세그먼트를 위한 완충 구간이다

마지막 ACK를 보낸 쪽은 같은 4-tuple 재사용을 늦추고, 상대가 FIN을 재전송하면 다시 ACK할 수 있게 남아 있는다.

ACK 손실 대비 4-tuple 격리 무리한 제거 위험
1마지막 ACK 전송상대 FIN에 대한 ACK를 보낸다.
2ACK 손실 가능상대가 FIN을 재전송할 수 있다.
3ACK 재전송TIME-WAIT 상태라 같은 FIN에 다시 응답할 수 있다.
4지연 패킷 격리과거 세그먼트가 새 연결에 섞이는 일을 줄인다.

대기 시간

2MSL concept

RFC 문맥의 2MSL 개념은 중요하지만, 실제 OS별 TIME-WAIT 지속 시간과 조정 가능 여부는 다르다.

무조건 제거 금지

safety

TIME-WAIT를 억지로 없애면 마지막 ACK 처리와 과거 세그먼트 격리 성질을 잃을 수 있다.