54 releases (breaking)

0.42.1 Mar 12, 2023
0.41.1 Dec 17, 2022
0.41.0 Nov 25, 2022
0.37.0 Jul 5, 2022
0.6.0 Mar 29, 2019

#1916 in Network programming

Download history 27038/week @ 2022-11-28 26132/week @ 2022-12-05 26480/week @ 2022-12-12 23501/week @ 2022-12-19 14503/week @ 2022-12-26 21960/week @ 2023-01-02 26719/week @ 2023-01-09 28178/week @ 2023-01-16 26987/week @ 2023-01-23 25285/week @ 2023-01-30 23805/week @ 2023-02-06 25062/week @ 2023-02-13 24413/week @ 2023-02-20 24399/week @ 2023-02-27 26167/week @ 2023-03-06 24602/week @ 2023-03-13

101,960 downloads per month
Used in 81 crates (4 directly)

MIT license

1MB
16K SLoC

Implementation of the Identify protocol.

This implementation of the protocol periodically exchanges [Info] messages between the peers on an established connection.

At least one identification request is sent on a newly established connection, beyond which the behaviour does not keep connections alive.

Important Discrepancies

  • Using Identify with other protocols Unlike some other libp2p implementations, rust-libp2p does not treat Identify as a core protocol. This means that other protocols cannot rely upon the existence of Identify, and need to be manually hooked up to Identify in order to make use of its capabilities.

Usage

The [Behaviour] struct implements a NetworkBehaviour that negotiates and executes the protocol on every established connection, emitting [Event]s.

Dependencies

~8–13MB
~273K SLoC