linux cat获取ip,linux – “cat / proc / net / dev”和“ip -s link”显示不同的统计信息.哪一个在撒谎?...

在挤压机上,信任/ proc / net / dev.这是查看相同数据的更直接,更可靠的方式.

对于丢弃计数的特定情况,我无法解释确切的问题,但我可以在其他Squeeze盒子上观察它.如果我关心,我会把它报告给Debian一个bug(并建议有人这样做并在此报告).

两者都从net_device_stats的tx_dropped字段中获取数字.在/ proc / net / dev中,该行由net / core / dev.c中的dev_seq_printf_stats生成.

像往常一样,ip通过netlink,更准确地说,用于网络设备统计,rtnetlink.传递给用户空间的结构rtnl_link_stats.

本机结构使用无符号长整数,rtnetlink使用__u32,或者在copy_rtnl_link_stats中进行或多或少的隐式转换.

从结构的开头就可以很容易地看到32位版本,rx_packets:虽然/ proc / net / dev显示为1258629839430,ip显示为244248462,大致相当于最后32位(加上几个字节)命令之间);与包计数相同的事情.

以下是这两个第一个字段的数字运算:

% echo '1258629839430 % (2^32)'|bc; echo 244248462

204421702

244248462

% echo '12545003042 % (2^32)'|bc; echo 3955476484

3955068450

3955476484

IFLA_STATS64的推出使事情变得更好:

>在内核中(来自提交10708f37ae729baba9b67bd134c3720709d4ae62,可在v2.6.35及更高版本的上游获得)>在iproute2中(来自提交8864ac9dc5bd5ce049280337deb21191673a02d0,可在v2.6.33-36及更高版本的上游获得).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值