peratlrd / ndt

Automatically exported from code.google.com/p/ndt
Other
0 stars 0 forks source link

.meta file: Incorrect values for client IP and server IP #165

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Looking at the NDT raw data in M-Lab BigStore, we're seeing incorrect values in 
the "server IP address" and "client IP address" fields of the .meta file. It 
seems that NDT produces two different types of meta files depending on whether 
it can determine the client hostname.

When a client hostname is available, the relevant fields appear as follows:

server IP address: 162.219.49.24
server hostname: mlab2.yul01.measurement-lab.org
server kernel version: 2.6.32-131.vs230.web10027.xidmas
client IP address: modemcable252.207-179-173.mc.videotron.ca << invalid IP 
address
client hostname: modemcable252.207-179-173.mc.videotron.ca

When a client hostname is not available, the relevant fields appear as follows:

server IP address: << server IP address missing
server hostname: mlab1.lga01.measurement-lab.org
server kernel version: 2.6.32-131.vs230.web10027.xidmask.2.mlab
client IP address: 64.9.225.99
client hostname: No FQDN name

It seems that this is related to the code in web100srv.c as it appears to be 
incorrectly treating the rmt_host variable as an IP address when it contains 
the hostname string.

This occurs with NDT server v3.6.5.2. 

Original issue reported on code.google.com by mtly...@google.com on 11 Dec 2014 at 6:53

GoogleCodeExporter commented 9 years ago

Original comment by jslawin...@soldevelo.com on 12 Feb 2015 at 8:39

GoogleCodeExporter commented 9 years ago

Original comment by skost...@soldevelo.com on 16 Feb 2015 at 1:21

GoogleCodeExporter commented 9 years ago
I've added additional variable for client IP address, rmt_host now keeps only 
hostname. The problem was that IP address was never obtained as only 
I2AddrNodeName was called. Changes are on Issue165 branch. Feel free to review.

Original comment by skost...@soldevelo.com on 17 Feb 2015 at 1:51

GoogleCodeExporter commented 9 years ago
As mentioned on Issue36 it would be good to also merge these changes with trunk 
before releasing final NDT 3.7.0 version. Do these changes look ok and could be 
merged into trunk also? 

Original comment by skost...@soldevelo.com on 18 Feb 2015 at 9:19

GoogleCodeExporter commented 9 years ago
Looking through the old code, it looks like rmt_host was assumed to be an IP, 
and name was supposed to be the hostname. e.g.:

line 2318:   strlcpy(new_child->addr, rmt_host, sizeof(new_child->addr));

and the sprintf on line 1374.

If you're going to change rmt_host to be hostname, and add a rmt_addr in it's 
place (which I support), get rid of 'name', and make sure all the rmt_host 
references get changed to rmt_addr (as appropriate).

Original comment by AaronMat...@gmail.com on 18 Feb 2015 at 3:25

GoogleCodeExporter commented 9 years ago

Original comment by skost...@soldevelo.com on 18 Feb 2015 at 3:42

GoogleCodeExporter commented 9 years ago
I've added appropriated changes :) let me know if they look ok now

Original comment by skost...@soldevelo.com on 18 Feb 2015 at 4:22

GoogleCodeExporter commented 9 years ago
It appears you've renamed a database column in the ndt_odbc file. Other than 
that, it looks fine.

Original comment by AaronMat...@gmail.com on 18 Feb 2015 at 4:42

GoogleCodeExporter commented 9 years ago
Done. Could it be merged into trunk now also ?

Original comment by skost...@soldevelo.com on 18 Feb 2015 at 4:47

GoogleCodeExporter commented 9 years ago
Merge away

Original comment by AaronMat...@gmail.com on 18 Feb 2015 at 4:52

GoogleCodeExporter commented 9 years ago
Merged into trunk

Original comment by skost...@soldevelo.com on 18 Feb 2015 at 4:55