为什么这个仪表板的创建者要将字节乘以 8 来获得位?难道不是反过来的吗?

为什么这个仪表板的创建者要将字节乘以 8 来获得位?难道不是反过来的吗?

为了监控服务器,我们导入了 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 兆比位 = Mib 兆字节 = MB 兆比字节 = MiB

参照这个,图表上的单位似乎是兆位,对吗?我理解错了什么,还是“*”和“/”混淆了?

Grafana 仪表板的屏幕截图

答案1

抱歉,您的数学有点错误。。1 byte = 8 bits到目前为止,一切都很好。鉴于此,一个字节大于一个位(具体来说是八倍大)。我们知道这一点,因为八位需要占用一个字节所需的相同空间。所以我们可以将等式重写为1 byte = 8 * 1 bit。或者,换句话说1 bit = ⅛ byte。所以,如果我们有,比如说X bytes,但我们想要位,我们乘以8,得到等式bytes * 8 = bits。一般来说,如果你从一个大的测量单位变成一个较小的测量单位(比如字节到位),你就乘以。

相关内容