A method is presented for pruning a peer-to-peer network such that a
peer-to-peer search within the peer-to-peer network is initiated
beginning with those nodes on which relevant content has previously been
found for particular search keywords. For each completed search, a peer
node gathers client rating results and then forwards the rating
information to a rating server; these results reflect the degree to which
searches successfully located content for keywords in a search using
particular peer nodes. A rating server maintains a database of results
received from nodes. Prior to initiating a new search at a peer node, the
peer node consults one or more rating databases to retrieve a set of
initial nodes to which the node should initiate the new search in order
to maximize the speed and success of finding relevant content. The node
then performs the new search using the set of initial nodes.