软件测试技术之time_wait及性能影响
白羽 2018-08-14 来源 :网络 阅读 1397 评论 0

摘要:本文将带你了解软件测试技术之time_wait及性能影响,希望对大家学测试技术有所帮助

        本文将带你了解软件测试技术之time_wait及性能影响,希望对大家学测试技术有所帮助


1、什么是time_wait?如何产生的?
 
上状态图:
 
;
从图中可以看到,tcp连接后,在四次握手之后,先发FIN标志位的一端就会进入time_wait状态。
2、time_wait的类型有哪些?
Time_wait分为两类:主动型time_wait和被动型time_wait
主动型:本机主动与其他服务器建立连接时的time_wait,这种情况下本机产生的随机端口号较多。

 
被动型:本机由于其他服务器主动连接过来后,产生的time_wait。这种情况下,本机ip对应开启的端口号相对固定。
 

3、不同Time_wait对系统性能的影响。
被动型time_wait一般由于被动建立链接产生的time_wait,这种情况下一般占用的端口号比较少,产生的time_wait数也很少。几乎可以忽略不计,对服务器性能几乎没有任何影响。
主动型time_wait对服务器的影响比较大。因为服务器可利用的端口号是有限的,如果占用达到服务器端口号极限,对服务器的性能就会产生影响。
如何排查问题
4、查看服务器time数的命令:
netstat -an | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
查看服务器可用端口号情况:
cat /proc/sys/net/ipv4/ip_local_port_range
如何减少time_wait数量
vi /etc/sysctl.conf

编辑文件,加入以下内容:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
 
然后执行;/sbin/sysctl -p;让参数生效。
 
net.ipv4.tcp_syncookies = 1;表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;

net.ipv4.tcp_tw_reuse = 1;表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;

net.ipv4.tcp_tw_recycle = 1;表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

net.ipv4.tcp_fin_timeout;修改系統默认的 TIMEOUT 时间
 
 
 

 



    
   
        
          

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标软件测试之测试技术频道!

本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved