Skip to content

功能特性 ​

NetAssistant 是一个基于 Rust 构建的高性能、现代化的跨平台网络调试工具,专为开发者设计,支持 Windows、Linux 和 macOS 系统,x64 与 ARM64 均有原生构建。

核心功能 ​

  • 多协议支持:完整支持 TCP/UDP 客户端和服务端模式
  • IPv4/IPv6 双栈:同时支持 IPv4 和 IPv6 协议,适应各种网络环境
  • 多种 TCP 解码器:支持原始数据、基于行的解码、长度前缀解码和 JSON 解码,满足不同协议格式需求,有效解决 TCP 粘包问题
  • JSON 格式化:发送框在文本模式提供「美化/压缩」按钮格式化待发送内容;接收区顶部可切换「原始/美化/压缩」全局显示格式,非 JSON 内容原样返回
  • 聊天式报文记录:直观展示报文交互过程,便于调试和分析
  • 配置持久化:自动保存连接配置,下次启动直接使用
  • 文件数据源:从本地文件读取内容作为报文填入发送框,支持 UTF-8 / GBK / ANSI 编码选择与内容预览,文件大小以可读格式显示,上限 1 MiB
  • ASCII ↔ Hex 双向互转:文本/十六进制模式切换时按 UTF-8 整体互转,右键菜单可「转换为 Hex / 转换为文本」并在结果窗口中复制;不可打印字节以 \xNN 转义,往返转换字节级一致

TCP 解码器截图

文件数据源截图

ASCII 与 Hex 互转截图

消息管理功能 ​

  • 复制消息:快速复制单条消息内容到剪贴板,支持文本和十六进制两种格式
  • 收藏消息:将重要消息添加到收藏夹,支持为收藏项添加备注说明,并提供关键字搜索
  • 实时日志记录:手动开启后所有收发消息实时异步写入日志文件(每条 flush 落盘),支持自定义保存路径,断开连接自动刷新关闭
  • 随时手动导出:可随时导出当前消息记录为 TXT/JSON/CSV 格式文件,便于归档、分享和二次分析
  • UDP 广播回复智能展示:针对上位机/物联网设备发现场景优化,向广播地址发送指令后接收所有设备回复,非预期地址的回复用红色高亮标识,不丢失重要响应
  • 连接配置编辑:已保存的连接配置支持直接编辑修改,无需删除重建
  • 消息搜索:Ctrl+F 或点击工具栏放大镜唤起非模态搜索浮层,实时显示命中计数 i/n,Enter / Shift+Enter 或上/下按钮环形跳转,命中项整行高亮并滚动到视口
  • 消息条数上限:可配置「保留最后 N 条」(默认 10000,0 表示不限制),超出后自动淘汰最早的消息以控制内存占用;与自动滚动联动,关闭自动滚动时不淘汰消息

收藏消息截图

消息搜索截图

自动化测试功能 ​

  • 回复规则:按连接的规则引擎,用字节级条件(包含字节、定长精确/掩码匹配、前缀+长度区间、偏移字节/整数、帧尾、正则、来源地址、校验值验算等,可「全部/任一/取反」任意嵌套)匹配收到的报文并自动应答;应答支持接收帧变量与动态变量,可单独设置编码方式;规则按连接隔离,支持启用/停用、拖拽排序、触发统计与编辑内联试跑
  • 消息变量:发送框、定时任务与回复规则统一支持 ${seq}、时间、${uuid}、${random:min:max} 等通用变量,以及 ${rx.*} 接收帧变量、发送时生成的校验值与 ${= 表达式 }
  • 发送任务与定时任务:导入文件或粘贴多行后可逐行发送(可设间隔、循环与轮次);每个连接可添加定时任务按固定间隔循环发送心跳,两者均可在任务面板查看进度、暂停/继续/停止
  • 周期发送功能:按设定间隔重复发送当前输入框内容,用于长时间稳定性测试或模拟设备心跳
  • 压力测试功能:内置 TCP/UDP 高并发压力测试引擎,详见压力测试指南

现代化界面 ​

  • 暗黑模式支持:自动适应系统主题,提供舒适的夜间使用体验
  • 多标签页管理:同时管理多个连接,方便切换和对比
  • 客户端消息查看:在服务端模式下,可选择特定客户端查看其消息
  • UDP 手动添加客户端:在 UDP 服务端模式下,可手动添加客户端地址,便于主动向指定地址发送数据
  • 键盘快捷键:Ctrl+Enter 发送、Ctrl+Tab / Ctrl+1..9 / Ctrl+W 管理标签页、Ctrl+F 搜索消息、Ctrl+N 新建连接、Ctrl+K 聚焦消息输入框,任何焦点状态下均生效

UDP 手动添加客户端截图

技术亮点 ​

⚡ 极速性能 ​

  • Rust 驱动:零成本抽象、内存安全、无垃圾回收
  • Tokio 异步运行时:基于 epoll/kqueue 的高性能事件循环,支持百万级并发连接

🎨 现代化界面 ​

  • GPUI 框架:GPU 加速渲染与文本渲染,流畅 60fps 体验
  • 自适应主题:自动适应系统亮色/暗色模式
  • 响应式设计:适应不同屏幕尺寸的自适应布局

🔧 架构设计 ​

  • 压测引擎独立成层:零 GPUI 依赖的纯逻辑设计,便于复用与测试;基于令牌桶的速率限制,精准控制发送频率
  • 核心逻辑与 UI 解耦:消息处理器独立于界面层,网络协议层与界面层清晰分离

性能指标 ​

开发过程中使用内置压测功能对 NetAssistant 自身进行了高并发测试,借此发现并优化了多个性能瓶颈(消息批量更新、批量日志写入等):

指标表现
启动时间< 100ms
内存占用< 20MB
UI 响应60fps 渲染

使用场景 ​

  • 开发者通信验证:后端开发者对接硬件前模拟硬件发送数据;测试客户端与服务端之间的通信逻辑和数据格式,验证服务端的正确性和鲁棒性
  • 硬件设备测试:硬件工程师测试传感器、控制器等设备;嵌入式开发者验证资源受限系统的网络协议栈实现与传输效率
  • 服务性能压测:对自研服务端进行并发吞吐、延迟分布和稳定性评估,快速定位性能瓶颈

最后更新于:

基于 Apache-2.0 许可证发布