
User-Space Protocol Stack Gazelle
Introduction
Gazelle is a high-performance user-space protocol stack. It is based on DPDK for directly reading and writing network packets in user space, sharing large-page memory to transmit packets, and using the lightweight LwIP protocol stack. It significantly improves the network I/O throughput of applications, focusing on accelerating database network performance, such as MySQL and Redis, while balancing high performance and generality:
- High Performance
Zero-copy packet processing, lock-free, flexible scale-out, adaptive scheduling. - Generality
Fully POSIX-compatible, no modifications required, suitable for different types of applications.
Performance Results
MySQL 8.0.20


The score using the kernel protocol stack is 548,400, while using Gazelle, it is 668,500, an improvement of over 20%.
Ceph 14.2.8

In the 4k full-machine scenario, Gazelle improves performance by over 20%.
Details
Click on the titles for more details. Contributions and feedback are welcome.
| Topic | Summary | Publication Date |
|---|---|---|
| openEuler Guide | How to participate in the openEuler community | Published |
| Gazelle User Guide | 1. Installation, deployment environment, application startup 2. Parameter configuration explanation 3. Debugging command explanation 4. Usage constraints, risks, considerations |
Published |
| Gazelle Developer Guide | 1. Technical principles 2. Architecture design |
To be determined |
| Practice Series - Gazelle Accelerating MySQL by 20% | 1. Detailed testing steps 2. Performance results |
Published |
| Practice Series - Gazelle Accelerating Ceph Client by 20% | 1. Detailed testing steps 2. Performance results |
Published |
| Practice Series - Gazelle Accelerating Redis | 1. Detailed testing steps 2. Performance results |
Published |
| Practice Series - Gazelle Accelerating openGauss | 1. Detailed testing steps 2. Performance results |
To be determined |
| Practice Series - Gazelle Supporting Netperf Performance Testing | 1. Version description 2. Detailed testing steps |
To be determined |