Measuring the true end-user interaction experience with applications operating within a distributed computing environment is a complicated task. As used herein, the interaction experience refers to the time between a display change on a host machine and updating a display to an end-user reflecting that change. There are several factors that contribute to the interaction experience: client performance, client load, network characteristics, network performance, server performance, and server load. Each of these factors may impact the interaction experience by varying amounts, and recommendations for optimizing the performance of each may vary. A method for providing users and developers with both information regarding performance data for the varying components in a client-host connection and with recommendations needed to improve the interaction experience would be desirable.
Furthermore, generating an interface for providing meaningful feedback to an end user creates additional complications. Conventional systems may provide rudimentary graphical displays, for example, two-dimensional graphs plotting usage as a function of time. Typical systems may display to a user a graphical history of computer usage or page file usage over a period of time, and may provide statistics such as a number of threads or processes executing in a period of time, or a percentage of network utilization over a period of time. However, these systems typically lack the ability to interactive provide information to users seeking to improve or optimize usage. Nor do these systems typically provide an analysis for the user of the delay introduced into a connection by particular components of a connection between the user and another network node. Methods and systems providing a user with interactive, dynamic displays and recommendations for connection optimization would be desirable.