Our intranet web app is behaving very strangely. Very often posting back (asp.net) to save form input end in no-action. After a month or so of on-and-off troubleshooting, I finally got around to compare the http request and response headers.

Basically, I have 2 browser sessions, 1 requesting directly to the web server, the other requesting through the load balancer URL. One of the differences between the 2 responses were Date header. The version coming from the LB has a Date header which is 6 minutes in the future. The other difference is Persistent-auth: the LB response is ON, and direct response is OFF.

I am not network admin, so I don't get to poke around. My impression is that http header is emitted by the web server, not the load balancer. Is this even a valid scenario? What should I ask my admin to look for?


The general behavior would be that the server would set the Date header and not the load balancer. However, it is possible to set headers with a load balancer. In particular, a caching load balancer might be doing this since according to RFC 2616 the Date header is part of determining the age (date_value is derived from the Date Header):

Given that we have two independent ways to compute the age of a response when it is received, we can combine these as

   corrected_received_age = max(now - date_value, age_value)

So I recommend working with your admins closely to better understand the architecture surrounding the application. Together find out what caching may be going on, what type of load balancer you are using, and of course verify that all servers in the pipeline have their time accurately set.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.