FreeBSD在做IPsec-Gateway或作路由的情况下,当处理的数据包到达一定数量级(>15000包/每秒)时,系统的负载会很高,表现是输入任何命令响应很慢。
用TOP显示CPU的状态时,大量时间被中断(interrupt),如下:
CPU states: 0.0% user, 0.0% nice, 1.0% system, 98.8% interrupt, 0.2% idle
原因是每个数据包过来,网卡都会请求CPU中断,当包的数量过高时,CPU很难正常处理其它事情。
这时候可以利用网卡的polling模式解决这个问题,polling模式就是让cpu定期去取网卡内存中的数据包。虽然平时看上去这种方法效率低
,但在网卡处理的包数量很高时能提高CPU的处理效率。
支持polling的模式的网卡有:dc(4), em(4), fwe(4), fxp(4), nge(4), rl(4), sis(4), ste(4)
在内核配置中加入了下面两条:
options DEVICE_POLLING
options HZ=2000
用新内核起动后,运行下面命令:
/sbin/sysctl -w kern.polling.enable=1
/sbin/sysctl -w kern.polling.burst_max=600
就能大量提高CPU的效率。
分享到:
相关推荐
intel网卡在freebsd下的驱动代码,详细描述如何编写该类网卡驱动
FreeBSD 8.1下用nginx配置简单web负载均衡
freeBSD系统结构手册,The FreeBSD Documentation Project,是FreeBSD 中文计划
全书共5部分14章。第一部分包括前3章,是对FreeBSD历史、设计和内核服务的综述性介绍...本书适合FreeBSD操作系统技术支持人员、应用程序开发人员、系统管理员和系统程序员阅读,也可供对学习FreeBSD感兴趣的读者参考。
并基于网络地址转换在FreeBSD上实现了负载均衡网关,应用于我们的Internet网络服务器上,将负载分给多个服务器分担,以解决Internet服务器面临的大量并发访问造成的CPU或I/O的高负载问题。为了达到最佳的负载均衡...
FreeBSD系统编程
FREEBSD 文件系统 文件浏览工具 用于读取FREEBSD 系统的原生磁盘分区格式UFS 格式的 文件读取
1.4 FreeBSD的开发模式 1.5 参考文献 第2章 FreeBSD设计概述 2.1 FreeBSD的功能和内核 2.2 内核结构 2.3 内核服务 2.4 进程管理 2.4.1 信号 2.4.2 进程组和会话 2.5 内存管理 2.5.1 BSD内存管理设计要点 2.5.2 ...
自己制作的最新版的FreeBSD 系统结构手册
wgcloud支持显示CPU利用率、CPU温度、内存利用率、磁盘容量、磁盘IO、硬盘智能健康状态、系统负载、连接数、网卡流量、硬件系统信息等。 支持进程应用、文件、端口、服务器上的日志、docker容器、数据库、数据表等...
FreeBSD下搭建高性能企业级网关与代理服务器FreeBSD下搭建高性能企业级网关与代理服务器
介绍了FreeBSD操作系统的设计和实现方法,是学习操作系统非常好的参考书。
这是一个 FreeBSD 9.2 版本的 64位系统镜像文件,文件名为 'mfsbsd-se-9.2-RELEASE-amd64.iso'。这个镜像文件可以用于创建 FreeBSD 9.2 版本的操作系统环境,适用于 64位的硬件架构。下载后,可以通过刻录或者虚拟机...
教程名称:FreeBSD网络操作系统视频教程课程目录:【】Apachel服务器系列之一(楚广明网络教程之八)【】FreeBSD之Samba服务器(楚广明系列课程之五)【】FreeBSD基本文件配置(楚广明系列之二)【】freebsd安装(楚广明...
Freebsd系统安装步骤和相关的安装截图
FreeBSD11下安装phpMyAdmin详细过程
FreeBSD Unix系统编程 中文版
FreeBSD系统还原点设置
基于FreeBSD+Snort的轻量级检测系统(IDS) 安装部署文档