The fast dynamic measurement of bandwidth in a TCP network environment
utilizes a single pair of packets to calculate bandwidth between two
entities on a network (such as the Internet). This calculation is based
upon the packet-pair technique. This bandwidth measurement is extremely
quick. On its journey across a network, communication devices may delay
the packet pairs. In particular, TCP networks have two algorithms
designed to delay some packets with the goal of increasing the overall
throughput of the network. However, these algorithms effectively delay a
packet pair designed to measure bandwidth. Therefore, they distort the
measurement. These algorithms are Nagle and Slow Start. The fast dynamic
measurement of bandwidth implements countermeasures to overcome the
delays imposed by these algorithms. Such countermeasures include
disabling the application of the Nagle Algorithm; minimizing the
buffering of packets by sending a "push" packet right after the packet
pair; and avoiding the Slow Start Algorithm by priming it with a dummy
packet.