1.15 / June 10, 2019
|Type||Network traffic simulation|
BWPing is a tool to measure bandwidth and response times between two hosts using Internet Control Message Protocol (ICMP) echo request/echo reply mechanism. It does not require any special software on the remote host. The only requirement is the ability to respond on ICMP echo request messages. BWPing supports both IPv4 and IPv6 networks.
bwping [ -4 | -6 ] [ -u buf_size ] [ -r reporting_period ] [ -T tos(v4) | traf_class(v6) ] [ -B bind_addr ] -b kbps -s pkt_size -v volume target bwping6 [ -4 | -6 ] [ -u buf_size ] [ -r reporting_period ] [ -T tos(v4) | traf_class(v6) ] [ -B bind_addr ] -b kbps -s pkt_size -v volume target
Available options are:
- -4 - Forces IPv4 mode. Default mode of operation is IPv4 for bwping and IPv6 for bwping6 otherwise.
- -6 - Forces IPv6 mode. Default mode of operation is IPv4 for bwping and IPv6 for bwping6 otherwise.
- -u - Sets the send/receive buffer size in bytes. Default value will be automatically calculated based on transfer speed, packet size and host timer accuracy.
- -r - Sets the interval time in seconds between periodic bandwidth, RTT, and loss reports. If zero, there will be no periodic reports (default).
- -T - Sets the TOS value of outgoing IPv4 packets or IPv6 Traffic Class value of outgoing IPv6 packets. Default value is zero.
- -B - Sets the source address of outgoing ip packets. By default the address of the outgoing interface will be used.
- -b - Sets the transfer speed in kilobits per second.
- -s - Sets the size of ICMP packet (excluding IPv4/IPv6 header) in bytes.
- -v - Sets the volume to transfer in bytes.
This utility is available under BSD License.
Problems and issues
Although BWPing does not require any special software on the remote host (only the ability to respond on ICMP echo request messages), there are some special requirements to network infrastructure, local and remote host performance:
- There should be no ICMP echo request/reply filtering on the network; this includes Quality of Service (QoS) mechanisms (which often affects ICMP) at any point in the testing path.
- Local host should have enough CPU resources to send ICMP echo request messages with given rate, and remote host should quickly respond on these messages and should have no ICMP bandwidth limiting turned on.
If some of these requirements are not satisfied then the measurement results will be inadequate or fail completely. In general, for testing bandwidth where QoS is implemented, always test with traffic that matches the QoS class to be tested.
- iperf: A tool for TCP/UDP bandwidth measurement.
- ttcp: Another tool for network bandwidth measurement.
- Measuring network throughput
- Aaron McConnell; Gerard Parr; Sally McClean; Philip Morrow; Bryan Scotney (May 27, 2013). "CloudState: End-to-end WAN Monitoring for Cloud-based Applications".
- Suleiman Y. Yerima; Gerard Parr; Sally Ida McClean; Krishna M. Sivalingam (June 1, 2011). "Design and Implementation of a Measurement-Based Policy-Driven Resource Management Framework For Converged Networks".
- Bruce Simpson (June 21, 2016). "Multihoming with ILNP in FreeBSD".