首页/网络/VLAN 与高可用速查/基于 IP 与端口的哈希

基于 IP 与端口的哈希

IP 哈希(常叠加四层端口)适合网关与服务器场景:以源/目的 IP 及会话为因子散列,多会话业务分布更均匀。

VLAN 与高可用速查网络更新于 2026-10-13

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 短暂重传;在维护窗口执行,并把预期行为提前告知业务侧。

验收方法

把各成员的流量计数按时间点采集两次,比较增量比例是否接近均值。若某成员长期明显偏高,先更换哈希因子复测,再考虑分流或调换成员排序——分布不均的根因通常是流量特征单一,而不是链路故障。

易错点

  • NAT 设备把大量终端转成同一源 IP 后,IP 哈希可能退化为集中,分布评估必须结合转换后的真实地址
  • 对加密流寄希望于四层哈希:内层端口不可见时按外层字段计算,分布与预期不符
  • 指望聚合提升单会话带宽:单个会话始终走一条成员链路,受单口速率限制
  • 改哈希因子不做窗口安排:会话重分布引发的重传被业务侧误判为链路故障
  • 只看配置不看计数:分布是否均匀要用成员流量增量验证,配置正确不代表效果好

数据来源与参考

  • 华为 S 系列交换机产品文档(IP 哈希)
  • Cisco IOS 配置手册(Load Balancing)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌