Difference between revisions of "Benchmarks"

Jump to navigation Jump to search
Line 1: Line 1:
 +
== In-Mesh Benchmarks ==
 +
=== Procedure ===
 +
To test the in-mesh speed, run iperf3 and yggdrasil on both a decently powerful PC/laptop as well as a mesh node.
 +
 +
On the PC, run the following command:
 +
 +
iperf3 -s
 +
 +
Then use <code>yggdrasilctl getself</code> and note the IPv6 address.
 +
 +
On the mesh node, run the following command to start the benchmark:
 +
 +
iperf3 -c <PC-ipv6-address>
 +
 +
=== Results ===
 +
 +
{| class="wikitable"
 +
|+ Mesh Node Benchmarks (In-Mesh)
 +
! Device !! Download !! Upload !! Notes
 +
|-
 +
| example || 55 Mbit/s || 30 Mbit/s || Maxes out cpu
 +
|-
 +
| example || 53 Mbit/s || 47 Mbit/s || Low resource usage
 +
|}
 +
 
== EspressoBin v5 ==
 
== EspressoBin v5 ==
 
=== No Yggdrasil ===
 
=== No Yggdrasil ===
Line 50: Line 75:
 
[SUM]  0.00-10.41  sec  149 MBytes  120 Mbits/sec                  receiver</nowiki>
 
[SUM]  0.00-10.41  sec  149 MBytes  120 Mbits/sec                  receiver</nowiki>
  
== Tests ==
+
== VPS Benchmark ==
 
 
=== VPS Benchmark ===
 
 
Environment: Laptop, Rpi4, DO Droplet, mullvad
 
Environment: Laptop, Rpi4, DO Droplet, mullvad
  

Revision as of 20:02, 22 September 2020

In-Mesh Benchmarks

Procedure

To test the in-mesh speed, run iperf3 and yggdrasil on both a decently powerful PC/laptop as well as a mesh node.

On the PC, run the following command:

iperf3 -s

Then use yggdrasilctl getself and note the IPv6 address.

On the mesh node, run the following command to start the benchmark:

iperf3 -c <PC-ipv6-address>

Results

Mesh Node Benchmarks (In-Mesh)
Device Download Upload Notes
example 55 Mbit/s 30 Mbit/s Maxes out cpu
example 53 Mbit/s 47 Mbit/s Low resource usage

EspressoBin v5

No Yggdrasil

Connecting to host 10.0.0.1, port 5201
[  5] local 10.0.0.106 port 58198 connected to 10.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  49.2 MBytes   413 Mbits/sec   27    532 KBytes       
[  5]   1.00-2.00   sec  44.8 MBytes   376 Mbits/sec    0    592 KBytes       
[  5]   2.00-3.00   sec  44.8 MBytes   376 Mbits/sec    0    643 KBytes       
[  5]   3.00-4.00   sec  44.9 MBytes   376 Mbits/sec    1    519 KBytes       
[  5]   4.00-5.00   sec  46.1 MBytes   387 Mbits/sec    0    581 KBytes       
[  5]   5.00-6.00   sec  44.8 MBytes   376 Mbits/sec    0    639 KBytes       
[  5]   6.00-7.00   sec  46.1 MBytes   387 Mbits/sec    1    516 KBytes       
[  5]   7.00-8.00   sec  43.6 MBytes   366 Mbits/sec  374    346 KBytes       
[  5]   8.00-9.00   sec  44.9 MBytes   377 Mbits/sec    0    434 KBytes       
[  5]   9.00-10.00  sec  46.1 MBytes   387 Mbits/sec    0    509 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   455 MBytes   382 Mbits/sec  403             sender
[  5]   0.00-10.05  sec   452 MBytes   377 Mbits/sec                  receiver

iperf Done.

Yggdrasil

Connecting to host 201:f06b:1827:4e45:90fa:554e:ace5:27c7, port 5201
[  5] local 201:28ab:ee79:77d4:192e:1366:8b79:4980 port 33776 connected to 201:f06b:1827:4e45:90fa:554e:ace5:27c7 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  17.4 MBytes   146 Mbits/sec   26   1.50 MBytes       
[  5]   1.00-2.00   sec  16.2 MBytes   136 Mbits/sec   20   1.31 MBytes       
[  5]   2.00-3.00   sec  15.0 MBytes   126 Mbits/sec   56    959 KBytes       
[  5]   3.00-4.00   sec  13.8 MBytes   115 Mbits/sec   31    767 KBytes       
[  5]   4.00-5.00   sec  13.8 MBytes   115 Mbits/sec   20    831 KBytes       
[  5]   5.00-6.00   sec  15.0 MBytes   126 Mbits/sec    2   1.25 MBytes       
[  5]   6.00-7.00   sec  17.5 MBytes   147 Mbits/sec   23   1.37 MBytes       
[  5]   7.00-8.00   sec  17.5 MBytes   147 Mbits/sec    1   1.62 MBytes       
[  5]   8.00-9.00   sec  15.0 MBytes   126 Mbits/sec    5   1.62 MBytes       
[  5]   9.00-10.00  sec  17.5 MBytes   147 Mbits/sec    6   1.62 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec   159 MBytes   133 Mbits/sec  190             sender
[  5]   0.00-10.09  sec   157 MBytes   130 Mbits/sec                  receiver

iperf Done.

Raspberry Pi 3B+

Yggdrasil

[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.41  sec  37.3 MBytes  30.1 Mbits/sec                  receiver
[  8]   0.00-10.41  sec  36.6 MBytes  29.5 Mbits/sec                  receiver
[ 10]   0.00-10.41  sec  36.6 MBytes  29.5 Mbits/sec                  receiver
[ 12]   0.00-10.41  sec  38.0 MBytes  30.6 Mbits/sec                  receiver
[SUM]   0.00-10.41  sec   149 MBytes   120 Mbits/sec                  receiver

VPS Benchmark

Environment: Laptop, Rpi4, DO Droplet, mullvad

Fully wired, rpi connected via autoygg to droplet, which routes traffic out through mullvad

Benchmarked VPS
Size Download Upload Notes
$5 Basic 55 Mbit/s 30 Mbit/s Tested steam downloads as well as speedtest.net. Maxed out CPU
$15 Basic 53 Mbit/s 47 Mbit/s Tested speedtest.net, CPU at ~50%
$40 Basic 65 Mbit/s 55 Mbit/s Tested speedtest.net, low resource utilization overall