【问题标题】:epoch time / timestamps wireshark vs perf trace纪元时间/时间戳wireshark vs perf跟踪
【发布时间】:2017-10-04 00:57:49
【问题描述】:

我正在尝试在我的 Linux 服务器上调试一些问题:

每 2 分钟我就会有一些 igmp 查询,我想查找其来源。

从 Wireshark 捕获中,我看到了查询的执行时间:

**1488124556.773784** IP 0.0.0.0 > all-systems.mcast.net: igmp query v2

这次我可以毫无问题地转换为实时:

**[root@server ~]# date -d @1488124556.773784: -> 
Sun Feb 26 10:55:56 EST 2017**

但是当我尝试使用 perf 命令跟踪 linux 进程时:

perf trace -a -T -o trace.out 

trace.out

**15471296674.961** ( 0.023 ms): qemu-kvm/6621 ioctl(fd: 12<anon_inode:kvm-vcpu>, cmd: 0xae80                        ) = 0

**15471296674.979** ( 0.011 ms): qemu-kvm/6621 ioctl(fd: 12<anon_inode:kvm-vcpu>, cmd: 0xae80   
                     ) = 0

**15471296674.986** ( 0.004 ms): qemu-kvm/6621 ioctl(fd: 6<anon_inode:kvm-vm>, cmd: 0xc008ae67, arg: 0x7fbba66bf9d0  


15471296674.990 ( 0.002 ms): qemu-kvm/6621 ioctl(fd: 6<anon_inode:kvm-vm>, cmd: 0xc008ae67, arg: 0x7fbba66bf9f0  ) = 0

**15471296675.002** ( 0.010 ms): qemu-kvm/6621 ioctl(fd: 12<anon_inode:kvm-vcpu>, cmd: 0xae80  

**15471296675.009** ( 0.003 ms): qemu-kvm/6621 ioctl(fd: 6<anon_inode:kvm-vm>, cmd: 0xc008ae67, arg: 0x7fbba66bf9f0 


**15471296675.021** ( 0.010 ms): qemu-kvm/6621 ioctl(fd: 12<anon_inode:kvm-vcpu>, cmd: 0xae80                        ) = 0

我发现时间不是纪元格式:

从我找到的性能页面手册

-T --time 打印完整的时间戳而不是相对于第一个样本的时间。

我的问题:

是否可以在 Wireshark 和 perf 跟踪工具中找到相同的时间戳格式或类型?

谢谢。

【问题讨论】:

标签: linux debugging networking wireshark perf


【解决方案1】:

简答

不幸的是,从内核 4.4 开始,无法将 perf-trace 时间戳精确地转换为 unix 时间。您可以将它们与 /proc/uptime 中看到的时间进行大致匹配,但它们在启动后会逐渐分开,差异以秒甚至分钟为单位。

长答案

perf 依赖于 sched_clock() ,它与启动后的纳秒数有关。由于某种原因 perf 将小数点放在错误的位置,因此您会看到秒数乘以 1000。

问题是,sched_clock() 报告的数字实际上无法从用户空间访问。它们不同于 CLOCK_MONOTONIC(可以在 /proc/uptime 中看到)和 CLOCK_MONOTONIC_RAW(可以通过例如 clock_gettime 系统调用获得)。

至少有两个补丁被提议添加内核接口暴露 sched_clock() 到用户空间,不幸的是两个都被拒绝了。从那以后我不知道有任何成功的尝试。

被拒绝的内核补丁:

【讨论】:

    猜你喜欢
    • 2017-11-30
    • 2012-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-18
    • 2018-08-03
    • 2020-06-24
    相关资源
    最近更新 更多