40次重大发布
0.41.0 | 2024年8月9日 |
---|---|
0.40.0 | 2023年11月5日 |
0.39.0 | 2023年6月20日 |
0.38.0 | 2023年2月24日 |
0.6.0 | 2019年3月29日 |
2232 在 网络编程
22,216 每月下载量
用于 6 个包(直接使用2个)
225KB
4K SLoC
libp2p工作的中心仓库
此仓库是libp2p规范Rust开发的中心位置。
入门
-
主要文档 可以在 https://docs.rs/libp2p 上找到。
-
示例 文件夹包含展示此仓库中许多协议的小二进制程序。
-
对于 安全问题 ,请 提交一个私人安全漏洞报告 。请勿在GitHub上提交公共问题。
-
要 报告错误、建议改进或请求新功能 ,请在此仓库中打开GitHub问题。
-
对于 rust-libp2p特定问题 ,请使用GitHub 讨论 论坛 https://github.com/libp2p/rust-libp2p/discussions。
-
对于 与多个libp2p实现相关的讨论和问题 ,请使用libp2p 讨论 论坛 https://discuss.libp2p.io。
-
要加入同步讨论,请加入 公开的rust-libp2p维护者会议 或 每周两次的libp2p社区会议。
仓库结构
此仓库的主要组件结构如下
-
core/
:包含libp2p-core
的实现及其Transport
和StreamMuxer
API,几乎所有其他crate都依赖于这些。 -
transports/
:基于libp2p-core
Transport
API实现的传输协议(例如TCP)和协议升级(例如认证加密、压缩等)。 -
muxers/
:实现libp2p-core
的StreamMuxer
接口,例如在(通常为TCP)连接上实现(子)流多路复用协议。多路复用协议是(强制)的Transport
升级。 -
swarm/
:基于libp2p-core
实现libp2p-swarm
,使用核心接口NetworkBehaviour
和ConnectionHandler
来实现应用协议(参见protocols/
)。 -
protocols/
:基于libp2p-swarm
API实现的应用协议。 -
misc/
:实用库。 -
libp2p/examples/
:内置应用协议(参见protocols/
)的示例,具有常见的Transport
配置。
社区指南
libp2p项目遵循IPFS行为准则。
tl;dr
- 尊重他人。
- 我们在此提供帮助:[email protected]
- 我们不容忍任何滥用行为。
- 违反此准则可能导致迅速且永久地从IPFS[和libp2p]社区中除名。
- "太长,没读"不能作为不了解此文档内容的借口。
维护者
(按字母顺序排列。)
- Guillaume Michel (@guillaumemichel)
- João Oliveira (@jxs)
知名用户
(如果您想将项目添加到此处,请打开一个拉取请求)
- COMIT - Bitcoin–Monero跨链原子交换。
- Forest - 使用Rust编写的Filecoin实现。
- fuel-core - Fuel协议的Rust实现。
- HotShot - 由Espresso Systems开发的Rust编写的去中心化序列器。
- ipfs-embed - 由Actyx使用和维护的小型可嵌入ipfs实现。
- Homestar - Fission使用和维护的InterPlanetary Virtual Machine (IPVM)实现。
- beetle - 针对云和移动平台的新一代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
:
Unix域套接字的libp2p Transport
特性的实现。
平台支持
此传输仅在Unix平台上工作。
使用方法
UdsConfig
传输支持以下形式的多个地址:/unix//tmp/foo
。
UdsConfig
结构体实现了core
库中的Transport
特性。请参阅core
和libp2p的一般文档,了解如何使用Transport
特性。
依赖关系
~7–20MB
~313K SLoC