这个项目能做什么
Mohawk Nexus 是 Mohawk 网络栈的根集成工作区。它将多个组件聚合到一个仓库中,以便一起构建、验证和测试。
工作区布局
- SMIP-MWP:Go 控制平面,涵盖 AF_XDP 主机集成、路由、加密绑定和桥接请求接入。
- SMIP-MWP-Rust:Rust 数据平面,包含转发流水线、高性能数据平面和 CLI 工具。
- Sovereign-Mohawk-Proto:协议定义、模式演进和形式化验证资产。
- bridge:根验证所使用的规范桥接模式、清单和请求示例。
- scripts:工作区级别的生成、验证和测试辅助脚本。
- go.work 将各 Go 模块连接在一起。
要求与设置
Go(固定为 1.26.1 以实现可复现构建;大多数本地工作流预计 1.22+ 即可运行)、Python 3.8+、用于容器化性能/压力运行的 Docker,以及仅在本地运行 Rust 数据平面测试时才需要的 Rust 工具链。devcontainer 配置为 Codespaces/Dev Containers 固定了 Go 版本,并提供了无需 sudo 的本地 Go 安装说明。
设备兼容性
一个矩阵描述了受支持的配置:具有支持 AF_XDP 网卡的 Linux x86_64 服务器(加速)、Linux arm64 服务器/边缘节点、Raspberry Pi/ARM SBC、macOS 和 Windows 开发机,以及无特权 Pod 的托管 Kubernetes(可移植)。加速 AF_XDP 数据平面仅限 Linux;可移植工作流涵盖控制、FL 和 SWIP 服务以及桥接验证。运行时配置分为可移植、加速和实验性。
用法
常见的 Make 目标包括 bootstrap、status、verify、generate-bridge、validate-bridge、verify-go、bridge-smoke 和 verify-rust。本地 FL 快速入门通过 docker-compose 构建并运行一个协调器和两个客户端。性能和压力测试工具通过 scripts/bench.sh 和压力测试 Dockerfile 运行,并将基准测试输出和 pprof 产物写入 SMIP-MWP/benchmarks/ 下。
能力
- 高性能数据平面:Rust 转发器加上 AF_XDP 集成,实现低延迟数据包处理。
- 可插拔加密:对称和非对称原语,支持原地加密/解密以减少分配。
- 桥接契约验证:规范模式和清单,带有根目录所有的验证器,以及示例负载的可复现 SHA256 校验。
- 集成测试工具,产生可复现的产物和 pprof 性能剖析。
- 适合 CI 的验证:make verify 运行根级别验证,不依赖未发布的子仓库 SHA。
- 通过 Dockerfile 和脚本进行容器化性能运行。
README 还报告了在 AMD EPYC 硬件上的内部微基准测试数据(转发、多路径喷射、加密、会话/路由、AF_XDP),并附带说明:结果取决于 CPU、内核、网卡和内核旁路配置。它指出,该项目优先考虑安全性、形式化方法、多路径喷射和主权特性,而非原始最大数据包速率。
桥接契约工具包括用于重新生成规范产物、重新生成 Go/Rust/Python/TypeScript 的 SDK 桥接常量,以及验证清单和哈希的脚本;bridge/bridge_contract.version.json 跟踪模式和清单版本。CI 从仓库根目录运行 make verify。该工作区采用多许可证,因为它聚合了具有不同上游许可证的组件,相关说明记录在 LICENSE 和 LICENSES.md 中。
评论
0 人表达喜爱 · 满10人后显示 Deer Point
登录后参与讨论。