Skip to Content.
Sympa Menu

perfsonar-user - Re: [perfsonar-user] BWCTL MP problem

Subject: perfSONAR User Q&A and Other Discussion

List archive

Re: [perfsonar-user] BWCTL MP problem


Chronological Thread 
  • From: Fausto Vetter <>
  • To: Rodesch Christian <>
  • Cc:
  • Subject: Re: [perfsonar-user] BWCTL MP problem
  • Date: Tue, 20 May 2008 11:06:49 +0100

Hi Rodesh,

I dont know if these hosts are not limited to test among other well known hosts. Because it can be limited on bwctl configuration to which bwctl probes tests will be enabled.

Fausto

Rodesch Christian wrote:
Hi,

so this is my bwctld.conf

#
# $Id: bwctld.conf,v 1.25 2005/09/07 23:44:14 boote Exp $
#
#########################################################################
# #
# Copyright (C) 2003 #
# Internet2 #
# All Rights
Reserved #
# #
#########################################################################
#
# File: bwctld.conf
#
# Author: Jeff W. Boote
# Internet2
#
# Date: Tue Sep 9 16:28:53 MDT 2003
#
# Description:
# Example bwctld.conf config file.

# full path to iperf executable
# (defaults to "iperf" - assumes it will be found using PATH)
#iperf_cmd iperf

# iperf_port (port to run iperf server "receiver" processes on
# can use a range of the format start-end (no whitespace allowed)
# (defaults to 5001)
iperf_port 5001-5003

# peer_ports (ports to open peer "server" connection on.) If this daemon
# is running the iperf "receiver" then it will also open a peer tcp
# connection using these port numbers. This extra connection is used to
# validate clocks between the two bwctld processes and to exchange
results.
# Must be specified as a valid range with the first value less than the
# second. (A single value is only allowed if it is '0'.)
# (defaults to 0 - let the system pick an ephemeral port)
peer_ports 55000-55002

# run as group/user - only used if effective uid is root.
# (defaults to nil)
#user bwctl
#group bwctl

# root_folly needs to be set if the 'user' specified above has root
# permissions. This is an additional check to ensure bwctld is not
# run as root unless expressly intended.
# (You could uncomment this line... But are you really sure you
# want to do that?)
# (defaults to !root_folly)
root_folly

# not really used, but what the heck.
# (defaults to !verbose)
#verbose

# where should syslog messages go?
# valid facilitynames from syslog
# (defaults to daemon)
#facility local5

# what syslog "level" should be used for errors?
# valid prioritynames from syslog
# (defaults to error)
#priority error

# what syslog "level" should be used for access messages?
# valid prioritynames from syslog
# (defaults to info)
#access_priority info

# include src file:line in log messages
# keep this on, and help us with more specific bug reports!
# (defaults to !log_location)
log_location

# location for bwctld.pid and bwctld.info files
# (defaults to $cwd)
#var_dir /var/run

# location for session files. (NOT USED YET)
# (defaults to $cwd)
#data_dir /big/enough

# auth_mode - uncomment to make only Open.
# (defaults to OAE)
auth_mode AEO

# allow_unsync - allow test requests to schedule even if the host is
# not syncronized, or the NTP system calls are not available.
# (defaults to False if NTP system calls unavailable,
# defaults to True if NTP system calls are available.)
#allow_unsync

# src address/port defaults to wildcard addr and standard(not
yet...) port.
# Can be specified as only a port number to still wildcard address
and not
# use the semi-standard bwctl control port (':' must be the first non
# whitespace charactor in this case).
# Can specify the host without the port to use the default port.
#src_node localhost:8765
#src_node :8765

# die_by - amount of time to wait for child processes to gracefully
terminate
# before killing them with a SIGKILL. (default is 30 seconds)
# This is in response to the master process receiving SIGTERM or SIGHUP.
# (defaults to 30)
#die_by 5

# control_timeout - amount of time (seconds) to wait for a protocol
# message.
# If you are using bwctl to run regular tests in a loop, make sure
this timeout
# is significantly larger than the -I values you want to support or the
# daemon will close the control connection and cause bwctl to do
extra work.
# (defaults to 7200) 2 hours - same as default for tcp keepalive
#control_timeout 7200

# bottleneck_capacity - this value is used in the algorithm to
dynamically
# set the send/recv window sizes. This option is likely to be removed in
# the future once a dynamic bottleneck_capacity algorithm is
incorporated into
# the code.
# (defaults to 0 - unused)
#bottleneck_capacity 1g

The other host is a server running BWCTL MP I took out of the perfsonar UI list. I mostly test with the CARNET_Zagreb_JRA1(http://193.198.229.166:8090/services/MP/BWCTL) host. If I use this CARNET host as source and my testhost "eomer" as receiver , it works fine. The other way I get the weird message I've sent you.

There is absolutely no hardware firewall or anything that could block in between in our network, the host is connected straight to the internet. Only iptables is enables, but if I disable it for some minutes, the result remains the same

I also tested with other hosts of the perfSonar UI list, but it's the same problem.

Regards,

Christian


Fausto Vetter wrote:
Hi,

May you send your bwctld.conf and bwctld.limits from both sides?

Thanks,
fausto

Rodesch Christian wrote:
Hi,

the test host is directly connected to the internet,so no firewall at all except ip tables, which I disabled for testing for some minutes.
The host is exclusively used for BWCTL MP test,so no tomcat or apache.

In ip tables I opened the following ports:

5001-5002 for iperf
55000-55002 for peering
and the control port

the three both for UDP and TCP.

I tried debugging with wireshark, but I don't get any usable info which point to the problem.

I only use the bwctl.conf and ignored the two other files,could this be the cause? I thought this was only relevant for productive use (limit) and authorization (aeskey)

Thanks for your help

Christian

Fausto Vetter wrote:
Hi,

Do you know if some firewall at the network router may be blocking it? About any public BWCTL daemon, I really dont know. By the way, does anyone know if there is any bwctl daemon for testing purposes?

Hum.. I was thinking one thing that might be affecting: do you have any tomcat server in one of these MPs? may you verify which ports are open in both server? by the way, is there any 50xx port open either in UDP or TCP?

Just wondering...

Cheers,
Fausto

Rodesch Christian wrote:
Hi Fausto,

I totally disabled iptables for a new test, and the result is the same, so I think that the problem doesn't come from my host but from the other one. Maybe the other host blocked every stranger networks to protect their network from too many bandwidth measurements? Do you know any servers where I could test BWCTL MP without restrictions or authentication. This would help me to locate the problem.

Thanks for your help

Christian

Fausto Vetter wrote:
Hi,

More information on this issue you can observe in: http://kb.pert.geant2.net/PERTKB/BwctlToolInfo

If the problem is firewall, try to define which port will be used by bwctl (iperf ports can be defined on bwctld.conf file / command line)

Any way, please let us know if you solve this issue.

Fausto

Rodesch Christian wrote:
Hi again,

I forgot to paste the syslog log:

May 19 16:20:17 eomer bwctld[22730]: FILE=sapi.c, LINE=292,
Connection to (158.64.56.218:4823) from (158.64.56.218:36824)
May 19 16:20:17 eomer bwctld[22730]: FILE=sapi.c, LINE=448,
ControlSession([158.64.56.218]:4823) accepted from
userid(nil):([158.64.56.218]:36824)
May 19 16:20:17 eomer bwctl: 9 seconds until test results available
May 19 16:20:22 eomer bwctld[22731]: FILE=endpoint.c, LINE=940,
Endpoint: Unable to connect to Peer!: Interrupted system call
May 19 16:20:22 eomer bwctld[22731]: FILE=endpoint.c, LINE=943,
Endpoint: Signal = 14

So "Unable to connect to Peer" seems to be the problem, even though the peering ports are open.

Regards,

Christian

Fausto Vetter wrote:
Hi Christian,

Could you run bwctl with the -X option on? This option will enable you observe the source output. It now can be many issues. Otherwise, becomes hard to investigate what is exactly happening.

Thanks,
Fausto
Dante's Service Desk

Rodesch Christian wrote:
Hello,

I was finally able to install the perfsonar MP. After configuring and testing, I'm now at the point that measuring in one direction works but in the other doesn't.

So I tried to measure using the bwctl command tool and this is the result:

bwctl -s 193.198.229.166 -c 158.64.56.218
bwctl: 16 seconds until test results available

RECEIVER START
3420191373.062331: iperf -B 158.64.56.218 -P 1 -s -f b -m -p
5002 -t 10
------------------------------------------------------------
Server listening on TCP port 5002
Binding to local address 158.64.56.218
TCP window size: 87380 Byte (default)
------------------------------------------------------------
[ 13] local 158.64.56.218 port 5002 connected with
193.198.229.166 port 5002
[ 13] 0.0-10.2 sec 360202240 Bytes 283719091 bits/sec
[ 13] MSS size 1448 bytes (MTU 1500 bytes, ethernet)

RECEIVER END

Like I said, measuring in one way (our server as receivehost) works well but:

eomer:/var/www # bwctl -s 158.64.56.218 -c 193.198.229.166
bwctl: 16 seconds until test results available

RECEIVER START

RECEIVER END


Unfortunately if I take our server as sendhost it doesn't work and I only get the upper output.

Is this due to a missing authentication or what else could be the problem?

BTW: I tested with many servers, which I found in the list of perfSONAR UI, and except some servers which directly ouput "Access denied", I always get the upper message.

Thanks in advance for any help!

Christian

















Archive powered by MHonArc 2.6.16.

Top of Page