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 November 14th, 2008
Novicius
 
Join Date: October 23rd, 2008
Posts: 3
irtiqa is flying high
Default problem with pong

I am making the gnutella protocol layer for my cn project.The pings are working fine ,and ping cache is being updated and all.Now i have to send pongs .The thing I cannot understand is that pong follow ping path.So how will a node know which node to send the pong back .I know that we have to match pong id with ping id ,but ping cache has no ip/port.So how will a node decide which node to send the pong next .Urgent help needed.Thanx
Reply With Quote
  #2 (permalink)  
Old November 16th, 2008
arne_bab's Avatar
Draketo, small dragon.
 
Join Date: May 31st, 2002
Location: Heidelberg, Germany
Posts: 1,881
arne_bab is a great assister to others; your light through the dark tunnel
Default

What exactly do you mean?

Does the Ping cache you implemented not have IP/Port entries?
__________________

-> put this banner into your own signature! <-
--
Erst im Spiel lebt der Mensch.
Nur ludantaj homoj vivas.
GnuFU.net - Gnutella For Users
Draketo.de - Shortstories, Poems, Music and strange Ideas.
Reply With Quote
  #3 (permalink)  
Old November 17th, 2008
Phex Developer
 
Join Date: May 8th, 2001
Location: Stuttgart, Germany
Posts: 988
GregorK is flying high
Default

You need to maintain a ping/pong routing table. All ids of pings you route need to be stored in a table together with the host it came from.
When you send a pong back or receive a pong you just lookup the id in your routing table to find the host you need to forward the pong to.
This generally works the same way as query and push routing. Here is a description of the routing:
http://rfc-gnutella.sourceforge.net/.../index.html#t4

But this is an outdated way to handle ping/pongs. Modern servents today use some kind of ping reduction technology (most often called Pong Caching) to reduce bandwidth and resources. There are various different implementations used by vendors. You find a basic description of Pong Caching here:
http://wiki.limewire.org/index.php?t...ng_Caching_GDF
__________________
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



All times are GMT -7. The time now is 05:18 AM.


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.