Gnutella Forums  

Go Back   Gnutella Forums > Gnutella News and Gnutelliums Forums > General Gnutella Development Discussion
Register FAQ The Twelve Commandments Members List Calendar Arcade Find the Best VPN Today's Posts

General Gnutella Development Discussion For general discussion about Gnutella development.


Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old January 12th, 2002
Enthusiast
 
Join Date: January 1st, 2002
Posts: 34
Tamama is flying high
Question Routing, finding double links

Holas,

Consider this network

A - B - C - A

If B does a query A gets the query twice. A needs to see this and drop the duplicate.

I simply check my routing tables on the other connections to see if a route already exists, and if so drop it. This requires me to access my routing tables of all connections for every packet that needs to be routed.

Does anyone know any other ways?
Reply With Quote
  #2 (permalink)  
Old January 12th, 2002
Enthusiast
 
Join Date: January 1st, 2002
Posts: 34
Tamama is flying high
Default hm i've been looking into it

And it seems this is the only way.. sigh

However, i thought of a nice route-restore thing in case connections dropped etc.

When you are part of a fork (that is, receive a query twice), you keep the one with the least hops in your route-table. But, you also register the longer route in a backup table.. When the connection with the shortest route drops, you reinstall the longer route to another connection. This would make sure that IF you are able to route it in different ways, you pick the best in all situations. Without this 'fork-awareness' a disconnect of a host would kill lots of routes....

Comments?
Reply With Quote
  #3 (permalink)  
Old January 15th, 2002
Enthusiast
 
Join Date: November 18th, 2001
Location: Munich, Germany
Posts: 40
hermaf is flying high
Default

Hm if I get you I can suggest the following:

Every connected servent should keep a ID list where you put in the ID of queries. When you receive a hit you just check your servents for the ID. If it contains the ID you know where to send it. To prevent loops you have to check that you don't have an ID twice in your lists. I mean that is really not to hard to do. On all systems there are libraries offering hashes or vectors... so this should be fast and efficient.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Routing errors??? dumbmick Connection Problems 3 January 14th, 2003 10:44 PM
What is query-routing Cakkie General Gnutella Development Discussion 3 July 29th, 2002 05:27 AM
Packet routing Cakkie General Gnutella Development Discussion 6 July 21st, 2002 12:09 PM
help please- NAT routing Unregistered General Gnutella / Gnutella Network Discussion 2 April 1st, 2002 01:56 PM
routing question Ivex General Gnutella Development Discussion 4 January 25th, 2002 12:05 PM


All times are GMT -7. The time now is 01:01 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 ©2011, Crawlability, Inc.

Copyright © 2020 Gnutella Forums.
All Rights Reserved.