Gnutella Protocol Development Quote:
Last 16 Servent Identifier. A 16-byte string uniquely identifying the
responding servent on the network. This SHOULD be constant
for all Query Hit messages emitted by a servent and is
typically some function of the servent's network address. The
servent Identifier is mainly used for routing the Push
Message (see below).
|
Nothing stops you from that, but it doesn't gain you that much either.
You might be able to steal push messages intended for a leaf connected to the same UP, but that doesn't do much damage.
Gnutella worked quite well, when some clients had far too weak servent IDs, so it shouldn't be too much of an issue. And if it becomes an issue, I can already think of some solutions (like the UP informaing the leafs that they have the same servent id and they switching due to that).
If you're writing your own client, it MUST be completely random, though. And the random function should return good randomness (you need only calculate this once).