Return-Path: Delivered-To: apmail-httpd-dev-archive@www.apache.org Received: (qmail 16224 invoked from network); 13 Jan 2010 15:22:17 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 13 Jan 2010 15:22:17 -0000 Received: (qmail 84526 invoked by uid 500); 13 Jan 2010 15:22:16 -0000 Delivered-To: apmail-httpd-dev-archive@httpd.apache.org Received: (qmail 84441 invoked by uid 500); 13 Jan 2010 15:22:16 -0000 Mailing-List: contact dev-help@httpd.apache.org; run by ezmlm Precedence: bulk Reply-To: dev@httpd.apache.org list-help: list-unsubscribe: List-Post: List-Id: Delivered-To: mailing list dev@httpd.apache.org Received: (qmail 84432 invoked by uid 99); 13 Jan 2010 15:22:16 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 13 Jan 2010 15:22:16 +0000 X-ASF-Spam-Status: No, hits=-4.0 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [195.232.224.70] (HELO mailout01.vodafone.com) (195.232.224.70) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 13 Jan 2010 15:22:05 +0000 Received: from mailint01 (localhost [127.0.0.1]) by mailout01 (Postfix) with ESMTP id 1569E4703 for ; Wed, 13 Jan 2010 16:21:45 +0100 (CET) Received: from avoexs04.internal.vodafone.com (avoexs04.dc-ratingen.de [145.230.4.198]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) by mailint01 (Postfix) with ESMTPS id 0A998469B for ; Wed, 13 Jan 2010 16:21:45 +0100 (CET) Received: from VF-MBX11.internal.vodafone.com ([145.230.5.20]) by avoexs04.internal.vodafone.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 13 Jan 2010 16:21:44 +0100 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Subject: RE: Re: mod_reqtimeout backport Date: Wed, 13 Jan 2010 16:21:45 +0100 Message-ID: <99EA83DCDE961346AFA9B5EC33FEC08B03418BC9@VF-MBX11.internal.vodafone.com> In-Reply-To: A X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Re: mod_reqtimeout backport Thread-Index: AcqUXL7vtu5JGmTLRaK72/M0knwZPgABuSfg References: <20100109195247.B53EC238899B@eris.apache.org><201001130030.37405.sf@sfritsch.de> A From: =?iso-8859-1?Q?=22Pl=FCm=2C_R=FCdiger=2C_VF-Group=22?= To: X-OriginalArrivalTime: 13 Jan 2010 15:21:44.0490 (UTC) FILETIME=[1D6E78A0:01CA9464] X-Virus-Checked: Checked by ClamAV on apache.org =20 > -----Original Message----- > From: news [mailto:news@ger.gmane.org] On Behalf Of Dan Poirier > Sent: Mittwoch, 13. Januar 2010 15:28 > To: dev@httpd.apache.org > Subject: Re: mod_reqtimeout backport >=20 > Stefan Fritsch writes: >=20 > > I am not particularly happy about the syntax, yet. I just=20 > had the idea=20 > > to have one keyword xxx that can optionally accept a range,=20 > instead of=20 > > two keywords xxxinit and xxxmax: > > > > Header=3D30 > > Body=3D5-50 BodyMinRate=3D500 > > > > or=20 > > > > Header=3D5-20,minrate=3D500 > > Body=3D5-50,minrate=3D500 > > > > but the combination > > > > Header=3D5,minrate=3D1000 > > > > is less clear. Maybe make the '-' mandatory in this case: > > > > Header=3D5-,minrate=3D1000 > > > > Any opinions or better ideas? > > > > One could also rename RequestTimeout into=20 > RequestReadTimeout if that=20 > > makes it easier to understand. >=20 > We might simplify the model by not exposing the internal extending of > the timeout. Just let the admin specify an overall max time,=20 > a minimum > rate, or both: >=20 > HeaderTimeout: Maximum seconds to read the entire header. >=20 > HeaderMinRate: Minimum rate (bytes/second) allowed when reading the > request header. If the rate drops below this, the request is timed > out. >=20 > We'd enforce both if specified. In that case HeaderTimeout would act > like headermax. Internally we'd probably implement HeaderMinRate by > gradually extending a timeout, but we wouldn't be tied to that. But that would result in different behaviour, wouldn't it? e.g. with init timeout set to 10 max timeout set to 30 and minrate set = 500 the client can wait for 10 seconds before sending data at a rate of 500 = bytes/sec. If I understand your model correctly we would cancel the request anytime = if the client falls below 500 bytes/sec. So if it does start only with 200 bytes/sec = we would cancel it immediately. Regards R=FCdiger