博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TCP: time wait bucket table overflow
阅读量:6074 次
发布时间:2019-06-20

本文共 2239 字,大约阅读时间需要 7 分钟。

集群中的节点中每台在/var/log/messages中发现大量错误,内容如下:

root@real2 ~]# tail -f /var/log/messages
Oct 27 22:45:55 real2 kernel: printk: 1438 messages suppressed.
Oct 27 22:45:55 real2 kernel: TCP: time wait bucket table overflow
Oct 27 22:46:00 real2 kernel: printk: 1682 messages suppressed.
Oct 27 22:46:00 real2 kernel: TCP: time wait bucket table overflow
Oct 27 22:46:05 real2 kernel: printk: 1752 messages suppressed.
Oct 27 22:46:05 real2 kernel: TCP: time wait bucket table overflow
Oct 27 22:46:10 real2 kernel: printk: 1681 messages suppressed.
Oct 27 22:46:10 real2 kernel: TCP: time wait bucket table overflow
Oct 27 22:46:15 real2 kernel: printk: 1660 messages suppressed.
Oct 27 22:46:15 real2 kernel: TCP: time wait bucket table overflow

 

root@real2 ~]# tail -f /var/log/messages

Oct 27 22:45:55 real2 kernel: printk: 1438 messages suppressed.

Oct 27 22:45:55 real2 kernel: TCP: time wait bucket table overflow

Oct 27 22:46:00 real2 kernel: printk: 1682 messages suppressed.

Oct 27 22:46:00 real2 kernel: TCP: time wait bucket table overflow

Oct 27 22:46:05 real2 kernel: printk: 1752 messages suppressed.

Oct 27 22:46:05 real2 kernel: TCP: time wait bucket table overflow

Oct 27 22:46:10 real2 kernel: printk: 1681 messages suppressed.

Oct 27 22:46:10 real2 kernel: TCP: time wait bucket table overflow

Oct 27 22:46:15 real2 kernel: printk: 1660 messages suppressed.

Oct 27 22:46:15 real2 kernel: TCP: time wait bucket table overflow

 

原因:/proc/sys/net/ipv4/tcp_max_tw_buckets的值太小,才2000

解决方法:增大 tcp_max_tw_buckets的值,并不是这个值越小越好,我看了我系统中TIME_WAIT 大部是由php-fpm产生的,是属于正常的现象

修改 /etc/sysctl.conf

net.ipv4.tcp_max_tw_buckets = 20000

 

sysctl -p 让其生效

 

附TIME_WAIT

 

[root@real2 ~]#

[root@real2 ~]# netstat -an | grep 80 | awk ‘{print $6}’ | sort | uniq -c | sort -rn

5395 ESTABLISHED

2671 TIME_WAIT

978 FIN_WAIT2

501 FIN_WAIT1

165 SYN_RECV

71 LAST_ACK

2 CLOSING

1 LISTEN

[root@real2 ~]# netstat -an | grep 9000 | awk ‘{print $6}’ | sort | uniq -c | sort -rn

8550 TIME_WAIT

1 LISTEN

1 FIN_WAIT1

1 ESTABLISHED

 

tcp_max_tw_buckets 参数类型:整型

系统在同时所处理的最大timewait sockets 数目。如果超过此数的话﹐time-wait socket 会被立即砍除并且显示警告信息。之所以要设定这个限制﹐纯粹为了抵御那些简单的 DoS 攻击﹐千万不要人为的降低这个限制﹐不过﹐如果网络条件需要比默认值更多﹐则可以提高它(或许还要增加内存)。

本文转自it你好 51CTO博客,原文链接:http://blog.51cto.com/itnihao/758353,如需转载请自行联系原作者

你可能感兴趣的文章
css 让一张彩色的图片变成一张黑白图
查看>>
Git介绍和基本原理
查看>>
后缀数组 3160 最长公共子串
查看>>
计算机IDE接口与SATA接口的区别
查看>>
PLSQL_基础系列05_视图控制WITH CHECK OPTION(案例)
查看>>
[开源 .NET 跨平台 Crawler 数据采集 爬虫框架: DotnetSpider] [二] 基本使用
查看>>
高级软件工程师技术要求
查看>>
centos6.9(Linux系统)安装VMware tools教程
查看>>
oracle树结构查询
查看>>
博客园首弹
查看>>
求数组元素的最大值
查看>>
学习:C#无标题窗体移动
查看>>
ajax学习笔记1
查看>>
c#进制转换
查看>>
vs中常用的快捷键
查看>>
CSS3中border-image属性详解
查看>>
你得学会并且学得会的Socket编程基础知识(续)——Silverlight客户端(转)
查看>>
ubuntu下配置vim及插件
查看>>
paper 69:Haar-like矩形遍历检测窗口演示Matlab源代码[转载]
查看>>
ole辅助类-sqlhelper-access
查看>>