Forum Discussion

Micha__Iwaszko_'s avatar
Micha__Iwaszko_
Icon for Nimbostratus rankNimbostratus
Jul 16, 2009

General LTM design question.

A quick question about a "general LTM design" and how it works with HTTP traffic. For example, if we receive a big POST that does not fit in one packet does the LTM do a store-and-forward buffering job and resend all of it to the server once it got everything or sends packet as it gets them from the client? I'm asking to fully understand some iRule events like HTTP_REQUEST, HTTP_REQUEST_DATA.

1 Reply

  • If you add an HTTP profile to a virtual server, LTM will try to parse the HTTP headers before opening / reusing an existing serverside connection. So HTTP_REQUEST is triggered once the HTTP headers are parsed. If you force buffering of the request payload with HTTP::collect, then LTM will collect the payload. HTTP_REQUEST_DATA is triggered once the amount of data specified in the HTTP::collect command has been collected. If you do not force buffering of the payload, LTM will send the request to the pool member after HTTP_REQUEST without buffering the payload and HTTP_REQUEST_DATA will not be triggered.

     

     

    For more info you can check the events wiki page or reply here

     

     

    iRule events

     

    http://devcentral.f5.com/wiki/default.aspx/iRules/events

     

     

    Aaron