0

在 Solaris 中,“netstat -i”的输出如下所示:

root# netstat -i
Name  Mtu  Net/Dest      Address        Ipkts   Ierrs Opkts  Oerrs Collis Queue
lo0   8232 loopback      localhost      136799  0     136799 0     0      0
igb0  1500 vulture       vulture        1272272 0     347277 0     0      0

请注意,最后有一个 Queue 字段。

在 Linux 中,'netstat -i' 给出没有 Queue 字段的输出:

[root@roseate ~]# netstat -i
Kernel Interface table 
Iface       MTU Met    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0       1500   0  2806170      0      0      0   791768      0      0      0 BMRU
eth1       1500   0        0      0      0      0        0      0      0      0 BMU
eth2       1500   0        0      0      0      0        0      0      0      0 BMU
eth3       1500   0        0      0      0      0        0      0      0      0 BMU
lo        16436   0  1405318      0      0      0  1405318      0      0      0 LRU

我已经想出了如何通过添加-e选项在 Linux 中获取冲突,但是有没有办法在 Linux 中获取队列

4

3 回答 3

0

我在 Linux 上的 netstat 中看到的对队列的唯一引用是在使用 -s 时,但这对于您的用例来说可能太啰嗦了?

于 2013-02-15T19:39:07.027 回答
0
$ netstat -na | awk 'BEGIN { RecvQ=0; SendQ=0; } { RecvQ+=$2; SendQ+=$3; } END { print "RecvQ " RecvQ/1024; print "SendQ " SendQ/1024; }'
RecvQ 255.882
SendQ 0.0507812

对于每个界面,我都有肮脏的方式

[spatel@us04 ~]$  for qw in `/sbin/ifconfig  | grep 'inet addr:' | cut -d: -f2 | awk '{print $1}'`; do echo `/sbin/ip addr | grep $qw | awk '{print $7}'` : ; echo `netstat -na | grep $qw | awk 'BEGIN { RecvQ=0; SendQ=0; } { RecvQ+=$2; SendQ+=$3; } END { print "RecvQ " RecvQ/1024; print "SendQ " SendQ/1024; }'`; done
eth0 :
RecvQ 0 SendQ 0
eth2 :
RecvQ 0.0703125 SendQ 1.56738
:
RecvQ 0 SendQ 0
于 2013-02-15T19:47:41.627 回答
0

我最终使用

tc -s -d qdisc

[root@roseate ~]# tc -s -d qdisc
qdisc mq 0: dev eth2 root
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc mq 0: dev eth3 root
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc mq 0: dev eth0 root
Sent 218041403 bytes 1358829 pkt (dropped 0, overlimits 0 requeues 1)
rate 0bit 0pps backlog 0b 0p requeues 1
qdisc mq 0: dev eth1 root
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0

它给出了积压的字节和数据包。

来源

于 2013-02-19T21:51:25.090 回答