Skip to Content.
Sympa Menu

ndt-users - Re: AW: Error running web100 3.5.0

Subject: ndt-users list created

List archive

Re: AW: Error running web100 3.5.0


Chronological Thread 
  • From: Richard Carlson <>
  • To: Galuschka Christoph <>
  • Cc: <>
  • Subject: Re: AW: Error running web100 3.5.0
  • Date: Fri, 4 Sep 2009 14:07:46 -0500

Hi Chris & Christoph;

Sorry I was unavailable yesterday. 

I'm still not sure what is going on here.  According to the logs the pkt-pair child successfully collects the data and then it generates a SIGSEGV signal (reference an invalid memory location).  This causes the child process to die, and in the s2c case, the server is still communicating with the client so we don't complete things properly.  

I'll try updating my copy of the libpcap package to see if that has any effect.  The only other suggestions I can make are:

The last command in the src/web100-pcap.c file has a log message at debug level 8.  Please either run the server with this debug level or change the code to make this a lower debug level (change the 8 to a 5) and run with that debug level.  This should tell me if the error is between that comment and the previous one.

Chris - I noticed that you added the -i eth0 option to the command line.  One of the changes to this code is to allow the server to automatically determine which interface the client connected to.  If you remove this -i option you should collect pkt-pair data.

Rich

On Sep 2, 2009, at 10:21 AM, Galuschka Christoph wrote:

Here you go:

linux-72yn:/usr/src/ndt-3.5.6 # /usr/local/sbin/web100srv -dddddd
ANL/Internet2 NDT ver 3.5.6
       Variables file = /usr/local/ndt/web100_variables
       log file = /usr/local/ndt/web100srv.log
       Debug level set to 6

Send buffer initialized to 16384, Receive buffer initialized to 87380
server ready on port 3001
web100_init() read 69 variables from file
nothing in queue
Timer not running, waiting for new connection
New connection received, waiting for accept() to complete
New connection received from [10.110.109.104].
Parent process spawned child = 2035
Parent thinks pipe() returned fd0=8, fd1=9Child thinks pipe() returned fd0=8, fd1=9 for pid=0

<<< recv_msg: type=2, len=1
initialize_tests returned old/new client = 1, test_suite = 1 8 2
Incrementing waiting variable now = 1
Telling client 2035 testing will begin now
send_msg: type=1, len=1
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
Got 'go' signal from parent, ready to start testing
extracting test_suite ' 1 8 2' and t_opts '1b' from buff 'go 27 1 8 2'
Child process 2035 started
send_msg: type=2, len=6
run_test() routine, asking for test_suite =  1 8 2
send_msg: type=2, len=6
Starting test suite:
Middlebox test
Simple firewall test
C2S throughput test
<-- Middlebox test -->
KillHung(): returned non-0 response, nothing to kill or kill failed

Send buffer initialized to 16384, Receive buffer initialized to 87380
 -- port: 3003
send_msg: type=3, len=4
Looking for Web100 data on socketid 8
Server: 10.11.215.13;3003 Client: 10.110.109.104;4982 1456;6;6;
Sending 1456 Byte packets over the network
Setting Cwnd Limit to 2912 octets
Signal 17 received by process 2035
now = 1251904626 Process started at 1251904623, run time = 3
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
send_msg: type=5, len=37
now = 1251904629 Process started at 1251904623, run time = 6
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
now = 1251904632 Process started at 1251904623, run time = 9
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
now = 1251904635 Process started at 1251904623, run time = 12
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
<<< recv_msg: type=5, len=18
CWND limited throughput = 15737 kbps (15737.052192066805)
send_msg: type=6, len=0
<-------------------->
<-- Simple firewall test -->

Send buffer initialized to 16384, Receive buffer initialized to 87380
 -- port: 51503
 -- time: 1
send_msg: type=3, len=7
<<< recv_msg: type=5, len=4
 -- oport: 4984
send_msg: type=4, len=0

Send buffer initialized to 16384, Receive buffer initialized to 87380
send_msg: type=5, len=20
<<< recv_msg: type=5, len=20
send_msg: type=5, len=1
send_msg: type=6, len=0
<-------------------------->
<-- C2S throughput test -->

Send buffer initialized to 16384, Receive buffer initialized to 87380
 -- port: 3002
listening for Inet connection on testOptions->c2ssockfd, fd=3
Sending 'GO' signal, to tell client to head for the next test
send_msg: type=3, len=4
C2S test Child thinks pipe() returned fd0=10, fd1=11
Unknown address family=17 found
Unknown address family=17 found
IPv4 interface found address=10.11.215.13
IPv4 address match, setting device to 'eth2'
Opening network interface 'eth2' for packet-pair timing
pcap_open_live() returned pointer 0x80889d8
installing pkt filter for 'host 10.110.109.104 and port 4986'
Initial pkt src data = "806b5c4C2S test Parent thinks pipe() returned fd0=10, fd1=11
now = 1251904638 Process started at 1251904623, run time = 15
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
send_msg: type=4, len=0
New IPv4 packet trace started -- initializing counters
now = 1251904641 Process started at 1251904623, run time = 18
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
now = 1251904644 Process started at 1251904623, run time = 21
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
now = 1251904647 Process started at 1251904623, run time = 24
Timer expired while waiting for a new connection
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Waiting for new connection, timer running
702209 kbps outbound
send_msg: type=5, len=6
Signal USR1(10) sent to child [2038]
Signal 10 received by process 2038
DEBUG, caught SIGUSR1, setting sig1 flag to force exit
Received SIGUSRx signal terminating data collection loop for pid=2038
Sending pkt-pair data back to parent on pipe 10, 11
fwd.saddr = 686d6e0a:4986, rev.saddr = dd70b0a:3002
09:17:19.933771   10.110.109.104:4986 --> 10.11.215.13:3002 Collected pkt-pair data max = 343617
wrote 128 bytes: link counters are '  1 0 2 17 5143 4107 115602 1250 132855 343617 1 1 256.73 0 0 0 1 0 7'
#$#$#$#$ pcap routine says window increases = 0, decreases = 0, no change = 0
09:17:19.933771   10.11.215.13:3002 --> 10.110.109.104:4986 Collected pkt-pair data max = 95356
wrote 128 bytes: link counters are '  0 0 2 2 78 880 24922 95356 5809 14311 2 0 876.74 935 47 140380 0 1 7'
#$#$#$#$ pcap routine says window increases = 935, decreases = 47, no change = 140380
128 bytes read '  1 0 2 17 5143 4107 115602 1250 132855 343617 1 1 256.73 0 0 0 1 0 7' from monitor pipe
128 bytes read '  0 0 2 2 78 880 24922 95356 5809 14311 2 0 876.74 935 47 140380 0 1 7' from monitor pipe
send_msg: type=6, len=0
Finished reading pkt-pair data from network, process 2038 should terminate now
Signal 11 received by process 2038
DEBUG, caught SIGSEGV signal and terminated process (2038)
Signal 17 received by process 2035
<------------------------->
Finished testing C2S = 702.21 Mbps, S2C = -0.00 Mbps
Client --> Server data detects link = OC-12
Client <-- Server Ack's detect link = Gigabit Ethernet
CWND limited test = 15737.05 while unlimited = -0.02
Better throughput when CWND is limited, may be duplex mismatch
send_msg: type=8, len=42
send_msg: type=8, len=73
send_msg: type=8, len=69
send_msg: type=8, len=68
send_msg: type=8, len=72
send_msg: type=8, len=46
send_msg: type=9, len=0
Opened '/usr/local/ndt/serverdata/2009/09/02/20090902T15:17:03.603531000Z_10.110.109.104:4981.meta' metadata log file
Successfully returned from run_test() routine
Signal 17 received by process 2034
now = 1251904649 Process started at 1251904623, run time = 26
Select exited with rc = -1
Queue pointer = 2035, testing = 1, waiting = 1, zombie_check = 0
Received SIGCHLD signal for active web100srv process [2034]
wait3() returned 0 for PID=2035
wexitstatus = '0'
Attempting to clean up child 2035, head pid = 2035
Child process 2035 causing head pointer modification
Removing Child from head, decrementing waiting now = 0
Timer not running, waiting for new connection


Regards
Christoph

------------------------------------------------
Ing. Christoph Galuschka

TIWAG-Tiroler Wasserkraft AG
Bereich IT/Betrieb und Services
Eduard-Wallnöfer-Platz 2
6010 Innsbruck
T: +43 (0)50607 21832
F: +43 (0)50607 41832
www.tiroler-wasserkraft.at
------------------------------------------------
Firmenbuchgericht Innsbruck, FN 44133b
Sitz der Gesellschaft: Innsbruck
DVR: 0164089


-----Ursprüngliche Nachricht-----
Von: Richard Carlson [mailto:]
Gesendet: Mittwoch, 02. September 2009 17:01
An: Chris Welti
Cc: Galuschka Christoph;
Betreff: Re: Error running web100 3.5.0

Hi Chris;

Drat.  OK, please run the server in debug mode level 6 (-dddddd) and  
send me that output.  That may tell me something.

Rich

On Sep 2, 2009, at 9:00 AM, Chris Welti wrote:




Richard Carlson

1000 Oakbrook Dr
Ann Arbor, MI  48104

P: 734-352-7043
C: 630-251-4572


Richard Carlson
1000 Oakbrook Dr
Ann Arbor, MI  48104

P: 734-352-7043
C: 630-251-4572




Archive powered by MHonArc 2.6.16.

Top of Page