Edward J. Huff wrote:
chained request gets QRed.  The node which first receives the QR
does not try again with a different node in its routing table, as
it would if it got a DNF.  Instead, it passes the QR back, and
all of the preceding links pass it back to the original requester.

I'm very confused by this. I was under the impression that a QR meant "DON'T back down the chain, just try another path" and that DNF meant "send a failure all the way back down the chain, as the HTL has been exhausted."

In fact, that's how I described it to someone on the list just
a few days ago. No one corrected my mistake, if I got it wrong.
I believe Edward has a longer-term, firmer grasp of Freenet's
operations than myself, but someone please confirm this one way
or the other. Apologies in advance for consuming devl traffic
on this... (if I am the only one who is educated by it)

Thus, a QR is a disaster. It would be better if the request had

Many QRs are a disaster. Many defined as "enough to consume a significant percentage of total available bandwidth." A few are probably okay, as a means of sharing information about load - like 'that node is/was too busy at the point in time it rejected' It is valuable for implementing backoff.

<edt> we are now doing backoff - does expontenial make sense?
<edt> I suggest that a randomized linear backoff based on the
pDNF(node)*random()*constant would work better.
<edt> when 'constant' is determined by a feedback loop
<edt> designed to minimumize the overall pDNF

be careful, this approximates a "rate negotiation" :) which I favor, but others may not... ahhh, forget I applied that nasty label to it. But notice it deals specifically with the rate of queries between a single Pair of nodes, rather than saying "I'm busy" to whomever happens to query me next ...

> <edt> designed to minimumize the overall pDNF
pDNF for the _requestor_, signifying a Pair relationship

<edt> zab_ why does an exponent make sense given the patterns of QR we see?
<edt> I do not think exponential backoff makes than much sense... backoff yes. exponential no.

Exponential makes sense (as in ethernet) when we are addressing a contention between multiple writers. Linear makes sense when we are trying to optimize the rate between 2 entities. The 'exponent' was supposed to be different for each sender, to reduce contention. It was rather perverted here by using it repeatedly for a single sender. I am NOT criticizing anyone, that's just how it got done. (so I agree w/edt above)


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

Reply via email to