On Monday 17 November 2003 06:22 pm, Toad wrote:
> > In order to prevent cancer nodes from sourounding us, we should do a few
> > things. First, only pass on references that we think are from good nodes.
>
> Well, we only pass them on via StoreData, and that requires a successful
> request...
>
> > (Established, enough to verify the advertised routing information).
> > Second we should keep track of where we heard about nodes from. IE: They
> > contacted us, or Nth generation refrial from a node in our seednodes
> > file. This way if we
>
> Hmm. I'm not sure if this is a good idea. OTOH... dunno. How do you use
> this information?

Suppose we can connect to 3 nodes. We connect to A,B,C.
A tells us about D. 
We drop C and connect to D.
D tells about E. A tells about F.
Under no circomstances should we now drop B!
If I was a cancer node, then it may have the potential to take over our whole 
table. 
Supposing we have 5 entries and are connected to A,B,C
When we hear about D connect, but file under connections indirectly from A.
Then same goes for E.
We then have a full routing table. However we will not relinquish the spots 
for B or C at least until we hear about a node from each of them.
So if we reserve say 2 spots for each direct/indirect connection to each node 
that we had on startup, then the most connections a single cancer node can 
get to you is (Total-2*(origionalNodes-CancerNodesConnected)).

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

Reply via email to