linux修改TCP连接数

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/liyonghui123/article/details/84689030

 

 

我的系统为:centos 6.4 64位,现在与大爱分享一下修改TCP连接数(centos实测) !

  一、 文件数限制修改

  (1) vi /etc/security/limits.conf

  在末尾追加

  * soft nofile 10240

  * hard nofile 10240

  (2) vi /etc/pam.d/login

  在末尾追加

  session required /lib/security/pam_limits.so

      (3)

        net.nf_conntrack_max=6553600

  将参数65536改为6553600

       vim /proc/sys/net/nf_conntrack_max

 

  二、 网络端口限制修改

  vi /etc/sysctl.conf

      

net.ipv4.ip_conntrack_max = 10240
net.ipv4.ip_local_port_range = 1024 6553

  

 

内核参数sysctl.conf的优化
/etc/sysctl.conf 是用来控制linux网络的配置文件,对于依赖网络的程序(如web服务器和cache服务器)非常重要

           

net.ipv4.ip_local_port_range = 1024 65536
net.ipv4.ip_conntrack_max = 10240
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_window_scaling = 0
net.ipv4.tcp_sack = 0
net.core.netdev_max_backlog = 30000
net.ipv4.tcp_no_metrics_save=1
net.core.somaxconn = 262144
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_max_tw_buckets = 5000
     

       三、调整文件数:
       echo ulimit -HSn 65536 >> /etc/rc.local
       echo ulimit -HSn 65536 >>/root/.bash_profile

 

 

展开阅读全文

tcp连接数上不去,什么原因?

08-13

[code=text]rnwindows下用的IOCP,参考 小猪 的代码写的,客户端、服务器的代码是并在一起的rn测试结果:(不测数据,只测连接数)rn开一个客户端,只能建立3900多个连接,然后就有10055错误了rn再开一个客户端,也许还能建立5、6个连接,然后又10055错误了rn(别人的上万个连接是怎么建立起来的)rn[/code]rn[code=text]rnlinux下用的EPOLL,EL模式rn测试结果:(不测数据,只测连接数)rn开一个客户端,只能建立1017个连接,错误24(这个原因是知道的,描述符个数的限制造成的)rn但是,再开一个客户端,建立100多个后,连接建立的速度就超慢了rn(也就是说服务器epoll_ctl(1200个socket后就变慢了,很慢,所以没耐心测连接数的极限)rn开始怀疑是epoll_ctl用多了, 后面只ADD listen的socket(只用一次epoll_ctl),可情况依旧;rn还有个很怪的现象:关闭第一个客户端(1000多连接),第二客户端的连接建立速度也提不起来...rn(epoll要怎么写才高效?)rn(当前用法: ADD(listen_fd,可读),ADD(other_fd,可读),当other_fd有数据要写时,MOD(other_fd, 可读|可写),写通知后,如果发现other_fd没数据可写了(都写完了), 就MOD(other_fd, 可读))rn[/code]rn[code=text]rn300连接测数据,还没测出问题来 (也许测的不够)rn[/code]rn代码下载:rn[url=http://download.csdn.net/detail/ken_scott/5923957][/url]rngit@github.com:yanrk/common.gitrnrnrn了解的说说看法,或者写个的说说心得 论坛

没有更多推荐了,返回首页