My boss has given me a task to create what is essentially a pinging script to run via a web page.

What he wants is for the app to track:
  • Time from Request to start of processing server-side
  • Time for processing serverside request
  • Time from end of server-side processing to completed page load.
The server side stuff is easy enough. The client side is what I'm concerned with.

How can I capture the time of the request (from the time pressing the go button)?
How can I tell when the page is loaded? Onload fires before the page starts to load, doesn't it?