Supriya Ghosh (Editor)

BWPing

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
Oleg Derevenetz

Operating system
  
Cross-platform

Written in
  
C

Available in
  
English

Stable release
  
1.9 / August 2, 2016 (2016-08-02)

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.

Contents

Command syntax

bwping [-u bufsize] [-r reporting_period] [-T tos] [-B bind_addr] -b kbps -s pktsize -v volume target bwping6 [-u bufsize] [-r reporting_period] [-T tclass] [-B bind_addr] -b kbps -s pktsize -v volume target

Available options are:

  • -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 packet size in bytes.
  • -v - Sets the volume to transfer in bytes.
  • License

    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.

    References

    BWPing Wikipedia