Red Hat systemtap nettop 显示 swapper/0 进程

Red Hat systemtap nettop 显示 swapper/0 进程

我正在分析主机的网络性能,并且使用 SystemTap 的 nettop.stp 示例/usr/share/systemtap/examples/network/nettoqp.stp。我注意到它包括交换器进程和 kworker 内核线程的网络活动。为什么 pid 0 或内核线程会执行网络 I/O?看起来很奇怪。难道我们正在接收数据,但没有应用程序需要它 - 多播,也许,不是发往该主机的?

我在 RHEL7 机器上运行它,但我注意到我的 Fedora 37 笔记本电脑上有 pid 0 数据包。

感谢您提供任何线索。这是一些示例输出:

  PID   UID DEV     XMIT_PK RECV_PK XMIT_KB RECV_KB COMMAND
64397 10446 em1       37143   59977  602558    3093 ssh
64397 10446 bond0.16   37143       0  602558       0 ssh
64397 10446 bond0     37143       0  602558       0 ssh
    0     0 em1         823   21151   13073    1225 swapper/0
64396 10446 em1         189    4418    3026     227 scp
    0     0 bond0.16     823       0   13073       0 swapper/0
    0     0 bond0       823       0   13073       0 swapper/0
65058     0 p1p2          0     645       0      87 kworker/u547:3
11122     0 p1p2          0     474       0      41 kworker/u547:2
    0     0 p1p2          0     261       0      12 swapper/16
    0     0 p3p2          0     253       0      12 swapper/17
    6     0 em1         151      92    2431       4 ksoftirqd/0
66793     0 em1           2     232      32      12 lsof

答案1

内核中有很多网络客户端和服务器;从 NFS 和 CIFS 客户端和服务器,到网络块设备,到虚拟化网络设备,从 USB/IP 到 IIO,等等。

PID 0 很可能是您系统上的 systemd,它具有很多网络功能,具体取决于您让它做什么。例如,它可能通过网络记录到系统日志守护程序。

相关内容