多路径下的流量怎么分
多路径装载进转发表之后,流量按逐流哈希分配:设备根据报文的地址等字段计算哈希值并选择出接口,同一条流固定走同一条路径,避免报文乱序。这也决定了链路利用率不均衡属于正常现象——流数量少时哈希分布更集中,链路之间的实际利用率可能相差很大。
基本信息
| 分配方式 | 逐流哈希,通常基于源与目的地址,配置后也可纳入端口等字段 |
|---|---|
| 默认行为 | 同一条流不换路径,避免乱序 |
| 不均衡原因 | 流数量少、哈希分布集中 |
| 观察方式 | 接口速率、转发面明细、路由表等价条目 |
| 调优方向 | 增加链路数量、调整哈希算法、观察实际流数量 |
| 前置条件 | 先确认多路径真的装载了,见等价条件 |
典型使用场景
- 带宽叠加验证:确认多路径生效后各链路的实际利用率
- 排查不均衡:先统计流数量,少量大流场景天然倾斜
- 选路调优:需要更均匀分布时评估哈希算法与链路数量
- 排障「换了设备还是不均」:差异来自流量特征而不是配置
- 容量评估:按逐流哈希的实际分布决定各链路容量
观察分布
观察分布
show ip route 10.1.0.0/24 # 看等价下一跳条目
show ip cef 10.1.0.0/24 internal # 看哈希后的转发路径与算法
show interfaces | include rate # 看各接口实际速率
show ip bgp 10.1.0.0/24 # 确认 BGP 侧的多路径标记不均衡的常见原因
| 原因 | 现象 | 处理方向 |
|---|---|---|
| 流数量少 | 少数大流占满单条链路 | 属正常现象,按流特征规划容量 |
| 哈希分布集中 | 偏差稳定复现 | 评估更换哈希算法 |
| 多路径未真正装载 | 只有一条链路有流量 | 核对等价条件与转发面 |
| 链路带宽不一致 | 等量分流压垮小带宽链路 | 按带宽设计,或调整策略 |
| 两个方向不对称 | 出向均衡但端到端仍偏 | 分别核对来回两个方向 |
用 ping 测负载分担没有意义:单一五元组的流始终走同一条路径,测不出分摊效果。要看分布就用接口速率与转发面明细,必要时统计实际流数量。
逐流分配的设计目标是保序:同一条流频繁换路径会带来乱序与重传,代价远高于利用率不均,因此不均衡是取舍结果而不是缺陷。