1. 物理层
物理线路接触不良
光模块故障
设备硬件故障
2. 数据链路层
二层环路导致CPU过高
畸形数据帧直接丢弃(源MAC地址为广播MAC等)
MAC地址漂移
MTU值不匹配
二层攻击
3. 网络层
负载分担路径出现部分故障
报文分片丢失无法重组
三层攻击
TTL为0
防火墙来回路径不一致
4. 传输层
MSS不匹配
5. 应用层
端口被抑制
6. 其他
QOS限制
杀毒软件等限制
数据包
校验检查失败
那我们该如何排查这些问题呢?
通常网络丢包排查可以根据网络架构排查,七层模型排查等,以下是排障步骤:
1. 查看是否是用户终端问题引起的丢包,例如(网卡,杀毒软件,操作系统等),可以直接使用其他正
常的终端设备做替换,观察网络丢包问题是否仍然存在,若存在则执行步骤2。不存在则排查完
成。
2. 长ping用户的网关,观察丢包情况。若存在丢包情况,则判断丢包为二层丢包,执行步骤3。若不
存在丢包,则判断丢包为三层丢包,执行步骤7。
3. 在接入交换机上检查链路是否存在震荡。若Ping报文经过的端口如果反复Up/Down,将导致Ping
丢包的情况。在用户视图下开启调试开关:terminal debugging、terminal monitor。如果有端口
状态的变化,则检查端口速率配置以及端口双工模式等是否正确,以及对端端口的相关属性配置是
否一致,可尝试插拔或更换网线、更换光模块来解决。若ping包经过的端口无异常,则执行步骤
4。
4. 检查交换机是否存在环路协议震荡。查看设备上是否使能了STP等环路协议,如果环路协议存在震
荡,会影响ICMP报文的转发和处理。如果设备上使能了相关的环路协议,在Ping丢包期间反复查
看环路协议的状态,确认是否存在环路协议震荡。可以结合查看端口状态是否异常来确定是否是环
路协议引起的震荡。若存在问题,则修改后观察丢包现象是否存在,不再丢包则排查完成。若仍然
有丢包现象,则执行步骤5。
5. 检查交换机
端口是否存在丢包,错包的情况。执行display interface 命令,反复检查端口是否有
Discard丢包计数或其他错包计数增长,Discard 丢包计数显示端口流量是否出现拥塞。若出现拥
塞,则配置提高该端口当前的缓存并观察丢包现象是否依然存在,丢包现象消失则排查成功。若丢
包现象依然存在或端口显示并未拥塞,则执行步骤6。
6. 检查交换机CPU使用情况是否较高。使用命令display cpu-usage查看CPU使用率情祝根据显示结果
判断。使用display cpu-defend statistics 命令查看上送CPU报文的统计信息,判断是否存在过多
由于来不及处理而丢弃的协议报文,检查网络中是否遭受攻击。若存在攻击则可配置攻击溯源惩罚
或本机攻击策略黑名单等方式进行处理。处理完成后观察丢包现象是否依然存在,不存在则排查成
功,若依旧存在或网络中不存在攻击CPU使用率高的问题则执行步骤7。
7. 使用tracert命令配合端口报文收发情况判断三层网络中出现丢包的位置,执行步骤8
8. 检查设备路由是否出现震荡,观察去往目的IP的路由的下一跳信息,以及出端口信息是否存在变
化,如果频繁变化需排查是否存在IP地址冲突、端口震荡等问题。若出现问题,则根据原有网络规
划进行修改,修改后观察网络中是否仍有丢包现象。丢包现象消失,则排查成功。修改后丢包现象
仍然存在,或者路由没有震荡,则执行步骤9。
9. 检查ARP是否存在震荡。观察ARP是否震荡,包括MAC、VLAN以及出端口是否存在变化。一般老
化时间都是从20分钟慢慢下降的,如果ARP的老化时间很快就刷新成20分钟,则说明ARP有刷新,
建议排查是否存在IP地址冲突或者环路。若出现问题,则根据原有网络规划进行修改,修改后观察
网络中是否仍有丟包现象。丢包现象消失,则排查成功。修改后丢包现象仍然存在,或ARP没有震
荡,则执行步骤10
10. 检查ICMP报文的CPCAR是否存在丢包。使用display cpu-defend statistics packet type icmp all命
令,反复查看是否存在CPCAR丢包观察ICMP报文是否有被丢弃(Drop), 如果有Drop计数,可以适
当的放大CPCAR值,使得ICMP报文能够正常收发处理。操作完成后观察丢包现象是否仍然存在,
不存在则排查成功。若依旧存在或CPCAR没问题则执行步骤11。
11. 检查CPU使用情况是否较高。使用命令display cpu-usage查看CPU使用率情况根据显示结果判断。
使用display cpu-defend statistics 命令查看上送CPU报文的统计信息,判断是否存在过多由于来
不及处理而丢弃的协议报文,检查网络中是否遭受攻击。若存在攻击则可配置攻击溯源惩罚或本机
攻击策略黑名单等方式进行处理。处理完成后观察丢包现象是否依然存在,不存在则排查成功,若
依旧存在或网络中不存在攻击CPU使用率高的问题则执行步骤12
12. 如果故障依然存在,拨打华为400热线或向华为工程师申请现场支持