USB Sniffer 2 极速性能演示
一、准备
下载测试包 百度网盘 或 Github Release
Windows主机,Linux及MacOS未测试
一个高性能U盘或者高性能TF卡配读卡器,后文统称
U盘,读取性能要达到USB2.0峰值40MB/S将
USB_MSC_FILE文件夹拷贝至U盘中,然后安全弹出准备好
USB Sniffer 2及线材
二、抓包
将
USB Sniffer 2通过USB3.0线材接3.0母口将
USB Sniffer 2的C口接2.0母口【重要】特别说明,当前WireShark显示层无法满足极速抓包性能需求,不要试图通过GUI工具进行此项测试
打开
PowerShell,执行:& "$env:USERPROFILE\AppData\Roaming\Wireshark\extcap\capture_usb_vllogic.exe" --capture --fifo "$env:USERPROFILE\Desktop\msc_extreme.pcapng" --speed auto --fold把
U盘接上USB Sniffer 2的母口主机中出现新磁盘,将磁盘中的
USB_MSC_FILE文件夹拷贝出来,然后安全弹出移除
U盘回到
PowerShell,Ctrl + C结束捕获。桌面上出现一个
msc_extreme.pcapng文件,就是针对这次MSC峰值读取所捕获的数据文件
三、分析方法
我已将
msc_extreme.pcapng移动到USBHS_MSC_Extreme_Test,方便AI分析使用Agent打开
USBHS_MSC_Extreme_Test文件夹,AI模型选择DeepSeek V4.1 Flash High官方API,使用如下提示词:这是USB Sniffer 2 极速性能演示,做以下评估: 1. 是否存在丢包或CRC错误 2. MSC数据是否完整 3. 抓包数据是否能与`USB_MSC_FILE`文件夹中的数据对应
四、分析结果(独立评估前,可将此部分删除,防止诱导AI)
分析完成。结论如下。
1. 丢包 / CRC 错误:无
检查项 |
数量 |
|---|---|
CRC5 错误 |
0 |
CRC16 错误 |
0 |
Split CRC5 错误 |
0 |
非法 PID / PID 序列错误 |
0 |
重组错误/重叠/超长分片 |
0 |
带外信息通道中的 drop/overflow/lost 告警 |
0 |
唯一 1 个
Malformed:帧 332,枚举阶段一个 STRING 描述符响应只回了 2 字节(04 03,bLength 却为 4),CRC 正确,属设备返回的短描述符,非总线错误。5 个
short(帧 471/489/584/991/1007)为INQUIRY allocation_length too small,主机主动限制长度,Note 级,正常。带外通道只有
Folded N empty frames(空帧折叠,正常),无任何丢包告警。
2. MSC 数据完整性:完整
CBW 2732 个 ↔ CSW 2732 个,一一对应;CSW status 全部 = 0 (Good),residue 全部 = 0。
READ(10) 共 2530 条:每条
捕获长度 == dCBWDataTransferLength,请求块数 321,905 == 实际捕获块数 321,905(164.8 MB),零缺失。无重复冲突(same 29 / conflict 0)。
3. 与 USB_MSC_FILE 对应:逐字节一致
文件在 U 盘上位于连续区间:磁盘偏移
62,412,800(LBA 121,900),共 2048 条 64 KiB READ,恰好顺序读一遍。利用文件自身的分页图案头(
0x5AA55AA5 | 页内偏移 | ~偏移 | 0xA5A55A5A)自校验定位:32,768 / 32,768 页头全部捕获。重建 128 MiB:262,144 / 262,144 个 512B 块全部匹配,0 错误;
重建 SHA256
26d97d2c…b17stress_pat.binSHA25626d97d2c…b17→ 完全一致。
附:性能
128 MiB 文件读取耗时 3.042 s ≈ 44.1 MB/s(超过 USB2.0 峰值 40 MB/s)。
整包 1,015,713 帧 / 23.644 s ≈ 42,958 帧/s,全程零 CRC 错误、零丢包。
三个问题结论均为正常:无丢包与 CRC 错误、MSC 数据完整、抓包内容与 USB_MSC_FILE 完全对应。