ÔÚ´æÔÚ´óÁ¿¶ÌÁ¬½ÓµÄÇé¿öÏ£¬LinuxµÄTCPÕ»Ò»°ã¶¼»áÉú³É´óÁ¿µÄ TIME_WAIT ״̬µÄsocket¡£
Äã¿ÉÒÔÓÃÏÂÃæµÄÃüÁî¿´µ½£º
netstat -ant| grep -i time_wait
ÓÐʱºò£¬Õâ¸öÊýÄ¿ÊǾªÈ˵ģº
netstat -ant|grep -i time_wait |wc -l
¿ÉÄܻᳬ¹ýÈýËÄÍò¡£Õâ¸öʱºò£¬ÎÒÃÇÐèÒªÐÞ¸Ä linux kernel µÄ tcp time waitµÄʱ¼ä£¬Ëõ¶ÌÖ®£¬Óиö sysctl ²ÎÊýÃ²ËÆ¿ÉÒÔʹÓã¬ËüÊÇ /proc/sys/net/ipv4/tcp_fin_timeout£¬È±Ê¡ÖµÊÇ 60£¬Ò²¾ÍÊÇ60Ã룬ºÜ¶àÍøÉϵÄ×ÊÁ϶¼Ëµ½«Õâ¸öÊýÖµÉèÖõÍһЩ¾Í¿ÉÒÔ¼õÉÙnetstat ÀïÃæµÄTIME_WAIT״̬£¬µ«ÊÇÕâ¸ö˵·¨ÊÇ´íÎóµÄ¡£¾¹ýÈÏÕæÔĶÁLinuxµÄÄÚºËÔ´´úÂ룬ÎÒÃÇ·¢ÏÖÕâ¸öÊýÖµÆäʵÊÇÊä³öÓõģ¬ÐÞ¸ÄÖ®ºó²¢Ã»ÓÐÕæÕýµÄ¶Á»ØÄÚºËÖнøÐÐʹÓ㬶øÄÚºËÖÐÕæÕý¹ÜÓõÄÊÇÒ»¸öºê¶¨Ò壬ÔÚ $KERNEL/include/net/tcp.hÀïÃæ£¬ÓÐÏÂÃæµÄÐУº
#define TCP_TIMEWAIT_LEN (60*HZ) /* how long to wait to destroy TIME-WAIT
* state, about 60 seconds */
¶øÕâ¸öºêÊÇÕæÕý¿ØÖÆ TCP TIME_WAIT ״̬µÄ³¬Ê±Ê±¼äµÄ¡£Èç¹ûÎÒÃÇÏ£Íû¼õÉÙ TIME_WAIT ״̬µÄÊýÄ¿£¨´Ó¶ø½ÚʡһµãµãÄں˲Ù×÷ʱ¼ä£©£¬ÄÇô¿ÉÒÔ°ÑÕâ¸öÊýÖµÉèÖõÍһЩ£¬¸ù¾ÝÎÒÃǵIJâÊÔ£¬ÉèÖÃΪ 10 Ãë±È½ÏºÏÊÊ£¬Ò²¾ÍÊǰÑÉÏÃæµÄÐÞ¸ÄΪ£º
#define TCP_TIMEWAIT_LEN (10*HZ) /* how long to wait to destroy TIME-WAIT
* state, about 60 seconds */
È»ºóÖØÐ±àÒëÄںˣ¬ÖØÆôϵͳ¼´¿É·¢ÏÖ¶ÌÁ¬½ÓÔì³ÉµÄTIME_WAIT״̬´ó´ó¼õÉÙ£º
netstat -ant | grep -i time_wait |wc -l
Ò»°ãÇé¿ö¶¼¿ÉÒÔÖÁÉÙ¼õÉÙ2/3¡£Ò²ÄÜÏàÓ¦Ìá¸ßϵͳӦ¶Ô¶ÌÁ¬½ÓµÄËÙ¶È¡£