USB抓包usbmon

1、挂载debugfs文件系统

mount -t /sys/debugfs none /sys/kernel/debug

2、确定可以使用usbmon

  有usbmon命令

3、使用usbmon抓包

查看USB总线情况
ls -la /sys/kernel/debug/usb/usbmon
0s 0u 1s 1t 1u 2s 2t 2u
查看USB设备是在哪一个总线上,可以使用lsusb命令 笔者准备抓usb总线2的包(后台运行) cat /sys/kernel/debug/usb/usbmon/2u &
后面如果总线2上有任何数据交互,都会打印到终端上。

4、基本情况介绍

ls -la /sys/kernel/debug/usb/usbmon
0s 0u 1s 1t 1u 2s 2t 2u

数字0代表所有总线、数字1代表总线1、数字2代表总线2

 5、抓包内容分析

1、USB传输是以事务传输的,事务由(令牌包、数据包、握手包)组成。usbmon只抓取数据包

2、usb 协议规定了 4 种传输类型:批量传输(bulk)、等时传输(isochronous)、中断传输(interrupt)和控制传输(control)。

  其中,批量传输、等时传输、中断传输每传输一次数据都是一个事务;

  控制传输包括三个过程,建立过程和状态过程分别是一个事务,数据过程可能包含多个事务。

 

cat /sys/kernel/debug/usb/usbmon/2u 
 
ffff9bbbaf235b00 1482700625 C Ii:3:001:1 0:2048 1 = 04
ffff9bbbaf235b00 1482700644 S Ii:3:001:1 -115:2048 4 <
ffff9bbbaf235b00 1482842143 C Ii:3:001:1 0:2048 1 = 04
ffff9bbbaf235b00 1482842186 S Ii:3:001:1 -115:2048 4 <
ffff9bba982218c0 1482949850 C Ci:3:000:0 -2 0
ffff9bba982218c0 1482949890 S Co:3:001:0 s 23 03 0004 0002 0000 0
ffff9bba982218c0 1482949923 C Co:3:001:0 0 0
ffff9bba98220840 1483018683 S Ci:3:001:0 s a3 00 0000 0002 0004 4 <
ffff9bba98220840 1483018710 C Ci:3:001:0 0 4 = 02011100
ffff9bba98221740 1483086407 S Ci:3:001:0 s a3 00 0000 0002 0004 4 <
ffff9bba98221740 1483086432 C Ci:3:001:0 0 4 = 02011100

5.1、字段解释:

 ffff9bbbaf235b00 1482700625 C Ii:3:001:1 0:2048 1 = 04
ffff9bbbaf235b00
1482700625
C
Ii
:3
:001
:1
0:2048 1 =  04
数据包在内核的地址(1)
时间戳(2)
事件类型(3)
 URB传输类型及方向(4)
 :总线(5)
:usb设备地址(6)
:端点(7)
(8)......

 

字段号 含义   分类

 

备注
(1)  数据包所在的地址(虚拟地址)       
(2)  时间戳(微秒)       
(3)  事件类型   

C - callback,URB 提交完成后的回调

 

S - submission,向 usb controller 提交 URB

 

E - submission error,向 usb controller 提交 URB 发生错误

 
(4)   URB传输类型及方向     批量传输(bulk) 输入input、输出output Bi、Bo

输入输出是相对USB的master来说

即mster到slave(输出)、salve到到master(输入) 

等时传输(isochronous) Zi、Zo
中断传输(interrupt) Ii、Io
控制传输(control)

Ci、Co

(5)   总线     
(6)   usb设备地址     
(7)   端点 

0-15(USB协议规定16个endpoint),注意端点区分方向,输入和输出。

只有端点0支持双向,(此处稍后考证如何支持双向),端点0为控制端点、

 
(8)及以后     批量传输(bulk)

表示URB状态,仅仅在callback情况下才有效。

其他情况,同一格式。

   

”=” 后面紧跟数据流,=前面为实际收发数据字节数
“>” 表示这是一次 Output 数据传输,>前面为请求OUT字节数。
“<” 表示这是一次 Input 数据传输,>前面为请求IN字节数。

 

   
中断传输(interrupt) URB状态和Interval( 表示该 URB 对端点轮询的间隔时间。)    
等时传输(isochronous) URB status、Interval、start frame 和 error count。    
控制传输(control) 在提交URB时,即S时,s 后面紧跟的数据是控制传输的建立过程主机发送的数据包(bmRequestType(1) + bRequest(1) + wvalue(2) + wIndex(2) + wLength(2)),Callback时,表示URB状态和收发字节数    

参考博客:

https://blog.csdn.net/xiaolong1126626497/article/details/112135161

https://www.cnblogs.com/shiwenjie/p/9817220.html

https://www.cnblogs.com/lh03061238/p/12336741.html

https://blog.csdn.net/zhqh100/article/details/44595403

 

~ # cat /sys/kernel/debug/usb/usbmon/1u &
~ #
~ # 8000000402288f00 662123747 C Ii:1:001:1 0:2048 1 = 02
8000000402288f00 662123761 S Ii:1:001:1 -150:2048 4 <
usb 1-1: USB disconnect, device number 2
80000004058acc00 662123830 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662123836 C Ci:1:001:0 0 4 = 00010100
80000004058acc00 662123840 S Co:1:001:0 s 23 01 0010 0001 0000 0
80000004058acc00 662123844 C Co:1:001:0 0 0
8000000402288f00 662137020 C Ii:1:001:1 0:2048 1 = 02
8000000402288f00 662137022 S Ii:1:001:1 -150:2048 4 <
option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
option 1-1:1.0: device disconnected
option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
option 1-1:1.1: device disconnected
option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
option 1-1:1.2: device disconnected
option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
option 1-1:1.3: device disconnected
80000004058acc00 662236498 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662236503 C Ci:1:001:0 0 4 = 01010100
80000004058acc00 662236506 S Co:1:001:0 s 23 01 0010 0001 0000 0
80000004058acc00 662236508 C Co:1:001:0 0 0
80000004058acc00 662271579 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662271583 C Ci:1:001:0 0 4 = 01010000
80000004058acc00 662311575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662311579 C Ci:1:001:0 0 4 = 01010000
80000004058acc00 662351575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662351578 C Ci:1:001:0 0 4 = 01010000
80000004058acc00 662391574 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662391578 C Ci:1:001:0 0 4 = 01010000
80000004058acc00 662391654 S Co:1:001:0 s 23 03 0004 0001 0000 0
80000004058acc00 662391659 C Co:1:001:0 0 0
80000004058acc00 662451574 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
80000004058acc00 662451578 C Ci:1:001:0 0 4 = 03051000
usb 1-1: new high-speed USB device number 3 using xhci-hcd
80000004058acc00 662511578 S Co:1:001:0 s 23 01 0014 0001 0000 0
80000004058acc00 662511581 C Co:1:001:0 0 0
80000004058acc00 662531575 S Ci:1:003:0 s 80 06 0100 0000 0008 8 <
80000004058acc00 662532759 C Ci:1:003:0 0 8 = 12011002 00000040
80000004058acc00 662532783 S Ci:1:003:0 s 80 06 0100 0000 0012 18 <
80000004058acc00 662533275 C Ci:1:003:0 0 18 = 12011002 00000040 7c2c0008 14040102 0301
80000004058acc00 662533302 S Ci:1:003:0 s 80 06 0f00 0000 0005 5 <
80000004058acc00 662533576 C Ci:1:003:0 0 5 = 050f2a00 03
80000004058acc00 662533596 S Ci:1:003:0 s 80 06 0f00 0000 002a 42 <
80000004058acc00 662533918 C Ci:1:003:0 0 42 = 050f2a00 03071002 06000000 0a100300 0f000101 f4011410 0a000100 00000011
80000004058acc00 662533952 S Ci:1:003:0 s 80 06 0200 0000 0009 9 <
80000004058acc00 662534251 C Ci:1:003:0 0 9 = 0902d100 050104a0 fa
80000004058acc00 662534273 S Ci:1:003:0 s 80 06 0200 0000 00d1 209 <
80000004058acc00 662534571 C Ci:1:003:0 0 209 = 0902d100 050104a0 fa090400 0002ffff 30000705 81020002 00070501 02000200
8000000405601180 662534611 S Ci:1:003:0 s 80 06 0300 0000 00ff 255 <
8000000405601180 662534885 C Ci:1:003:0 0 4 = 04030904
8000000405601180 662534906 S Ci:1:003:0 s 80 06 0302 0409 00ff 255 <
8000000405601180 662535212 C Ci:1:003:0 0 20 = 14035200 4d003500 30003000 51002d00 43004e00
8000000405601180 662535239 S Ci:1:003:0 s 80 06 0301 0409 00ff 255 <
8000000405601180 662535531 C Ci:1:003:0 0 16 = 10035100 75006500 63007400 65006c00
8000000405601180 662535556 S Ci:1:003:0 s 80 06 0303 0409 00ff 255 <
8000000405601180 662535854 C Ci:1:003:0 0 18 = 12036100 61003700 62006400 36006400 3300
80000004056013c0 662556251 S Co:1:003:0 s 00 09 0001 0000 0000 0
80000004056013c0 662557809 C Co:1:003:0 0 0
80000004056013c0 662557830 S Ci:1:003:0 s 80 06 0304 0409 00ff 255 <
80000004056013c0 662560863 C Ci:1:003:0 0 42 = 2a034400 49004100 47005f00 53004500 52005f00 52004d00 4e004500 54005f00
option 1-1:1.0: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
option 1-1:1.2: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
option 1-1:1.3: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB3
800000040dfd4a80 662734487 S Ci:1:003:0 s 80 06 0306 0409 00ff 255 <
800000040dfd4a80 662734742 C Ci:1:003:0 0 12 = 0c035200 6d004e00 65007400
800000040dfd4180 662734997 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4180 662735001 C Ci:1:001:0 0 4 = 03050000
8000000402288f00 664116544 C Ii:1:001:1 0:2048 1 = 02
8000000402288f00 664116549 S Ii:1:001:1 -150:2048 4 <
usb 1-1: USB disconnect, device number 3
800000040dfd4180 664116607 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4180 664116611 C Ci:1:001:0 0 4 = 00010100
800000040dfd4180 664116614 S Co:1:001:0 s 23 01 0010 0001 0000 0
800000040dfd4180 664116616 C Co:1:001:0 0 0
8000000402288f00 664129799 C Ii:1:001:1 0:2048 1 = 02
8000000402288f00 664129801 S Ii:1:001:1 -150:2048 4 <
option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
option 1-1:1.0: device disconnected
option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
option 1-1:1.1: device disconnected
option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
option 1-1:1.2: device disconnected
option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
option 1-1:1.3: device disconnected
800000040dfd4000 664220403 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664220408 C Ci:1:001:0 0 4 = 00010100
800000040dfd4000 664220411 S Co:1:001:0 s 23 01 0010 0001 0000 0
800000040dfd4000 664220413 C Co:1:001:0 0 0
800000040dfd4000 664251585 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664251590 C Ci:1:001:0 0 4 = 00010000
800000040dfd4000 664291575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664291579 C Ci:1:001:0 0 4 = 00010000
800000040dfd4000 664331575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664331578 C Ci:1:001:0 0 4 = 00010000
800000040dfd4000 664371574 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664371578 C Ci:1:001:0 0 4 = 00010000
800000040dfd4000 664371582 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 664371584 C Ci:1:001:0 0 4 = 00010000

~ #
~ #
~ #
~ #
~ # 8000000402288f00 689882186 C Ii:1:001:1 0:2048 1 = 02
8000000402288f00 689882191 S Ii:1:001:1 -150:2048 4 <
800000040dfd4000 689882250 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 689882254 C Ci:1:001:0 0 4 = 01010100
800000040dfd4000 689882257 S Co:1:001:0 s 23 01 0010 0001 0000 0
800000040dfd4000 689882259 C Co:1:001:0 0 0
800000040dfd4000 689882262 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 689882264 C Ci:1:001:0 0 4 = 01010000
800000040dfd4000 689921575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 689921578 C Ci:1:001:0 0 4 = 01010000
800000040dfd4000 689961575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 689961578 C Ci:1:001:0 0 4 = 01010000
800000040dfd4000 690001574 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 690001579 C Ci:1:001:0 0 4 = 01010000
800000040dfd4000 690041575 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 690041578 C Ci:1:001:0 0 4 = 01010000
800000040dfd4000 690041651 S Co:1:001:0 s 23 03 0004 0001 0000 0
800000040dfd4000 690041655 C Co:1:001:0 0 0
800000040dfd4000 690101574 S Ci:1:001:0 s a3 00 0000 0001 0004 4 <
800000040dfd4000 690101578 C Ci:1:001:0 0 4 = 03051000
usb 1-1: new high-speed USB device number 4 using xhci-hcd
800000040dfd4000 690161575 S Co:1:001:0 s 23 01 0014 0001 0000 0
800000040dfd4000 690161579 C Co:1:001:0 0 0
800000040dfd4000 690181575 S Ci:1:004:0 s 80 06 0100 0000 0008 8 <
800000040dfd4000 690181837 C Ci:1:004:0 0 8 = 12011002 00000040
800000040dfd4000 690181861 S Ci:1:004:0 s 80 06 0100 0000 0012 18 <
800000040dfd4000 690182079 C Ci:1:004:0 0 18 = 12011002 00000040 7c2c0008 14040102 0301
800000040dfd4000 690182105 S Ci:1:004:0 s 80 06 0f00 0000 0005 5 <
800000040dfd4000 690183408 C Ci:1:004:0 0 5 = 050f2a00 03
800000040dfd4000 690183428 S Ci:1:004:0 s 80 06 0f00 0000 002a 42 <
800000040dfd4000 690183563 C Ci:1:004:0 0 42 = 050f2a00 03071002 06000000 0a100300 0f000101 f4011410 0a000100 00000011
800000040dfd4000 690183595 S Ci:1:004:0 s 80 06 0200 0000 0009 9 <
800000040dfd4000 690183760 C Ci:1:004:0 0 9 = 0902d100 050104a0 fa
800000040dfd4000 690183782 S Ci:1:004:0 s 80 06 0200 0000 00d1 209 <
800000040dfd4000 690183931 C Ci:1:004:0 0 209 = 0902d100 050104a0 fa090400 0002ffff 30000705 81020002 00070501 02000200
800000040dfd4a80 690183968 S Ci:1:004:0 s 80 06 0300 0000 00ff 255 <
800000040dfd4a80 690184347 C Ci:1:004:0 0 4 = 04030904
800000040dfd4a80 690184367 S Ci:1:004:0 s 80 06 0302 0409 00ff 255 <
800000040dfd4a80 690184511 C Ci:1:004:0 0 20 = 14035200 4d003500 30003000 51002d00 43004e00
800000040dfd4a80 690184538 S Ci:1:004:0 s 80 06 0301 0409 00ff 255 <
800000040dfd4a80 690184687 C Ci:1:004:0 0 16 = 10035100 75006500 63007400 65006c00
800000040dfd4a80 690184712 S Ci:1:004:0 s 80 06 0303 0409 00ff 255 <
800000040dfd4a80 690184851 C Ci:1:004:0 0 18 = 12036100 61003700 62006400 36006400 3300
800000040dfd43c0 690203257 S Co:1:004:0 s 00 09 0001 0000 0000 0
800000040dfd43c0 690203773 C Co:1:004:0 0 0
800000040dfd43c0 690203816 S Ci:1:004:0 s 80 06 0304 0409 00ff 255 <
800000040dfd43c0 690203936 C Ci:1:004:0 0 42 = 2a034400 49004100 47005f00 53004500 52005f00 52004d00 4e004500 54005f00
option 1-1:1.0: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
option 1-1:1.2: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
option 1-1:1.3: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB3
80000004022e0480 690384139 S Ci:1:004:0 s 80 06 0306 0409 00ff 255 <
80000004022e0480 690384355 C Ci:1:004:0 0 12 = 0c035200 6d004e00 65007400
View Code
~ # echo -en "ati\r\n" > /dev/ttyUSB2
8000000405525cc0 502739336 S Co:1:002:0 s 21 22 0003 0002 0000 0
8000000405525cc0 502740161 C Co:1:002:0 0 0
8000000408496c00 502740205 S Bo:1:002:3 -150 2 = 0d0a
8000000408496cc0 502740212 S Bo:1:002:3 -150 1 = 4f
8000000408496d80 502740215 S Bo:1:002:3 -150 1 = 4b
8000000408496e40 502740218 S Bo:1:002:3 -150 2 = 0d0a
8000000408496c00 502740289 C Bo:1:002:3 0 2 >
8000000408496cc0 502740294 C Bo:1:002:3 0 1 >
8000000408496d80 502740296 C Bo:1:002:3 0 1 >
8000000408496e40 502740299 C Bo:1:002:3 0 2 >
~ # 8000000408496c00 502740348 S Bo:1:002:3 -150 4 = 6174690d
8000000408496cc0 502740353 S Bo:1:002:3 -150 2 = 0d0a
8000000408496c00 502740414 C Bo:1:002:3 0 4 >
8000000408496cc0 502740418 C Bo:1:002:3 0 2 >
8000000408496b40 502743788 C Bi:1:002:4 0 59 = 0d0a5175 65637465 6c0d0a52 4d353030 512d434e 0d0a5265 76697369 6f6e3a20
8000000408496b40 502743793 S Bi:1:002:4 -150 4096 <
8000000408496c00 502743843 S Bo:1:002:3 -150 2 = 0d0a
8000000408496cc0 502743850 S Bo:1:002:3 -150 2 = 0d0a
8000000408496d80 502743855 S Bo:1:002:3 -150 1 = 51
8000000408496e40 502743859 S Bo:1:002:3 -150 1 = 75
8000000408496c00 502743911 C Bo:1:002:3 0 2 >
8000000408496cc0 502743914 C Bo:1:002:3 0 2 >
8000000408496d80 502743916 C Bo:1:002:3 0 1 >
8000000408496e40 502743919 C Bo:1:002:3 0 1 >
8000000408496c00 502743922 S Bo:1:002:3 -150 1 = 65
8000000408496cc0 502743925 S Bo:1:002:3 -150 1 = 63
8000000408496d80 502743928 S Bo:1:002:3 -150 1 = 74
8000000408496e40 502743931 S Bo:1:002:3 -150 1 = 65
8000000408496c00 502744035 C Bo:1:002:3 0 1 >
8000000408496cc0 502744037 C Bo:1:002:3 0 1 >
8000000408496d80 502744039 C Bo:1:002:3 0 1 >
8000000408496e40 502744076 C Bo:1:002:3 0 1 >


Quectel

RM500Q-CN

Revision: RM500QCNAAR12A05M4G



OK
View Code

 

posted on 2021-09-20 17:52  红旗kernel  阅读(1673)  评论(2)    收藏  举报

导航