免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: twodog29
打印 上一主题 下一主题

[网络管理] 如何修改linux最大连接数(网上有各种方法,求证一下) [复制链接]

论坛徽章:
0
11 [报告]
发表于 2008-05-05 15:18 |只看该作者
原帖由 twodog29 于 2007-3-24 18:42 发表
我还是说说我遇到的问题吧,我用的电脑是C4 2.0G,内存256M,带110台电脑上网,70台用squid作代理上网(进行访问控制),40台用iptables作nat。

在某些时段网速很慢,很多网页要刷新几次才能打开,怀疑有人用 ...


我的看法是,网速慢与最大连接数是没有直接关系的,

可以证明的很多P2P程序大量使用UDP。另外,楼上的两种方法都是对的

论坛徽章:
0
12 [报告]
发表于 2008-05-05 15:55 |只看该作者
原帖由 smz_f91 于 2008-5-5 14:53 发表
2、修改/proc/sys/net/ipv4/ip_conntrack_max为8192
或者是/etc/sysctl.conf中加入ip_conntrack_max=8192

第二种方法有两种,哪个才对呢?

还有linux默认的连接数是多少啊?既然要改,那肯定得有个依据吧。

http://www.wallfire.org/misc/netfilter_conntrack_perf.txt

Since Linux kernel version 2.4.23 (thus Linux 2.6 as well), use:
# echo $CONNTRACK_MAX > /proc/sys/net/ipv4/netfilter/ip_conntrack_max

where $CONNTRACK_MAX is an integer.
至于默认的连接数我装了几个系统默认的都不一样。我的REHL5是188798(可能跟系统的硬件有关系。具体不晓得)
说一下我的理解。这个是指系统中所有进程最多可以同时打开的文件数目
至于假如我的squid要启动一定的数目的话,假如是15000
可以做到squid的启动脚本中。(前提是编译squid的时候,使其支持--with-filedescriptors=)
#!/bin/sh
#
ulimit -HSn 15000
# this script starts and stops Squid
case "$1" in
start)
          /usr/local/squid/sbin/squid -s
          echo -n ' Squid'
          ;;
stop)
          /usr/local/squid/sbin/squid -k shutdown
         ;;
esac


# /usr/local/squid/bin/squidclient -p 80 -h localhost mgr:info
File descriptor usage for squid:
        Maximum number of file descriptors:   15000

论坛徽章:
0
13 [报告]
发表于 2008-05-05 18:36 |只看该作者

回复 #12 xuledw 的帖子

恩,有理!
不过你的“REHL5是188798”是从哪看的呢?我的AS4又是多少啊?

论坛徽章:
0
14 [报告]
发表于 2008-05-05 19:47 |只看该作者
第二个可以但是要根据你的内存大小来定义

论坛徽章:
5
IT运维版块每日发帖之星
日期:2015-08-06 06:20:00IT运维版块每日发帖之星
日期:2015-08-10 06:20:00IT运维版块每日发帖之星
日期:2015-08-23 06:20:00IT运维版块每日发帖之星
日期:2015-08-24 06:20:00IT运维版块每日发帖之星
日期:2015-11-12 06:20:00
15 [报告]
发表于 2008-05-05 19:47 |只看该作者

回复 #10 smz_f91 的帖子

实际是同一种.

论坛徽章:
0
16 [报告]
发表于 2008-05-06 10:10 |只看该作者
哦,那就是只用一个就行了。
那还是用这个简单,且永久生效
/etc/sysctl.conf中加入ip_conntrack_max=8192

但达人们还是没回答我如何看默认连接数,和我设置的依据。

论坛徽章:
0
17 [报告]
发表于 2008-05-06 10:45 |只看该作者
原帖由 smz_f91 于 2008-5-5 18:36 发表
恩,有理!
不过你的“REHL5是188798”是从哪看的呢?我的AS4又是多少啊?


  1. sysctl -a|grep -e "ip_conntrack_max"
  2. [code]

  3. 一个连接占用236bytes
  4. [code]
  5. ip_conntrack version 2.4 (8192 buckets, 65536 max) - 236 bytes per conntrack
复制代码

论坛徽章:
0
18 [报告]
发表于 2009-09-10 02:02 |只看该作者
原帖由 twodog29 于 2007-3-27 11:12 发表
在centos4里面也没发现有/proc/sys/net/ipv4/netfilter/ip_conntrack_count 文件,我还是老实统计ip_conntrack的行数吧




开启ip_conntrack模块,命令如下:

modprobe ip_conntrack

论坛徽章:
0
19 [报告]
发表于 2009-09-10 15:09 |只看该作者
原帖由 smz_f91 于 2008-5-6 10:10 发表
哦,那就是只用一个就行了。
那还是用这个简单,且永久生效
/etc/sysctl.conf中加入ip_conntrack_max=8192

但达人们还是没回答我如何看默认连接数,和我设置的依据。



要使这个参数生效,还先得 modprobe ip_conntrack


查看默认设置就看  cat /proc/sys/net/ipv4/ip_conntrack_max

论坛徽章:
0
20 [报告]
发表于 2009-09-10 21:22 |只看该作者
原帖由 twodog29 于 2007-3-24 09:47 发表
2、修改/proc/sys/net/ipv4/ip_conntrack_max为8192
或者是/etc/sysctl.conf中加入ip_conntrack_max=8192


8192?
是不是忒小了?
1G的内存这里的设置值应该是65536。

/etc/sysctl.conf中加入ip_conntrack_max=8192
错!
net.ipv4.ip_conntrack_max = 8192
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP