41个重大版本更新

0.42.0 2024年8月9日
0.41.0 2023年11月5日
0.40.0 2023年6月20日
0.39.0 2023年2月24日
0.6.0 2019年3月29日

#449 in 网络编程

Download history 11859/week @ 2024-04-25 10259/week @ 2024-05-02 11290/week @ 2024-05-09 9392/week @ 2024-05-16 11464/week @ 2024-05-23 11376/week @ 2024-05-30 11803/week @ 2024-06-06 11787/week @ 2024-06-13 9706/week @ 2024-06-20 8640/week @ 2024-06-27 6477/week @ 2024-07-04 9863/week @ 2024-07-11 11661/week @ 2024-07-18 10338/week @ 2024-07-25 8672/week @ 2024-08-01 11939/week @ 2024-08-08

44,080 个月下载量
63 个Crate(7个直接) 中使用

MIT 协议

400KB
7.5K SLoC

libp2p工作的中心仓库

dependency status Crates.io docs.rs docs.rs master

该仓库是Rust开发libp2p规范的中心位置。

入门指南

仓库结构

该仓库的主要组件结构如下

  • core/:实现了 libp2p-core,包括其 TransportStreamMuxer API,几乎所有其他 crate 都依赖于这些 API。

  • transports/:基于 libp2p-coreTransport API 实现传输协议(例如 TCP)和协议升级(例如认证加密、压缩等)。

  • muxers/:实现了 libp2p-coreStreamMuxer 接口,例如在(通常是 TCP)连接之上实现的(子)流多路复用协议。多路复用协议是(强制性的)Transport 升级。

  • swarm/:基于 libp2p-corelibp2p-swarm 实现,使用中心接口 NetworkBehaviourConnectionHandler 来实现应用协议(参见 protocols/)。

  • protocols/:基于 libp2p-swarm API 实现的应用协议。

  • misc/:实用库。

  • libp2p/examples/:内置应用协议(参见 protocols/)的工作示例,以及常见的 Transport 配置。

社区指南

libp2p 项目遵循 IPFS 行为准则

tl;dr

  • 请保持尊重。
  • 我们在这里提供帮助: [email protected]
  • 我们绝不容忍滥用行为。
  • 违反此准则可能会导致迅速且永久地被排除在 IPFS [和 libp2p] 社区之外。
  • "太长,没看" 不能作为不知道本文件内容的借口。

维护者

(按字母顺序排列。)

知名用户

(如果您想将项目添加到此,请打开一个 pull request)

  • COMIT - Bitcoin–Monero 跨链原子交换。
  • Forest - 使用 Rust 编写的 Filecoin 实现。
  • fuel-core - Fuel 协议的 Rust 实现。
  • HotShot - 由 Espresso Systems 开发的 Rust 语言编写的去中心化 sequencer。
  • ipfs-embed - 由 Actyx 使用和维护的小型可嵌入的 ipfs 实现。
  • Homestar - 由 Fission 使用和维护的星际虚拟机 (IPVM) 实现。
  • beetle - 针对 Cloud & Mobile 平台的下一代 IPFS 实现。
  • Lighthouse - Rust 编写的 Ethereum 共识客户端。
  • Locutus - 全球、可观察、去中心化的键值存储。
  • OpenMina - 在浏览器中运行的 Mina Rust 实现。
  • rust-ipfs - Rust 编写的 IPFS 实现。
  • Safe Network - 使用 Rust 编写的 Safe Network 实现。
  • Starcoin - 通过分层扩展的智能合约区块链网络。
  • Subspace - Subspace 网络参考实现
  • Substrate - 区块链创新框架,由 Polkadot 使用。
  • Taple - 由 OpenCanarias 提供的可持续 DLT,用于资产和过程可追溯性。
  • Ceylon - 多代理系统(MAS)开发框架。

lib.rs:

流多路复用器 Mplex 协议的实现。

依赖项

~6–14MB
~184K SLoC