/* First set T to a very large time. */ T = MAXTIME For i = 1 to NTRIALS t0 = Time() For j = 1 to nrepeat if I am transmitter Send data block of size c Recv data block of size c else Recv data block of size c Send data block of size c endif endFor t1 = Time() /* Insure we keep the shortest trial time. */ T = MIN(T, t1­p;t0) endFor T = T/(2 * nrepeat)The variable nrepeat is calculated based on the time of the last data transfer. The intent is to repeat the experiment enough times such that the total time for the experiment is far greater than timer resolution. The default target time is 0.5 seconds. For most modern computers, this provides a sufficiently precise data transfer time. Given that the last transfer time was tlast seconds for a block size bsz1, the value of nrepeat for block size bsz2 is approximated as:
Figure 1: Ethernet Throughput
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 y axis, as in Figure 3, reveals what we define as the saturation point. This is the point after which an increase in block size results in a near-linear increase in transfer time, effectively the knee of the curve. The time interval between the saturation point and the end of the recorded data is referred to as the saturation interval. In this interval, the graph monotonically increases at a constant rate i.e., the network throughput cannot be improved upon by increasing the block size.
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.