httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <traw...@gmail.com>
Subject Re: C-L or T-E: chunked for proxied request bodies
Date Thu, 30 Dec 2004 18:54:05 GMT
On Thu, 30 Dec 2004 18:47:48 +0100, Jan Kratochvil
<rcpt-dev.AT.httpd.apache.org@jankratochvil.net> wrote:

> On Thu, 30 Dec 2004 14:05:30 +0100, Jeff Trawick wrote:
> > On 29 Dec 2004 20:39:47 -0000, trawick@apache.org <trawick@apache.org> wrote:
> ...
> > Any agreement to use the non-DOS-able and protocol-compliant
> > implementation by default, and allow the C-L method to be enabled by a
> > special setting?
> 
> Is it going to be backported to 2.0 or it waits for 2.2?

It is very likely that whatever ends up in 2.2, possibly different
than in current snapshots, will be backported.  The only reason it
hasn't been backported yet is that there are some concerns with what
is in the current snapshots.  And such concerns surely apply to 2.2 as
well, so something has to be done ;)

An interesting issue is that what is in 2.0 now is optimal when it
works, and it works in a common real-world scenario (client sends C-L
and no filters modify the request body size).  At present, we don't
have any proposed solution which would preserve this common, optimal
situation.  That will be a painful regression for some, since the
request body will be buffered in memory in order to re-calculate the
C-L.

--/--

Oddity in the current 2.1 snapshot solution: If you set the
proxy-sendchunked variable, then the origin server will always get a
request body, even if the client didn't send one.  A simple GET from
the client turns into this:

   G E T   / s i l l y / / s e n d c h u n k s / ? r e a d _ b o d
   y   H T T P / 1 . 1\r\n H o s t :   1 2 7 . 0 . 0 . 1 : 8 0 8 1
  \r\n M a x - F o r w a r d s :   1 0\r\n C o n n e c t i o n :
   c l o s e\r\n X - F o r w a r d e d - F o r :   1 2 7 . 0 . 0 .
   1\r\n X - F o r w a r d e d - H o s t :   1 2 7 . 0 . 0 . 1\r\n
   X - F o r w a r d e d - S e r v e r :   1 9 2 . 1 6 8 . 1 . 1 1
  \r\n T r a n s f e r - E n c o d i n g :   c h u n k e d\r\n\r\n
   0\r\n\r\n

Mime
View raw message