On Sun, Dec 31, 2000 at 02:02:31AM -0800, Aaron Voisine wrote:
> Here's my idea for keyword searches. I volunteer to implement it.
>
> Each node keeps an index of the ksk's it has in it's data store. When it receives a
>Request.Search
> message with a keyword, it searches the local store for matching ksk's and sends
>back a Reply.Search
> message. It then forwards the search request to the next node on it's list of peers.
>When a
> Reply.Search message comes back, it removes the ksk's it already sent and forwards
>the message. If it
> has no peers it sends a Reply.Search message containing DONE. Once all it's peers
>have replied DONE
> or CONTINUE it replies with DONE to the requesting node. As each Reply.Search
>message arrives at the
> originating node the results get displayed real time. When the user wishes he/she
>can stop the search
> by sending a Request.Search containing ABORT. If an ABORT request is received it is
>forwarded to all
> peer nodes that were sent the search request and have not yet replied and no more
>peers are sent the
> request.
>
> Each search would be faster and less taxing on the system than a mistyped data
>request or an insert.
> Clients could even use drastically reduced hops to live on search request messages
>to further reduce
> system load. This type of message is no worse than any other as far as cancer nodes
>sending out bad
> requests to load down the system. To further improve efficiency, searches could have
>their results
> cached in the datastore for a set time like 24 hours.
This is definitely *NOT* a good idea. Actually, it is a horrible idea
for something like Freenet. The reason why is that it transmits far
too much out of band information to whatever node is doing the keyword
search. The content and order of the Reply.Search messages received
contains a large amount of information that could be used to find out
information about what is in various nodes' datastores.
--
Travis Bemann
Sendmail is still screwed up on my box.
My email address is really [EMAIL PROTECTED]
PGP signature