Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is the PING message type used? #31

Closed
JustinDrake opened this issue Nov 15, 2016 · 10 comments
Closed

Is the PING message type used? #31

JustinDrake opened this issue Nov 15, 2016 · 10 comments

Comments

@JustinDrake
Copy link
Contributor

I can see all the other message types (see dht.proto) being used (e.g. PUT_VALUE, GET_VALUE, etc.) but PING seems unused. I'm writing a DHT crawler and this PING message seems quite useful to know who is online, so I'm considering writing a wrapper function for it (similar to getValueSingle).

@whyrusleeping
Copy link
Contributor

@JustinDrake We don't use it anymore, but the ipfs ping command used to use it. Ping is now a separate protocol. We can probably mark it as deprecated somehow (but removing things from protobufs is hard)

@ghost
Copy link

ghost commented Nov 15, 2016

I think it makes sense to keep. Do we still have code that actually implements the ping message? Use case: a protocol being able to test itself. The ping protocol on the other hand is for testing the remote host.

@JustinDrake
Copy link
Contributor Author

@lgierth I think there's only code to handle incoming ping messages, but none implementing outgoing ping messages.

@whyrusleeping
Copy link
Contributor

@JustinDrake We should probably use this ping message for the routing table stuff discussed in the other issue

@mildred
Copy link

mildred commented Feb 23, 2017

The kadmelia specs says:

It would seem useful to add to the Contact data structure at least:

  • an RTT (round trip time) value or a set of such values, measured in ms
  • more IP addresses, together with perhaps
    • protocol used (TCP/IP, UDP)
    • NAT information, if applicable
    • whether the address is local and so reachable by broadcast

Adding an RTT or set of RTTs to the Contact data structure would enable better decisions to be made when selecting which to use.

The round trip time (RTT) to the contact could be as measured using a PING RPC or using a conventional Internet network ping.

@whyrusleeping whyrusleeping added the status/deferred Conscious decision to pause or backlog label Oct 17, 2017
@bigs
Copy link
Contributor

bigs commented Sep 11, 2018

we use TCP connections which makes this unnecessary in our current implementation[

@bigs bigs closed this as completed Sep 11, 2018
@ghost ghost removed the status/deferred Conscious decision to pause or backlog label Sep 11, 2018
@anacrolix
Copy link
Contributor

Is PING mentioned in the spec?

@Stebalien
Copy link
Member

The kademlia spec? Yes.

@anacrolix
Copy link
Contributor

No, our spec.

@Stebalien
Copy link
Member

libp2p/specs#108?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants