Ultrapeers and clustering Ultrapeers grouping together loosely will increase the horizon as AFisk and others are trying to assert.
Ultrapeers grouping together tighly, ie ultrapeers 'preferring' ultrapeers over leaf nodes will have a decreased effect in increasing the horizon, plus will reduce the service that ultrapeers provide to leaf nodes.
This is easy to understand in terms of the physical property surface area - the surface area of a ball is small compared with the volume. Stuff inside the ball is not exposed at all to the outside world.
Ultrapeers should be like a loose mesh - interconnected but loosley.
I don't know how loosely/tightly they are connected in reality. I bet AFisk does.
There will be a mathematical description which will show the best balance of ultrapeers-to-leaf nodes to achieve the optimum horizon in terms of # files shared. It could be quite complex (like requiring supercomputers to solve) if all factors are taken into account, but an illustrative example should be possible.
I would suggest that in addition to this balance of ultrapeers to leaf nodes, there should additionally be a coded reserve of connections which can be used by non-ultrapeers-capable hosts, otherwise you will end up with a closed limewire ball, as it seems moak fears.
Can anyone give us a description of the ratios or algorithms used in selecting the connections? If they're wrong, then limewire should fix them - ultrapeers are only just launched, there is plenty of room for 'tuning' them.
It would be interesting to have information on gnucleus's superpeers too, and how the two interact, if at all.
Personally I think this ultrapeer stuff belongs in it's own thread, this is not the core issue.
Nos |