腾讯发布新版本 F-堆栈 1.13,一个基于DPDK和FreeBSD TCP/IP堆栈的框架。 该框架的主要平台是Linux。 该代码是在 BSD 许可证下分发的。
该框架允许应用程序绕过操作系统堆栈,而是使用在用户空间中实现的直接与网络硬件一起工作的堆栈。
该框架的既定功能包括:
- 网卡满载:实现10万活跃网络连接、5万RPS、1万CPS
- 从 FreeBSD 11 迁移了用户空间堆栈,删除了很多非必要的功能,极大地提高了网络性能
- Nginx 和 Redis 支持。 其他应用程序也可以使用F-Stack
- 多进程架构易于扩展
- 提供对微流的支持。 各种应用程序可以使用F-Stack来提高性能,而无需实现复杂的异步逻辑
- 支持标准 epoll/kqueue API
在新版本中:
- 添加了接口 ff_dup、ff_dup2、ff_ioctl_freebsd、ff_getsockopt_freebsd、ff_setsockopt_freebsd
- 添加了“idle_sleep”选项,以在没有传入数据包时减少 CPU 使用率
- 添加了arm64支持
- 添加了 Docker 支持
- 添加了 VLAN 支持
- 在 F-Stack 的 nginx 实现中,getpeername、getsockname、shutdown 函数已被替换
- DPDK更新至版本17.11.4 LTS
来源: linux.org.ru