iproute2 介面統計資料似乎有誤

iproute2 介面統計資料似乎有誤

由於某種原因,ip -s link不顯示與 相同的數字/proc/net/dev,特別是溢出計數。

對於給定接口,ip 顯示沒有溢出資料包:

$ ip -s link show eth-ext1
7: eth-ext1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:08:a2:0d:00:74 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast   
    1038103044434 1099087192 0       0       0       401298  
    TX: bytes  packets  errors  dropped carrier collsns 
    543051882227 844808055 0       0       0       0       

雖然proc我們看到非零溢出(這是我假設fifo所指的):

$ cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
[...]
eth-ext1: 1038106099296 1099090833    0    0 467554     0          0    401301 543052535442 844810749    0    0    0     0       0          0

我傾向於相信介面上實際上存在超限資料包,因此 的輸出似乎ip link不正確。我有什麼遺漏的嗎?

答案1

fifo 和 overrun 不一樣。只要輸入 ip -s -sa 就會出現這樣的內容

RX: bytes  packets  errors  dropped overrun mcast
53152      864      0       0       0       0
RX errors: length   crc     frame   fifo    missed
           0        0       0       0       0
TX: bytes  packets  errors  dropped carrier collsns
53152      864      0       0       0       0
TX errors: aborted  fifo   window heartbeat transns
           0        0       0       0       0

overrun — 導致丟包的接收器溢位總數。一般來說,如果介面超限,則表示核心存在嚴重問題,或者您的機器對於該介面來說太慢。

fifo(文件輸入檔輸出)錯誤

相關內容