USB Packet Viewer 网络服务端模式
USB Packet Viewer 可以工作在服务端模式,在此模式下可以通过 TCP 或 UDP 连接进行抓包操作。 所有命令行参数大小写不敏感,参数支持 IPv6。
服务端通讯示例代码地址: http://pv-server.tusb.org
5.1 启动方式
启动时加入 server 参数进入服务器模式。可以通过命令行方式进入服务器模式,如下图:
也可以通过设置快捷方式参数进入服务器模式,如下图
5.2 服务器配置(图形)
服务器启动后会在系统托盘中创建图标,双击托盘图片可以打开服务器配置界面。
服务器可以同时工作在 UDP 模式和 TCP 模式。
5.3 服务器配置(命令行)
在启动服务器时传入参数,使用命令配置服务器。参数说明如下:
C:\>usbpv.exe server tcp
启动服务器并打开 TCP 服务,使用上一次的 TCP 服务参数。
C:\>usbpv.exe server tcp 1234
启动服务器并打开 TCP 服务,使用上一次的 TCP 服务地址参数,端口使用 1234
C:\>usbpv.exe server tcp 192.168.1.1
启动服务器并打开 TCP 服务,使用上一次的 TCP 服务端口参数,地址使用 192.168.1.1
C:\>usbpv.exe server tcp 192.168.1.1 1234
启动服务器并打开 TCP 服务,地址使用 192.168.1.1,端口使用 1234
C:\>usbpv.exe server ucp
启动服务器并打开 UDP 服务,使用上一次的 UDP 服务参数。
C:\>usbpv.exe server udp 1234
启动服务器并打开 UDP 服务,使用上一次的 UDP 服务地址参数,端口使用 1234
C:\>usbpv.exe server udp 192.168.1.1
启动服务器并打开 UDP 服务,使用上一次的 UDP 服务端口参数,地址使用 192.168.1.1
C:\>usbpv.exe server udp 192.168.1.1 1234
启动服务器并打开 UDP 服务,地址使用 192.168.1.1,端口使用 1234
C:\>usbpv.exe server tcp udp
同时打开 TCP 和 UDP 服务,都使用上一次的参数。
C:\>usbpv.exe server udp 192.168.1.1 1234 tcp 192.168.1.1 1234
同时打开 TCP 和 UDP 服务, UDP 地址 192.168.1.1,端口 1234。 TCP 地址 192.168.1.1,端
口 1234。
5.4 通讯协议
TCP 与 UDP 采用相同的通讯协议。 每一包数据内容由数据头和数据内容构成,数据头固定为 4 字节,数据内容长度由数据头指定,数据内容长度最大为 4096 字节。
字节 | 说明 |
---|---|
Byte0 | 协议头,必须为 0x58 (ASCII: ‘X’) |
Byte1 | 命令或响应 |
Byte2 | 数据长度低 8 位 |
Byte3 | 数据长度高 8 位 |
5.4.1 获取设备列表
命令: 0x4c, (ASCII: ‘L’).
方向:客户端->服务器
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 |
---|---|---|---|
0x58 | 0x4C | 0x00 | 0x00 |
成功响应: 0x50, (ASCII: ‘P’)。数据内容为当前可用设备的序列号。
方向:服务器->客户端
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 | 可用设备序列号,逗号分隔 |
---|---|---|---|---|
0x58 | 0x50 | Len&0xff | Len>>8 | 长度为 Len |
失败响应: 0x45, (ASCII: ‘E’), 数据内容失败原因,长度 2 字节。
方向:服务器->客户端
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 |
---|---|---|---|---|---|
0x58 | 0x50 | 0x02 | 0x00 | 保留 | 错误码 |
5.4.2 打开设备
命令: 0x4F, (ASCII: ‘O’).
方向:客户端->服务器
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 | 设备打开参数 |
---|---|---|---|---|
0x58 | 0x4F | Len&0xff | Len>>8 | 长度为 Len 的设备打开参数 |
成功响应: 0x50, (ASCII: ‘P’)。数据内容为当前可用设备的序列号。
方向:服务器->客户端
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 |
---|---|---|---|
0x58 | 0x50 | 0x00 | 0x00 |
失败响应: 0x45, (ASCII: ‘E’),数据内容失败原因,长度 2 字节。
方向:服务器->客户端
数据内容:
Byte0 | Byte1 | Byte2 | Byte3 | Byte4 | Byte5 |
---|---|---|---|---|---|
0x58 | 0x50 | 0x02 | 0x00 | 保留 | 错误码 |
5.4.2.1 设备打开参数
设备打开参数长度不固定,内容如下