What I was thinking of wouldn't stress the network at all. All you need do is keep track of the following.
1) which connection search results come from
2) which peers you know about from this same connection
It wouldn't make any new activity, just watch what normally goes on, and when it comes time to make a new connection try IPs from the connection that returned the most search results first (instead of picking a random IP from the host cache as it does now).
Superpeers are find once everything supports them, but until then the horizon will always be limited. Even with them it's possible all SP's won't be able to see each-other or SP clients won't have enough memory to hold all the search results (which could get *really* big).
It would be much better if people looking for similar files tended to drift towards one another. Common files are easy to find, but it's getting nearly impossible to find anything only a few peers are sharing.
P.S. Actually, after thinking about it, even better and simpler approach would be to keep and try connecting first to IPs from the search results themselves (if non firewalled). All you'd need do is stick search result IP in the host cache. Also hosts downloading from you might be good too (under the theroy that if they're interested in what you've got perhaps you'll find what they've got interesting).
Last edited by SRL; November 16th, 2001 at 09:02 PM.
|