我有一个支持多队列的网卡,因此根据数据包的优先级,将使用不同的队列。我想分析通过每个硬件队列的数据包流。
队列列在
/sys/class/net/eth1/queues/
目录我已经检查过该目录
/sys/class/net/eth1/queues/tx-0/
,但它有 tx_maxrate、tx_timeout 等信息。
是否有其他目录可以查看每个队列的统计信息? (如发送数据包的数量、丢失的数据包等)
答案1
您在下面看到的/sys/class/net/*/queues/
是与驱动程序/硬件相关的限制,但所有决策都是在网络调度层做出的(并收集统计数据)。该层通过 rtnetlink 接口进行管理,例如使用该tc
工具。
正如您提到的优先级和队列,我假设您已经设置了调度,也许使用mqprio
调度程序。如果没有,则交通管制指南会让你开始。尽管它有些过时,但基本原理仍然是相同的。
要查看每个调度类别(映射到硬件传输队列)的统计信息,请使用tc -s class show dev eth1
。