开发者社区> 问答> 正文

关于tcp timewait连接数过高问题

我使用的是阿里云centos6.5,最近tcp的time_wait连接数特别高,我把系统参数修改为 [font=宋体, 'Arial narrow', arial, serif]net.ipv4.tcp_tw_recycle = 1可以解决time_wait过高的问题,但是导致了外部练级服务器丢包的问题,只好改回来,请问哪位大神知道还有没有其他的办法能解决time_wait过高的问题。

展开
收起
ilerver 2015-12-23 09:41:09 8468 0
3 条回答
写回答
取消 提交回答
  • 回 2楼sky、的帖子
    都是正常的请求,快速回收行不通,会导致其他问题。我现在内存使用量和CPU以及负载都很小,不知道怎么判断什么情况下应该增加配置,请大神指教~

    -------------------------

    回 2楼sky、的帖子
    其他都很正常,除了time_wait有点高之外,这种情况应该注意些什么呢?求指教

    -------------------------

    回 1楼dongshan8的帖子
    谢谢回复,快速回收行不通,会导致很大的问题
    2015-12-30 10:20:30
    赞同 展开评论 打赏
  • Re关于tcp timewait连接数过高问题
    这就是一个有得必有失的过程。如果开启快速回收,确实可以有效的避免timewait。但是同时也会导致有大量的请求不能正常建立三次握手。建议楼主分析一下timewait的连接是正常请求还是恶意请求。如果是正常请求,不行就增加配置资源吧。如果是恶意请求。可以尝试用其他的方式将请求deny掉。比如分析访问规则。从应用层deny掉。或者将攻击者IP从防火墙给drop掉。
    2015-12-24 10:43:12
    赞同 展开评论 打赏
  • 旺旺:nectar2。
    楼主您好,

    欢迎来到阿里云论坛。

    为您在网上搜索了一下,看到有类似的案例,且提供了参考的处理方法,里边说,除了调整

    net.ipv4.tcp_tw_recycle = 1还同时调整:

    # vi /etc/sysctl.conf  //加入以下内容,net.ipv4.tcp_syncookies默认就有,不需要再添加
    # Controls the use of TCP syncookies
    net.ipv4.tcp_syncookies = 1

    # The TIME-WAIT sockets for new connections can be reused
    net.ipv4.tcp_tw_reuse = 1

    # Enable fast recycling of TIME-WAIT sockets status
    net.ipv4.tcp_tw_recycle = 1

    # Decrease the time default value for tcp_fin_timeout connection
    net.ipv4.tcp_fin_timeout = 30

    您可以试试。

    文章出处: http://coolnull.com/3605.html


    2015-12-23 11:33:47
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
TCP Cluster for mqtt技术实施方案 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载