Speed Testing
analiti's Speed Test is measuring the maximum data transfer speed over an IP connection to a target server (or multiple concurrent IP connections to multiple servers).
Speed Testing Process & Results
The speed testing process is comprised of the following phases:
- Pre-test pinging - for measuring the round-trip time of sending packets and receiving responses to/from different servers on the local area network and the Internet.
- Download - for measuring the maximum data transfer speed FROM the target server(s) to the device.
- Upload (when supported by the test method) - for measuring the maximum data transfer speed TO the target server(s) from the device.
The Speed Test screen shows a summary of the different phases, as well as progress and detailed stats of: - Download and upload (when supported by the test method) speeds. - Ping, DNS name query RTT and HTTP connection setup latency. - Connection signals information (e.g., RSSI, WiFi phy speeds & MCS).
Speed Testing Methods
analiti supports multiple methods for speed testing:
- Multi-server HTTP
- Multi-server HTTP/3
- NDT-7
In addition, analiti supports several speed testing methods for testing against a specific test server - located either on the Internet or on the local area networks (LANs):
- iPerf3 TCP
- iPerf3 UDP
- HTTP
- HTTP/3
- HTTPS
- FTP
Multi-server HTTP
analiti's original proprietary speed testing algorithm, testing against multiple servers, concurrently.
Testing against multiple HTTP servers, concurrently, achieves the following benefits: - better resiliency to wireless packet errors and packet drops. - wider availability for testing higher speed multi-gigabit Internet connections.
Multi-server HTTP method is used for testing both download and upload speeds.
This is analiti's default speed testing method.
When using a url to specify test targets in analiti - specify mhttp://
EXPERT users can configure the number concurrent download and upload connections, as well as download and upload test phase durations in the Settings ► Operational Settings ► Speed Testing screen.
Multi-server HTTP/3
Similar to analiti's Multi-server HTTP, testing against multiple HTTP/3 (HTTP over TLS/QUIC/UDP) servers, concurrently.
HTTP/3 provide multiple benefits to HTTP, but in the context of speed testing - UDP is not bound by the traditional TCP slow-start mechanism, thus may yield higher throughput in the presence of link errors.
Multi-server HTTP/3 method is used for testing download speeds.
When using a url to specify test targets in analiti - specify mhttp3://
This test method is available only for EXPERT users.
Users can configure the number concurrent download streams, as well as test duration in the Settings ► Operational Settings ► Speed Testing screen.
M-Lab NDT-7
M-Lab Measurement Lab is led by teams based at Code for Science & Society; Google, Inc; and supported by partners around the world.
M-Lab NDT-7 is a speed testing method that uses a single TCP connection for testing the Internet connection's "bulk transport" capacity.
The MDT-7 test method is used for testing both download and upload speeds.
When using a url to specify test targets in analiti - specify ndt7://
iPerf3 (TCP & UDP)
iPerf3 is a testing tool created by the US Government for determining the maximum achievable bandwidth on IP networks.
analiti embeds an iPerf3 client - compatible with a wide-array of iPerf3 servers - for both TCP and UDP based testing.
iPerf3 is used for testing both download and upload speeds.
When using a url to specify test targets in analiti:
- specify iperf3t://host[:port] for TCP testing
- specify iperf3u://host[:port] for UDP testing
An elaborate iPerf3 configuration is available in the Validator screen when configuring an iPerf3 validation step
These test methods are available only for EXPERT users.
Users can also configure download and upload test phase durations in the Settings ► Operational Settings ► Speed Testing screen.
Embedded iPerf3 Server
Every analiti app instance includes an embedded iPerf3 test server.
The host address(es) for using the internal iPerf3 server (including destination port) are shown in the iPerf3 Server screen.
HTTP / HTTP/3 / HTTPS / FTP
analiti include the ability to test download speeds against specific HTTP / HTTP/3 / HTTPS or FTP servers.
When using a url to specify test targets in analiti:
- specify http://host[:port]/pathToBigFile for HTTP testing.
- specify http3://host[:port]/pathToBigFile for HTTP/3 testing.
- specify https://host[:port]/pathToBigFile for HTTPS testing.
- specify ftp://[username:password@]host[:port]/pathToBigFile for FTP testing.
These test methods is available only for EXPERT users.
Users can configure the number concurrent download streams, as well as test duration in the Settings ► Operational Settings ► Speed Testing screen.
Exporting results as CSV Files
EXPERT users can export speed testing results as CSV files.
Automatic Speed Testing
User can configure speed tests to run in the background at specific cadence.
Please note that by default - an automatic test will NOT run while the app is open. However, EXPERT users can override this setting.
Configuration
Use the Settings ► Operational Settings ► Speed Testing screen to configure speed testing related aspects.
Use the Settings ► Operational Settings ► Pinging screen to configure ping targets for the pre-test phase.
Please note some settings require the EXPERT paid feature for modification.