As if enough wasn't said already...
I do agree that one must have the choice of whether to propagate any particular query or not. People that strongly feel towards an issue may find it uncomfortable to encourage sharing of certain information. I feel we must account for their right to express themselves.
Yes I do feel that argument stating that
one should only choose whether to participate in the GnutellNet or not, rather than whether to propagate a certain type of queries, is reasonable in a number of ways. One, it makes client programming much easier. However, I feel that just because it is
POSSIBLE to block some queries by any client on the network, we must account for future (or present) development of this feature.
In a word, I feel that if it is possible, it must be done or accounted for. Gee, maybe we should even have to classify each client according to the degree of restriction it puts on the queries it propagates.
Below are 2 extremes:
- A fully UNrestricted (or fully open) client will propagate any query, no matter what it is.
- A fully restricted client will propagate NO queries.
There will be a number of intermediate classifications:
- A client which propagates everything, except globally banned queries.
- A client which propagates everything, except globally banned queries, and a few manually banned queries (ding-ding, we've heard this one before from Neo_Geo!)
- A client which propagates everything, except globally banned queries, and a bunch (see below) of manually added queries.
- A client which propagates only a specific set of queries (say those that match a certain substring).
Exactly how many is a "bunch" (as used above)? We might want a formula, in which some queries may be given more weight, while others less. Weights of all queries would be added, and if the sum excxeeds a certain number (say, based on the current GuntellaNet average), client would recieve a certain classification.
If course, we can add to this thoughts on how a group of users can create a Gnutella
Subnet for the purpose of sharing a custom query ban list... Gee, my mind is just running wild, can't you tell? :-)
All this sounds
awfully complicated. Am I possibly adding features to the next generation of the protocol?.. Hey, some time someone has to come up with these thoughts, for them to even be considered.
But back to the present...
I do feel that for now users should be able to add manual queries bans, which would persist from session to session. For each of then the user will specify whether the ban will be distributed to the GnutellaNet (in other words, will the neighbors be told to ban this query also). The bans recieved from the GnutellaNet will be added to the list but will not persist from one session to another.
I know it is easy for me to say all this, since I am not coding... Just my $.02 ... :-) Or more like $5.00 considering the length of this post...
-= onTy =-