North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

Re: decreased caching efficiency?

  • From: Simon Leinen
  • Date: Fri Oct 20 10:33:23 2000

>>>>> "ld" == Lincoln Dale <[email protected]> writes:
> caches exist for multiple reasons --
>   [1] to make things faster
>   [2] to save bandwidth
>   [3] to achieve more "goodput" in network transactions.
>   [4] to operate at layers-8 and 9  (filtering)
> in many cases, people significantly underestimate the effect of #3 -
> and it isn't easily measured.  it is the effect of a "good" tcp stack
> cutting down end-to-end tcp retransmissions when the "last mile" hop
> is congested.

Not just when it is congested... whenever the proxy (I'm deliberately
not talking about "caches"---even a cacheless proxy would have this
effect) has RTTs to the origin server and the browser which are both
lower than the "e2e" server<->browser RTT, then the TCP control loop
will react faster to changing network conditions.  This includes
faster "ramping up" to available bandwidth, and higher achievable
throughput if the same window size is used.

Note also that proxies can affect goodput adversely, for example when
both the origin server and browser host support larger TCP window
sizes than the proxy.  This artificially limits throughput when
there's little or no congestion over paths with high RTT.

I think this is quite common because it is easier for browser hosts
than for proxies to support larger TCP windows---proxies have to
support high numbers of concurrent TCP connections, and using large
windows may incur very significant kernel memory overhead unless OS
developers do clever memory-allocation things.