21个版本 (7个重大更新)
0.8.3 | 2023年11月3日 |
---|---|
0.8.1 | 2023年2月13日 |
0.2.0 | 2022年12月14日 |
#1325 in 异步
每月184次下载
在aggligator-util中使用
245KB
4.5K SLoC
聚合器 — 您友好的链接聚合器
聚合器将多个链接聚合为一个连接。
聚合器将两个端点之间的多个网络链接(例如TCP连接)合并为一个连接,该连接具有所有链接的总带宽。此外,它提供对单个链接故障的容错性,并允许动态添加和删除链接。
它具有与多路径TCP和SCTP相同的作用,但通过现有的、广泛采用的协议(如TCP、HTTPS、TLS、USB和WebSockets)工作,并且完全在用户空间实现,无需操作系统支持。
聚合器是用100%安全的Rust编写的,并基于Tokio异步运行时。
crate功能
以下可选crate功能可用:
dump
— 允许将分析数据保存到磁盘,主要用于调试连接性能问题;还启用了某些数据类型的Serde支持。
使用TCP链接、TLS加密和示例
在aggligator-util crate中提供了用于处理基于TCP的链接、使用TLS进行加密和身份验证的有用函数、可视化链接监控器以及一个完全解决的问题示例。
演示
两台机器通过以太网和Wi-Fi连接。
机器A,被称为 dino
,作为速度测试服务器,有两个接口:enp8s0
(千兆以太网,IP地址以::b01
结尾)和wlp6s0
(Wi-Fi,IP地址以::83e
结尾)。两个IP地址都已注册到DNS服务器。
机器B,作为速度测试客户端,有四个接口:enp0s25
(千兆以太网),enxf8eXXXXdd
(通过USB的千兆以太网),enxf8eXXXXc5
(通过USB的千兆以太网)和wlp3s0
(Wi-Fi)。
在机器B上运行来自aggligator-util包的agg-speed
工具显示以下内容。
Aggligator在机器之间创建了8个连接,每个连接对应机器A和机器B接口的一对。双向连接速度约为100 MB/s,这是全双工千兆以太网链路所预期的。
拔掉以太网电缆或禁用Wi-Fi会导致流量在剩余链路上重新分配,但不会影响连接。如果再次插入以太网电缆或重新启用Wi-Fi,连接将自动重新建立。
最低支持的Rust版本
最低支持的Rust版本(MSRV)是1.65。
许可
Aggligator在Apache 2.0许可下授权。
贡献
除非你明确表示,否则你提交的任何有意包含在Aggligator中的贡献,将按照Apache 2.0许可,不附加任何额外条款或条件。
依赖项
~5.5–8MB
~145K SLoC