WEB伺服器TCP:time wait bucket table overflow報錯排查

來源:互聯網
上載者:User


WEB伺服器TCP:time wait bucket table overflow報錯排查 日誌巡檢發現,公司web伺服器一直報錯,資訊如下: Jul  5 15:40:37 mail kernel: printk: 272 messages suppressed.Jul  5 15:40:37 mail kernel: TCP: time wait bucket table overflowJul  5 15:40:37 mail kernel: TCP: time wait bucket table overflowJul  5 15:40:43 mail kernel: printk: 92 messages suppressed.Jul  5 15:40:43 mail kernel: TCP: time wait bucket table overflow                                                 (TCP:時間等待桶表)   www.2cto.com  根據報錯提示,需要更改net.ipv4.tcp_max_tw_buckets這個核心參數。這個參數是系統同時保持timewait通訊端的最大數量。如果超過這個數字,time-wait通訊端將立刻被清除並列印警告資訊。這個限制僅僅是為了防止簡單的 DoS攻擊,你絕對不能過分依靠它或者人為地減小這個值,如果網路實際需要大於預設值,更應該增加這個值(如果增加了記憶體之後)。解決方案:增大 tcp_max_tw_buckets的值,並不是這個值越小越好,我看了我系統中TIME_WAIT 大部是由php-fpm產生的,是屬於正常的現象 系統在同時所處理的最大timewait sockets 數目。如果超過此數的話﹐time-wait socket 會被立即砍除並且顯示警告資訊。之所以要設定這個限制﹐純粹為了抵禦那些簡單的 DoS 攻擊﹐千萬不要人為的降低這個限制﹐不過﹐如果網路條件需要比預設值更多﹐則可以提高它(或許還要增加記憶體)。 netstat -an | grep 9000 | awk '{print $6}' | sort | uniq -c | sort -rnnetstat -an | grep 80| awk '{print $6}' | sort | uniq -c | sort -rn  www.2cto.com  排查步驟: 1. 查看伺服器網路連接情況; [root@mail ~]#  netstat -pant |awk '/^tcp/ {++state[$6]} END {for(key in state) printf("%-10s\t%d\n",key,state[key]) }'TIME_WAIT       4944CLOSE_WAIT      1FIN_WAIT1       93FIN_WAIT2       66ESTABLISHED     292SYN_RECV        29CLOSING         32LAST_ACK        9LISTEN          14[root@mail ~]#  www.2cto.com  2.查看核心參數vi /etc/sysctl.conf 將net.ipv4.tcp_max_tw_buckets = 5000 改為:net.ipv4.tcp_max_tw_buckets = 10000 3.使更改的核心參數生效sysctl -p 4. 再次查看伺服器網路連接情況; [root@mail ~]#  netstat -pant |awk '/^tcp/ {++state[$6]} END {for(key in state) printf("%-10s\t%d\n",key,state[key]) }'TIME_WAIT       6644 CLOSE_WAIT      1FIN_WAIT1       93FIN_WAIT2       66ESTABLISHED     292SYN_RECV        29CLOSING         32LAST_ACK        9LISTEN          14 5.#再看/var/log/messages和dmesg的資訊,已經不再報錯了,看來net.ipv4.tcp_max_tw_buckets=10000暫時是夠用了  www.2cto.com  6.原因     伺服器的TCP串連數,超出了核心定義最大數。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.