Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

dperf: High-Performance Network Load Testing Tool Based on DPDK

License

NotificationsYou must be signed in to change notification settings

baidu/dperf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dperf is a high-performance network traffic generator and load testing tool based onDPDK.

Advantages

  • High Performance

    Built on DPDK, dperf can generate massive traffic using a single x86 server — achieving tens of millions of HTTP Connections Per Second (CPS), hundreds of Gbps throughput, and billions of concurrent connections.

  • Comprehensive Statistics

    Provides detailed real-time metrics and identifies every packet drop or error.

  • Versatile Use Cases

    • Load and stability testing for Layer 4 Load Balancers and gateways
    • Network performance benchmarking for cloud servers
    • Evaluation of NIC and CPU packet processing capabilities
    • Acts as a high-performance HTTP server or client for testing scenarios

Performance

All results were measured using the following hardware and configuration:

  • CPU: Intel Xeon Gold 5418Y × 2
  • Memory: 128 GB × 2
  • NIC: Intel E810-C Dual-Port 100GbE × 2
  • OS: Linux 5.10.0

HTTP Connections Per Second (CPS)

Client CoresServer CoresHTTP CPS (Million)Client CPU Usage (%)Server CPU Usage (%)
1147471
2287472
44167370
88327068
1616647068

HTTP Throughput (Gbps)

Client CoresServer CoresRX ThroughputTX ThroughputClient CPU Usage (%)Server CPU Usage (%)
1198.3 Gbps98.3 Gbps7880
22196.7 Gbps196.7 Gbps7882

Concurrent Connections

Client CoresServer CoresConnections (Billion)Client CPU Usage (%)Server CPU Usage (%)Memory Usage (GB)
111484860
2224848120
4444848240

TCP Packets Per Second (PPS)

Client CoresRX PPS (Mpps)TX PPS (Mpps)Client CPU Usage (%)
116.816.899
6105.2105.299
12204.6204.699

Real-Time Statistics

dperf prints real-time statistics every second, including CPS, TPS, PPS, packet drops, socket errors, and HTTP status counts.Example output:

seconds 22                 cpuUsage 52pktRx   3,001,058          pktTx    3,001,025          bitsRx   2,272,799,040      bitsTx  1,920,657,600      dropTx  0arpRx   0                  arpTx    0                  icmpRx   0                  icmpTx  0                  otherRx 0          badRx 0synRx   1,000,345          synTx    1,000,330          finRx    1,000,350          finTx   1,000,350          rstRx   0          rstTx 0synRt   0                  finRt    0                  ackRt    0                  pushRt  0                  tcpDrop 0skOpen  1,000,330          skClose  1,000,363          skCon    230                skErr   0httpGet 1,000,345          http2XX  1,000,350          httpErr  0ierrors 0                  oerrors  0                  imissed  0

Documentation

See the official website athttps://dperf.org/.

Contributing

We welcome contributions! Please see theCONTRIBUTING file for details.

Patent

  • Title: Testing Method and Apparatus for Network Devices
  • Inventor: Jianzhang Peng
  • Patent Number: CN114205274B
  • Issue Date: June 11, 2024

Acknowledgment

We gratefully acknowledgexnetin for providing the high-performance testing platform used in our benchmarking experiments.

Author

Jianzhang Peng holds a Ph.D. in Computer Science from the University of Science and Technology of China (USTC). He previously worked as a Principal Engineer at Baidu, where he contributed to the development of high-performance L4 load balancer systems. He initiated and developed the dperf project during his time at Baidu, and continues to maintain it as an open-source contributor. His current focus is on low-latency network protocol stacks for quantitative trading systems.

License

dperf is licensed under theApache License 2.0.


[8]ページ先頭

©2009-2025 Movatter.jp