ベンチマークスナップショット
Apple M4 Pro / Go 1.26 で手動計測したスナップショット。
スループット
~4.3 Gbit/s
最良の full-cycle パス
レイテンシ
~2.6 μs
最小の full-cycle パス
Fast-path lookup
~4-15 ns
10kピアまで横ばい
Allocs/op
0
Hot path
フルサイクル dataplane
暗号化、lookup、検証、復号、handoff。これは dataplane コアの上限であり、エンドツーエンド VPN スループットではありません。
| パス | レイテンシ | スループット | Allocs/op |
|---|---|---|---|
| UDPクライアント -> サーバー | ~2.7 μs | ~4.3 Gbit/s | 0 |
| UDPサーバー -> クライアント | ~2.6 μs | ~4.3 Gbit/s | 0 |
| TCPクライアント -> サーバー | ~2.6 μs | ~4.3 Gbit/s | 0 |
| TCPサーバー -> クライアント | ~2.6 μs | ~4.3 Gbit/s | 0 |
マルチピア UDP スケーリング
単一の直列化された送信レーンではなく、多数のピアに作業を分散したときの集約スループット。
UDP クライアント -> サーバー
集約スループット1 ピア~3.4 Gbit/s
64 ピア~34.6 Gbit/s
1024 ピア~34.2 Gbit/s
UDP サーバー -> クライアント
集約スループット1 ピア~3.4 Gbit/s
64 ピア~32.5 Gbit/s
1024 ピア~31.9 Gbit/s
Lookup とシリアライズ
Internal-IP、allowed-host、route-ID の lookup は安定しています。ミスと peer ごとのシリアライズが本当の圧力点です。
| Lookup | 1 ピア | 100 ピア | 1000 ピア | 10000 ピア |
|---|---|---|---|---|
| 正確な 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 path | ~35.4 ns | ~699 ns | ~9.0 μs | ~89.5 μs |
Egress レーン
~4.7 ns -> ~80 ns
競合なし送信から競合あり送信へ
Miss path
線形
1ピアで ~35 ns -> 10kピアで ~89.5 μs