Open gfr10598 opened 7 years ago
The ndt_client.js appears to have same ndttrace behavior as the web100clt. However, the mlab pipeline data shows successful packet collection for ipv6 tests on lax01. The Nov 17 rpm server, run manually, behaves the same way, so it doesn't seem to be an issue with my server build.
Dec 7 pm Checked files from mlab data collection pipeline for canary site lax01, Dec 05. Ipv6 ndttrace files seem to have full content, for example: https://storage.cloud.google.com/m-lab/ndt/2016/12/05/20161205T000000Z-mlab1-lax01-ndt-0041.tgz?_ga=1.4827445.748400724.1396972317 Should use those for testing parser code.
Around 1:00 or 2:00 pm, I wrote: “YAY! Turns out it is an anomoly of the web100clt command line client. No idea why, but the client successfully runs test, but with ipv6, the server does not capture the packets.” However, turns out that I missed something. The js client works fine with ipv4, but also fails to collect packets for ipv6. AH - it appears that the js client defaults to v4, whereas the web100clt defaults to v6. So I likely used the undecorated ip address, and assumed it was using v6, and didn’t pay close enough attention to the file names. Review of all the test machines trace files for the day show that ALL ipv6 trace files are empty.
The canonical command line client now is node_tests/client.js, which is run with the “node” package. It is part of the ndt github code, so just grab it from there. git clone … sudo yum install nodejs npm npm install minimist ws node ndt_client.js --server=ndt.iupui.mlab2.nuq0t.measurement-lab.org
So, turns out the server I’ve been hacking (and the production rpm server) is just fine with this client FOR IPV4. but NOT for ipv6.
################################ Dec 7 am
This uses ipv4, and passes, and ndttrace files have packets. make && sudo LD_LIBRARY_PATH=/home/iupui_ndt/build/lib NDT_HOSTNAME=localhost make check
This runs using ipv4. Apparently “node” doesn’t do happy eyeballs? It passes, BUT the ndttrace FILES ARE EMPTY. make && sudo LD_LIBRARY_PATH=/home/iupui_ndt/build/lib NDT_HOSTNAME=ndt.iupui.mlab2.nuq0t.measurement-lab.org make check
Same here. make && sudo LD_LIBRARY_PATH=/home/iupui_ndt/build/lib NDT_HOSTNAME=ndt.iupui.mlab2v4.nuq0t.measurement-lab.org make check
This runs, but ndttrace files are empty. make && sudo LD_LIBRARY_PATH=/home/iupui_ndt/build/lib NDT_HOSTNAME=ndt.iupui.mlab2v6.nuq0t.measurement-lab.org make check
Dec 8 - Double checked again today that the same behavior is observed when using the November 17 rpm. From mlab_builder@mlab2 ...
wget http://mirror.measurementlab.net/testing-centos6/slicebase-i386/i686/iupui_ndt-4.0.0.1-201611171214.mlab.i686.rpm rpm2cpio iupui_ndt-4.0.0.1-201611171214.mlab.i686.rpm | cpio -idmv cd home/iupui_ndt/build sudo LD_LIBRARY_PATH=lib sbin/web100srv --port 7777 -f ndt/web100_variables --log_dir /tmp/gfr --tcpdump --snaplog --cputime
Identical behavior. Tests succeed with reasonable numbers, but v6 ndttrace files are empty. Works fine for ipv4. web100clt and ndt_client.js behave similarly.
The client successfully runs test, but on the server side (for NDT server), the print_speed() code is never invoked, and the ndttrace files have no packets.