通过dropwatch定位系统内核丢包

背景:

网工面对业务反馈数据中心内部2台Server之间丢包,首先会查端到端之间所有链路有无拥塞、端口CRC问题;确认没有异常后,会开始怀疑是Server本身丢包,但我们知道,物理服务器一般会查下物理网卡有无丢包,但一般网卡丢包的可能性很小,但如果包是丢在内核网络层怎么办呢?通过抓包分析会因为场景的不同,数据的多少造成分析困难重重。Linux从2.6.30开始支持Network  Drop Watch(dropwatch)功能,可以准确定位内核网络层数据包的丢弃;



dropwatch使用前提:

1、首先内核必须大于等于2.6.30;
2、编译内核时应该加上“NET_DROP_MONITOR=y”;
3、由于dropwatch是依赖Kernel Tracepoint API的,其原理是各个协议层释放skb时收集信息来判断有无丢包,用的不多,难免存在一些BUG导致内核crash,因此具备一定危险性,建议troubleshooting时,最好先切走业务;

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值