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 算法

Download history 365/week @ 2024-05-08 117/week @ 2024-05-15 398/week @ 2024-05-22 189/week @ 2024-05-29 443/week @ 2024-06-05 320/week @ 2024-06-12 110/week @ 2024-06-19 315/week @ 2024-06-26 568/week @ 2024-07-03 357/week @ 2024-07-10 505/week @ 2024-07-17 248/week @ 2024-07-24 406/week @ 2024-07-31 1043/week @ 2024-08-07 1019/week @ 2024-08-14

2,812 每月下载量
用于 5 个 crate(3 个直接使用)

MIT/Apache

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-2.0许可定义,您有意提交供本项目包含的任何贡献,均应双重许可,且没有任何额外条款或条件。

依赖项

~44-80MB
~1.5M SLoC