티스토리 뷰
서비스 운영하다보니 서버에 CLOSE_WAIT된 socket이 엄청많이 발생하는것이 발견됨...
* CLOSE_WAIT는 왜 발생하는가?
- 요 한장의 이미지가 제일 좋은 설명인듯
- http://kukuta.tistory.com/155
- 요거를 코드로 구현해 놓은건 이쪽 사이트에서 확인해볼수 있음.
http://www.sysnet.pe.kr/Default.aspx?mode=2&sub=0&detail=1&pageno=0&wid=1334&rssMode=1&wtype=0
* 서버의 소켓 상태 확인
# netstat -nto | grep CLOSE_WAIT.*on
~~~~~~~ CLOSE_WAIT on (10.51/11/0)
~~~~~~~ CLOSE_WAIT on (115.64/12/0)
~~~~~~~ CLOSE_WAIT on (5.27/14/0)
~~~~~~~ CLOSE_WAIT on (110.84/13/0)
~~~~~~~ CLOSE_WAIT on (90.57/15/0)
......
- client로부터 FIN을 receive 받고 ACK를 send를 했는데 ACK가 처리되지 못하고 있어서(send-q에 처리되지 못한 q가 남아있음) 다음단계로 넘어가지를 못하는 상태로 볼수 있다.
-> timer가 돌면서 retry를 하지만 오래 걸림(15분 ~ 30분)
* 변경
- 기존 tcp_retries2 설정을 확인해보면 15로 설정이 되어있음
# cat /proc/sys/net/ipv4/tcp_retries2
15
- 15인 경우 전체 timeout까지는 13 ~ 30분 정도 소요
- 해당 설정을 줄여서 빠르게 재전송 시도 후 실패하도록 변경
- /etc/sysctl.conf 설정
net.ipv4.tcp_retries2 = 3 ~ 5
* 참조
- http://stackoverflow.com/questions/5907527/application-control-of-tcp-retransmission-on-linux
'Tech > Tips' 카테고리의 다른 글
Http Live Streaming 관련 (0) | 2014.01.20 |
---|---|
오라클 xe 한글설정 (0) | 2013.11.25 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- swell
- srand
- 홍대 프리마켓
- rsync
- 홍대앞 놀이터
- 백혈검
- ONCE
- tcp_retries2
- 공연후기
- CLOSE_WAIT
- 월녀검
- 메르센 트위스터
- 설산비호
- THE SWELL SEASON
- http live streaming
- Mersenne Twister
- Marketa Irglova
- rand
- 스웰시즌
- 서검은구록
- 정규분포
- Glen Hansard
- 원양도
- mediastreamvalidator
- 백마소서풍
- 왕좌의 게임
- 연성결
- 원스
- game of thrones
- 협객행
글 보관함