Hello all,
A company I work for is hosting an application at a popular managed hosting provider and are using the css11501s to do layer-5 load balancing between a set of application servers.
We are seeing a strange error that seems to occur when the following conditions are satisfied:
1) The client of the application is running Internet Explorer (which separated HTTP headers with a \r\n as opposed to a single \n)
2) The client is using a connection with a low mtu (thus there is a good deal of fragmentation and the http request fragments somewhere in the headers)
Assume we have a packet which reaches the css with a trailing carriage return ('\r') charater, the following newline being at the begining of the next continuation packet, the CSS is errouniosly appending a \n\r\n to the packet before combining it with the continuation and sending it on to the server. For example, I'm currently looking at a dump where we recieve a packet which ends in this line
Connection: Keep-Alive\r
and the subequent packet's http section begins with
\nCache-Control... etc
This is being modified by the css and sent through as one packet with the follwing structure:
Connection: Keep-alive\r\n
\r\n
Cache-Control:... etc
Which is completely screwing up our application for obvious reasons. Has anybody else experienced this? I'm no expert on this piece of hardware but it seems our managed host isn't either...