The driver is based on the principles presented by the HINT [1] computer performance metric(See Appendix A). Just as a computer's performance cannot be accurately described using a single sized computation, neither can the performance of a network be described using a single sized communication transfer. NetPIPE increases the transfer block size

For each block size

The variable/* First set T to a very large time. */= MAXTIME ForT= 1 to NTRIALSi= Time() Fort0= 1 tojnrepeatif I am transmitter Send data block of sizeRecv data block of sizecelse Recv data block of sizecSend data block of sizecendif endForc= Time() /* Insure we keep the shortest trial time. */t1T= MIN(endForT,t1p;t0)T=T/(2 * nrepeat)

NetPIPE uses a ping-pong transfer like Hockney [11] uses for each block size. This forces the network to transmit just the data block without streaming other data blocks in with the message. The result is the transfer time of a single block, thus providing the information necessary to answer which block size is best, or what is the throughput given a block of size

NetPIPE produces a file that contains the transfer time, throughput, block size, and transfer time variance for each data point and is easily plotted by any graphing package. For instance, Figure 1 presents the throughput versus the transfer block size for a typical Ethernet link. This graph is referred to as the

A graph that is easier to read and analyze is the *network signature graph*. One such graph is shown in Figure 2. It depicts the transfer speed versus the elapsed time; hence it represents a network ``acceleration'' graph. This graph is a new and unique way of viewing network performance data; the key is to use a logarithmic time scale horizontally instead of the transfer block size. In this graph, as in all graphs presented, time is plotted in seconds. It is very similar to the way computer performance is presented by the HINT performance metric. Although unconventional, this graph represents perhaps a better approach to visualizing network performance. All the necessary data are clearly visible and easy to extrapolate. The network latency coincides with the time of the first data point on the graph. The maximum attainable throughput is clearly shown as the maximum point on the graph.

**Figure 2:** Ethernet Signature Graph

Plotting the block size versus the transfer time on a logarithmic scale for both the ** x **and

**Figure 3:** Ethernet Saturation Graph

Using maximum effective bandwidth to compare networks (or even worse, nominal bandwidth) is much like using peak megahertz ratings to compare computers. While it may be correct for ranking certain applications, in general, its accuracy leaves much to be desired. A given network may have a high maximum effective bandwidth but also have a high latency. So a network with a lower latency would possibly be better for small messages even though it has a much lower maximum effective bandwidth. This effect can be readily observed when comparing ATM with Ethernet, as shown below. Any ranking based on a single number does not provide sufficient insight for accurate network comparison. For network tuning and comparison, we recommend taking the entire NetPIPE signature graph together with application specific information into consideration.

Fri Apr 5 12:14:32 CST 1996