图片展示

网络丢包原因简析

关注:174 发表时间:2018-02-27 11:23:05

网络丢包原因简析

 

网络丢包是我们在使用ping对目站进行询问时,数据包由于各种原因在信道中丢失的现象。ping 使用了ICMP 回送请求与回送回答报文。ICMP 回送请求报文是主机或路由器向一个特定的目的主机发出的询问,收到此报文的机器必须给源主机发送 ICMP 回送回答报文。这种询问报文用来测试目的站是否可到达以及了解其状态。

许多时候,我们可能都会碰到网络连接时断时续的故障现象,面对这种网络故障,不少网络管理员都会使用Ping命令对网络连通性进行测试,测试结果表明此时的网络传输线路数据丢包现象非常严重,那么究竟是什么因素导致了数据丢包现象比较严重呢?是连接线路接触不稳定?是网络病毒?还是其他的潜在因素?

 

原因一:物理线路故障

网管员发现广域网线路时通时断, 发生这种情况时, 有可能是线路出现故障, 也可能是用户方面的原因。为了分清是否是线路故障,可以做如下测试。

如果广域网线路是通过路由器实现的,可以登录到路由器,通过扩展 ping 向对端路由器广域网接口发送大量的数据包进行测试。如果线路是通过三层交换机实现,可在线路两端分别接一台计算机,并将 IP 地址分别设为本端三层路由交换机的广域网接口地址,使用 ping 对端计算机地址 - t ”命令进行测试。

如果上述测试没有发生丢包现象, 则说明线路运营商提供的线路是好的, 引起故障的原因在于用户自身,需要进一步查找。

如果上述测试发生丢包现象, 则说明故障是由线路供应商提供的线路引起的, 需要与线路供应商联系尽快解决问题。

由物理线路引起的丢包现象还有很多,如光纤连接问题,跳线没有对准设备接口,双绞线及 RJ-45 接头有问题等。另外,通信线路受到随机噪声或者突发噪声造成的数据报错误,射频信号的干扰和信号的衰减等都可能造成数据包的丢失。我们可以借助网络测试仪来检查线路的质量。

 

原因二:设备故障

设备故障主要是指设备硬件方面的故障,不包含软件配置不当造成的丢包。如网卡是坏的,交换机的某个端口出现了物理故障,光纤收发器的电端口与网络设备接口,或两端设备接口的双工模式不匹配。

曾看过这样的例子,一交换机端口的光纤模块故障造成的丢包现象, 该交换机在通信一段时间后死机,即不能通信,重启后恢复正常。在经过一段时间观察后发现,某光纤模块存在问题,取一块新的模块替换,一切正常。

究其原因,交换机会对所有接收到的数据包进行 CRC 错误检测和长度校验,将检查出有错误的包丢弃,正确的包转发出去。但这个过程中有些有错误的包在 CRC 错误检测和长度校验中都均未检测出错误,这样的包在转发过程中不会被发送出去,也不会被丢弃,它们将会堆积在动态缓存中,永远无法发送出去,等到缓存中堆积满了,就会造成交换机死机的现象。最终结果是,数据包无法到达目的主机。

 

原因三:网络拥塞

网络拥塞造成丢包率上升的原因很多,主要是路由器资源被大量占用造成的。

如果发现网速慢, 并且丢包率呈现上升的情况, 这时应该 show process cpu show process mem ,一般情况下发现 IP input process 占用过多的资源。接下来可以检查 fast switching 在大流量外出端口是否被禁用,如果是,则需要重新使用。

再看一下 Fast switching on the same interface是否被禁用,如一个接口配有多个网段并且这些网段间流量很大时,路由器工作在 process-switches 方式,这种情况下要在接口上执行命令“enable ip route-cache same- interface 。”

接下来,用 show interfaces show interfaces switching 命令识别大量包进出的端口。一旦确认进入端口后,打开 IP accounting on the outgoing interface 看其特征,如果是攻击,源地址会不断变化但是目的地址不变,可以用命令 access list ”暂时解决此类问题(最好在接近攻击源的设备上配置),最终解决办法是停止攻击源。

应用中遇到的造成网络拥塞的情况还有很多, 如大量的 UDP 流量, 可以用解决 spoof attack 的步骤解决此问题。大量的组播流、广播包穿越路由器,路由器配置了 IP NAT 并且有很多 DNS 包穿越路由器等。上述情况造成网络拥塞后,通信双方采取流量控制,丢弃不能传输的包。

 

原因四:MTU 配置不当

在关键设备上MTU设置不当,也会造成网络丢包(以太网:1500 字节,IEEE 802.3/802.2 1492字节)。查看网络中关键设备的 MTU 配置。

在了解了如何定位网络丢包的位置之后,网管需要进一步分析丢包发生的原因,以排除故障。打开网络分析软件以后,我们配置好网络档案,选择分析档案之后,就可以开始分析了。

首先我们可以在图表中添加利用率统计,可以看到,在14:38:05 之后,网络利用率突然升高,接近40% 。推荐利用率不高于15% ,当网络利用率超过了 30% ,就会产生1%的丢包,并且呈几何倍数的增长。这个网络中,利用率高达 40%,肯定存在着严重的丢包现象。

 

了解了有丢包就会有 TCP 数据包重传之后,网管可以在诊断中,找出 TCP 数据包重传比较严重的主机。


鹏博士集团微信公众号

 友情链接:鹏博士集团官网

关于我们 / 新闻中心 / 业务领域 / 解决方案 / 服务产品 / 售后服务 / 联系我们

版权所有©鹏博士集团  备案号 粤ICP备18038205号-1