BGP负载分担的问题讲解

合集下载

pbr负载分担方式

pbr负载分担方式

pbr负载分担方式PBR负载分担方式PBR(Policy-Based Routing)是一种基于策略的路由技术,可以根据不同的策略将数据流量分配到不同的路径上,从而实现负载均衡和流量控制。

在网络架构中,PBR负载分担方式是一种非常重要的技术,可以有效地提高网络的性能和可靠性。

一、PBR负载分担方式的原理PBR负载分担方式的原理是通过设置路由策略,将数据流量分配到不同的路径上,从而实现负载均衡和流量控制。

在PBR负载分担方式中,可以根据不同的条件来设置路由策略,如源IP地址、目的IP地址、协议类型、端口号等。

当数据流量满足某个条件时,就会按照相应的路由策略进行转发。

二、PBR负载分担方式的优点PBR负载分担方式具有以下优点:1. 提高网络性能:PBR负载分担方式可以将数据流量分配到不同的路径上,从而实现负载均衡,避免某个路径过载,提高网络性能。

2. 提高网络可靠性:PBR负载分担方式可以将数据流量分配到多条路径上,当某个路径出现故障时,可以自动切换到其他路径,从而提高网络可靠性。

3. 灵活性强:PBR负载分担方式可以根据不同的条件来设置路由策略,具有很强的灵活性,可以根据实际情况进行调整。

三、PBR负载分担方式的应用场景PBR负载分担方式适用于以下场景:1. 多线路负载均衡:当网络中存在多条路径时,可以使用PBR负载分担方式将数据流量分配到不同的路径上,从而实现负载均衡。

2. 多路径容错:当网络中存在多条路径时,可以使用PBR负载分担方式将数据流量分配到多条路径上,当某个路径出现故障时,可以自动切换到其他路径,从而提高网络可靠性。

3. 流量控制:可以使用PBR负载分担方式对不同类型的流量进行控制,如限制某个应用程序的带宽,避免影响其他应用程序的正常使用。

四、PBR负载分担方式的实现方法PBR负载分担方式的实现方法如下:1. 设置路由策略:根据不同的条件设置路由策略,如源IP地址、目的IP地址、协议类型、端口号等。

bgp 选路原则和负载分担控制

bgp 选路原则和负载分担控制

bgp 选路原则和负载分担控制BGP(边界网关协议)是一种用于在互联网中实现自治系统(AS)之间的路由选择的协议。

在BGP中,选路原则和负载分担控制是非常重要的概念。

选路原则是指BGP路由器在选择最佳路径时遵循的规则,而负载分担控制则是指如何平衡流量以避免网络拥塞。

让我们来了解一下BGP的选路原则。

BGP路由器通常会收到来自不同邻居路由器的多个路由信息,但只能选择其中的一个作为最佳路径。

选路原则主要包括以下几个方面:1. 路径长度:BGP路由器会比较各个路径的AS路径长度,选择最短路径作为最佳路径。

AS路径长度是指通过该路径传输数据所经过的自治系统数量。

2. 路径属性:BGP路由器还会比较路径的属性,如自治系统的可达性、AS路径的稳定性、路径的可用带宽等。

这些属性会影响路径的优先级,从而影响路由的选择。

3. 本地优先级:在BGP路由器之间建立邻居关系时,可以通过设置本地优先级来指定某个路由器的优先级。

在选路过程中,具有更高本地优先级的路由器将优先选择其路由信息。

4. 路由策略:BGP路由器可以根据自定义的路由策略来选择最佳路径。

例如,可以根据目的地的IP地址范围、数据包类型或优先级等来设置路由策略。

选路原则的目标是选择最佳路径,从而实现高效的路由选择和数据传输。

通过选择最短路径、稳定的路径和具有足够带宽的路径,BGP 能够提供可靠的网络连接和高质量的数据传输。

接下来,让我们来看看BGP的负载分担控制。

负载分担控制是指如何在多条路径之间分配流量,以避免某条路径因过载而导致网络拥塞。

在BGP中,负载分担控制可以通过以下方式实现:1. 多路径系统(Multipath):BGP支持多路径系统,即可以同时使用多条路径来传输流量。

当BGP路由器收到多条相等的最佳路径时,可以选择同时使用这些路径,以实现负载分担。

2. 路由策略:BGP路由器可以根据自定义的路由策略来分配流量。

例如,可以设置基于源IP地址或目的地IP地址的负载分担策略,将不同的流量分配到不同的路径上。

利用BGP虚拟下一跳技术实现IP骨干网流量负载均衡

利用BGP虚拟下一跳技术实现IP骨干网流量负载均衡

配置说明:【R1】interface Loopback0ip address 192.168.0.1 255.255.255.255interface Serial1/0no ship address 172.16.15.1 255.255.255.0interface Serial1/1no ship address 172.16.12.1 255.255.255.0interface Serial1/2no ship address 172.16.16.1 255.255.255.0 interface Serial1/3no ship address 172.16.13.1 255.255.255.0ip route 10.0.0.1 255.255.255.255 172.16.13.3 【虚拟下一跳地址指向真正下一跳,并由本域内IGP(OSPF)路由引入,使本域内所有邻居都能学习到虚拟下一跳地址的路由,从而使邻居从自己学习到的路由能最优化】ip route 192.168.0.3 255.255.255.255 172.16.13.3ip prefix-list ISP-B seq 5 permit 172.16.34.0/24【做前缀列表匹配需要改变下一跳的前缀】route-map set-nexthop permit 10 【做route-map,改相应前缀下一跳性】match ip address prefix-list ISP-Bset ip next-hop 10.0.0.1route-map set-nexthop permit 20router ospf 1router-id 192.168.0.1no auto-costredistribute static metric 10 metric-type 1 subnets【引入静态路由,使域内所有IBGP邻居能学到虚拟下一跳地址,从面使邻居从自己学习到的路由能最优化】network 172.16.12.0 0.0.0.255 area 0network 172.16.15.0 0.0.0.255 area 0network 172.16.16.0 0.0.0.255 area 0network 192.168.0.0 0.0.0.255 area 0router bgp 100no synchronizationbgp router-id 192.168.0.1bgp log-neighbor-changesneighbor internal peer-groupneighbor internal remote-as 100neighbor internal update-source Loopback0neighbor internal route-map set-nexthop out【做出方向的ruout-map改变发向邻居路由的下一跳】neighbor 192.168.0.2 peer-group internalneighbor 192.168.0.3 remote-as 200neighbor 192.168.0.3 ebgp-multihop 255neighbor 192.168.0.3 update-source Loopback0neighbor 192.168.0.3 soft-reconfiguration inboundneighbor 192.168.0.5 peer-group internalneighbor 192.168.0.6 peer-group internalno auto-summary【R2】interface Loopback0ip address 192.168.0.2 255.255.255.255interface Serial1/0no ship address 172.16.26.2 255.255.255.0interface Serial1/1no ship address 172.16.12.2 255.255.255.0interface Serial1/2no ship address 172.16.25.2 255.255.255.0interface Serial1/3no ship address 172.16.24.2 255.255.255.0ip route 10.0.0.1 255.255.255.255 172.16.24.4【虚拟下一跳地址指向真正下一跳,并由本域内IGP(OSPF)路由引入,使本域内所有邻居都能学习到虚拟下一跳地址的路由,从而使邻居从自己学习到的路由能最优化】ip route 192.168.0.4 255.255.255.255 172.16.24.4ip prefix-list ISP-B seq 5 permit 172.16.34.0/24【做前缀列表匹配需要改变下一跳的前缀】route-map set-nexthop permit 10【做route-map,改相应前缀下一跳性】match ip address prefix-list ISP-Bset ip next-hop 10.0.0.1route-map set-nexthop permit 20router ospf 1router-id 192.168.0.2log-adjacency-changesno auto-costredistribute static metric 10 metric-type 1 subnets【引入静态路由,使域内所有IBGP邻居能学到虚拟下一跳地址,从面使邻居从自己学习到的路由能最优化】network 172.16.25.0 0.0.0.255 area 0network 172.16.26.0 0.0.0.255 area 0network 192.168.0.0 0.0.0.255 area 0router bgp 100no synchronizationbgp router-id 192.168.0.2bgp log-neighbor-changesneighbor internal peer-groupneighbor internal remote-as 100neighbor internal update-source Loopback0neighbor internal route-map set-nexthop out【做出方向的ruout-map改变发向邻居路由的下一跳】neighbor 192.168.0.1 peer-group internalneighbor 192.168.0.4 remote-as 200neighbor 192.168.0.4 ebgp-multihop 255neighbor 192.168.0.4 update-source Loopback0neighbor 192.168.0.5 peer-group internalneighbor 192.168.0.6 peer-group internalno auto-summary【R3】由于R3、R4域内没有其它IBGP邻居,下挂设备都运行IGP所以不需要以虚拟下一跳的方式建立EBGP邻居,可以用正常的方式建立EBGP邻居即可interface Loopback0ip address 192.168.0.3 255.255.255.255interface Serial1/0no ship address 172.16.34.3 255.255.255.0interface Serial1/3no ship address 172.16.13.3 255.255.255.0router ospf 1router-id 192.168.0.3log-adjacency-changesno auto-costnetwork 172.16.34.0 0.0.0.255 area 0router bgp 200no synchronizationbgp router-id 192.168.0.3bgp log-neighbor-changesnetwork 1.0.0.0network 172.16.34.0 mask 255.255.255.0neighbor 192.168.0.1 remote-as 100neighbor 192.168.0.1 ebgp-multihop 255neighbor 192.168.0.1 update-source Loopback0neighbor 192.168.0.1 soft-reconfiguration inboundneighbor 192.168.0.4 remote-as 200neighbor 192.168.0.4 update-source Loopback0no auto-summaryip route 0.0.0.0 0.0.0.0 172.16.13.1ip route 1.0.0.0 255.0.0.0 Null0ip route 192.168.0.1 255.255.255.255 172.16.13.1【R4】由于R3、R4域内没有其它IBGP邻居,下挂设备都运行IGP所以不需要以虚拟下一跳的方式建立EBGP邻居,可以用正常的方式建立EBGP邻居即可interface Loopback0ip address 192.168.0.4 255.255.255.255interface Serial1/0no ship address 172.16.34.4 255.255.255.0serial restart-delay 0interface Serial1/3no ship address 172.16.24.4 255.255.255.0serial restart-delay 0router ospf 1router-id 192.168.0.4log-adjacency-changesno auto-costnetwork 172.16.34.0 0.0.0.255 area 0network 192.168.0.0 0.0.0.255 area 0router bgp 200no synchronizationbgp router-id 192.168.0.4bgp log-neighbor-changesnetwork 1.0.0.0network 172.16.34.0 mask 255.255.255.0neighbor 192.168.0.2 remote-as 100neighbor 192.168.0.2 ebgp-multihop 255neighbor 192.168.0.2 update-source Loopback0neighbor 192.168.0.3 remote-as 200neighbor 192.168.0.3 update-source Loopback0no auto-summaryip route 0.0.0.0 0.0.0.0 172.16.24.2ip route 1.0.0.0 255.0.0.0 Null0ip route 192.168.0.2 255.255.255.255 172.16.24.2【R5】R5、R6属于域内设备不建立EBGP邻居关系,也只要以正常方式与域内其它设备建立IBGP邻居关系即可interface Loopback0ip address 192.168.0.5 255.255.255.255interface Serial1/0no ship address 172.16.15.5 255.255.255.0interface Serial1/1no ship address 172.16.56.5 255.255.255.0interface Serial1/2no ship address 172.16.25.5 255.255.255.0router ospf 1router-id 192.168.0.5log-adjacency-changesno auto-costnetwork 172.16.0.0 0.0.255.255 area 0network 192.168.0.0 0.0.0.255 area 0router bgp 100no synchronizationbgp router-id 192.168.0.5bgp log-neighbor-changesneighbor internal peer-groupneighbor internal remote-as 100neighbor internal update-source Loopback0neighbor 192.168.0.1 peer-group internalneighbor 192.168.0.2 peer-group internalneighbor 192.168.0.6 peer-group internalno auto-summary【R6】R5、R6属于域内设备不建立EBGP邻居关系,也只要以正常方式与域内其它设备建立IBGP邻居关系即可interface Loopback0ip address 192.168.0.6 255.255.255.255interface Serial1/0no ship address 172.16.26.6 255.255.255.0interface Serial1/1no ship address 172.16.56.6 255.255.255.0interface Serial1/2no ship address 172.16.16.6 255.255.255.0router ospf 1router-id 192.168.0.6log-adjacency-changesno auto-costnetwork 172.16.0.0 0.0.255.255 area 0network 192.168.0.0 0.0.0.255 area 0router bgp 100no synchronizationbgp router-id 192.168.0.6bgp log-neighbor-changesneighbor internal peer-groupneighbor internal remote-as 100neighbor internal update-source Loopback0neighbor 192.168.0.1 peer-group internalneighbor 192.168.0.2 peer-group internalneighbor 192.168.0.5 peer-group internalno auto-summary。

目前不支持负载分担的路由协议

目前不支持负载分担的路由协议

目前不支持负载分担的路由协议目前不支持负载分担的路由协议负载分担(Load Balancing)是通过合理的资源分配,将网络流量均匀地分配到不同的服务器上,以达到提高整个系统的性能和可靠性的目的。

在现代网络环境下,负载分担已经成为大型网络中不可或缺的一部分。

然而,目前市场上主流的路由协议中,并没有直接支持负载分担的功能,这主要是由于以下几点原因:1.历史原因:现有的主流路由协议如RIP(Routing Information Protocol)、OSPF(Open Shortest Path First)、BGP(Border Gateway Protocol)等并不是为负载分担而设计的。

这些协议在设计之初主要考虑的是网络的稳定性和可靠性,而不是负载的均衡。

因此,这些协议并没有在设计中考虑如何进行负载分担的功能。

2.复杂性:负载分担需要对网络中的流量进行实时监测和控制,根据实时的网络负载情况来调整流量的分配。

这涉及到复杂的算法和数据处理,需要大量的计算和存储资源。

而在现有的路由器硬件和软件设计中,并没有为负载分担提供足够的处理能力和存储空间。

如果要支持负载分担,需要重新设计路由器硬件和软件,这需要大量的时间和成本。

3.兼容性问题:由于负载分担需要对网络进行实时监测和控制,这就要求网络中的所有设备都支持负载分担的功能。

然而,在现实中,大多数网络设备并不都支持负载分担的功能,尤其是老旧的设备。

如果引入负载分担的功能,就需要替换或更新现有的网络设备,这无疑会增加网络的复杂性和成本。

4.性能影响:负载分担需要不断地分析和调整网络流量的分配,这就会增加路由器的负担,影响其性能和稳定性。

由于负载分担涉及到复杂的算法和数据处理,会占用大量的计算和存储资源,这可能导致路由器的处理速度变慢,甚至出现故障。

为了解决这个问题,需要进一步提高路由器硬件和软件的性能,这同样需要大量的时间和成本。

综上所述,目前市场上的主流路由协议并不直接支持负载分担的功能,主要是由于历史原因、复杂性、兼容性问题和性能影响等方面的限制。

路由器的负载均衡配置

路由器的负载均衡配置

路由器的负载均衡配置在网络通信中,负载均衡是一种重要的技术手段,可以有效地提高网络性能和可靠性。

路由器作为网络中的关键设备,负载均衡配置对于实现网络流量的平衡分担至关重要。

本文将介绍路由器的负载均衡配置方法,以及相关注意事项。

一、负载均衡的概念和作用负载均衡是一种将网络流量分散到多个服务器或链路上的技术。

它通过有效地分配流量,使得每个服务器或链路都能得到较均衡的负载,从而提高网络的吞吐量和响应速度。

负载均衡可以避免单一服务器或链路的过载,提高系统的可靠性和可用性。

二、路由器的负载均衡配置方法1. 链路负载均衡链路负载均衡是指将网络流量根据规则分配到多个链路上。

一般来说,路由器可以通过以下两种方式实现链路负载均衡:(1)静态路由静态路由是指通过手动配置路由器的路由表来实现负载均衡。

管理员可以根据实际需求设置路由器的下一跳地址,将流量分发到多个链路上。

这种方式适用于网络结构稳定,流量分布相对固定的情况。

(2)动态路由动态路由是指路由器根据网络状态自动调整路由表,实现负载均衡。

常用的动态路由协议有OSPF、BGP等。

动态路由可以根据链路状态和流量情况,实时调整最佳的路由路径,从而实现负载均衡。

2. 服务器负载均衡除了链路负载均衡,路由器还可以实现对服务器的负载均衡。

在这种情况下,路由器将流量根据一定的规则分发给多个服务器,从而提高服务器的处理能力和可靠性。

常用的服务器负载均衡方法有以下几种:(1)基于源地址的负载均衡基于源地址的负载均衡是指根据发送请求的源IP地址进行负载均衡。

路由器可以通过源地址哈希算法将相同源地址的请求分发给同一台服务器,从而实现流量的均衡分担。

(2)基于目标地址的负载均衡基于目标地址的负载均衡是指根据请求的目标IP地址进行负载均衡。

路由器可以通过目标地址哈希算法将相同目标地址的请求分发给同一台服务器,从而实现流量的均衡分担。

(3)基于会话的负载均衡基于会话的负载均衡是指根据请求的会话信息进行负载均衡。

利用BGP虚拟下一跳技术实现IP骨干网流量负载均衡

利用BGP虚拟下一跳技术实现IP骨干网流量负载均衡

利用BGP虚拟下一跳技术实现IP骨干网流量负载均衡BGP(边界网关协议)是一种广域网路由协议,常用于实现互联网中的骨干网。

BGP虚拟下一跳技术可以通过将多个BGP路由器的下一跳地址设置为同一个虚拟IP地址,来实现骨干网的流量负载均衡。

在本文中,我们将详细介绍如何利用BGP虚拟下一跳技术实现IP骨干网的流量负载均衡。

1.BGP虚拟下一跳技术概述BGP虚拟下一跳技术旨在解决BGP路由器之间的流量分布不均衡的问题。

该技术通过将多个BGP路由器的下一跳地址设置为同一个虚拟IP地址,实现了在BGP路径选择过程中的负载均衡。

当多个具有相同下一跳虚拟IP地址的路由器同时宣告相同的路由时,该路由的流量会被均匀地分布到多个路由器上,从而实现流量负载均衡。

2.实施步骤以下是实施BGP虚拟下一跳技术实现IP骨干网流量负载均衡的基本步骤:步骤1:配置BGP路由器首先,需要在所有参与负载均衡的BGP路由器上进行相关配置。

这包括将所有BGP路由器的下一跳地址设置为同一个虚拟IP地址,并确保所有路由器都宣告相同的路由。

步骤2:配置负载均衡策略在BGP路由器上配置负载均衡策略,以确保在收到多个路由宣告时,能够均匀地分布流量到各个路由器上。

可以通过设置本地优先级(local preference)或使用路由映射(route map)等方式来实现负载均衡策略。

步骤3:验证配置配置完成后,需要进行验证以确保流量能够均匀地分布到多个路由器上。

可以通过监控各个BGP路由器的流量情况、路由表信息等来验证负载均衡的效果。

3.BGP虚拟下一跳技术的优势3.1提高网络性能通过将流量均匀地分布到多个路由器上,可以避免一些路由器负载过重的情况,提高网络性能和吞吐量。

3.2增强网络可靠性当一些BGP路由器发生故障时,由于其他路由器也宣告了相同的路由,流量可以无缝地切换到其他正常的路由器,从而增强了网络的可靠性和容错性。

3.3简化网络管理BGP虚拟下一跳技术可以使网络管理员更加灵活地管理网络拓扑。

bgp出口负载分担设计

bgp出口负载分担设计

bgp出口负载分担设计
BGP(边界网关协议)出口负载分担设计是指在网络中使用BGP
协议来分担流量负载,以确保网络的稳定性和性能。

在设计BGP出
口负载分担时,需要考虑以下几个方面:
1. 多路径路由选择,BGP可以支持多路径路由选择,通过配置
不同的路由属性和策略,可以实现流量的分担。

可以使用BGP的多
路径功能(BGP Multipath)来实现多条等价路径的负载分担。

2. AS路径预防,在设计BGP出口负载分担时,需要注意避免
AS路径过长或者出现环路,这可能会导致流量分担不均匀或者出现
路由震荡的情况。

3. 出口流量控制,通过配置BGP属性、路由策略和路由过滤器,可以实现对出口流量的控制和分流,确保流量在网络中均衡分布。

4. ECMP(等价多路径),在BGP网络中,可以使用ECMP来实
现流量的负载均衡,确保流量在多条路径上均匀分布,提高网络的
利用率和可靠性。

5. 路由策略,设计合理的路由策略可以根据流量的特点和业务
需求,实现流量的灵活分流和负载均衡,提高网络的性能和稳定性。

总的来说,BGP出口负载分担设计需要考虑多路径路由选择、
AS路径预防、出口流量控制、ECMP和路由策略等方面,以实现流量
的均衡分担和网络的稳定性和性能。

综合考虑网络的规模、业务需
求和硬件设备的支持情况,设计合理的BGP出口负载分担方案,可
以有效提高网络的可靠性和性能。

BGP协议总结(比较详细,好理解)

BGP协议总结(比较详细,好理解)

BGPBorder Gateway Protocol(当前使用的版本是 BGP-4)动态路由协议可以按照工作范围分为IGP以及EGP。

IGP工作在同一个AS内,主要用来发现和计算路由,为AS内提供路由信息的交换;而EGP工作在AS与AS之间,在AS 间提供无环路的路由信息交换,BGP则是EGP的一种。

BGP是一种增强的路径矢量路由协议,同时BGP是拥有丰富的策略控制技术的外部网关协议。

多运行于AS与AS之间。

目录:BGP概述BGP基本概念BGP工作原理BGP与IGP交互BGP属性特点BGP选路规则BGP负载分担BGP扩展特性1.BGP概述BGP 其着眼点不在于自动发现网络拓扑,而在于在AS之间选择最佳路由和控制路由的传播。

Ⅰ。

BGP使用 TCP 作为其传输层协议(监听端口号为 179),提高了协议的可靠性,且不需要专门的机制来确保连接的可控性。

BGP进行域间的路由选择,对协议的稳定性要求非常高。

因此用TCP协议的高可靠性来保证BGP协议的稳定性。

BGP的对等体之间必须在逻辑上连通,并进行TCP连接。

目的端口号为179,本地端口号任意。

Ⅱ。

路由更新时 ,BGP 只发送更新的路由,大大减少了BGP传播路由所占用的带宽,适用于在Internet上传播大量的路由信息。

Ⅲ。

BGP从设计上 避免了环路 的发生。

AS之间:BGP通过携带AS路径信息来标记途经的AS,带有本地AS号的路由将被丢弃,从而避免了域间产生环路。

AS内部:BGP在AS内学到的路由不再通告给AS内的BGP邻居,避免了AS内产生环路。

Ⅳ。

支持CIDR 无类域间路由Ⅵ。

BGP提供了丰富的路由策略;提供了防止路由振荡的机制;BGP也易于扩展二.BGP基本概念Ⅰ。

自治系统AS (Autonomous System )AS是指在一个实体管辖下的拥有相同选路策略的IP网络。

每个AS都有唯一的自治系统编号,这个编号是由IANA分配的。

编号范围是1~65535(其中1到64511是注册的因特网编号,64512到65535是私有网络编号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

BGP流量负载分担规划1BGP流量负载分担概述如何优化的利用网络带宽资源,是流量负载分担的关注重点。

BGP(Border Gateway Protocol, 边界网关协议)选择单条最优路径的这一特征往往会出现流量负载不均衡的流量模型, BGP流量负载均衡从两个角度出发解决这个问题:通过BGP强大的策略控制流量的负载均衡;通过多路径选路实现负载分担。

本文就要从这两个角度来展开分析BGP在流量负载分担方面的技术应用。

2负载均衡在实际网络中进行负载均衡需要综合考虑链路和设备节点的负载情况,在满足业务的实际需求前提下,可以通过BGP的策略工具对流量进行均衡的规划和调整。

对于一个AS来说,流量的方向分为入境和出境两个方向,这种区分对应到实际的网络有不同的规划,所以我们在此通过不同的场景进行介绍。

2.1入方向流量负载均衡图1 多宿主到不同的上游的负载均衡我们先分析一下图1的场景,AS100希望流量能够在AS200和AS300间进行负载均衡,也就是说根据业务分别映射到Link1和Link2上。

在规划中我们有如下思路:1 AS100可以在RA和RB上通过策略只向各自的对等体通告部分路由前缀,这样可以起到不同的业务对应由不同的AS承载。

如172.168.1.0/25通过RA通告给RC,172.168.1.128/25通过RB通告给RD。

这种规划能够满足流量分担的效果,但是一旦出现链路或节点的失效,就会导致部分流量无法切换,业务中断。

2 通过步骤1我们可以看到简单的通过路由过滤无法很好的实现需求。

我们可以通过对不同的前缀进行策略区分。

接着步骤1的思路,AS100希望172.168.1.0/25优先通过AS200进入,希望172.168.128.0/25优选通过AS300进入。

可以在RA 上通过策略将172.168.128.0/128通告的AS-PATH加一个AS-Number,如:1000 100。

RB上通过策略将172.168.1.0/25通告给RD的AS-PATH加一个AS-Number,如:2000 100。

RE上关于172.168.1.0/25的前缀从RC通告过来的AS-PATH是: 200 100,通过RD通告过来的AS-PATH是:300 2000 100,因此优选走AS200。

关于172.168.128.0/25同理会优选AS300。

该规划可以在满足需求的同时解决路由备份的问题。

但是我们考虑下面一个场景,当RC和RD建立BGP连接,RD上关于172.168.1.0/25的前缀从RC通告过来的AS-PATH是100 200,从RB上通告过来的AS-PATH是2000 100,也就是说RD上关于172.168.1.0/25无法很好的进行路由选路控制。

3 团体属性是进行本地进行路由控制的重要属性,但是团体属性需要BGP对等双方有属性处理的共识。

在步骤2的基础上,RB在通告172.168.1.0/25时,可以将团体属性值修改为100:120,在RD上将团体属性的前缀预定义Local-preference为120,这样对于RD来说在收到RC和RB的前缀AS-PATH相同长度的情况下,RB通告的前缀Local-preference高,优选RB。

分析完图1所示的场景,我们可以继续看看多宿主相同上游的场景,如图2:图2 多宿主相同AS的负载均衡对于相同的上游AS,我们更多的需要考虑上游AS内部的选路,对于跨过上游AS 的远端AS的选路我们很难控制,因此本文讨论的重点就在本地和上游AS的选路策略部署。

先分析需求,本地AS希望172.168.1.0/25通过RB进入,172.168.128.0/25通过RC进入。

存在下述三种方式:1 借鉴上文中多宿主不同AS的做法,将172.168.128.0/25通告给RB时,将AS-PATH设置为1000 100,将172.168.1.0/25通告给RC时,将AS-PATH设置为2000 100。

由于RB和RC之间是IBGP邻居,因此对于RB来说,172.168.1.0/25从RA学习到的AS-PATH是100,从RC上学习到的AS-PATH是2000 100,优选RA的路由。

对于172.168.128.0/24来说,从RA学习的路由AS-PATH为1000 100,从RC学习的路由AS-PATH为100,优选RC。

这满足了需求。

2 同样,在AS间协商进行策略部署的前提下,可以在RA上对不同的业务前缀进行属性赋值的区分,在RB/RC对不同的属性设置不同的本地优先级进行业务的分担均衡。

3 还是针对图2,对于AS200进行入方向的流量负载分担部署,最直接的方法就是通过修改MED值的方法,使得RA通过MED值直接进行路由的优选。

2.2出方向负载均衡我们还是先分析图1的场景,AS100希望出方向的业务流量能够在RA和RB间进行合理的负载均衡:1 可以通过在RA和RB上进行入境路由前缀过滤,通过前缀在不同的出口路由器的通告分担来实现业务流量出方向的负载均衡。

2 入境的过滤适用于对端AS的业务负载分担,但是对于远端Internet的业务,无法通过入境路由前缀过滤的方法实现,否则会出现单点故障导致业务中断的情况。

对于Internet业务就需要进行入境路由前缀策略控制,例如通过添加AS-PATH或者对特定前缀设置不同的本地优先级等。

3 对于单点故障导致业务中断的考虑还可以通过出口路由器发布缺省路由的方式作为路径的备份,一旦出现某个出口路由器故障,路径可以通过缺省路由切换至其他出口路由器,起到备份的效果。

4 同样可以和上游AS协商,通过通告来的前缀携带不同的团体属性进行相应的策略控制。

对于图2的场景,单出口路由器上进行负载分担可以借助路由策略的方法更为灵活:1 针对不同对等体进行入境路由前缀过滤,使业务自然分担到不同的出口链路上。

同时配置缺省路由指向对等体,防止单点故障业务中断;2 通过针对特定前缀设置多种属性,如Local-preference、Origin、MED等,在本地进行路由优选。

2.3AS内部负载均衡AS内部的负载均衡相对容易部署,通过策略对业务进行区分,对不同的业务使用不同的BGP属性进行控制。

如图3,RB和RC同时向RA通告172.168.1.0/25和172.168.128.0/25,RA希望172.168.1.0/25业务从RB走,172.168.128.0/128从RC走。

满足这种需求,可以直接在RA上对业务进行区分,对RB通告的172.168.1.0/25的Local preference设置为120,将RC通告的172.168.128.0/25的Local preference设置为120,本地优选结果能够满足需求。

图3 AS内部负载均衡3等价负载分担上文介绍的是多宿主情况下的负载均衡规划思路,本章节需要关注的是通过等价路由在路由器之间进行负载分担的部署方式。

3.1EBGP多跳负载分担图4的场景是两台出口路由器之间通过环回口建立EBGP邻接,我们知道对于EBGP邻接超过1跳建立邻接需要通过命令peer x.x.x.x ebgp-max-hop <Maximum hop>,其中Maximum hop设置大于1。

对每一个链路接口对应配置静态路由,指向对端环回口地址,路由下一跳为链路对端接口地址。

这种方法通过路由下一跳地址的迭代,将流量负载分担到不同的链路上,实现多跳的EBGP对等体间的多链路负载分担。

图4 多链路多跳EBGP对等体负载分担3.2EBGP多路径负载分担图5的场景和图4类似,区别在于两个出口路由器通过链路接口地址建立了多个EBGP会话,每一个会话对应于特定的链路。

图5 多链路多EBGP对等体负载分担RA和RB通过两条链路的物理接口地址建立两个单跳EBGP邻接关系,以RA举例,从两个EBGP会话均收到关于172.16.1.0/24的路由信息,在其他属性都相同的前提下,两个EBGP对等体通告的路由形成等价。

比较上述两种负载分担方式,第一种方式,建立了一个EBGP会话,会话直接绑定在两个出口路由器的环回地址,通过直连路由迭代下一跳的方式在链路间实现负载分担。

这种方式EBGP会话属于多跳会话,需要两个AS间进行环回地址的路由部署,适用性有一定的限制。

第二种方式,需要建立多个会话,对资源有一定的消耗,同时对于EBGP等价路由的配置,是针对本设备所有BGP对等体适用,无法区分对等体,因此,缺少一定的灵活性。

3.3AS内部负载分担AS内部的负载分担规划同样可以采用下一跳迭代的方式在同一个IBGP会话间进行多链路的负载分担。

对于多IBGP对等体通告的路由在优选属性相同的前提下能够形成负载分担。

对于图6中的场景,RB和RC向RA通告172.168.1.0/24的路由前缀,在ORIGIN,LOCAL-PREFERENCE以及AS-PATH路径属性均相同的前提下能够形成负载分担。

图6 AS内部负载分担多链路的负载分担还是可以通过下一跳迭代到等价IGP路由或者默认路由来实现,例如图7所示场景:图7 IGP路由的下一跳迭代RD和RA 建立IBGP邻接关系,RD向RA通告路由172.168.1.0/24,RA 上关于172.168.1.0/24的路由下一跳是RD的环回口地址,在RA上针对RD环回口地址有两条等价的IGP路由:RA-RB-RD和RA-RC-RD,通过下一跳迭代,在RA 上针对172.168.1.0/24的BGP路由也形成等价。

3.4负载分担规划原则ORIGIN,LOCAL-PREFERENCE,MED以及AS-PATH路径属性均相同是形成负载分担的前提,在此前提下还要遵循一定的原则进行负载分担规划。

以图8举例,RB/RC均与RA通过广播网络建立单跳EBGP对等体,RA向RB/RC通告路由前缀172.168.1.0/24,RB和RC同时向RD通告,RE上收到RB和RC的路由不会形成负载分担,为什么?缺省情况下,边界路由其器向IBGP对等体通告EBGP路由时,不会修改下一跳,因此RB和RC向RE通告的路由下一跳均为RA的接口地址,在RE上由于下一跳相同,因此不会形成负载分担。

可解决的办法是:●在RB和RC上针对IBGP对等体通过配置修改为:peer x.x.x.xnext-hop-local,将下一跳修改为本地地址,这样RE上收到的路由下一跳不同,可以形成负载分担。

●同样利用图8举例,RD是RR,RB和RE是其RR Client,同时RB和RE间建立IBGP邻接关系,RB通告路由172.168.1.0/24,RD反射至RE。

RR在反射路由时缺省不会修改下一跳,因此在RE上关于172.168.1.0/24的路由下一跳均为RB的环回地址,可以利用前文的路由迭代,将RE-RB和RE-RD-RB的IGP路由Metric设置相同,此时能否形成负载分担?此时无法形成负载分担,原因是因为非反射路由和反射路由间无法形成负载分担。

相关文档
最新文档