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
