On Sat, 17 Feb 2001 hal at finney.org wrote:
> My understanding, which may be somewhat out of date, is this: Normally
> when your node tries another node and it fails, your node will try
> again with a different one.  However the HTL gets decremented on the
> failing node.  If the failing node thrashed around badly enough before
> failing, it would return the RequestFailed message with an indication
> that it had used up all of the HTL in trying to forward the message.
> In that case your node will not try any others and will just return the
> RequestFailed back.

Actually no, even if the htl ran out on the RequestFailed, you would
still get a TimedOut back. A RequestFailed back basically means that
you have exhausted every single route on the reachable network
without finding one that works (without running out of htl in the
process). Yes, we could, theoretically, allow the insert of the data
under this condition, but I would warn the user that his network
connectivity is badly fucked and that no one is going to be able to
find th edata. If you want it to stick, just decrease the htl.

Technically, there is a very good reason not to allow inserts on
RequestFailed, which is that then nodes would have to keep the state
around waiting for the DataInsert message - and most nodes that send
back RequestFailed will not ever see any more messages for that
chain.

(Hal, if you have time I would still appreciate some comments on the
announcement proposal:
http://cvs.sourceforge.net/cgi-bin/cvsweb.cgi/~checkout~/docs/announcement.txt?rev=1.1&content-type=text/plain&cvsroot=freenet
)

>
> Hal
>
> _______________________________________________
> Devl mailing list
> Devl at freenetproject.org
> http://www.uprizer.com/mailman/listinfo/devl
>


_______________________________________________
Devl mailing list
Devl at freenetproject.org
http://www.uprizer.com/mailman/listinfo/devl

Reply via email to