Made this due to iperf not being available for IBM i and the need to do some measurement of network throughput. Makes it possible to measure network throughput between two IBM i hosts (on same or different frames) or to/from Linux, AIX, Windows or any other platform that runs Java. To get best speed you need to use TCP and large packet sizes. The iperf tool defaults to 128K for TCP and 8K for UDP.
Mark Nellemann
3deb336a46
continuous-integration/drone/push Build is passing
Details
|
||
---|---|---|
gradle/wrapper | ||
src | ||
.drone.yml | ||
.gitattributes | ||
.gitignore | ||
LICENSE | ||
README.md | ||
build.gradle | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
settings.gradle |
README.md
jnetperf
Small utility to measure (single threaded) network performance between two hosts.
Requirements
You need Java (JRE) version 8 or later to run jnetperf.
Usage Instructions
- Install the jnetperf package (.deb, .rpm or .jar) from Packages or compile from source.
- Run /opt/jnetperf/bin/jperf, if installed from package, or as java -jar /path/to/jnetperf.jar
Usage: jnetperf [-huV] [-l=NUM] [-n=NUM] [-p=NUM] [-t=SEC] (-c=SRV | -s)
For more information visit https://git.data.coop/nellemann/jnetperf
-c, --connect=SRV Connect to remote server (client).
-h, --help Show this help message and exit.
-l, --pkt-len=NUM Packet size in bytes (client) [default: 1432].
-n, --pkt-num=NUM Number of packets to send (client) [default: 150000].
-p, --port=NUM Network port [default: 4445].
-s, --server Run server and wait for client (server).
-t, --runtime=SEC Time to run, supersedes pkt-num (client) [default: 0].
-u, --udp Use UDP network protocol [default: false].
-V, --version Print version information and exit.
Examples
On host A run jnetperf as a server waiting for a connection from a client:
java -jar jnetperf-x.y.z-all.jar -s
On host B run jnetperf as a client connecting to the server and sending data:
java -jar jnetperf-x.y.z-all.jar -c server-ip
Development Information
You need Java (JDK) version 8 or later to build jnetperf.
Build & Test
Use the gradle build tool, which will download all required dependencies:
./gradlew clean build