Search Description

From Gnutella2
Revision as of 10:21, 26 October 2005 by 203.166.227.91 (talk) (→‎Query Throttle)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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)