oblivion
2023-06-29 21:43:04 +08:00
10G 到末端 2.5G 的设备中间有设备不支持 flow control ,很显然要么是你的( 2 个 10G ,8 个 2.5G )交换机出现了问题,要么是你的 10G 光猫出现了问题,不支持暂停帧。
原理很简单,10G 你能跑到 2600Mbps ,而 2.5G 接口最大只能跑到 2350Mbps ,
在你测速时来自 10G 的 2600Mbps 瞬间把你 2.5G 接口流量打满,每秒超过的约 300Mb 数据没有地方存储,只能丢掉凭空消失,造成了巨量的丢包率,导致更高重传。
启用 flow control 后,来自 10G 接口的流量打满 2350Mbps 后,交换机会向上一级流量来源设备逐级发送暂停帧来中断传输,以保证 10G 接口到当前 2.5G 的流量始终不大于 2350Mbps ,否则会导致巨量丢包触发巨量重传,最终稳定在接口速度的半速(一半正常数据包,一半重传)
任何存在不等速接口的网络设备都会存在该问题,10G->1G ,10G->2.5G ,都需要启用 flow control 来确保高速接口到低速接口的流量不超过低速接口的承载能力。
解决方案两个,要么全链路设备启用 flow control ,要么上级设备限速,让 2.5G 接口的设备限速不大于 2350Mbps