所谓的网络丢包是我们在使用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 包穿越路由器等。上述情况造成网络拥塞后,通信双方采取流量控制,丢弃不能传输的包。

如何确定网络丢包的存在

通常我们利用ping命令测试网络丢包与否。

在上图中可以看到,在本机上向 xxxxxx 这个不存在的地址进行长时间 PING 的时候,发送出去的 ICMP 包都丢失了,丢失率达到 100% 。即从本机到 xxxxxxip地址 这个实际不可达地址的路径上存在丢包。

1. 解决方案

针对网络设备故障:通过分段捕获的方法,在网络中关键设备的两端,使用科来网络分析系统进行抓包,确定该设备是否丢包,从而准确定位丢包设备。

针对网络拥塞:在核心交换机上配置镜像,使用科来网络分析系统抓包。

分析关键链路(一般是出口链路) 的流量占用情况, 查看网络利用率是否过高,每秒数据包是否过多,数据包大小分布是否合理、TCP会话是否正常等。

当然最根本的方法就是限制用户流量,就是针对每个上网的用户进行流量控制,比如禁止访问视频网站和其他与工作内容无关的网站,同时又能针对每个用户做出精准的流量限制,防止其对有限网络带宽的过度占用。

还可以针对一些流量做出服务质量保证( QOS),比如可以将与工作关系比较大的流量:如网页访问、邮件流量等的流量优先级提高,从而可以在一定程度上缓解网络拥塞,保证高优先级业务可以优先得到转发。 (治标不治本的方法)

2. 另外关于 ping IP 老是丢包的问题:

通常有以下几种原因:

由于云服务器或者vps云主机的 IIS 中运行了非法或者没有独立进程池的原因 , 找到这个站点 , 给他一个独立的进程池 .

如果服务器上捆绑了一个主机头为空的站点的话 , 容易造成这个问题 , 最好把这个主机为空的站点给删除了 , 或者把这个站点的进程池给独立起来 , 就可以解决问题。

由于对服务器的带宽和流量限制的太低问题 , 一般有一些机房的IDC服务商为了获得更多的托管的用户 , 十分的苛刻的限制用户托管的服务器 , 造成流出去的十分少 , 请求的多 , 就造成丢包问题。

由于交换机的交换口的问题:首先使用 Ping 命令测试,发现不定时的有数据包丢失的现象,初步认为是物理层的原因。重做网线的 RJ45头后,故障依旧,换根网线也不行。怀疑是网卡接口或者交换机端口的问题。经查看网卡驱动无误,网卡接口也没有任何异常。再查看交换机端口, 发现与服务器连接的交换 机端口工作指示灯在绿与黄之间闪烁, 这说明端口工作不正常。使用超级终端登录交换机,查看此端口的参数,发现此端口是工作在100Mbyte/s全双工模式,回到服务器前查看本地连接状态,网卡是工作在 10Mbyte/s 全双工模式。 交换机的端口与网卡的传输速率和双工模式不一致。将网卡工作模式改为 100Mbyte/s 全双工模式后测试,一切正常,故障解决。

由于被 DDOS或者洪水猛兽攻击造成的大量丢包 , 这个时候没有什么好说的 , 赶快加上硬件防火墙吧

3. 总之一般排除故障的方法是:

带宽有没有占满

换个交换机端口试试

换个网线试试

网卡及主板驱动是不是没装 ( 一般不会是这个问题 )

交换机上设置是100M的还是10M的 , 与机器设置成一样的

ping命令一直测试网络丢包原因及处理解决方法相关推荐

  1. 数据丢包怎么修复_网络丢包怎么办?这些解决办法不得不知

    在做弱电项目中,我们经常会出现网络比较卡.监控有几路画面不显示.网络时正常,时不正常等问题,这些故障大部分情况下是跟网络丢包有关,今天我们来看下,网络丢包怎么办,常见故障分析及处理方式. 当网络有问题 ...

  2. 26、网络丢包怎么办?这些解决办法不得不知

    关于监控出现网络比较卡.监控有几路画面不显示.网络时正常,时不正常等问题的解决方法,其中这些故障在很多情况下是跟网络丢包有关,今天我们来看下,网络丢包怎么办,常见故障分析及处理方式. 当网络有问题,首 ...

  3. 计算机网络丢包排查,ping命令图文教程,电脑测试网络丢包延迟,检测网络故障通不通...

    原标题:ping命令图文教程,电脑测试网络丢包延迟,检测网络故障通不通 你好,我是老盖,首先感谢你观看本文,本篇文章我做的有视频,视频讲述的比较详细,也可以看我发布的视频. 这里演示一下ping的命令 ...

  4. 电脑ping服务器ip显示数据丢失,Win7系统如何测试网络丢包率解决网页显示不全的问题...

    Win7系统在上网过程中打开网页经常遇到网页显示不全,或者玩游戏卡顿的现象,但是过一会儿又恢复了.怎么回事呢?可能是因为网络丢包率太高导致的,我们可以Ping一下网络,找到故障原因.那么接下来小编和大 ...

  5. ping命令使用介绍及怎样使用Ping命令来测试网络连通性

     转载:http://blog.csdn.net/star_xiong/article/details/17320473 ping命令使用介绍及怎样使用Ping命令来测试网络连通性 一.ping命 ...

  6. linux mtr运行脚本,使用mtr测试网络丢包率和平均延时的脚本实例

    A h4u}+XLFSj0#!/bin/bash r+Q0hW m KH0# 测试网络丢包率和平均延时,注意变量clr和cdt的赋值,不同版本的mtr对应的字段位置不同51Testing软件测试网yS ...

  7. 实时检测服务器延迟和丢包率脚本,使用mtr测试网络丢包率和平均延时的脚本实例...

    mtr(a network diagnostic tool)是一个神奇的指令,能按要求对路由中所有节点进行批量测试.简单敲一个"mtr qq.com"将会有意外收获! 当需要进行产 ...

  8. 网络分流器-网络丢包原因以及修复方法

    戎腾网络分流器作为专业的流量监控采集设备,具有丢包率低,性能可靠,高速率等优势,是整个网络安全领域网络监控前端重要的基础装备! 正交架构,支持1000以上10G和200以上100G,可根据需求进行调整 ...

  9. 解决网络丢包问题及故障判断方法

    我们首先来认识一下什么是丢包,以及什么样的现象被成为是网络丢包: 2 数据在INTERNET上是以数据包为单位传输的,每包nK,不多也不少.这就是说,不管网络线路有多好.网络设备有多强悍,你的数据都不 ...

最新文章

  1. 在VS2010/MFC中如何对对话框添加控件
  2. 狂汗!售货员竟遭遇到最彪悍的付款方式(转)
  3. java引用类型和值类型_[Java教程]JavaScript中值类型和引用类型的区别
  4. 【线上分享】边缘计算与云原生
  5. Spring @Async配置4. 基于@Async无返回值调用 使用的方式非常简单,一个标注即可解决所有的问题: 1 @Async //标注使用 2 public void asyncMe
  6. python tensorflow教程_TensorFlow入门教程
  7. Windows学习总结(8)——DOS窗口查看历史执行过的命令的三种方式
  8. rabbitmq消费者设置手动ack
  9. c语言中怎么避免整数除法,大整数除法
  10. 教你STM32官方开发板原理图下载
  11. XP纯净版光盘ISO镜像文件
  12. 什么是DirectX?什么是OpenGL?API的作用
  13. 厦门大学854结构力学(含结构动力学)考研参考书目
  14. Debug Blocker
  15. 英文邮件模板--向论文作者索要源代码(write an email requesting for code)
  16. 电脑内存占用过高怎么解决?
  17. 6种穷人思维必须警惕
  18. 如何给你的网站接入第三方支付功能
  19. 网页设计与开发(1)
  20. 【编译原理】山东大学编译原理复习提纲

热门文章

  1. flash软件下载安装
  2. 一起来复习Data Science:统计学中那些让人容易遗忘的知识点
  3. Arduino VS/HX1838红外遥控接收和发送DEMO
  4. ramdump-parser使用说明
  5. 机器学习基础 - [第四章:正则化](3)线性回归的正则化
  6. PTAM及第三方依赖库编译问题记录
  7. 在 Visual Studio 2010 中创建 ASP.NET Web 项目
  8. Android多媒体四:MediaRecorder录制视频短片
  9. thickBox参数详解
  10. SonicWall如何安全模式升级防火墙