服务器的丢包率高怎么办

网络出现丢包状况了怎么办,具体情况可以从以下几点来判断:

1.有可能是线路故障导致的,所以可以用光纤打光仪先判断是否是光纤的问题。

2.对于设备方面来说,很多都是网络接口的光纤接触不良等。

3.也可能是操作系统的问题,比如网卡问题和网络运营线路问题,可以尝试使用ping命令测试。

什么是丢包

数据在Internet上是以数据包为单位传输的,单位是字节,数据在网络上传输,受网络设备,网络质量等原因的影响,使得接收到的数据少于发送出去的数据,造成丢包。

如果是硬件丢包,可以查看eth0网卡Ring Buffer最大值和当前设置

sql 复制代码
$ethtool -g eth0

解决方案:修改网卡eth0接收与发送硬件缓存区大小

sql 复制代码
$ethtool -G eth0 rx 4096 tx 4096

1.查看网卡丢包统计:ethtool -S eth1/eth0

2.查看网卡配置状态:ethtool eth1/eth0

如果是网卡流控丢包

1.查看流控统计:

sql 复制代码
ethtool -S eth1 | grep control

2.查看网络流控配置:ethtool -a eth1

解决方案:关闭网卡流控

sql 复制代码
ethtool -A ethx autoneg off //自协商关闭
ethtool -A ethx tx off //发送模块关闭
ethtool -A ethx rx off //接收模块关闭

网线接触不良:

如果网卡统计里面存在crc error计数增长,很可能是网线接触不良:

sql 复制代码
ethtool -S eth0

解决方案:一般试着重新插拔一下网线,或者换一根。

如果是网卡驱动丢包

sql 复制代码
ifconfig eth1/eth0

1.RX errors: 表示总的收包的错误数量,还包括too-long-frames错误,Ring Buffer 溢出错误,crc 校验错误,帧同步错误,fifo overruns 以及 missed pkg 等等。

2.RX dropped: 表示数据包已经进入了 Ring Buffer,但是由于内存不够等系统原因,导致在拷贝到内存的过程中被丢弃。

3.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 而造成的丢包。

  1. RX frame: 表示 misaligned 的 frames。

  2. 对于 TX 的来说,出现上述 counter 增大的原因主要包括 aborted transmission, errors due to carrirer, fifo error, heartbeat erros 以及 windown error,而 collisions 则表示由于 CSMA/CD 造成的传输中断。

相关推荐
用户0328472220708 小时前
如何搭建本地yum源(上)
运维
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz3 天前
Maven依赖冲突
java·服务器·maven
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
古城小栈3 天前
Unix 与 Linux 异同小叙
linux·服务器·unix
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造