linux下网络丢包问题处理--overruns不断增加_yujin2010good的博客-CSDN博客_linux网卡丢包严重怎么解决


本站和网页 https://blog.csdn.net/yujin2010good/article/details/78478982 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

linux下网络丢包问题处理--overruns不断增加_yujin2010good的博客-CSDN博客_linux网卡丢包严重怎么解决
linux下网络丢包问题处理--overruns不断增加
yujin2010good
于 2017-11-08 15:05:57 发布
19749
收藏
19
分类专栏:
linux
文章标签:
linux
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yujin2010good/article/details/78478982
版权
linux
专栏收录该内容
41 篇文章
1 订阅
订阅专栏
最近业务上老有问题,查看发现overruns值不断增加,学习了一下相关的知识。
发现数值也在不停的增加。G 了一下,发现这些 errors, dropped, overruns 表示的含义还不大一样。
eth2      Link encap:Ethernet  HWaddr 00:8C:FA:F1:DA:78  
          inet addr:10.249.2.112  Bcast:10.249.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:26191508237 errors:0 dropped:0 overruns:45732243 frame:0
          TX packets:20141298524 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4684832167216 (4.2 TiB)  TX bytes:4670328443919 (4.2 TiB)
          Memory:c7200000-c7280000 
RX errors: 表示总的收包的错误数量,这包括 too-long-frames 错误,Ring Buffer 溢出错误,crc 校验错误,帧同步错误,fifo overruns 以及 missed pkg 等等。
RX dropped: 表示数据包已经进入了 Ring Buffer,但是由于内存不够等系统原因,导致在拷贝到内存的过程中被丢弃。
RX overruns: 表示了 fifo 的 overruns,这是由于 Ring Buffer(aka Driver Queue) 传输的 IO 大于 kernel 能够处理的 IO 导致的,而 Ring Buffer 则是指在发起 IRQ 请求之前的那块 buffer。很明显,overruns 的增大意味着数据包没到 Ring Buffer 就被网卡物理层给丢弃了,而 CPU 无法即使的处理中断是造成 Ring Buffer 满的原因之一,上面那台有问题的机器就是因为 interruprs 分布的不均匀(都压在 core0),没有做 affinity 而造成的丢包。
RX frame: 表示 misaligned 的 frames。
1、先查看硬件情况
一台机器经常收到丢包的报警,先看看最底层的有没有问题:
# ethtool  eth2 | egrep 'Speed|Duplex'
        Speed: 1000Mb/s
        Duplex: Full
# ethtool  -S eth2 | grep crc
     rx_crc_errors: 0
Speed, Duplex, CRC 之类的都没问题,基本可以排除物理层面的干扰。
2、通过 ifconfig 可以看到 overruns 字段在不停的增大:
for i in `seq 1 100`; do ifconfig eth2 | grep RX | grep overruns; sleep 1; done
这里一直增加
RX packets:26191785302 errors:0 dropped:0 overruns:45732243 frame:0
3、查看buffer大小
找了一些国外的文章,可以通过ethtool来修改网卡的buffer size ,首先要网卡支持,我的服务器是是INTEL 的1000M网卡,我们看看ethtool说明 
-g   –show-ringQueries the specified ethernet device for rx/tx ring parameter information.
-G   –set-ringChanges the rx/tx ring parameters of the specified ethernet device.
查看当前网卡的buffer size情况ethtool -g eth0   
Ring parameters for eth0:
Pre-set maximums:
RX: 4096RX Mini: 0
RX Jumbo: 0
TX: 4096
Current hardware settings:
RX: 256
RX Mini: 0
RX Jumbo: 0
TX: 256
4、修改buffer size大小
ethtool -G eth2 rx 2048
ethtool -G eth2 tx 2048
查看丢包
[root@appserver1 network-scripts]# cat /proc/net/dev | column  -t
Inter-|             Receive      |        Transmit
face                |bytes       packets  errs      drop      fifo  frame  compressed  multicast|bytes  packets      errs  drop  fifo  colls  carrier  compressed
lo:1697064305645    4937104295   0        0         0         0     0      0           1697064305645    4937104295   0     0     0     0      0        0
eth0:72829268758    343814516    0        21338     0         0     0      9764241     74743576507      418943369    0     0     0     0      0        0
eth1:5826509023     48719872     0        0         0         0     0      11358883    127451707        1107964      0     0     0     0      0        0
eth2:4684766978372  26191366713  0        0         45732243  0     0      278436828   4670300836866    20141168183  0     0     0     0      0        0
eth3:               0            0        0         0         0     0      0           0                0            0     0     0     0      0        0           0
bond0:              0            0        0         0         0     0      0           0                0            0     0     0     0      0        0           0
[root@appserver1 network-scripts]# netstat -i | column  -t
Kernel  Interface  table
Iface   MTU        Met    RX-OK        RX-ERR  RX-DRP  RX-OVR    TX-OK        TX-ERR  TX-DRP  TX-OVR  Flg
eth2    1500       0      26191244868  0       0       45732243  20141056331  0       0       0       BMRU
lo      16436      0      4937053994   0       0       0         4937053994   0       0       0       LRU
问题:接受队列溢出产生错误,当抵达的包多于内核可以处理的包时,计算机会产生漫溢(overruns)。输入队列达到其上限(max_backlog)时,多抵达的那些包会全部被丢弃掉。
yujin2010good
关注
关注
点赞
19
收藏
打赏
评论
linux下网络丢包问题处理--overruns不断增加
最近业务上老有问题,查看发现overruns值不断增加,学习了一下相关的知识。发现数值也在不停的增加。G 了一下,发现这些 errors, dropped, overruns 表示的含义还不大一样。eth2      Link encap:Ethernet  HWaddr 00:8C:FA:F1:DA:78            inet addr:10.249.2.112  Bc
复制链接
扫一扫
专栏目录
Linux模拟网络丢包与延迟的方法
01-10
netem 与 tc:
netem 是 Linux 2.6 及以上内核版本提供的一个网络模拟功能模块。该功能模块可以用来在性能良好的局域网中,模拟出复杂的互联网传输性能,诸如低带宽、传输延迟、丢包等等情况。使用 Linux 2.6 (或以上) 版本内核的很多发行版 Linux 都开启了该内核功能,比如Fedora、Ubuntu、Redhat、OpenSuse、CentOS、Debian等等。
tc 是 Linux 系统中的一个工具,全名为traffic control(流量控制)。tc 可以用来控制 netem 的工作模式,也就是说,如果想使用 netem ,需要至少两个条件,一个是内核中的
Linux网卡丢包分类整理(1)——网卡篇
superbfly的专栏
09-15
241
​网卡丢包怎么办?或者再具体点,使用ifconfig查看网卡,发现有dropped统计时可以从哪些方面进行调查?要想知道为什么丢包,首先要弄清楚接收数据包的流程。
参与评论
您还未登录,请先
登录
后发表或查看评论
ifconfig 下面的一些字段(errors, dropped, overruns)
charleslei的专栏
05-11
1万+
一台机器经常收到丢包的报警,先看看最底层的有没有问题:
# ethtool em2 | egrep 'Speed|Duplex'
Speed: 1000Mb/s
Duplex: Full
# ethtool -S em2 | grep crc
rx_crc_errors: 0
Speed, Duplex, CRC 之类的都没问题,基
Linux丢包问题排查思路
最新发布
djp304的博客
11-19
584
Linux 丢包排查
【linux】网卡overruns报错问题原因及解决方案
Mrerlou的博客
09-29
1528
环境信息:
dx-hadoop57.dx:
cpu:40c
操作系统:ceontos6.7
部署服务:DataNode、NodeManager、Impala服务。
一、前言:
之前发生过某台节点网卡报错,影响结果 presto任务失败、HDFS读取变慢、Yarn任务执行变慢。
于是后续对net.if.total.errors这个指标统一加上了监控,过了一段时间后,在别的节点也收到了类似的报警。
于是想到还是之前的错误,于是让OP同学帮忙重新切换了网卡,切换网卡后一段时间确实没有收到告警了。但是过段时间
ifconfig 命令中 overruns产生原因
weixin_34038652的博客
05-16
688
overruns:故障包数原因:接受队列溢出产生错误,当抵达的包多于内核可以处理的包时,计算机会产生漫溢(overruns)。输入队列达到其上限(max_backlog)时,多抵达的那些包会全部被丢弃掉。(来源于:《Linux网络体系结构-Linux内核中网络协议的设计与实现》,中文版p447)
转载于:https://blog.51cto.com/71459...
Avoiding Buffer Overruns
ninioq的专栏
06-17
73
https://docs.microsoft.com/zh-cn/windows/desktop/SecBP/avoiding-buffer-overruns
缓冲区溢出:检查输入
Have you used strncpy in your program? If you have then you have to remember that it doesn't add the null c...
Linux网络故障的解决问题的思路
celiar_2005的专栏
03-15
714
Linux网络故障的解决问题的思路Linux网络故障排除应当遵循先硬件后软件的方法。因为硬件如果出现物理损坏那么如何设定网络都不能解决故障。解决问题的方法可以从自身Linux计算机的网卡查起,然后到服务器、集线器、路由器等硬件。如果确定硬件没有问题了,再来考虑软件的设定。1、检查网卡工作状况 (1)使用cat /proc/modules查看网卡的模块是否已被加载,驱动硬件是操作系统最基
ifconfig 看到Rx error overrun 如何解决
热门推荐
wjw7869的专栏
11-14
2万+

一台机器经常收到丢包的报警,先看看最底层的有没有问题:
# ethtool em2 | egrep 'Speed|Duplex'
Speed: 1000Mb/s
Duplex: Full
# ethtool -S em2 | grep crc
rx_crc_errors: 0
Speed, Duplex, CRC 之类的都没
Linux 无线网络断开的解决方案
weixin_52323930的博客
12-01
177
Linux 系统用着用着突然发现电脑上的 WiFi 图标不见了,电脑无法连接到无线网。这可急坏了,找遍设置也没找到哪里可以重新打开无线网,感觉就像是凭空消失了一样。折腾了一天,终于把无线网络恢复正常了。
首先,CTRL + ALT + T 打开 bash,我们可以使用 rfkill 命令查看无线设备的状态。
KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 20: …n style=“color:#̲669900”>></span
关于ttyS0: 1 input overrun(s)错误
09-08
1214
对于这个错误,网上的回答大多千篇一律,我找到两种有代表性的回答。
第一种
linux串口长期工作时,出现提示:ttyS0: 1 input overrun(s)
说明串口已经输入溢出,这时候我们应该将串口的缓冲区进行清除。
在发送命令前,清除缓冲区
在接受数据后,清除缓冲区
清除命令:tcflush(fd, TCIOFLUSH);
当然fd是你串口open时返回的int,这个fd必须有意义(>0);
TCIOFLUSH的意思是清除输入输出缓存。
——————————————————
Linux ‘网络配置’ 和 ‘故障排除’ 命令总结
qq_30192655的博客
12-28
586
1.ifconfig
ifconfig命令 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。
ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.24.186.123 netmask 255.255.240.0 broadcast 172.24.1
Linux学习第三天,常见基础命令
wangajak1的博客
05-03
79
系统状态检测
1.ipconfig 获取网卡、网络信息的命令。
[root@linuxprobe ~]# ifconfig
eno16777728(网卡名称): flags=4163 mtu 1500
inet 192.168.10.10(IP地址) netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::20c:29ff:f...
linux 网卡无效 设置_linux上网络配置不生效的怪异现象处理
weixin_42513601的博客
12-29
1043
1、在Linux上。在ifcfg-eth0上设置IP地址等信息具体配置信息例如以下已[root@rac01 Desktop]#more/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0BOOTPROTO=noneNM_CONTROLLED=yesONBOOT=noTYPE=EthernetUUID=3d5f18d5-73e0-48db-acbb...
重庆思庄Linux技术分享- linux 配置和显示Linux系统网卡的网络参数
duanweifang的博客
06-23
13
重庆思庄Linux技术分享- linux 配置和显示Linux系统网卡的网络参数
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:编程工作室
设计师:CSDN官方博客
返回首页
yujin2010good
CSDN认证博客专家
CSDN认证企业博客
码龄12年
暂无认证
366
原创
2万+
周排名
134万+
总排名
181万+
访问
等级
1万+
积分
347
粉丝
171
获赞
97
评论
636
收藏
私信
关注
热门文章
shell之转义字符\
100508
SELinux 的启动、关闭与查看
49810
python开发环境搭建--Eclipse+PyDev
40631
oracle体系结构详解
39284
glusterfs分布式文件系统详细原理
38650
分类专栏
me
10篇
kubenetes
35篇
cloud
3篇
aix
53篇
linux
41篇
solaris
5篇
windows
5篇
shell
47篇
network
8篇
Storage
38篇
oracle base
30篇
oracle backup
15篇
oracle problem
11篇
oracle certification
5篇
虚拟化
16篇
hpc
5篇
other
5篇
mysql
13篇
oracle rac
1篇
tsm
2篇
监控
6篇
hadoop
11篇
mongodb
26篇
python
26篇
nginx
17篇
haproxy+lvs
19篇
架构
4篇
apache
12篇
redis
21篇
ansible
5篇
dns
8篇
saltstack
5篇
java
4篇
glusterfs
4篇
devops
30篇
docker
16篇
dubbo
6篇
kafka
2篇
emq
1篇
elasticsearch-6.1.2
4篇
zookeeper
1篇
jprofiler
1篇
rocketmq
1篇
openshift
最新评论
zabbix监控http状态
weixin_58724266:
取不到值不报警
redis持久化原理详解
_MCTW:
“AOF文件远大于EDB”,这个 "EDB" 是不是应该是 "RDB"[思考]
IBM DS5020存储更换磁盘
星:
DS5020 更换电池后,最有路径已经修改,报错还在,提示写缓存禁用,如何修复?
mongodb设置集群认证启动报错keyFilers0.key are too open
冲啊Javascripit:
结合日志才发现是权限太大...真是离谱
mongodb用户安全认证详解
cidao1971:
讲的很容易理解,很适合我,谢谢。
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
ceph日常维护
Win2003访问Win2008共享文件报错的原因
运维常用对联
2020年2篇
2019年37篇
2018年36篇
2017年141篇
2016年86篇
2015年11篇
2014年5篇
2013年67篇
2012年147篇
目录
目录
分类专栏
me
10篇
kubenetes
35篇
cloud
3篇
aix
53篇
linux
41篇
solaris
5篇
windows
5篇
shell
47篇
network
8篇
Storage
38篇
oracle base
30篇
oracle backup
15篇
oracle problem
11篇
oracle certification
5篇
虚拟化
16篇
hpc
5篇
other
5篇
mysql
13篇
oracle rac
1篇
tsm
2篇
监控
6篇
hadoop
11篇
mongodb
26篇
python
26篇
nginx
17篇
haproxy+lvs
19篇
架构
4篇
apache
12篇
redis
21篇
ansible
5篇
dns
8篇
saltstack
5篇
java
4篇
glusterfs
4篇
devops
30篇
docker
16篇
dubbo
6篇
kafka
2篇
emq
1篇
elasticsearch-6.1.2
4篇
zookeeper
1篇
jprofiler
1篇
rocketmq
1篇
openshift
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
yujin2010good
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值