View Single Post
  #4 (permalink)  
Old February 10th, 2008
GregorK GregorK is offline
Phex Developer
 
Join Date: May 9th, 2001
Location: Stuttgart, Germany
Posts: 988
GregorK is flying high
Default

Another thing could be exchange of QueryRoutingTable. Phex checks for hits against a bit field that was received from connected hosts. When the QRT is not up to date or wasnt send yet, it might not forward the Query to the host.
One more thing is dynamic query. Dynamic querying will not broadcast the query to all hosts in the network right away. It will forward the query to a selected number of hosts with a low TTL and waits for results. If not enough results are returned dynamic query will slowly extend the TTL and forwards the query to more hosts. If you already receive many results ~150-200 on the first hop. Phex might not ask for more results or only continue to query with low TTL, so you might not reach hosts not directly connected to you.

Read this to understand the details:
Gnutella Developer Forum: Gnutella Dynamic Query Protocol v0.1
__________________
Reply With Quote