Re: zipf and persistent connections?

From: Duane Wessels (wessels@measurement-factory.com)
Date: Tue Aug 22 2000 - 12:54:46 MDT


On Tue, 22 Aug 2000 brianok@us.ibm.com wrote:

>
>
> I need to better understand what polygraph (2.5.4, polymix-3) does for
> persistent connections (pconns), and about what zipf() does.
>
> First, I've learned a little more about Zipf (the man, and the
> distributions), but for simplicity, can I assume that using zipf(64) in
> polygraph will give me a (somewhat approximatable) number between 1 and 64?
> I realize that it's not a totally random number.

yes, its very skewed to lower numbers.

> Second, I see that the servers use a pconn_use_lmt = zipf(16) and the
> robots use a pconn_use_lmt = zipf(64).
>
> Does pconn_use_lmt mean something different for the client than the server?
> As in, the client uses its self-imposed limit to determine how many it will
> try to send to the proxy, but the server will use its own limit to
> determine how many pconns to accept from a proxy?

Thats correct. The client and server agents are separate entities.
So they have independed persistent connection usage parameters.

> Does this mean that a given robot will determine to use some number (not to
> exceed 64) of pconns, which could then be limited or terminated (timed out)
> by the proxy, but doing a max of 64 of them? So, if my proxy will allow up
> to 100 pconns from a client, it will never actually get more than 64,
> right?

Yes, correct again :-)

When a robot creates a TCP connection, it uses the zipf() distribution to
determine the maximum number of requests that would be sent on the connection.

The proxy (or server for no-proxy test) could close the connection
after any response, for any reason. The most likely reason being
that the connection is idle for too long.

> On the server side, does this mean that if a proxy tries to keep
> connections alive/persistent for, say, 100% of its requests to the servers,
> the connections would be terminated after it hits the limit allowed by the
> server?

Yes. The server would send 'proxy-connection: close' in the headers
of the Nth response, where N is taken from the zipf(16) distribution.
The server might close the connection before that if it is idle
for longer than 'idle_pconn_tout'.

The proxy (or client for no-proxy test) could choose to close the connection
sooner as well.

Duane W.



This archive was generated by hypermail 2b29 : Tue Jul 10 2001 - 12:00:15 MDT