Hi all,
I don't know if this is related to your problem, but one issue that we
know about (but I forgot) is that Traffic Server will turn origin
responses with a Content-Length header into a Chunked response. This
works for most content, and it's done to be "pessimistic" about not
trusting the origin to produce correct Content-Length headers (which
could potentially hang the client).
This can be turned off globally, with
CONFIG proxy.config.http.chunking_enabled INT 0
Doing so has the huge disadvantage that we now also send a "Connection:
close" in the response, effectively disabling Keep-Alive on such
content. But, doing this solves the problem experienced with streaming
media content (e.g. youtube). A slightly better approach is to do this
selectively, via remap.config, e.g.
regex_map http://(.*)\.youtube.com/ http://$1.youtube.com/
@chunking_enabled=0
This rule, which is for a forward (or transparent) proxy setup, tells
ATS to disable chunking for any servers in the youtube.com domain. A
more selective mapping rule (or rules) could probably be constructed
upon some more investigation.
Now, I'm thinking that our defensiveness here might be a little bit
overzealous, so what do you devs say about maybe adding a config option
that tells ATS to trust the Content-Length header? Or perhaps relax the
rules around when we don't trust the CL ?
Thoughts?
-- leif
|