proc文件系统中网络参数详解(1)
统的值.
====================TCP 参数================ tcp_syn_retries :INTEGER 默认值是5 对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃.不应该大于255,默认值是5,对应于180秒左右时间.(对于大负载而物理通信良好的网络而言,这个值偏高,可修改为2.这个值仅仅是针对对外的连接,对进来的连接,是由tcp_retries1 决定的) tcp_synack_retries :INTEGER 默认值是5 对于远端的连接请求SYN,内核会发送SYN + ACK数据报,以确认收到上一个 SYN连接请求包.这是所谓的三次握手( threeway handshake)机制的第二个步骤.这里决定内核在放弃连接之前所送出的 SYN ACK 数目.不应该大于255,默认值是5,对应于180秒左右时间.(可以根据上面的 tcp_syn_retries 来决定这个值) tcp_keepalive_time :INTEGER 默认值是7200(2小时) 当keepalive打开的情况下,TCP发送keepalive消息的频率.(目前网络攻击等因素,造成了利用这个进行的攻击很频繁,曾经也有cu 的朋友提到过,说如果2边建立了连接,然后不发送任何数据或者rst/fin消息,那么持续的时间是不是就是2小时,空连接攻击? tcp_keepalive_time就是预防此情形的.我个人在做nat服务的时候的修改值为1800秒) tcp_keepalive_probes:INTEGER 默认值是9 TCP发送keepalive探测以确定该连接已经断开的次数.(注意:保持连接仅在SO_KEEPALIVE套接字选项被打开是才发送.次数默认不需要修改,当然根据情形也可以适当地缩短此值.设置为5比较合适) tcp_keepalive_intvl:INTEGER 默认值为75 探测消息发送的频率,乘以tcp_keepalive_probes就得到对于从开始探测以来没有响应的连接杀除的时间.默认值为75秒,也就是没有活动的连接将在大约11分钟以后将被丢弃.(对于普通应用来说,这个值有一些偏大,可以根据需要改小.特别是web类服务器需要改小该值,15是个比较合适的值) tcp_retries1 :INTEGER 默认值是3 放弃回应一个TCP连接请求前﹐需要进行多少次重试.RFC 规定最低的数值是3﹐这也是默认值﹐根据RTO的值大约在3秒 - 8分钟之间.(注意:这个值同时还决定进入的syn连接) tcp_retries2 :INTEGER 默认值为15 在丢弃激活(已建立通讯状况)的TCP连接之前﹐需要进行多少次重试.默认值为15,根据RTO的值来决定,相当于13-30分钟(RFC1122规定,大于100秒).(这个值根据目前的网络设置,可以适当地改小,我的网络内修改为了5) tcp_orphan_retries :INTEGER 默认值是7 在近端丢弃TCP连接之前﹐要进行多少次重试.默认值是7个﹐相当于 50秒 - 16分钟﹐视 RTO 而定.如果您的系统是负载很大的web服务器﹐那么也许需要降低该值﹐这类 sockets 可能会耗费大量的资源.另外参的考 tcp_max_orphans .(事实上做NAT的时候,降低该值也是好处显着的,我本人的网络环境中降低该值为3) tcp_fin_timeout :INTEGER 默认值是 60 对于本端断开的socket连接,TCP保持在FIN-WAIT-2状态的时间.对方可能会断开连接或一直不结束连接或不可预料的进程死亡.默认值为 60 秒.过去在2.2版本的内核中是 180 秒.您可以设置该值﹐但需要注意﹐如果您的机器为负载很重的web服务器﹐您可能要冒内存被大量无效数据报填满的风险﹐FIN-WAIT-2 sockets 的危险性低于 FIN-WAIT-1 ﹐它们最多只吃 1.5K 的内存﹐但是它们存在时间更长.另外参考 tcp_max_orphans.(事实上做NAT的时候,降低该值也是好处显着的,我本人的网络环境中降低该值为30) tcp_max_tw_buckets :INTEGER 默认值是180000 系统在同时所处理的最大 timewait sockets 数目.如果超过此数的话﹐time-wait socket 会被立即砍除并且显示 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |