Expand description
libp2p is a modular peer-to-peer networking framework.
To learn more about the general libp2p multi-language framework visit https://libp2p.io.
To get started with this libp2p implementation in Rust, please take a look
at the tutorials
. Further examples can be found in the
examples directory.
Re-exports
pub use bytes;
pub use futures;
pub use libp2p_identity as identity;
Modules
- A libp2p module for managing allow and blocks lists to peers.
- Transports, upgrades, multiplexing and node handling of libp2p.
- Implementation of the libp2p Direct Connection Upgrade through Relay specification.
- Implementation of the Gossipsub protocol.
- Implementation of the Identify protocol.
- Implementation of multiaddr in Rust.
- Bare-minimum multihash data structure.
- Noise protocol framework support for libp2p.
- This module implements the
/ipfs/ping/1.0.0
protocol. - Implementation of libp2p circuit relay protocol.
- Implementation of the Rendezvous protocol.
- High-level network manager.
- Implementation of the libp2p
libp2p_core::Transport
trait for TCP/IP. - Rust-libp2p Tutorials to get started with.
- Implementation of the Yamux multiplexing protocol for libp2p.
Macros
- Easy way for a user to create a
Multiaddr
.
Structs
- Representation of a Multiaddr.
- Identifier of a peer of the network.
- Identifies a protocol for a stream.
- Contains the state of the network, plus the way it should behave.
Enums
Traits
- Possible upgrade on an inbound connection or substream.
- Possible upgrade on an outbound connection or substream.
- A transport provides connection-oriented communication between two peers through ordered streams of data (i.e. connections).
- Trait automatically implemented on all objects that implement
Transport
. Provides some additional utilities.