44 breaking releases
0.45.0 | Aug 9, 2024 |
---|---|
0.44.1 | May 1, 2024 |
0.44.0 | Nov 5, 2023 |
0.43.0 | Jun 20, 2023 |
0.6.0 | Mar 29, 2019 |
#2126 in Network programming
229,195 downloads per month
Used in 200 crates
(9 directly)
760KB
15K
SLoC
This module implements the /ipfs/ping/1.0.0
protocol.
The ping protocol can be used as a simple application-layer health check
for connections of any Transport
as well as to measure and record
round-trip times.
Usage
The Behaviour
struct implements the NetworkBehaviour
trait.
It will respond to inbound ping requests and periodically send outbound ping requests on every established connection.
It is up to the user to implement a health-check / connection management policy based on the ping protocol.
For example:
- Disconnect from peers with an RTT > 200ms
- Disconnect from peers which don't support the ping protocol
- Disconnect from peers upon the first ping failure
Users should inspect emitted Event
s and call APIs on Swarm
:
Swarm::close_connection
to close a specific connectionSwarm::disconnect_peer_id
to close all connections to a peer
Dependencies
~8–15MB
~180K SLoC