|
我的服务器突然出现问题不能上网,我用的是-ddial方式拔号,,在出错的时候ppp.log日志中有这样一句:
feb 25 19;02:24 cqzd ppp[56]: Error: ip_Input: deflink: wrote 1496,got No buffer space available
而且屏幕出现:ALL mbufs exhausted, please see tuning(7)
后来我在handbook中查到以下这一段:
6.10.2 网络限制
NMBCLUSTERS 内核配置选项指出了系统可用的网络mbufs 的数量。一个具有大量负载的
服务器如果MBUFs 比较少,就会影响FreeBSD 的性能。每一个cluster 大概需要2K 的内存,
所以1024 个cluster 就需要保留2MB 的内存给网络缓存。如果你的服务器超过一个并发连
接,那每个连接需要吃掉一个16k 的接收缓存和一个16K 的发送缓存,你需要提供32MB 的
内存给网络缓存以确保web 服务器的稳定。一个最笨的计算方法是乘以2,所以
32MBx2=64MB/2K =32768。
我的服务器只是做了透明代理,及域名服务,应该不算忙。不过我的机器只有64M内存,而且划了32M给squid做了高速缓存,应该只剩下32M了,是不是因为这个原因。上面这一段在handbook的系统管理的配置与调整里面,刚好我的机器也出现了ALL mbufs exhausted这样的提示,会不会是因为这个引起的呢?不过我找不到这个NMBCLUSTERS,我在sysctl -a里没找到,内核里也没有这个选项,这个东西是什么? |
|