Omni-Probe开源发布,Rust+Tauri2.0重构工业网络分析仪,单exe仅31MB
一款名为 Omni-Probe 的开源多总线网络深度分析工具正式发布,采用 Rust 异步引擎与 Tauri 2.0 构建,显著降低资源占用并统一以太网、CAN、Modbus 等异构总线分析能力。实测...
一款面向工业与嵌入式开发者的新型网络分析工具 Omni-Probe 近日正式开源,其核心目标是解决传统工具链在性能、体积与生态割裂上的长期痛点。该项目摒弃了 Electron 和老旧 Qt 架构,转而采用 Rust 编写底层抓包与协议解析引擎,并通过 Tauri 2.0 实现轻量级跨平台桌面容器,前端则基于 Vue 3.5 与 TypeScript 构建现代化界面。
在工程实践中,开发者常需同时处理以太网流量、串口通信、现场总线(如 CAN、Modbus)及硬件逻辑信号。过去,这类任务依赖多个互不兼容的工具:Wireshark 负责 TCP/IP 层抓包,专用串口助手调试 UART,厂商闭源软件分析工业总线,逻辑分析仪则用于时序波形观测。这种“工具孤岛”极大拖慢软硬件联调效率。Omni-Probe 将上述功能整合至单一应用中,支持网卡(NIC)、COM 串口、USB 专有设备、无线 Wi-Fi/BLE 等多种物理接口接入,并内置对 Modbus RTU/TCP、CAN 2.0B、VCD 波形等协议的原生解析能力。
性能层面的改进尤为突出。项目团队在 Windows 11 x64(12代 i7 / 32GB RAM)平台上进行了横向对比测试:典型 Electron 抓包工具安装包约 140–220MB,空载常驻内存达 320–550MB;Wireshark 安装包约 75MB,常驻内存约 95MB;而 Omni-Probe 的 NSIS 安装包仅 8.59MB,独立便携版为 31.7MB 单个可执行文件,冷启动后内存占用稳定在 32–48MB 区间,较 Electron 方案降低超 85%。
更关键的是其对大型数据包的处理能力。当加载一个 5GB 的 PCAP 文件时,Wireshark 因全量反序列化导致内存膨胀至 8GB 以上并卡死;Electron 工具普遍直接 OOM 崩溃;Omni-Probe 则采用稀疏索引与按需解码策略,内存恒定维持在约 640KB,支持 O(1) 时间复杂度的视窗检索——即无论数据包多大,滚动查看任意位置的报文几乎无延迟。
该架构设计严格遵循前后端分离与线程隔离原则。前端由 Vue 3.5 + Vite + Tailwind CSS 构成,包含四大功能模块:运行监控看板、流量分析看板(含虚拟滚动与协议树展开)、现场总线与硬件逻辑分析区、以及等保/涉密取证工作台。后端为纯 Rust 编写的工业级核心引擎,涵盖网络捕获、协议解剖、时间戳校准、过滤规则编译等模块,已通过 467 项单元测试闭环验证。
前后端之间通过 Tauri 2.0 提供的 Zero-Copy IPC 通道通信,避免数据拷贝开销。命令调度采用异步非阻塞模型,确保高吞吐抓包场景下 UI 仍保持响应。例如,在持续 10Gbps 流量注入测试中,Omni-Probe 可稳定捕获并实时渲染每秒数万帧报文,而传统工具往往因主线程阻塞出现丢包或界面冻结。
从技术演进角度看,Omni-Probe 的出现反映了桌面工具开发范式的迁移趋势。早期桌面应用多基于 C++/Qt 或 MFC,虽性能优异但开发效率低、跨平台困难;Web 技术兴起后,Electron 成为主流选择,却因 Chromium 嵌入带来严重资源冗余;近年来,Tauri、Flutter Desktop、Avalonia 等新兴框架试图平衡性能与开发体验,其中 Tauri 凭借系统原生 WebView 与 Rust 后端组合,在轻量化与安全性上展现出独特优势。
值得注意的是,该项目并非仅面向“高级用户”。其界面设计强调工程实用性:左侧导航栏按功能分组清晰,主区域支持多标签页并行分析不同总线;协议字段支持一键复制、正则过滤与自定义着色;针对工控场景,还内置了 Modbus 寄存器映射表导入、CAN ID 分组归类、逻辑电平跳变标记等功能。对于安全合规需求,Omni-Probe 提供符合等保 2.0 要求的审计日志导出、操作留痕与敏感字段脱敏选项。
开源地址已公开于 GitHub(github.com/daybydaymyl…),当前版本为 v0.3.7,提供 Windows 便携版直链下载。项目采用 MIT 许可证,鼓励社区贡献协议解析器、硬件驱动适配与插件扩展。开发团队表示,后续将推进 Linux/macOS 原生支持,并计划集成 AI 辅助异常检测模块——例如自动识别重复错误帧、突发流量突变点或协议违例模式,但该功能尚未上线,属路线图规划内容。
在工业数字化加速落地的背景下,网络可观测性工具正从“辅助排障”转向“系统级质量保障”的核心角色。Omni-Probe 的价值不仅在于技术实现的精简高效,更在于它尝试弥合软件层与物理层之间的认知鸿沟——让工程师无需切换窗口、无需记忆多套快捷键,即可在同一界面完成从物理信号采集到应用层协议解析的全链路追踪。这种统一视角,对嵌入式系统集成、边缘计算部署与工业互联网平台建设具有实际推动意义。
目前,该工具已在部分智能电网终端联调、AGV 控制系统诊断及国产 PLC 兼容性测试中投入试用。随着社区反馈积累,其协议覆盖范围与稳定性有望进一步提升。
