首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GNU/Linux上的TCP数据包丢弃分析

GNU/Linux上的TCP数据包丢弃分析
EN

Server Fault用户
提问于 2013-05-22 15:25:06
回答 1查看 7.1K关注 0票数 4

我使用Ubntu12.04服务器作为网关/路由器。服务器有两个用于局域网和广域网接口的NetXtreme BCM5721千兆以太网PCI卡。Opennms监控软件在WAN (ISP)接口上显示传入的数据包丢弃。ISP通过SDH/SONET环提供直接以太网连接。然而,我没有看到任何数据包丢弃在局域网接口上。以下是广域网接口图:

是否有任何工具/命令来发现是什么导致了这样的丢包。是否有可能知道ISP身边的某些错误配置是否导致了这样的问题。

Ifconfig输出:

代码语言:javascript
复制
eth1      Link encap:Ethernet  HWaddr **:**:**:**:63:5d  
          inet addr:***.***.4.130  Bcast:***.***.4.131  Mask:255.255.255.252
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:865089489 errors:0 dropped:596 overruns:0 frame:3
          TX packets:498072410 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1092458492329 (1.0 TB)  TX bytes:48179244881 (48.1 GB)
          Interrupt:17 
EN

回答 1

Server Fault用户

发布于 2013-05-23 10:57:24

ethtool命令用于查询驱动程序以获得NIC报告的统计信息。ethtool -S ethX将向您展示特定卡的统计数据,您可以看到滴漏的位置。

最常见的情况是,您将丢失环形缓冲区中的数据包(报告为“丢弃”、"fifo“、"bufs”之类的stat,它因卡而异),您可以通过使用ethtool -g增加环形缓冲区来解决这个问题。有关更多信息,请参见man ethtool

netstat命令用于查询内核的网络堆栈。netstat -s将显示统计数据,您可以看到在待办事项处理(在NIC之后,但在套接字缓冲区之前)或在套接字缓冲区(太小的缓冲区或缓慢的应用程序)或其他地方是否正在丢失通信量。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/509938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档