At 08:26 PM 02/21/2002 +0100, Maarten wrote: >Node discovery. <snip>
>I am thinking about a solution. But any improvement bring along a >problem of making a node public. I don't think there's a way around this. Nodes have to know about each other. There is no real way to hide the fact you run a freenet node or you create sockets to them as far as I can tell. >One way would be to add a request type: Give me all the nodereferences >you know are working right now. I think this might be a good idea. Unfortunately, those node references would be worth a lot less than learning them by requesting and/or inserting stuff. This is due to the lack of routing information (what keys that node has been the datasource of in the past). I would think though that having node references with random routing keys (like what happens when they come in from a seednodes.ref file) is better than not having them at all. <snip> >A way to prevent leeching may be in changing the routing a little. If a >node requeust data, and your node does not have AND fails to find in in >the next node than add a routing entry to the node that requested it >(with a certain weight depending on the HTL it passed). There is a >bigger change that the node that requested it finds the data somewhere >else and in effect s likely to have htat that data. (Do you know enough >from the node that request data to add it to your node reference pool?). >This solves the leeching problem: a node that request a lot of data will >be added to a lot of routing tables and gets be default more request. It >would also not a bad idea to keep statistics of the behaviour of >neighbourhood nodes. (Response time might be valueable. ) I have had a similar idea that if somebody requests something from my node and my node doesn't have a node reference for that key, then maybe the requester's node reference should be attached to the key. Chances are that the request wasn't originally from the requester and therefore there are some nodes who think that the requester was appropriate to request that key from, so maybe my node should make a note of that fact too. Or would it be better to leave no node reference on that key? Maybe the routing code already does this. <snip> >-Does anyone know more methods of creating better loadbalancing ? This question reminds me of a question I've been thinking about lately: Would it make any sense to turn the MaxRefs way down to like 20 or 30 so that no one node takes over your routing table? My node normally has less than a thousand routing keys in it and therefore I think it would be a good idea to make sure that no one node has more than a few percent of the routing keys. Would that help balance the routing in a reasonable way? <snip> >Maarten Ed _______________________________________________ freenet-tech mailing list [EMAIL PROTECTED] http://lists.freenetproject.org/mailman/listinfo/tech
