BWCTL is a command-line client application and a scheduling and policy daemon that wraps Iperf and Thrulay.

BWCTL is a command line client application and a scheduling and policy daemon that wraps the throughput testing tools Iperf, Thrulay, and Nuttcp. These tests can measure maximum TCP bandwidth, with various tuning options available, or, by doing a UDP test, the delay, jitter, and datagram loss of a network.

The bwctl client application works by contacting a bwctld process on the two test endpoint systems.  BWCTL will work as a 3-party application. The client can arrange a test between two servers on two different systems. If the local system is intended to be one of the endpoints of the test, bwctlwill detect whether a local bwctld is running and will handle the required server functionality if needed. bwctld manages and schedules the resources of the host on which it runs. A more detailed description of the architecture is available in the architecture documentation.

The bwctl client is used to request the type of throughput test wanted. Furthermore, it requests when the test should be executed. bwctldeither responds with a tentative reservation or a test denied message. Once bwctl is able to get a matching reservation from both bwctldprocesses (one for each host involved in the test), it confirms the reservation. Then, the bwctld processes run the test and return the results. The results are returned to the client from both sides of the test. Additionally, the bwctldprocesses share the results from their respective sides of the test with each other.

BWCTL is used to enable non-specific throughput tests to a host without having to give full user accounts on the given system. Users want the ability to run throughput tests to determine the achievable or available bandwidth between a pair of hosts. It is often useful to test to multiple points along a network path to determine the network characteristics along that path. Typically, users who want to do this path decomposition have to contact the network/system administrators that control the hosts along the path directly. The administrator needs to either run half of the test for the user or provide a user account on the host. Also, network paths of interest usually are controlled by multiple administrators. These hurdles have made this kind of testing difficult in practice.

BWCTL was designed to help with this problem. It allows an administrator to configure a given host as an Iperf, Thrulay or Nuttcpendpoint that can be shared by multiple users without concern that those users will interfere with each other. Specific policy limits can be applied to specific users, and individual tests are scheduled so they will not interfere with each other.  BWCTL allows the administrator to classify incoming connections based upon a user name and AES key (generated by a pass phrase) combination or, alternatively, based upon an IP/netmask. Once the connection is classified, the bwctld can determine the exact type and intensities of throughput tests that will be allowed. (More details on the policy controls can be found in the bwctld.limits(8)manual page.)

ที่มา  : http://www.internet2.edu/performance/bwctl/index.html

Date: 2012-04-18 10:23:11 -0400 (Wed, 18 Apr 2012)