[squid-users] Squid doesn't reload webpage like other clients do

Amos Jeffries squid3 at treenet.co.nz
Wed Nov 1 13:11:00 UTC 2017


On 01/11/17 05:53, Alex Rousskov wrote:
> On 10/31/2017 02:51 AM, Amos Jeffries wrote:
>> That operational state (HTTP underway) also means RFC 7230 is the
>> relevant place to look for behaviour requirements. Section 6.3.1 says:
> 
>>    A proxy MUST NOT automatically retry non-idempotent requests.
> 
>> So it depends entirely on what type of HTTP request was being performed.
> 
> Unfortunately, it is more nuanced than that. The RFC section you are
> quoting lives inside the "6.3. Persistence" section about persistent
> connections. It also talks about retransmitting a "sequence of
> requests", further implying connection persistency scope. The old RFC
> 2616 even gave a very pconn-specific example as the rationale.
> 
> Squid implementation assumes that all those requirements apply to
> persistent connection race conditions and only to those conditions.
> Whether that is what RFC authors wanted is not clear to me. It would be
> nice to clarify that with the HTTP WG. Any volunteers?
> 
> Alex.
> 

As the first line of that section says:
"
    HTTP/1.1 defaults to the use of "persistent connections"
"

So IMO it is reasonable to assume that the HTTP/1.1 portion of the 
traffic is always scoped as 'persistent'. Most of the section(s) are 
about issues later in the connection traffic, but those specific 
statements might be applied before the first transaction is complete.

The question seems to be more about whether we scope the period between 
SYN+ACK and first data bytes arriving to be governed by TCP or HTTP/1.1 
protocol. The HTTP side has at least those statements I referenced for 
better interoperable behaviour than currently coded.

Amos


More information about the squid-users mailing list