boussole / bwping

ICMP-based network bandwidth measurement tool

Home Page:https://bwping.sourceforge.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NAME

bwping and bwping6 are tools to measure bandwidth and response times between two hosts using Internet Control Message Protocol (ICMP) echo request/echo reply mechanism. bwping deals with IPv4 networks, while bwping6 - with IPv6 networks.

SYNOPSIS

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

OPTIONS

-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 buf_size

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 reporting_period

Sets the interval time in seconds between periodic bandwidth, RTT, and loss reports. If zero, there will be no periodic reports (default).

-T tos(v4) | traf_class(v6)

Sets the TOS (in IPv4 mode) or Traffic Class (in IPv6 mode) value of outgoing ip packets. Default value is zero.

-B bind_addr

Sets the source address of outgoing ip packets. By default the address of the outgoing interface will be used.

-b kbps

Sets the transfer speed in kilobits per second.

-s pkt_size

Sets the size of ICMP packet (excluding IPv4/IPv6 header) in bytes.

-v volume

Sets the volume to transfer in bytes.

AUTHORS

Oleg Derevenetz oleg.derevenetz@gmail.com

BUGS

Travis Build Status SonarCloud Quality Gate Status

SonarCloud Reliability Rating SonarCloud Security Rating SonarCloud Maintainability Rating

SonarCloud Bugs SonarCloud Vulnerabilities SonarCloud Code Smells

NOTES

This utility uses raw sockets to deal with ICMP messages, so root privileges are required to run it.

Although bwping and bwping6 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:

  1. There should be no ICMP echo request/reply filtering on the network. This includes QoS mechanisms (which often affects ICMP) at any point in the testing path;

  2. 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 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.

About

ICMP-based network bandwidth measurement tool

https://bwping.sourceforge.io/

License:Other


Languages

Language:C 77.4%Language:M4 17.4%Language:Makefile 3.2%Language:Shell 2.0%