I think there are several things being missed here:
1. You want to drop all other connections when you find an UltraPeer ... if you're not *also* an UltraPeer. Meaning, if I'm a modem user, I only want to find my one sugar-daddy UltraPeer. But, if I'm a symmetric DSL (or T1!) user, I should probably become an UltraPeer to the modem users ... and I shouldn't drop them all if I find another UltraPeer, should I?
2. Servents should qualify for UltraPeer-ness until they've been on-line for some preset time, e.g. at least 2 hours. Otherwise, you're going to have a lot of ****ed-off modem users searching for a new UltraPeer.
3. I would like to see an additional feature where each UltraPeer informs it's "clients" of every other UltraPeer it has found. The clients (eg. modem users) would only use this info if they lost the connection to the original UltraPeer. If they have been informed of more than one UltraPeer, they would randomly pick one to reconnect to -- thus spreading the client load across the remaining UltraPeers.
- Tony in San Diego |