Networking

為什麼此儀表板的創建者將字節乘以 8 以獲得位?不是反過來嗎?

  • December 8, 2021

為了監控伺服器,我們為 Grafana 導入了儀表板。這使用 Telegraf 和 InfluxDB 作為收集器和數據庫。

當需要調整某些圖表時,我注意到在網路速度查詢中,接收到的字節(bytes_recv)乘以8,但圖表本身的單位以位顯示。

SELECT non_negative_derivative(mean(bytes_recv),1s)*8 as "in" FROM "net" WHERE host =~ /$server/ AND interface =~ /$netif/ AND $timeFilter GROUP BY time($interval), * fill(none)

根據我的理解是:8Bit = 1Byte。據此,如果數據以字節形式提供,則必須將其除以 8 才能獲得位,如果圖形應該顯示位。

此外(如果我沒記錯的話): 兆位 = Mb Mebibit = Mib 兆字節 = MB Mebibyte = MiB

參考這個,圖上的單位好像是兆比特吧?我是否理解了根本上的錯誤,或者“*”是否與“/”混淆了?

Grafana 儀表板的螢幕截圖

對不起,你的數學有點不正確。1 byte = 8 bits. 到現在為止還挺好。鑑於此,一個字節大於一個位(特別是八倍大)。我們知道這一點,因為它需要 8 位來消耗一個字節的相同空間。所以我們可以將方程重寫為1 byte = 8 * 1 bit。或者,交替地,1 bit = ⅛ byte。因此,如果我們有 ,X bytes但我們想要位,我們乘以8,得到方程bytes * 8 = bits。作為一般規則,如果你從一個大的度量單位變為一個較小的度量單位(比如字節到比特),你就會乘以。

引用自:https://serverfault.com/questions/1085769