IP 哈希是什么
聚合口把流量分到各成员时靠哈希算法:取出帧或报文里的若干字段做计算,算到同一个值的流量走同一条成员链路。基于 IP 的哈希(常叠加四层端口)适合网关与服务器场景,因为这类流量的特征是终端多、会话多,按源目 IP 加端口散列后分布更均匀。
基本信息
| 常见因子 | 源目 MAC、源目 IP、源目 IP + 四层端口 |
|---|---|
| 配置位置 | 华为在 Eth-Trunk 接口下,Cisco 多为全局配置 |
| 常见命令 | 华为 load-balance src-dst-ip;Cisco port-channel load-balance src-dst-ip |
| 适用场景 | 多终端、多会话的业务流量 |
| 不适用 | 单会话大流量,无论怎么配都受单成员带宽限制 |
典型使用场景
- 服务器上行聚合:按会话散列,避免单一成员被打满
- 网关到核心的链路上:终端数量多、会话丰富,IP 哈希效果好
- 分布不均排查:对比不同哈希因子下的成员流量差异
- 跨 NAT 环境部署:评估转换后哈希因子是否退化
- 聚合扩容前后:复查分布比例是否与预期一致
配置示例
配置示例
# 华为:在聚合口下选择哈希因子(关键字按平台支持情况核对)
interface Eth-Trunk1
load-balance src-dst-ip # 按源目 IP 散列
load-balance src-dst-mac # 对比:按 MAC 散列(部分平台支持)
# Cisco:全局配置
port-channel load-balance src-dst-ip
display interface Eth-Trunk1 # 查看聚合口整体流量
display eth-trunk 1 verbose # 查看各成员的流量分布
show etherchannel load-balance # Cisco 查看当前哈希方式哈希因子选择
| 因子 | 适合的流量特征 | 局限 |
|---|---|---|
| 源目 MAC | 跨三层设备时使用,纯二层转发场景 | 同一网关下的终端 MAC 种类有限,易集中 |
| 源目 IP | 终端数量多、IP 分布广的场景 | 经过 NAT 后大量会话可能同为少数几个 IP |
| 源目 IP + 端口 | 会话数多的服务器与网关流量 | 加密流量看不到内层端口时按外层计算 |
| 按包散列 | 追求更均衡的分布 | 可能引发乱序,主流实现默认按流 |
跨 NAT 或代理的场景要按真实拓扑实测:地址转换后哈希因子发生变化,原本设计均匀的分布可能退化为集中,验收时用成员流量计数比对而不是只看配置。
改哈希因子会造成已建立会话重新分布,表现为 TCP 短暂重传;在维护窗口执行,并把预期行为提前告知业务侧。
验收方法
把各成员的流量计数按时间点采集两次,比较增量比例是否接近均值。若某成员长期明显偏高,先更换哈希因子复测,再考虑分流或调换成员排序——分布不均的根因通常是流量特征单一,而不是链路故障。