HAProxy – Understanding Timing Connection Diagram

haproxy

I'm trying to understand more about the Haproxy timings. Below is a snippet of the timings from the Haproxy manual:

  • Tq: total time to get the client request (HTTP mode only)…

  • Tw: total time spent in the queues waiting for a connection slot…

  • Tc: total time to establish the TCP connection to the server….

  • Tr: server response time (HTTP mode only)…

  • Tt: total session duration time, between the moment the proxy accepted it
    and the moment both ends were closed…

Source: http://cbonte.github.io/haproxy-dconv/configuration-1.5.html#8.4

I've attempted to diagram some of the timings, but my diagram is probably incorrect and is definitely incomplete (no FIN, etc):

enter image description here

Question: What would the full timing diagram look like, including all timing measures (Tq, Tw, Tc, Tr, Tt) as well as all TCP/IP communications?

Best Answer

Nice picture :)

  • timeout connect is on server side, it is the maximum time to run the TCP handshake
  • http-request starts from the ACK on the client side until whole HTTP headers have been received
  • Tq starts from the client Handshake TCP.
  • Tr is until we receive the response Headers

Baptiste

Related Topic