Linux
查找網卡的網路百分比
所以我創建了一個Linux資源監控工具,可以拉取各種資源資訊。我試圖提取的欄位之一是我的 NIC 上的網路吞吐量百分比。因此,如果我有一個每秒處理 200 Mb(位)的 1 Gb(位)NIC,該工具將顯示 20%。下面以基本計算為例。
sar -n DEV 1 1 #Used to pull Rx and Tx KB(byte) per second.
從這裡可以說它總共報告了 17000 KB(字節)。然後我需要將其轉換為 Kb(位)。所以我會做以下事情。
17000 * 8
這給了我總共 136000 Kb(位)。我需要將其轉換為 Mb(bits) 以從我的實際 NIC 速度中獲取一個百分比。
136000 / 1000
我除以 1000 以將其更改為 Mb(位)。現在總計為 136 Mb。從這裡我需要根據我的 NIC 獲得一個百分比。我有一個 1Gb(位)的 NIC。
136 / 1000 (NIC speed in Mb) * 100
這等於 13.6%
所以粗略的計算會告訴我,我的 NIC 正在處理據稱供應商能夠處理的 13.6%。
我的問題如下。如果這是錯誤的站點,請轉發給我,因為這是部分網路、部分數學和部分 Linux/OS 報告,所以我不確定該使用什麼。謝謝
- 我的推理有問題嗎?例如,關於我如何檢索我的百分比,我的數學是否正確
- 顯然我永遠不會達到 100%(理論上),但是這些資訊對於發現網路中的潛在阻塞點是否有用?
- 在我的工具中顯示此資訊的優點和缺點是什麼?我聽人說這毫無意義且容易出錯,但我一直不明白他們的推理。
正如 fruglemonkey 所說,1 sec 是一個糟糕的選擇。嘗試至少 5 秒的平均值。這將有助於獲得更一致的圖表。當然,您可以同時顯示這兩個數據;-)
我看不出你的數學有什麼問題。但我建議你也跟踪數據包的數量。這個指標對於理解問題非常重要。在 Internet 連結(例如 ddos)上的低流量達到 pps 限制的情況並不少見。
頻寬也是一個很好的指標。我喜歡在我的監控中看到這個圖表。我看不到向網路管理員展示的不好的一面。