[PROXYPER] LIFO/FIFO Buffers (was Proxyper 300+ a lemon? (long))

Jeff Lawson jlawson at bovine.net
Mon Feb 22 04:44:25 EST 1999


Builds 280 and previous were strictly FIFO.  Build 300-304 use a
non-strict FIFO that may cause up to 20 or so packets (approx. worst case)
to be served out directly from the in-memory buffer cache.  If the
in-memory buffer cache already had 20 or so packets already waiting (ie: a
fetch was done while you were not completely out of blocks), then the
newly fetched blocks will get backed off to the end of the disk buffer.

I wouldn't have intentionally implemented this type of behavior, but this
was how one of the other coders happened to do it when he worked on the
preliminary development of the in-memory caching many months ago.  I've
since changed the full servers to operate in a "strict FIFO" method.


-- 
Jeff Lawson   http://www.cs.hmc.edu/~jlawson/   http://www.bovine.net/
Jeffrey_Lawson at hmc.edu   jlawson at bovine.net    bovine at distributed.net
Programmer, Developer, Mascot, Founder of the largest computer on earth!
Don't waste those cycles!  Put them to use!  http://www.distributed.net/

On Sun, 21 Feb 1999, Karl Tremain wrote:

> At 10:22 am 20/2/99 +0000, you wrote:
> ** SNIP**
> >> Also does anybody know how the proxy issues blocks, for example will it
> >> issue the oldest block to clients first (i.e. on a FIFO basis) or does it
> >> just issue them in a random order!
> >
> >At one point, I was sure it was FIFO.  Now.. I dunno, I assume its FIFO,
> >but based on observations from other people.. It could be LIFO (though I
> >hope not).
> 
> I have observed my buffer, and i am now convinced that the perproxy buffers
> are lifo.
> 
> I do hope this gets changed, because i think there is a lot of stale blocks
> being caused by this
> 
> The evidence that i have to support this is the fact that when i am on the
> internet for a while, the PP uploads my blocks the moment they are
> completed, and therefore downloads more blocks to refill its in buffer,
> usually only getting iter 1 or 2 blocks.  Checking the logs reveals that
> after a while, all it is handing out to my faster machines is iter 1
> blocks.  If i disconnect, and come back abd check later it has started
> handing out blocks up to the maximum size (iter 8) from last time the
> buffer was completely filled and it recieved iter 64 from the proxy it
> connected to.
> 
> Regards,
> 
> Karl                                   ICQ - 467709
> karl.tremain at pemail.net
> Homepage:- http://www.keme.co.uk/~ktremain
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> PGP public key available from bottom of my homepage
> 
> --
> To unsubscribe, send 'unsubscribe proxyper' to majordomo at lists.distributed.net
> 
> 

--
To unsubscribe, send 'unsubscribe proxyper' to majordomo at lists.distributed.net



More information about the proxyper mailing list