본문 바로가기
Infra

TCP tcp_tw_reuse 설정

by 당리 2025. 9. 28.

TCP tcp_tw_resue란

  • tcp_tw_reuse는 리눅스 커널의 네트워크 옵션 중 하나임.
  • 역할: 클라이언트 쪽에서 TIME_WAIT 상태에 있는 소켓을 새 연결에 재사용할 수 있게 허용하는 기능.

 

필요한이유

  • TCP 연결이 끝나면 보통 일정 시간(TIME_WAIT)을 유지함.
  • 짧은 연결을 많이 쓰는 서비스(예: API 호출, 웹 크롤러)는 TIME_WAIT 소켓이 쌓여서 포트 고갈 문제가 생길 수 있음.
  • 이때 tcp_tw_reuse=1로 켜두면 TIME_WAIT 소켓을 다시 쓸 수 있어서 포트 부족을 완화할 수 있음.

 

주의할 점

  • 서버(리스닝 소켓)에는 영향 없음, 오직 클라이언트 아웃바운드 연결에만 적용됨.
  • NAT 환경에서는 문제가 생길 수 있음 (패킷이 잘못 전달될 위험).
  • 보통은 Keep-Alive나 커넥션 풀링으로 해결하는 게 더 안전함.
  • 꼭 필요한 상황에서만 신중하게 켜는 게 좋음.

 

 

# 현재 값 확인
cat /proc/sys/net/ipv4/tcp_tw_reuse

# 활성화
sysctl -w net.ipv4.tcp_tw_reuse=1

'Infra' 카테고리의 다른 글

Oracle vs PostgreSQL  (2) 2025.10.05
AWS EC2 vs ECS 차이  (0) 2025.09.28
HSM이란?  (0) 2025.09.07
AWS Kinesis  (0) 2025.08.31
JEUS 에서 Permission Denied 오류  (0) 2025.08.17