This test is a part of RPI0 review: https://git.io/ilyaigpetrov-rpi0.
From | To | Average Speed | Protocol/tool |
---|---|---|---|
RPI0 | Internet | 0.95 Mbit/s | http/speedtest |
Notebook | Internet | 35.18 Mbit/s | http/speedtest |
RPI0 | Notebook | 4.03 Mbit/s | tcp/iperf |
Notebook | Notebook | 8.02 Mbit/s | tcp/iperf |
Notebook | RPI0 | 1.6 Mbit/s (0.20 M¹/s) | ssh/scp |
Notebook | Notebook | 10.08 Mbit/s (1.26 M¹/s) | ssh/scp |
¹ In ls
parlance M is MiB (2^20 bytes) and MB is 10^6 bytes, see man ls
, you may just take M as you take MB in other places (2^20 bytes).
raspberrypi
is Raspberry PI Zero WH with Raspbian Buster, no porgrams launched except a ssh server (one session) and one virtual terminal.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster
$ uname -a
Linux raspberrypi 4.19.50+ #896 Thu Jun 20 16:09:52 BST 2019 armv6l GNU/Linux
$ /opt/vc/bin/vcgencmd version
Jun 20 2019 16:12:41
Copyright (c) 2012 Broadcom
version a59fb7a74180be0111dbc5c18a37ec6df86f14a3 (clean) (release) (start)
pi@raspberrypi:~ $ speedtest-cli
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by DOM.RU (Yekaterinburg) [2.71 km]: 13.543 ms
Testing download speed...
Download: 0.90 Mbit/s
Testing upload speed...
Upload: 2.22 Mbit/s
pi@raspberrypi:~ $ speedtest-cli --server 5844
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by DOM.RU (Yekaterinburg) [2.71 km]: 18.057 ms
Testing download speed...
Download: 1.19 Mbit/s
Testing upload speed...
Upload: 1.97 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 5844
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by DOM.RU (Yekaterinburg) [2.71 km]: 8.091 ms
Testing download speed...
Download: 43.45 Mbit/s
Testing upload speed...
Upload: 44.77 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 5844
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by DOM.RU (Yekaterinburg) [2.71 km]: 6.821 ms
Testing download speed...
Download: 41.95 Mbit/s
Testing upload speed...
Upload: 44.14 Mbit/s
pi@raspberrypi:~ $ speedtest-cli
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by ProfiStream.Com (Ekaterinburg) [1.50 km]: 14.604 ms
Testing download speed...
Download: 0.80 Mbit/s
Testing upload speed...
Upload: 1.72 Mbit/s
pi@raspberrypi:~ $ speedtest-cli --server 23694
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by ProfiStream.Com (Ekaterinburg) [1.50 km]: 14.3 ms
Testing download speed...
Download: 0.76 Mbit/s
Testing upload speed...
Upload: 2.25 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 23694
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by ProfiStream.Com (Ekaterinburg) [1.50 km]: 9.006 ms
Testing download speed...
Download: 40.72 Mbit/s
Testing upload speed...
Upload: 35.02 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 23694
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by ProfiStream.Com (Ekaterinburg) [1.50 km]: 21.872 ms
Testing download speed...
Download: 33.12 Mbit/s
Testing upload speed...
Upload: 28.59 Mbit/s
pi@raspberrypi:~ $ speedtest-cli --server 2602
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by Rostelecom (Ekaterinburg) [2.71 km]: 17.529 ms
Testing download speed...
Download: 0.62 Mbit/s
Testing upload speed...
Upload: 3.83 Mbit/s
pi@raspberrypi:~ $ speedtest-cli --server 2602
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by Rostelecom (Ekaterinburg) [2.71 km]: 14.01 ms
Testing download speed...
Download: 1.41 Mbit/s
Testing upload speed...
Upload: 5.88 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 2602
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by Rostelecom (Ekaterinburg) [2.71 km]: 7.19 ms
Testing download speed...
Download: 31.66 Mbit/s
Testing upload speed...
Upload: 19.68 Mbit/s
ilyaigpetrov@notebook:~$ speedtest-cli --server 2602
Retrieving speedtest.net configuration...
Testing from Rostelecom (178.46.98.22)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by Rostelecom (Ekaterinburg) [2.71 km]: 10.856 ms
Testing download speed...
Download: 20.19 Mbit/s
Testing upload speed...
Upload: 31.11 Mbit/s
28.06.2019
After a fresh new install:
pi@raspberrypi:~ $ time sudo apt update
Hit:1 http://archive.raspberrypi.org/debian buster InRelease
Get:2 http://raspbian.raspberrypi.org/raspbian buster InRelease [15.0 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages [13.0 MB]
Ign:3 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
Get:4 http://raspbian.raspberrypi.org/raspbian buster/contrib armhf Packages [58.7 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages [18.3 MB]
Fetched 16.3 MB in 9min 29s (28.7 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
27 packages can be upgraded. Run 'apt list --upgradable' to see them.
real 10m3.151s
user 0m43.720s
sys 0m10.739s
So, 28.7 kB/s.
0.95 = (0.9 + 1.19 + 0.8 + 0.76 + 0.62 + 1.41)/6
35.18 = (43.45 + 41.95 + 40.72 + 33.12 + 31.66 + 20.19)/6
Launch 1
ilyaigpetrov@notebook:~$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 128 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 58792
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-11.1 sec 5.00 MBytes 3.79 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 58794
[ 4] 0.0-10.7 sec 6.12 MBytes 4.80 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 58796
[ 4] 0.0-16.7 sec 4.38 MBytes 2.20 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 58792 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 5.00 MBytes 4.19 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 58794 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.2 sec 6.12 MBytes 5.02 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 58796 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-12.9 sec 4.38 MBytes 2.84 Mbits/sec
Launch 2
ilyaigpetrov@notebook:~$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 128 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 59054
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-11.3 sec 4.50 MBytes 3.35 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 59056
[ 4] 0.0-10.9 sec 5.12 MBytes 3.96 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 59058
[ 4] 0.0-11.1 sec 5.00 MBytes 3.76 Mbits/sec
[ 5] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 59060
[ 5] 0.0-11.1 sec 4.62 MBytes 3.49 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.157 port 59062
[ 4] 0.0-10.7 sec 5.12 MBytes 4.02 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 59054 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.3 sec 4.50 MBytes 3.68 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 59056 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 5.12 MBytes 4.27 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 59058 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 5.00 MBytes 4.18 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 59060 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.3 sec 4.62 MBytes 3.78 Mbits/sec
pi@raspberrypi:~ $ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 43.8 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.157 port 59062 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 5.12 MBytes 4.25 Mbits/sec
Totals
4.03 = (4.19 + 5.02 + 2.84 + 3.68 + 4.27 + 4.18 + 3.78 + 4.25)/8
ilyaigpetrov@notebook:~$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 128 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.173 port 46714
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.2 sec 8.75 MBytes 7.22 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.173 port 46716
[ 4] 0.0-10.2 sec 10.6 MBytes 8.76 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.173 port 46718
[ 4] 0.0-10.1 sec 10.4 MBytes 8.60 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.173 port 46720
[ 4] 0.0-10.1 sec 9.50 MBytes 7.85 Mbits/sec
[ 4] local 192.168.1.90 port 5001 connected with 192.168.1.173 port 46722
[ 4] 0.0-10.1 sec 8.75 MBytes 7.29 Mbits/sec
ilyaigpetrov@notebook2:~$ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.173 port 46714 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 8.75 MBytes 7.34 Mbits/sec
ilyaigpetrov@notebook2:~$ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.173 port 46716 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 10.6 MBytes 8.82 Mbits/sec
ilyaigpetrov@notebook2:~$ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.173 port 46718 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 10.4 MBytes 8.64 Mbits/sec
ilyaigpetrov@notebook2:~$ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.173 port 46720 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 9.50 MBytes 7.95 Mbits/sec
ilyaigpetrov@notebook2:~$ iperf -c 192.168.1.90
------------------------------------------------------------
Client connecting to 192.168.1.90, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.173 port 46722 connected with 192.168.1.90 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 8.75 MBytes 7.33 Mbits/sec
Totals
8.02 = (7.34 + 8.82 + 8.64 + 7.95 + 7.33)/5
ilyaigpetrov@notebook:~/Downloads$ ls -lah ponies/
total 452M
drwxrwxr-x 2 ilyaigpetrov ilyaigpetrov 4,0K июн 24 11:00 .
drwxr-xr-x 10 ilyaigpetrov ilyaigpetrov 4,0K июн 23 16:05 ..
-rw-rw-r-- 1 ilyaigpetrov ilyaigpetrov 268M июн 14 20:15 washing-a-pony.mp4
-rw-rw-r-- 1 ilyaigpetrov ilyaigpetrov 184M июн 8 15:42 riding-a-pony.mp4
# notebook1 to rpi0
ilyaigpetrov@notebook:~$ time sshpass -p 'super-secret' scp -r /home/ilyaigpetrov/Downloads/ponies scp://[email protected]/
real 37m12,846s
user 0m5,577s
sys 0m3,414s
$ node -e "console.log(452/(37*60 + 13))"
0.20241827138378862
# notebook2 to notebook1
ilyaigpetrov@notebook2:~$ time sshpass -p 'super-secret' scp -r /home/ilyaigpetrov/ponies [email protected]:~/foobar
real 5m59,437s
user 0m9,669s
sys 0m4,503s
ilyaigpetrov@notebook1:~$ node -e "console.log(452/(5*60 + 59))"
1.2590529247910864