iPerf Server
iPerf is a tool used for network throughput measurements. To function, it requires that two devices must be running the iPerf software to obtain bandwidth metrics between two endpoints. One device plays the role of the server and the other plays the role of the client. In Exinda, there is a Web User Interface option to configure an appliance as an iPerf server:
To configure an Exinda Appliance as the iPerf Server:
Use the iPerf Server tab when the Exinda appliance is the designated server.
- Click Configuration > System > Tools > Iperf Server.
- (Optional), By default, an iPerf server listens to TCPTransmission Control Protocol packets on port 5001. However, you can use the following list of options to modify this condition:
Usage: iperf [-s|-c host] [options]
Example: iperf[-h]--help[-v|--version]
-f, --format [kmKM] format to report: Kbits, Mbits, KBytes, MBytes
-i, --interval # seconds between periodic bandwidth reports
-l, --len #[KM] length of buffer to read or write (default 8 KB)
-m, --print_mss print TCP maximum segment size (MTUMaximum Transmission Unit - TCP/IPInternet protocol header)
-o, --output <filename> output the report or error message to this specified file
-p, --port # server port to listen on/connect to
-u, --udp use UDPUser Datagram Protocol rather than TCP
-w, --window #[KM] TCP window size (socket buffer size)
-B, --bind <host> bind to <host>, an interface or multicast address
-C, --compatibility for use with older versions does not sent extra msgs
-M, --mss # set TCP maximum segment size (MTU - 40 bytes)
-N, --nodelay set TCP no delay, disabling Nagle's Algorithm
-V, --IPv6Version Set the domain to IPv6
-s, --server run in server mode
-U, --single_udp run in single threaded UDP mode
-D, --daemon run the server as a daemon
-b, --bandwidth #[KM] for UDP, bandwidth to send at in bits/sec (default 1 Mbit/sec, implies -u)
-c, --client <host> run in client mode, connecting to <host>
-d, --dualtest Do a bidirectional test simultaneously
-n, --num #[KM] number of bytes to transmit (instead of -t)
-r, --tradeoff Do a bidirectional test individually
-t, --time # time in seconds to transmit for (default 10 secs)
-F, --fileinput <name> input the data to be transmitted from a file
-I, --stdin input the data to be transmitted from stdin
-L, --listenport # port to receive bidirectional tests back on
-P, --parallel # number of parallel client threads to run
-T, --ttl # time-to-live, for multicast (default 1)
-Z, --linux-congestion <algo> set TCP congestion control algorithm (Linux only)
-x, --reportexclude [CDMSV] exclude C(connection) D(data) M(multicast) S(settings) V(server) reports
-y, --reportstyle C report as a Comma-Separated Values
-h, --help print this message and quit
-v, --version print version information and quit
For instance, if the Iperf server is to listen to UDP packets on port 319, then you must use the following options:
-u –p 319
- In the Options text box, type the options you need and then click the Start Server button. The server must be started before triggering traffic from an Iperf client.
After the server is started, you can test the connection from an Iperf client by supplying the hostname as a parameter.
Example Results:
EXAMPLE
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 10.10.1.200 port 5001 connected with 10.2.6.228 port 58665
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.1 sec 112 MBytes 93.2 Mbits/sec