当前位置:
首页
文章
前端
详情

FreeBSD网桥if_bridge实现性能提高5倍

FreeBSD 在企业网络基础架构中的性能很好,但是网络桥接设备内核代码 if_bridge 处会遇到性能瓶颈(if_bridge 可以有效地将 FreeBSD 机器变成交换机)。

FreeBSD网桥if_bridge实现性能提高5倍

开发人员研究过程中发现,当前的 if_bridge 实现在单个 BRIDGE_LOCK 互斥锁上有很大的竞争。if_bridge 实现将吞吐量限制为每秒约 370 万个数据包。

在遍历了一些选项之后,开发人员的最终解决方案利用了 FreeBSD 13 (CURRENT) 中的 epoch (9),通过巧妙地使用并发,epoch (9) 允许安全使用受保护的数据结构,而根本不需要获得锁(互斥锁或读写锁)。

最终结果是,新的 if_bridge 实现每秒可以转发约 1860 万个数据包,性能大约提升了 5 倍。

FreeBSD 基金会在博客上介绍了这一改进,在此研究过程中,基金会通过社区赠款提供了资助,详情查看:

https://www.freebsdfoundation.org/blog/500-if\_bridge-performance-improvement

推荐阅读

树莓派销量突然猛增

80%的代码曾由一人提交,这项目何以从ASF毕业

红帽借“订阅”模式成开源一哥,首创者升任总裁

Git 15周年:当年的分道扬镳,成就了今天的开源传奇

Windows中现在有独立的Linux文件夹系统

本文分享自微信公众号 - 开源中国(oschina2013)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。