bing – Measure Bandwidth from Command Line

By | 2012/08/22

The command line program bing measures bandwidth between two point to point locations. This is an excellent tool for testing throughput or interfaces. Here is how it works!


Install bing:

$ sudo apt-get install bing

The syntax is:

$ sudo bing [host1] [host2]

bing works by sending an ICMP echo request and measuring the delay of the echo reply.

A packet capture of bing in action looks like the following:

20:50:10.671003 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 21315, length 52
20:50:10.671521 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 21315, length 52
20:50:10.671608 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 21571, length 116
20:50:10.672285 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 21571, length 116
20:50:10.672403 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 22339, length 52
20:50:10.672930 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 22339, length 52
20:50:10.672978 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 22595, length 116
20:50:10.673621 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 22595, length 116
20:50:10.673739 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 23363, length 52
20:50:10.674305 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 23363, length 52
20:50:10.674351 IP 172.16.1.202 > 172.16.1.1: ICMP echo request, id 52504, seq 23619, length 116
20:50:10.674983 IP 172.16.1.1 > 172.16.1.202: ICMP echo reply, id 52504, seq 23619, length 116


Here is an example output of bing in action:

$ sudo bing localhost 74.207.245.5
BING	localhost (127.0.0.1) and 74.207.245.5 (74.207.245.5)
	44 and 108 data bytes (1024 bits)
74.207.245.5: minimum delay difference is zero, can't estimate link throughput
74.207.245.5: 48.762Mbps 0.021ms 0.020508us/bit
74.207.245.5: minimum delay difference is zero, can't estimate link throughput
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 113.778Mbps 0.009ms 0.008789us/bit
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 113.778Mbps 0.009ms 0.008789us/bit
74.207.245.5: 128.000Mbps 0.008ms 0.007812us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 204.800Mbps 0.005ms 0.004883us/bit
74.207.245.5: 256.000Mbps 0.004ms 0.003906us/bit
74.207.245.5: minimum delay difference is zero, can't estimate link throughput
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 113.778Mbps 0.009ms 0.008789us/bit
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 256.000Mbps 0.004ms 0.003906us/bit
74.207.245.5: minimum delay difference is zero, can't estimate link throughput
74.207.245.5: 341.333Mbps 0.003ms 0.002930us/bit
74.207.245.5: 256.000Mbps 0.004ms 0.003906us/bit
74.207.245.5: 341.333Mbps 0.003ms 0.002930us/bit
74.207.245.5: 512.000Mbps 0.002ms 0.001953us/bit
74.207.245.5: 341.333Mbps 0.003ms 0.002930us/bit
74.207.245.5: 204.800Mbps 0.005ms 0.004883us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 128.000Mbps 0.008ms 0.007813us/bit
74.207.245.5: 102.400Mbps 0.010ms 0.009766us/bit
74.207.245.5: 113.778Mbps 0.009ms 0.008789us/bit
74.207.245.5: 128.000Mbps 0.008ms 0.007813us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 128.000Mbps 0.008ms 0.007812us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 204.800Mbps 0.005ms 0.004883us/bit
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 146.286Mbps 0.007ms 0.006836us/bit
74.207.245.5: 170.667Mbps 0.006ms 0.005859us/bit
74.207.245.5: 113.778Mbps 0.009ms 0.008789us/bit
^C
--- localhost statistics ---
bytes   out    in   dup  loss	rtt (ms): min       avg       max   std dev
   44270970270970          0%	        0.015     0.022     0.159     0.006
  108270970270970          0%	        0.013     0.018     0.229     0.005

--- 74.207.245.5 statistics ---
bytes   out    in   dup  loss	rtt (ms): min       avg       max   std dev
   44270970270970          0%	        0.135     0.190     2.089     0.027
  108270969270969          0%	        0.144     0.197     2.225     0.026

--- estimated link characteristics ---
host			          bandwidth       ms
warning: rtt big localhost 0.013ms < rtt small localhost 0.015ms
74.207.245.5                        113.778Mbps       0.120
$

Cool!

2 thoughts on “bing – Measure Bandwidth from Command Line

  1. anu

    Hi

    is it possible to use ipv6 address ?
    I received an error “bing: couldn’t resolve 2001::::::: Address family for hostname not supported”

    Is there any other tool which measures bandwidth, rtt, throughput between hosts ? (with ipv6 support )

    Reply
  2. Eron

    To the best of my knowledge, bandwidth capacity is supposed to be a fixed size, right?
    Is it possible to use this tool in order to capture the traffic on multiple interfaces and measure their throughput as well as the processing time.
    I am assuming that the processing time equals = Output packet rate – Input packet rate.

    You may correct me if I am mistaken.

    Thanks,

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.