大佬教程收集整理的这篇文章主要介绍了为什么linux重用’time_wait’端口?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
首先,在客户端机器中,键入命令ehco 40000 40001>的/ proc / SYS /网/的IPv4 / ip_local_port_range.因此,TCP端口的最大数量为2.
服务器代码
while (1) { int len = sizeof(struct sockaddr); fd = accept(sfd,&remote,&len); read(fd,buf,sizeof(buf)); close(fd); }
客户代码
for (i = 0; i < 3; i++) { sleep(1); pid_t pid = @R_403_1592@; if (pid == 0) { handler(); exit(0); } } void handler() { * ............. */ res = connect(sfd,result->ai_addr,result->ai_addrlen); if (res == -1) { perror("error"); exit(1); } printf("connect\n"); }
节目
[root@livecd ~]# ./client connect [root@livecd ~]# connect connect
最多3个连接.我想,最多2个连接.为什么?
服务器有2个timewait连接.
[root@livecd ~]# netstat -anp | grep TIME tcp 192.168.88.131:2016 192.168.88.132:40000 TIME_WAIT tcp 192.168.88.131:2016 192.168.88.132:40001 TIME_WAIT
环境
Linux livecd.centos 2.6.32-642.el6.i686 #1 SMP Tue May 10 16:13:51 UTC 2016
服务器配置
[root@livecd ~]# cat /proc/sys/net/ipv4/tcp_fin_timeout 60 [root@livecd ~]# cat /proc/sys/net/ipv4/tcp_tw_recycle 0 [root@livecd ~]# cat /proc/sys/net/ipv4/tcp_tw_reuse 0
客户端配置
[root@livecd ~]# cat /proc/sys/net/ipv4/ip_local_port_range 40000 40001
重要
我也尝试ubuntu服务器14.04,但得到了相同的结果.
以上是大佬教程为你收集整理的为什么linux重用’time_wait’端口?全部内容,希望文章能够帮你解决为什么linux重用’time_wait’端口?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。