Skip to content
hev edited this page Apr 19, 2024 · 1 revision

Benchmarks

Summary

Speed

CPU usage

Memory usage

Hardware/Software

  • CPU: AMD Ryzen 9 7950X 16-Core Processor (Max 5.7GHz)
  • OS: Arch Linux (Linux 6.9.1)
  • Iperf3: 3.17.1
  • Proxychains-ng: 4.17

Topology

iperf3 server <---> socks5 server <---> iperf3 client

Environment

Run in systemd-nspawn container.

systemd-nspawn -U -D archlinux

hev-socks5-server

Repo: https://github.com/heiher/hev-socks5-server

Version: 2.6.5

Command:

# workers: 32
hev-socks5-server conf/main.yml

Upload

$ proxychains iperf3 -c 127.0.0.1
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     63.1Gbps
CPU usage: 58%
MEM usage: 1.8M
$ proxychains iperf3 -c 127.0.0.1 -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     436Gbps
CPU usage: 490%
MEM usage: 1.8M

Download

$ proxychains iperf3 -c 127.0.0.1 -R
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     65.2Gbps
CPU usage: 58%
MEM usage: 1.8M
$ proxychains iperf3 -c 127.0.0.1 -R -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     417Gbps
CPU usage: 450%
MEM usage: 1.8M

microsocks

Repo: https://github.com/rofl0r/microsocks

Version: git 98421a21

Command:

microsocks -q -i 0.0.0.0 -p 1080

Upload

$ proxychains iperf3 -c 127.0.0.1
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     32Gbps
CPU usage: 56%
MEM usage: 1.5M
$ proxychains iperf3 -c 127.0.0.1 -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     191Gbps
CPU usage: 900%
MEM usage: 1.5M

Download

$ proxychains iperf3 -c 127.0.0.1 -R
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     32.1Gbps
CPU usage: 56%
MEM usage: 1.5M
$ proxychains iperf3 -c 127.0.0.1 -R -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     185Gbps
CPU usage: 898%
MEM usage: 1.5M

fast-socks5

Repo: https://github.com/dizda/fast-socks5

Version: 0.9.6

Command:

cargo run -r --example server -- --listen-addr 127.0.0.1:1080 no-auth

Upload

$ proxychains iperf3 -c 127.0.0.1
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     30.3Gbps
CPU usage: 65%
MEM usage: 3.2M
$ proxychains iperf3 -c 127.0.0.1 -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     128Gbps
CPU usage: 910%
MEM usage: 3.5M

Download

$ proxychains iperf3 -c 127.0.0.1 -R
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     30.5Gbps
CPU usage: 65%
MEM usage: 3.2M
$ proxychains iperf3 -c 127.0.0.1 -R -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     123Gbps
CPU usage: 900%
MEM usage: 3.5M

dante

Repo: https://www.inet.no/dante

Version: 1.4.3

Command:

sockd

Upload

$ proxychains iperf3 -c 127.0.0.1
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     32.3Gbps
CPU usage: 94%
MEM usage: 12.6M
$ proxychains iperf3 -c 127.0.0.1 -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     40.5Gbps
CPU usage: 88%
MEM usage: 12.7M

Download

$ proxychains iperf3 -c 127.0.0.1 -R
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     31.2Gbps
CPU usage: 96%
MEM usage: 12.6M
$ proxychains iperf3 -c 127.0.0.1 -R -P 10
- - - - - - - - - - - - - - - - - - - - - - - - -
Speed:     37.4Gbps
CPU usage: 86%
MEM usage: 12.7M