Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

了解分配给路径的带宽不相等的 BGP 流量的负载平衡

多路径选项从活动路由决策流程中删除了仲裁程序,从而允许将从多个源获知的等价 BGP 路由安装到转发表中。但是,当可用路径的成本不相等时,您可能希望以非对称方式对流量进行负载均衡。

在转发表中安装多个下一跃点后,Junos OS 按前缀负载平衡算法选择特定的转发下一跃点。此过程根据数据包的源地址和目标地址进行哈希处理,以明确地将前缀对映射到可用的下一跃点之一。当哈希函数具有大量前缀时(例如可能发生在 Internet 对等交换上),并且用于防止通信节点对之间的数据包重新排序,因此按前缀映射效果最佳。

企业网络通常希望更改默认行为以唤起 按数据包负载 均衡算法。这里强调按数据包,因为它的使用用词不当,源于原始互联网处理器 ASIC 的历史行为。实际上,当前的瞻博网络路由器支持按前缀(默认)和按流负载均衡。后者涉及针对各种第 3 层和第 4 层标头进行哈希处理,包括源地址、目标地址、传输协议、传入接口和应用程序端口的部分内容。其效果是,现在各个流被哈希到特定的下一跃点,从而在可用的下一跃点之间更均匀地分布,尤其是在源和目标对之间进行路由时。

使用按数据包负载均衡时,包含两个端点之间的通信流的数据包可能会重新排序,但各个流中的数据包会保持正确的顺序。无论您选择按前缀还是按数据包负载平衡,接入链路的不对称都会带来技术挑战。无论采用哪种方式,与映射到快速以太网接入链路等的流相比,映射到 T1 链路等的前缀或流的性能都会下降。更糟糕的是,对于繁重的流量负载,任何同等负载均衡的尝试都可能导致 T1 链路完全饱和,以及数据包丢失导致的会话中断。

幸运的是,瞻博网络 BGP 实施支持带宽社区的概念。此扩展社区对给定下一跃点的带宽进行编码,当与多路径结合使用时,负载平衡算法会在与流量相对带宽成比例的下一跃点集之间分配流量。换句话说,如果您有 10 Mbps 和 1 Mbps 的下一跃点,则对于每个使用低速的流量,平均有 9 个流将映射到高速下一跃点。

只有按数据包的负载均衡才支持 BGP 带宽社区的使用。

配置任务包含两部分:

  • 配置外部 BGP (EBGP) 对等会话,启用多路径,并定义导入策略,以使用反映链路速度的带宽社区标记路由。

  • 启用按数据包(实际上是按流)负载平衡,以实现最佳流量分配。