9 个版本 (破坏性更新)
新 0.23.0 | 2024 年 8 月 20 日 |
---|---|
0.22.0 | 2024 年 8 月 5 日 |
0.21.0 | 2024 年 7 月 22 日 |
0.20.0 | 2024 年 7 月 9 日 |
0.16.2 | 2024 年 5 月 13 日 |
#200 in 算法
2,812 每月下载量
用于 5 个 crate(3 个直接使用)
2MB
41K SLoC
iroh-blobs
该 crate 为 iroh 提供blob和集合传输支持。它实现了一个基于blake3验证流式传输的简单请求-响应协议。
请求以blake3哈希和字节范围来描述数据。可以请求blob或blob的范围,以及集合。
请求者向提供者打开quic流并发送请求。提供者通过相同的quic流以blake3验证流的形式回答所需的数据。
该 crate 通常与 iroh-net 一起使用,但也可用于正常的 quinn 连接。连接建立留给用户或更高级的API,如iroh CLI。
概念
-
blob:任意大小的字节序列,没有任何元数据。
-
链接:blob的32字节blake3哈希。
-
集合:包含链接的任何blob。最简单的集合只是一个32字节blake3哈希数组。
-
提供者:提供数据并回答请求的一方。提供者等待来自请求者的请求。
-
请求者:请求数据的一方。它是向一个或多个提供者发起请求。
示例
使用 iroh-blobs
的示例可以在 iroh
crate 中找到。iroh crate 将 iroh_blobs
发布为 iroh::bytes
。
许可
该项目受以下任一许可的许可:
- Apache License,版本 2.0,(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选。
贡献
除非您明确说明,否则根据Apache-2.0许可定义,您有意提交供本项目包含的任何贡献,均应双重许可,且没有任何额外条款或条件。
依赖项
~44-80MB
~1.5M SLoC