+8  A: 

This article is quite nice about features of firebug : Introduction to Firebug: Net Panel (especially the timeline section)... But it doesn't say much about what "waiting for response" exactly means :-(

Still, the timeline is (quoting) :

  • DNS Lookup - DNS resolution time
  • Connection - elapsed time required to create a TCP connection
  • Queuing - elapsed time spent in a browser queue waiting for a network connection
  • Waiting For Response - waiting for a response from the server
  • Receiving Data - elapsed time required to read entire response from the server (and/or time required to read from cache).
  • DomContentLoaded event - time when DomContentLoad event was fired (since the beginning of the request, can be negative if the request has been started after the event)
  • load event - time when page load event was fired (since the beginning of the request, can be negative if the request has been started after the event)


So, I'm guessing that the "waiting for response" period is the time during which the browser has sent the request to the server, and has not received any response yet : it is "waiting" for some content beginning to arrive :

  • the browser is no longer waiting for the network connection : the request is sent
  • and the browser is not yet reading response from the server.


In the case of a server generating the whole page before beginning sending it to the browser, I suppose the "waiting for response" time would be correspond to :

  • time for the request to travel from the browser to the server
  • plus time for the request to be processed by the server (ie, time to generate the whole page)
  • plus time for the first byte of data traveling from the server to the browser.


Hope this helps :-)

Pascal MARTIN
thanks for the response. Is there a way to check which one of those 3 (browser->server, process, server->browser) takes the longest?
snz3
You're welcome :-) I don't think it is possible to know in which one of those 3 steps you are : the only thing the browser knows is that the request has been sent, and that no result has come back yet -- on the browser side, there is no way to know if the server has received the request, if it is processing it, ... I suppose you'll have to do some logging on the server-side, at least if you want to know how long it took to generate the page.
Pascal MARTIN
If you can just ping the server, you'll get a good estimate of the transfer latency; Most of the rest (for small files) will be processing time.
Eamon Nerbonne