Toad wrote:

On Sat, Nov 15, 2003 at 10:34:04AM -0800, Martin Stone Davis wrote:

Toad wrote:

Freenet unstable 6336 is in CVS and in the snapshots.
Major changes:
* Don't use the {p,t}SearchFailed running averages in estimating. They
don't work (maybe they could though), and exponential backoff provides
an effective mechanism.

If I read StandardNodeEstimator.longEstimate() correctly, the new formula is:


estimate=(pDNF - pLegitDNF) * (tDNF + requestFailTime)
        + pSuccess * tSuccess;

There are some assumptions implicit in the above formula:

1. It assumes that it will successfully connect. That is fine so long as we are already connected... but what if we need to connect? Shouldn't we take the time to connect into account?


No. Open connections only routing. We do not consider the route unless
we have an open, free (i.e. not sending a trailer) connection to the node.

Okay, so pConnectionFailed would have been 0 anyway I guess. That's fine.



2. It assumes that it will not get a QR. That would be find so long as exponential QR backoff yields a network with almost no QRs... but at the moment, there certainly are a lot of QRs. Why not account for them?


Because it will interfere with exponential backoff. Won't it?

I am a bit perplexed at what you mean here. How do you think it will interfere? Why can't exponential backoff coexist with an estimate of the chance of QR even given that we are using exponential backoff? Can you give a simple example of what you mean by "interference"?



3. It assumes there will not be a failure during transfer. blah blah blah same thing... Why not account for them?


We do. Failure during transfer is transferFailed. :)


<m0davis> toad_: According to my reading, we don't use pTransferFailed in calculating estimate. Why did you say "We do. Failure during transfer is transferFailed. :)"?
<toad_> m0davis: we don't?
we should
<m0davis> nope, check it
<toad_> maybe I accidentally threw that out along with searchfailed and connection


Okay, so we agree that needs to be fixed.

However, there are various points during which we can get a timeout.

I would recommend going with your previous Option #1, where you would have accounted for various forms of search failure (QR et al) separately.

However, I may have my facts wrong in the above, so I'll await a response. Assuming we still disagree on what the formula should be, I'll try to contruct a real life example of why the current formula would steer us wrong.

So we now only disagree on point #2. If after your response, we still disagree, I'll try to come up with that real life example.


-Martin


_______________________________________________ Devl mailing list [EMAIL PROTECTED] http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to