Tencent has released a new version F-Stack 1.13, a framework based on DPDK and the FreeBSD TCP/IP stack. The primary platform for the framework is Linux. The code is distributed under the BSD license.
The framework allows applications to bypass the operating system stack and instead use a user-space stack that interacts directly with the network hardware.
The stated features of the framework include:
- Full utilization of network cards: 10 million active network connections, 5 million RPS, and 1 million CPS have been achieved.
- Porting the user-space stack from FreeBSD 11 while removing a significant amount of non-essential features, which greatly improved network performance.
- Support for Nginx, Redis. Other applications can also utilize F-Stack.
- Ease of extension through a multiprocess architecture.
- Supports micro-threads. Various applications can use F-Stack to enhance performance without implementing complex asynchronous logic.
- Standard APIs epoll/kqueue are supported.
In the new version:
- Interfaces ff_dup, ff_dup2, ff_ioctl_freebsd, ff_getsockopt_freebsd, ff_setsockopt_freebsd have been added.
- An 'idle_sleep' parameter has been added to reduce CPU usage when there are no incoming packets.
- Support for arm64 has been added.
- Support for Docker has been added.
- Support for VLAN has been added.
- In the Nginx implementation for F-Stack, the functions getpeername, getsockname, and shutdown have been replaced.
- DPDK has been updated to version 17.11.4 LTS.
Source: linux.org.ru

