内核nf_conntrack_hash的最大节点个数
时间:2010-11-18
来源:互联网
本帖最后由 瀚海书香 于 2010-11-18 09:31 编辑
在1:3的内核空间和应用空间,并且开启PAE的情况下,最多可以存储多少conntrack个连接?
虽然原则上来说,内核可以使用多达64G的内存,但是在nf_conntrack_hash的节点开辟时,使用的函数标志是GFP_ATOMIC,这样一来就无法使用高端内存。也就是说最多的节点个数不会超过 (896M-内核必须的空间)/sizeof(struct nf_conn) ~= 400万
不知道理解的是否正确?有不对的地方欢迎拍砖
在1:3的内核空间和应用空间,并且开启PAE的情况下,最多可以存储多少conntrack个连接?
虽然原则上来说,内核可以使用多达64G的内存,但是在nf_conntrack_hash的节点开辟时,使用的函数标志是GFP_ATOMIC,这样一来就无法使用高端内存。也就是说最多的节点个数不会超过 (896M-内核必须的空间)/sizeof(struct nf_conn) ~= 400万
不知道理解的是否正确?有不对的地方欢迎拍砖
作者: 瀚海书香 发布时间: 2010-11-18
直接试一下吧。不是有个选项是可以修改连接表大小的么
作者: Godbach 发布时间: 2010-11-18
本帖最后由 瀚海书香 于 2010-11-18 10:00 编辑
回复 Godbach
>echo "1000000000" > /proc/sys/net/nf_conntrack_max
>cat /proc/sys/net/nf_conntrack_max
1000000000
内核这个proc的write方法没有做什么检查,可以随便写的。
所以不知道自己理解的是否正确。
回复 Godbach
>echo "1000000000" > /proc/sys/net/nf_conntrack_max
>cat /proc/sys/net/nf_conntrack_max
1000000000
内核这个proc的write方法没有做什么检查,可以随便写的。
所以不知道自己理解的是否正确。
作者: 瀚海书香 发布时间: 2010-11-18
用一些建连工具做一下测试吧。看看连接数实际能达到多少。
或者打 SYNFlood 攻击应该就可以。
或者打 SYNFlood 攻击应该就可以。
作者: Godbach 发布时间: 2010-11-18
回复 Godbach
关键是很难达到这个值吧?
而且我想知道我分析的是否正确?如果是正确的,那基于x86_32产品的并发链接数就应该不会超过这个值。但是为什么很多厂商的宣传值会那么大呢?
关键是很难达到这个值吧?
而且我想知道我分析的是否正确?如果是正确的,那基于x86_32产品的并发链接数就应该不会超过这个值。但是为什么很多厂商的宣传值会那么大呢?
作者: 瀚海书香 发布时间: 2010-11-18
QUOTE:
回复 Godbach
关键是很难达到这个值吧?
而且我想知道我分析的是否正确?如果是正确的,那基于x86_32产 ...
瀚海书香 发表于 2010-11-18 10:31
关键是很难达到这个值吧?
而且我想知道我分析的是否正确?如果是正确的,那基于x86_32产 ...
瀚海书香 发表于 2010-11-18 10:31
为什么会很难的。
你估计的应该是 400 万项。 Linux 开启连接跟踪的话,新进来的 SYN 包都要分配一个表项的。用攻击工具打上 400 万个 SYN 包,一分钟就够了。
作者: Godbach 发布时间: 2010-11-18
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28