chimera_server 库

用途与范围

chimera_server 是共享的 Rust crate,为客户端和服务端项目提供协议原语、配置模式、密码套件以及通用工具。通过集中这些能力,生态系统避免重复逻辑,确保协议合规,并让安全修复在各二进制中保持一致。

关键模块

  • 配置模型:用于 Clash 清单、Chimera 清单以及共享策略片段的强类型结构与基于 serde 的序列化。
  • 加密与握手工具:AEAD 加密算法、密钥派生、证书固定辅助、TLS 指纹模板以及 QUIC 传输参数。
  • 传输抽象:用于流/会话生命周期的 trait 接口、多路复用接口、缓冲区管理以及异步运行时适配器。
  • 事件总线:轻量的发布/订阅机制,使上层能够接入连接生命周期事件、指标和告警。

API 接口与可扩展性

该 crate 提供稳定的 Rust API,并可选提供 C FFI 绑定以供其他语言使用。扩展点允许第三方注册自定义密码套件、添加路由注解或挂接遥测输出。版本管理遵循 semver,发生破坏性变更时提供清晰的迁移指南,确保 clash-rsChimera 能平滑跟进升级。

测试与质量

chimera_server 维护覆盖解析器、密码原语和传输行为的详尽单元测试。集成测试会启动内存中的客户端/服务端对以验证互操作性。基准测试在代表性硬件上测量握手延迟、吞吐量和内存占用,为回归检测提供基线。