交换机接口出现大量队列2丢包,大概率不是硬件故障。结合日志IFNET/4/IF_EGRESS_DROP: Packet loss occurs in queue 2来看,这基本是H3C交换机默认调度机制导致的拥塞丢包,可以通过排查网络侧和对端服务器来解决。
在未手动配置QoS的H3C交换机上,每个物理端口都有8个出口队列(0-7),并使用严格优先级(SP, Strict Priority) 调度,优先级高的队列(7)拥有绝对优先的发送权。流量被交换机默认规则映射到队列2,在出方向拥塞时,队列2的缓冲区很容易被填满导致丢包。以下是系统的排查步骤:
这是排查问题的首要步骤。服务器Bond(网卡绑定)的哈希算法可能导致流量不均衡,使单个交换机端口过载。
定位Bond模式:在服务器上执行 cat /proc/net/bonding/bond0,重点关注输出中的 Bonding Mode 字段。
评估模式影响:
mode 0 (balance-rr) 或 mode 4 (802.3ad/LACP):最容易因哈希算法导致流量倾斜,应重点排查。可通过 ifconfig 或 ip -s link 检查Bond中各物理网卡的发送(TX)字节数是否均衡。
mode 1 (active-backup):通常不会导致该问题,因为同一时间只有一张网卡活跃。
即使平均流量不高,毫秒级的瞬时流量洪峰(Micro-burst)也可能瞬间占满队列2的缓冲区,这种短时丢包难以被常规监控发现。你可以检查对端业务是否产生了突发的、中等优先级的流量,如视频会议、某些语音流等,这些流量常被映射到队列2。
某些功能配置可能会意外耗尽队列2的缓冲区资源。
检查镜像配置:如果使用了端口镜像,特别是跨设备(如IRF)的远程镜像,镜像流量可能会在交换芯片内部占用队列2的资源,导致业务丢包。
确认未启用WRED:检查是否未启用WRED(加权随机早期检测),因为即使未配置QoS策略,某些系统也可能有默认的WRED阈值,触发丢包。
根据排查出的不同原因,可采取相应的解决方法:
问题在服务器:
调整Bond模式:将模式从 mode 0 或 mode 4 改为 mode 1 (active-backup) 并测试。若不能更改模式,可优化哈希策略(如从默认的 layer2+3 改为 layer3+4)来尝试均衡流量。
应用端调整:与服务提供商或应用开发团队沟通,尝试优化业务流量的发送模式,减少突发。
问题在交换机:
调整端口信任模式:通过 qos trust dscp 或 qos trust dot1p 命令,改变端口信任的优先级字段,可能会将流量重映射到其他队列,但需谨慎评估业务影响。
微调队列调度:使用 display qos queue-statistics interface outbound 查看各队列占用情况后,在确保不影响更高优先级队列的前提下,可临时增加队列2的调度权重(如使用WRR调度),或为队列2分配专用的共享缓冲区资源。
暂无评论
大量接口下存在拥塞丢包
Queue 2
Forwarded: 56670092 packets, 40469751603 bytes, 9960 pps, 104840000 bps
Dropped: 630511 packets, 920289409 bytes
Current queue length: 0 packets
开启brust-mode enable 如果未解决现场问题
将版本升级到R6340,新版本有新开发的buffer模式,配置如下五条命令后问题解决
buffer egress cell shared ratio 99
buffer egress cell total-shared ratio 99
buffer egress packet shared ratio 99
buffer egress packet total-shared ratio 99
buffer apply
暂无评论
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作
举报
×
侵犯我的权益
×
侵犯了我企业的权益
×
抄袭了我的内容
×
原文链接或出处
诽谤我
×
对根叔社区有害的内容
×
不规范转载
×
举报说明
暂无评论