Skip to content

Conversation

@dpeckett
Copy link
Collaborator

@dpeckett dpeckett commented Aug 15, 2025

With a 1500 byte MTU

=== RUN   TestTunDevice_Speed
2025/08/15 08:38:21 INFO Adding protocol address addr=10.1.0.1/24
2025/08/15 08:38:21 INFO Adding addr to SNAT addr=10.1.0.1/24
2025/08/15 08:38:21 INFO Adding protocol address addr=10.1.0.2/24
2025/08/15 08:38:21 INFO Adding addr to SNAT addr=10.1.0.2/24
=== RUN   TestTunDevice_Speed/Speed
2025/08/15 08:38:21 DEBUG SNAT target selected address address=10.1.0.2
    tun_device_test.go:187: 1 stream: 209715200 bytes in 2.849174258s → 73.61 MB/s, 588.84 Mbit/s (0.59 Gbit/s)
=== RUN   TestTunDevice_Speed/SpeedParallel
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:24 DEBUG SNAT target selected address address=10.1.0.2
    tun_device_test.go:242: 8 streams × 209715200 bytes: 1677721600 bytes in 14.753897515s → 113.71 MB/s, 909.71 Mbit/s (0.91 Gbit/s)
--- PASS: TestTunDevice_Speed (17.61s)
    --- PASS: TestTunDevice_Speed/Speed (2.85s)
    --- PASS: TestTunDevice_Speed/SpeedParallel (14.75s)
PASS
ok      github.com/apoxy-dev/apoxy/pkg/netstack 17.612s

with a 9000 byte MTU (jumbo frames)

=== RUN   TestTunDevice_Speed
2025/08/15 08:38:05 INFO Adding protocol address addr=10.1.0.1/24
2025/08/15 08:38:05 INFO Adding addr to SNAT addr=10.1.0.1/24
2025/08/15 08:38:05 INFO Adding protocol address addr=10.1.0.2/24
2025/08/15 08:38:05 INFO Adding addr to SNAT addr=10.1.0.2/24
=== RUN   TestTunDevice_Speed/Speed
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
    tun_device_test.go:187: 1 stream: 209715200 bytes in 614.408944ms → 341.33 MB/s, 2730.63 Mbit/s (2.73 Gbit/s)
=== RUN   TestTunDevice_Speed/SpeedParallel
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
2025/08/15 08:38:05 DEBUG SNAT target selected address address=10.1.0.2
    tun_device_test.go:242: 8 streams × 209715200 bytes: 1677721600 bytes in 2.861272939s → 586.35 MB/s, 4690.84 Mbit/s (4.69 Gbit/s)
--- PASS: TestTunDevice_Speed (3.48s)
    --- PASS: TestTunDevice_Speed/Speed (0.61s)
    --- PASS: TestTunDevice_Speed/SpeedParallel (2.86s)
PASS
ok      github.com/apoxy-dev/apoxy/pkg/netstack 3.485s

@dpeckett dpeckett merged commit 5e45478 into main Aug 15, 2025
1 check passed
@dpeckett dpeckett deleted the dpeckett/netstack-perf branch August 15, 2025 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants