An Equation to Explain Application Response Time

Ever wonder why it takes so long to get an application reply over the WAN?  Why do applications that work well during test and acceptance become performance dogs when rolled out to the user population?  What factors govern response time and what can be done to improve them?  We developed a simple equation that explains the basics.

Poor application performance renders users unproductive--therefore, application performance measurement over a WAN must capture the user's experience.  The most useful measure of the user's experience is task response time.

A task is each user interaction with the application during a session or process.  Task time is measured from the moment the user enters an application query, command, function, etc. requiring a server response, to the moment the user receives the response and can proceed.  Some call this "user wait time"-or in the case of the Web, "page load time" (PLT).  The aggregation of these individual task completion times defines application "responsiveness" perceived by the user.

Here is our easy-to-understand equation that shows the major variables affecting the response time a user experiences.

Copyright 2000-2008, NetForecast, Inc.

Where:

AppTurns are the application client-server software interactions (turn count) needed to generate a user-level system response or task.  Turns do not include two-way TCP interactions (e.g., ACKs).  The user is not aware of turns.

Bandwidth is the minimum bandwidth (in bits per second) across all network links between the user and the application server.  The slowest link is typically the user's access line to the network.  Useable link bandwidth may be reduced by traffic conflicts (congestion) and protocol inefficiency (e.g., small TCP window size).

Cc (Compute Client) is the total processing time (seconds) required by the client device.

Cs (Compute Server) is the total processing time (seconds) required by the server(s).

Payload is information content (in bytes) that must be delivered to/from the user's device.

R is the task response time, which is the elapsed time (in seconds) between a user action (e.g., mouse click, enter, return) and the system response (client, network, server), so the user can proceed with the process. 

RTT is the round-trip-time (in seconds) between the user and the application server.

The AppTurn-RTT product is the key response time factor and it is growing at an alarming rate.  Today's typical business-to-business web page requires more than 90 AppTurns to load compared to just 50 AppTurns 5 years ago.  Furthermore, due to globalization and data center consolidation those pages are being delivered to users who are farther away from the server.  Multiply ever larger AppTurn and RTT values and you get a big number, which causes a long response time.

The other culprit in the equation is payload size, which is also growing.  Those same business-to-business web pages average more than 500,000 Bytes in size, up from 150,000 Bytes 5 years ago.  Yes, broadband helps but it can't keep up if there is a lot of competing traffic causing congestion.

We used to recommend fixing the application, but that is no longer an option for most enterprises.  The real solution comes from the large array of application delivery system vendors.  More on them later.

Join the Network World communities on Facebook and LinkedIn to comment on topics that are top of mind.
Related:

Copyright © 2008 IDG Communications, Inc.

IT Salary Survey: The results are in