솔루션 TIME_WAIT 연결의 많은 수의

1, 킵 살아 연결 (추가 예정)

2 파라미터를 수정 TCP

TCP 연결은, TIME_WAIT 상태가 2 MSL (최대 세그먼트 수명), Windows의 4 분의 기본, 즉 240초, TIME_WAIT 상태를 지속됩니다 TIME_WAIT 상태 소켓을 입력합니다, 하나의 활성 소켓이 닫혀 시작, 소정의 프로토콜을 분리 소켓 재활용 할 수 없습니다. 특정 현상은 서버가 클라이언트 연결이 심각하게 영향을받는 서버에 비해 설립 된 상태에서 TIME_WAIT의 서버 측의 상태, 또는 훨씬 더 소켓의 존재 소켓 많이 발생합니다 닫으면 서버가 짧은 많은 수의 연결을 처리하기위한 것입니다 처리 능력, 또는 서비스에서 사용 가능한 소켓에서 실행합니다. TIME_WAIT TCP 프로토콜이 지연 메커니즘 재전송 시도의 텍스트 효과까지 남은 재 할당되지 않습니다 소켓을 보장하기 위해 사용되는, 논리를 보장하는 것이 필요하다.

해상도 : 큰 TIME_WAIT 상태는 시스템이 커널 파라미터를 조정함으로써 해결되어, 접속된다 알았다.

# VI /etc/sysctl.conf에 //加入以下内容, net.ipv4.tcp_syncookies默认就有,不需要再添加
#은 TCP syncookies의 사용을 제어 
net.ipv4.tcp_syncookies = 1 

새 연결을위한 # 시간 대기 소켓 재사용 할 수 
net.ipv4.tcp_tw_reuse = 1 

#는 TIME-WAIT 소켓 상태의 빠른 재활용 활성화 
net.ipv4.tcp_tw_recycle = 1 

tcp_fin_timeout 연결 시간 기본 값을 줄 #을 
net.ipv4.tcp_fin_timeout = 30

  

그런 경우 / sbin / sysctl을 -p 매개 변수를 실행하여 적용 할 수 있습니다

경우 / sbin / sysctl을 -p

  

부록 1.Linux 매개 변수 설명
net.ipv4.tcp_syncookies = 1, SYN 쿠키를 선회 SYN 큐 오버 플로우가 발생하면 치료가 SYN 공격의 소량을 활성화하기 위해 쿠키를 방지 할 수 있습니다, 기본 0 수단 폐쇄를 나타냅니다.
net.ipv4.tcp_tw_reuse = 1은 기본, 그것을 0 꺼져, 회전 재사용 TIME-WAIT 소켓 새로운 TCP 연결을 위해 재사용 허용을 나타냅니다.
net.ipv4.tcp_tw_recycle = 1은 기본, 그것을 0 꺼져, TCP 연결 개방 TIME-WAIT 소켓의 빠른 복구를 나타냅니다.
net.ipv4.tcp_fin_timeout = 30 시간 초과 시간은 30 대에, 시스템 기본을 수정합니다.

부록 2.Windows에 설명 된 다음 설정된 시간 매개 변수를 기다릴 TIME_WAIT
서비스 \ \ CURRENTCONTROLSET \ HKEY_LOCAL_MACHINE을 \ 시스템 은 Tcpip \ 매개 변수, 지정된 TcpTimedWaitDelay를 추가
최단 30 초 대기 시간에게 TIME_WAIT을 단축, DWORD 키를 30로 설정되어 있습니다.

추천

출처www.cnblogs.com/itplay/p/11371651.html