Zum Hauptinhalt springen

Benchmark-Snapshot

Manueller Snapshot, gemessen auf Apple M4 Pro mit Go 1.26.

Durchsatz
~4.3 Gbit/s
Bester Full-Cycle-Pfad
Latenz
~2.6 μs
Niedrigster Full-Cycle-Pfad
Fast-Path-Lookup
~4-15 ns
Flach bis 10k Peers
Allocs/op
0
Hot Path

Vollständiger Dataplane-Zyklus

Verschlüsseln, Lookup, Validierung, Entschlüsselung, Handoff. Obergrenze für den Dataplane-Kern, nicht für den End-to-End-VPN-Durchsatz.

PfadLatenzDurchsatzAllocs/op
UDPClient -> Server~2.7 μs~4.3 Gbit/s0
UDPServer -> Client~2.6 μs~4.3 Gbit/s0
TCPClient -> Server~2.6 μs~4.3 Gbit/s0
TCPServer -> Client~2.6 μs~4.3 Gbit/s0

UDP-Skalierung über mehrere Peers

Aggregierter Durchsatz bei Verteilung der Arbeit über viele Peers, nicht über eine einzelne serialisierte Sendespur.

UDP Client -> Server

Aggregierter Durchsatz
1 Peers~3.4 Gbit/s
64 Peers~34.6 Gbit/s
1024 Peers~34.2 Gbit/s

UDP Server -> Client

Aggregierter Durchsatz
1 Peers~3.4 Gbit/s
64 Peers~32.5 Gbit/s
1024 Peers~31.9 Gbit/s

Lookup und Serialisierung

Internal-IP-, Allowed-Host- und Route-ID-Lookups bleiben flach. Misses und Serialisierung pro Peer sind die eigentlichen Druckpunkte.

Lookup1 Peers100 Peers1000 Peers10000 Peers
Exakter Internal-Lookup~8.7 ns~9.0 ns~9.3 ns~9.3 ns
Allowed-Host-Lookup~13.5 ns~14.9 ns~13.4 ns~14.1 ns
Route-ID-Lookup~3.9 ns~6.4 ns~6.0 ns~6.6 ns
Miss-Pfad~35.4 ns~699 ns~9.0 μs~89.5 μs
Egress-Spur
~4.7 ns -> ~80 ns
Von uncontended zu contended Sends
Miss-Pfad
Linear
~35 ns bei 1 Peer -> ~89.5 μs bei 10k Peers