1 个不稳定版本

0.1.0 2024年6月3日

#1510网络编程

MIT/Apache

140KB
2.5K SLoC

PluginOp: 可插拔操作

Test Benchmark Test coverage

总有一天,我们会让互联网再次伟大。在此之前,我们努力解决工程问题。

PluginOp是一个Crate,旨在使(Rust)网络实现无缝可插拔。该项目由几个子Crate组成

  • pluginop-common:包含所有由插件和宿主实现共享的公共结构(标准化API的一部分)
  • pluginop:该项目的主体Crate,由宿主实现用于可插拔
  • pluginop-macro:包含宿主实现用于通过一行代码插件化其函数的宏
  • pluginop-mock:用于测试和基准测试整个项目的模拟宿主实现
  • pluginop-octets:quiche的octets crate的分支,支持原始指针转换
  • pluginop-rawptr:原始指针的抽象
  • pluginop-wasm:为插件提供API的Crate

测试文件夹包含用于测试和基准测试的插件。

支持的Core实现

  • core-quic:基于quiche,主要核心实现
  • core-quinn:基于quinn,主要集成在quinn-proto crate中。尚未完全支持,但简单的基于帧的插件可以工作。

现有插件

QUIC特定插件可在core-quic-plugins仓库中找到。

依赖

~18–30MB
~542K SLoC