Requires Free Membership to View
However, it is a difficult science without sufficient information. Here is the simplest characterization:
Let's assume that you know the (mean) transaction time for a particular network application, T1, and the processing time at the host, T2 (where T2 < T1). Then the network time is T3 = T1 – T2.
If you don't know T2, or can't even assume that it is small compared to T1, then you are already stuck.
So now you have a cumulative value T3 for the time spent in the network. Let's assume that this application is TCP-based and governed by a typical Reno or Tahoe stack implementation, that a single TCP connection is used and that the transaction is a simple connection, request and with response as a series of data packets.
Now that's assuming a lot already. But this is the simple case.
But there is more!! Let's assume that the amount of data transferred is negligible – in other words we aren't going to model this transaction in terms of the TCP steady state formula
Throughput = 0.7 * MSS / (RTT * sqrt(loss) )
(see The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm by Matthew Mathis, Jeffrey Semke, Jamshid Mahdavi)
If you did, you would still only know the delay (RTT) and loss as a product and couldn't separate them. You would need to sniff the RTT of a single SYN-ACK sequence to pull out a reliable RTT. Needless to say, this needs to be done statistically over a large number of transactions.
So without any significant slow-start or steady-state effects (assuming very small amount of data transferred), you would assume a certain number N of SYN-ACK/DATA-ACK exchanges and that the total time of the network part of the transaction was based on those RTTs. And that over a statistical collection of transactions, the variations in timing represented any losses and time to retransmit…..
I'll stop now. My point? In order to get down to a single equation of any real meaning, a large number of fairly specific assumptions need to be made. Or more information is needed.
I hope this isn't discouraging you. Depending on what you actually have as data, you may well be able to characterize the network behavior reasonably well. I only have what you described in your question to go on. There just isn't a generic catch-all expression.
This was first published in March 2004
Network Management Strategies for the CIO

Join the conversationComment
Share
Comments
Results
Contribute to the conversation