Enumerating NDT servers / selecting a specific server

219 views
Skip to first unread message

rhys.p...@gmail.com

unread,
Aug 22, 2017, 10:59:39 PM8/22/17
to discuss
Hello.

A few questions here. First, this is awesome

Is it possible to force a connection to a specific NDT server? It seems to be fully automatic when you go here: https://www.measurementlab.net/tests/ndt/

It would be great to be able to specify what backend server to connect to, as we like to know both the local speed to the closest server, and to say the speed to something close to one of our international data centers.

I've seen some references to peoples specifying servers from the command line tools, but nowhere that has the definitive list of what is available.

I see that you can get the 'closest' server to you by querying: http://mlab-ns.appspot.com/ndt

.. but I can't seem to get the full list of available servers.

I would be okay with resorting to a native application if required.

Any insight would be greatly appreciated.

Thank you.

rhys.p...@gmail.com

unread,
Aug 22, 2017, 11:00:40 PM8/22/17
to discuss, rhys.p...@gmail.com
Similar to how you can select different servers via speedtest.net.

Ovidiu M

unread,
Aug 23, 2017, 8:07:47 AM8/23/17
to rhys.p...@gmail.com, discuss
Disclaimer: I'm not involved with the MLab project in any way.

I know that they built a Chrome extension that allows selecting the
location of the server, but not the provider:
https://chrome.google.com/webstore/detail/m-lab-measure/leijmacehibmiomcnpaolboihcdepokh

I thought that selecting both may be useful. I found that all servers
are listed on https://mlab-ns.appspot.com/admin/map/ipv4/ndt in the
initialize() function in the cities variable.

I built my own interface that allows selecting any combination of
location and provider here: https://netperf.tools/#throughput

It's just a wrapper around the ndt client JS code.

It has some quirks:
* It needs to be updated manually each time the servers change. It
would be great if MLab would offer a clean js file with just the
servers, assuming that they are open to people using different GUIs
for their service, of which I'm not sure.
* It needs to be kept in sync with the official ndt client JS code.
This one is more than 1 year old. I don't know if anything has changed
in the meantime that might affect measurements.
* The latency measurement code is completely different from the ndt
latency measurement. I measure latency both before the transfers and
also during the upload and download, to detect bufferbloat. Last time
I checked, the NDT code was measuring latency only during one of the
transfers.

I have just updated the server list on the site today; but normally I
don't do it regularly. If needed I can share the code with you so you
can deploy it and maintain it yourself; all that is needed is a static
web server.

All the best
Ovidiu
> --
> You received this message because you are subscribed to the Google Groups
> "discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to discuss+u...@measurementlab.net.
> To post to this group, send email to dis...@measurementlab.net.
> Visit this group at
> https://groups.google.com/a/measurementlab.net/group/discuss/.

Georgia Bullen

unread,
Aug 23, 2017, 8:29:54 AM8/23/17
to Ovidiu M, rhys.p...@gmail.com, discuss
Hi All!

Just to add to what Ovidiu was describing and provide some docs that might be helpful.

If you go here: https://mlab-ns.appspot.com/admin/map/ipv4/all (which is also available here: https://www.measurementlab.net/status/) you can see the sites available, and there's a link to the Design Doc for mlab-ns (https://docs.google.com/document/d/1eJhS75EZHDLmC6exggStr_b1euiR24_MVBJc1L6eH2c/view#heading=h.ubhijxy606i) which will help with showing you all of the functions that are available for seeing what servers are available.

The M-Lab team recommends that you use mlab-ns to get available servers rather than picking specific servers or maintaining your own list, as server status can change for a variety of reasons. Using mlab-ns should give you ways to find what servers are available and meet the conditions that you need for your application/tool.

Thanks for sharing your site Ovidiu! I hadn't seen that before!

-Georgia


> To post to this group, send email to dis...@measurementlab.net.
> Visit this group at
> https://groups.google.com/a/measurementlab.net/group/discuss/.

--
You received this message because you are subscribed to the Google Groups "discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to discuss+unsubscribe@measurementlab.net.

To post to this group, send email to dis...@measurementlab.net.
Visit this group at https://groups.google.com/a/measurementlab.net/group/discuss/.



--
Georgia Bullen
Director of Technology Projects

740 15th Street NW, Suite 900, Washington DC, 20005

Ovidiu M

unread,
Aug 23, 2017, 8:51:29 AM8/23/17
to Georgia Bullen, rhys.p...@gmail.com, discuss
I published my source code here: https://github.com/o9o/ndt-speed-test

The program I used to split the whois and geolocation databases so
that they can be used from javascript in a static website is missing,
but I will try to add it when I have time. For these lookups, only
IPv4 is supported. These are not essential for the measurement, only
after the measurement when the page shows statistics for the country
the user is located in.
>> > email to discuss+u...@measurementlab.net.
>> > To post to this group, send email to dis...@measurementlab.net.
>> > Visit this group at
>> > https://groups.google.com/a/measurementlab.net/group/discuss/.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to discuss+u...@measurementlab.net.
Reply all
Reply to author
Forward
0 new messages