A server monitoring system monitors the performance of a web site or other Internet
server system, as seen by users in multiple geographic access locations, without
the need for special monitoring software or hardware within such locations. Automated
agents that run at a central data center generate message traffic that is used
to access and monitor the server system from the multiple remote locations. The
message traffic associated with a particular remote access location is transmitted
from the data center to the remote location across a dedicated link, such as an
ATM link, and is routed onto the Internet at a corresponding Internet access point.
The server response to each request message flows back to the data center across
the same link as the corresponding request message. The remote access points thus
serve as virtual points of presence for monitoring purposes. Server response times
as seen from the remote access locations are determined by measuring the total
response times as observed from the data center, and deducting from the total response
times the round-trip latencies associated with the corresponding dedicated links.
The response times and other performance data generated by the agents are aggregated
within a database that is local to the agents. Multiple data centers may be interconnected
such that each data center services a particular continent or other region using
a respective set of virtual points of presence.