The D-Link WiFi Air app... in action with ultra ONR.
--
The list of servers.
» Click to show Spoiler - click again to hide... «
Don't bother selecting other than "TM Ultraspeed Server". The rest of them is just there for appearance, will not yield result.
» Click to show Spoiler - click again to hide... «
After fresh Android app install, add the ONR router, and execute 1st speed test.
TAKE NOTE OF THAT MEAGRE SPEED TEST RESULT, WILL BE REFERRED TO IN FOLLOWING POST.
» Click to show Spoiler - click again to hide... «
2nd attempt to execute speed test. You will now need to uninstall the app, and start (re)install and reconfigure again from scratch, just to execute another speed test using the app.
» Click to show Spoiler - click again to hide... «
--
The secret behind the D-Link Wifi Air app ... revealed through SSH access.
CODE
# /bin/axel -Z -n 4 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
Parsing interface ppp0
Parsed result: ppp0
start host speedup
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x14 irq = 35
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x15 irq = 36
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x16 irq = 37
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x17 irq = 38
pass url:http://speedtest-klg.tm.com.my:80/acs/2gb.test
pass url:http://speedtest-klg.tm.com.my:80/acs/2gb.test
pass url:http://speedtest-klg.tm.com.my:80/acs/2gb.test
pass url:http://speedtest-klg.tm.com.my:80/acs/2gb.test
echo add sip 218.111.111.51 sport 58515 dip 58.26.239.30 dport 80 > /proc/HostSpeedUP-STREAM
echo add sip 218.111.111.51 sport 52691 dip 58.26.239.30 dport 80 > /proc/HostSpeedUP-STREAM
echo add sip 218.111.111.51 sport 58373 dip 58.26.239.30 dport 80 > /proc/HostSpeedUP-STREAM
echo add sip 218.111.111.51 sport 34249 dip 58.26.239.30 dport 80 > /proc/HostSpeedUP-STREAM
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x14 irq = 35
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x15 irq = 36
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x16 irq = 37
[get_special_fastfwd_irq_by_cpu_port@131] l2tp_cpu#0x17 irq = 38
optmize_test_result_2 avg_value=114526167

CODE
# /bin/uploadTest -u 0 -n 15 -t 15 -i ppp0 -o /tmp/uploadDiagnostics.tmp http://speedtest-klg.tm.com.my/acs/upload.php
g_usersend = 0
sh: /etc/script/speed_test.sh: not found
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add rip 58.26.239.30 rport 0 lip 0.0.0.0 lport 0
<uploadTest> add sip 218.111.111.51 sport 38433 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 43687 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 34993 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 43049 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 39929 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 43083 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 57409 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 48719 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 35723 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 53201 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 57615 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 38257 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 38005 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 58509 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
<uploadTest> add sip 218.111.111.51 sport 51539 dip 58.26.239.30 dport 80 upload 1 snd_wscale 1024
# cat /tmp/uploadDiagnostics.tmp
bom_sec=1697228507
bom_usec=441725
eom_sec=1697228522
eom_usec=436822
TestBytesSent=599656503
TotalBytesSend=628704549
TestUploadRate=312320
TotalUploadRate=327448
URL=http://speedtest-klg.tm.com.my/acs/upload.php
# ls -l /etc/script/speed_test.sh /etc/scripts/speed_test.sh
ls: /etc/script/speed_test.sh: No such file or directory
-rwxr-xr-x 1 root 0 561 Mar 8 2023 /etc/scripts/speed_test.sh

--
I have shown you what the Air app returned as result, and I have shown you how it came to those result.
My observations
- existing /etc/scripts/speed_test.sh being referred to as non-existent /etc/script/speed_test.sh by the upload test
- default 4 threads for speedtesting download isn't enough to saturate the download link, returning result that is short from maximum possible and earlier had caused me anxiety.
- I toyed with the /bin/axel, and found that it needs at least 16 threads to saturate the download link.
- I toyed with the /bin/uploadTest, and found while maxing the threads to 20 slightly increases the upload rate, adding more time (timeout?) for it didn't dramatically change the rate. This one definitely line problem.
- Don't know why TM/D-Link want to write down the download 2gb.test file into /tmp and probably cause the flash storage stress and wear-and-tear, when they can write it out to /dev/null.
CODE
# /bin/axel -Z -n 1 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
optmize_test_result_2 avg_value=32275873
# /bin/axel -Z -n 4 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
optmize_test_result_2 avg_value=115830973
# /bin/axel -Z -n 8 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
optmize_test_result_2 avg_value=189779456
# /bin/axel -Z -n 12 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
optmize_test_result_2 avg_value=265327488
optmize_test_result_2 avg_value=244885837
# /bin/axel -Z -n 16 -t 10 -q -o /tmp -i ppp0 http://speedtest-klg.tm.com.my/acs/2gb.test
optmize_test_result_2 avg_value=272646991
optmize_test_result_2 avg_value=272328474

CODE
# uploadTest -u 0 -n 20 -t 15 -i ppp0 -o /tmp/uploadDiagnostics.tmp http://speedtest-klg.tm.com.my/acs/upload.php
# cat /tmp/uploadDiagnostics.tmp
TotalUploadRate=440264
# uploadTest -u 0 -n 20 -t 30 -i ppp0 -o /tmp/uploadDiagnostics.tmp http://speedtest-klg.tm.com.my/acs/upload.php
# cat /tmp/uploadDiagnostics.tmp
TotalUploadRate=445536
The mess left behind
CODE
# ls -l /tmp/
-rw-r--r-- 1 root 0 0 Oct 14 03:28 2gb.test
-rw-r--r-- 1 root 0 297 Oct 14 04:52 axel_tr143_result
-rw-r--r-- 1 root 0 216 Oct 14 04:58 uploadDiagnostics.tmp
# cat /tmp/axel_tr143_result
result=2
bom_sec=1697230363
bom_usec=172784
bytes_recv=2147483648
eom_sec=1697230371
eom_usec=58421
total_bytes=2147483648
sampled_cnt=8
285626368
285626368
272325632
278976000
278132736
278694912
274745344
277707520
273586176
276883251
271564800
275996842
249782272
272251903
272864470
272328473
# cat /tmp/uploadDiagnostics.tmp
bom_sec=1697230654
bom_usec=757414
eom_sec=1697230684
eom_usec=753802
TestBytesSent=1631625616
TotalBytesSend=1710872290
TestUploadRate=424896
TotalUploadRate=445536
URL=http://speedtest-klg.tm.com.my/acs/upload.php
--
UPDATE 1.
Looks like testing upload against nearer server can gauge better maximum capability.
Closer to the expected subscribed upload rate of 1Gbps.
CODE
# uploadTest -u 0 -n 20 -t 15 -i ppp0 -o /tmp/uploadDiagnostics.tmp http://speedtest-northern.tm.com.my/acs/upload.php
# cat /tmp/uploadDiagnostics.tmp
TotalUploadRate=825656
URL=http://speedtest-northern.tm.com.my/acs/upload.php
This post has been edited by Oltromen Ripot: Oct 14 2023, 05:20 AM