通过dropwatch定位系统内核丢包

当面临Linux服务器内核网络层丢包问题时,dropwatch工具能帮助定位丢包点。本文介绍了dropwatch的使用前提,包括内核版本要求及编译选项,以及如何在 CentOS 6.3 上安装和使用dropwatch来捕获内核丢包数据。通过分析丢包数量和System Map,可以确定丢包发生在哪个函数,如示例中udp_queue_rcv_skb函数。此外,还提到了通过`/proc/net/snmp`查看UDP丢包统计。利用dropwatch,网络管理员能更准确地诊断和解决丢包问题。
摘要由CSDN通过智能技术生成
背景:

网工面对业务反馈数据中心内部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时,最好先切走业务;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值