Difference between revisions of "Search Description"

From Gnutella2
Jump to: navigation, search
(Query throttle chapter added,s hould there be a detailed description of how a search works on this page ?)
(Query Throttle)
 
Line 8: Line 8:
  
 
== Query Throttle ==
 
== Query Throttle ==
Querying the Gnutella2 network can lead to '''a lot''' of results, putting a resource strain on both the network as a whole nad the querying party itself. Therfore a client SHOULD NOT send any more queries after he has received about 100 results. The client should also not send too many query packets at the same time
+
Querying the Gnutella2 network can lead to '''a lot''' of results, putting a resource strain on both the network as a whole and the querying party itself. Therfore a client SHOULD NOT send any more queries after he has received about 100 valid results.  
 +
 
 +
The client should also not send query packets at too high a rate. Results from a popular search can actually flood the client if care is not taken. An optimal solution would be to start the search at a fairly slow rate (perhaps 2 to 4 queries per second), and speed up if there are not sufficient results after 5 to 10 seconds.
 +
 
 +
The maximum rate a client may send queries is 8 per second. This is a global limit, the total output of all running searches must not exceed this.
 +
A client should also pause a search after 2400 queries. (About 5 minutes)

Latest revision as of 10:21, 26 October 2005

Introduction

The Gnutella2 object search mechanism defines a powerful query descriptor capable of specifying a number of different extensible search criteria, and requesting a subset of information about matching objects.

/Q2 - Gnutella2 Query

Query Throttle

Querying the Gnutella2 network can lead to a lot of results, putting a resource strain on both the network as a whole and the querying party itself. Therfore a client SHOULD NOT send any more queries after he has received about 100 valid results.

The client should also not send query packets at too high a rate. Results from a popular search can actually flood the client if care is not taken. An optimal solution would be to start the search at a fairly slow rate (perhaps 2 to 4 queries per second), and speed up if there are not sufficient results after 5 to 10 seconds.

The maximum rate a client may send queries is 8 per second. This is a global limit, the total output of all running searches must not exceed this. A client should also pause a search after 2400 queries. (About 5 minutes)