trojan81
asked on
BGP load balance between two ISPs
Hello Experts,
I'm looking for suggestions. In my case study scenario, a company has two internet routers which have bgp peering to separate ISPs.
RTR-A peers to ISP-A
RTR-B peers to ISP-B
The two routers have an IBGP connection together.
The Routers are connected to a Firewall which does the PATing. For simplicity reasons, let's say there are only 2 internal network subnets. All routes from ISP-A has a local preference of 800 and all routes from ISP-B has a local preference of 700 so the internal network is taking ISP A.
If I want subnet 2 to take ISP-B, what are some suggestions to handle this?
I'm looking for suggestions. In my case study scenario, a company has two internet routers which have bgp peering to separate ISPs.
RTR-A peers to ISP-A
RTR-B peers to ISP-B
The two routers have an IBGP connection together.
The Routers are connected to a Firewall which does the PATing. For simplicity reasons, let's say there are only 2 internal network subnets. All routes from ISP-A has a local preference of 800 and all routes from ISP-B has a local preference of 700 so the internal network is taking ISP A.
If I want subnet 2 to take ISP-B, what are some suggestions to handle this?
Hi,
Which firewall do you have?
Which firewall do you have?
Load Balancing is in fact possible with BGP. Check this article out:
http://www.nil.com/ipcorner/LoadBalancingBGP/
http://www.nil.com/ipcorner/LoadBalancingBGP/
I agree with rfc1180. Load balancing is not achievable. Load sharing is, to some extent. His link has got specific config example for load sharing. Assuming trojan81 has got no AS of his own, so he will have no control over incoming traffic. He can only distribute outgoing traffic.
I am not sure if trojan81 has got valid cisco contract, you might want to take a look at Cisco OER (Optimized Edge routing), which is bound to solve his issue.
Best,
I am not sure if trojan81 has got valid cisco contract, you might want to take a look at Cisco OER (Optimized Edge routing), which is bound to solve his issue.
Best,
>Load Balancing is in fact possible with BGP
Soulja, with due all respect, No, you cannot load balance utilizing BGP in his application; BGP selects only the single best path to a destination among the BGP paths that are learned from different ASs. The author's application, the BGP peers are in different ASes, if they were in the same AS, then yes, you could implement maximum-paths so that both routes are injected into the RIB. "If", the author wanted to "load balance" the only option he would have is to set a better metric for the routes in the range 1.0.0.0 to 128.0.0.0 (More load sharing than load balancing) that are learned from ISP(A) and a better metric for the rest of the routes that are learned from ISP(B). However, he wants all traffic from one subnet (The second) to be routed via ISP-B, this is source routing and Policy Based Routing is required.
Soulja, with due all respect, No, you cannot load balance utilizing BGP in his application; BGP selects only the single best path to a destination among the BGP paths that are learned from different ASs. The author's application, the BGP peers are in different ASes, if they were in the same AS, then yes, you could implement maximum-paths so that both routes are injected into the RIB. "If", the author wanted to "load balance" the only option he would have is to set a better metric for the routes in the range 1.0.0.0 to 128.0.0.0 (More load sharing than load balancing) that are learned from ISP(A) and a better metric for the rest of the routes that are learned from ISP(B). However, he wants all traffic from one subnet (The second) to be routed via ISP-B, this is source routing and Policy Based Routing is required.
ASKER
i appreciate everyone's input. I have been out sick the past couple days and will look into the suggestions tomorrow.
Hi rfc,
I stand corrected. :-)
I stand corrected. :-)
ASKER
RFC,
great link you gave me about load sharing.
http://www.cisco.com/en/US/tech/tk365/technologies_configuration_example09186a00800945bf.shtml
In this last example: Load Sharing When Multihomed to Two ISPs Through Multiple Local Routers
R6# show ip bgp
BGP table version is 15, local router ID is 192.168.64.6
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.10.10.0/24 192.168.63.3 0 300 100 100 i
!--- This line shows that network 10.10.10.0/24 is routed through AS 300
!--- with the ISP(A)-R1 link.
Why is it that R6 sees "300, 100, 100, i" as the best path to get to 10.10.10.0/24? Prepending the AS towards ISP-A should have made the 10.10.10.0/24 network less desirable. So shouldnt R6 best way to get to 10.10.10.0/24 be "400, 100, I" through ISP-B?
great link you gave me about load sharing.
http://www.cisco.com/en/US/tech/tk365/technologies_configuration_example09186a00800945bf.shtml
In this last example: Load Sharing When Multihomed to Two ISPs Through Multiple Local Routers
R6# show ip bgp
BGP table version is 15, local router ID is 192.168.64.6
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 10.10.10.0/24 192.168.63.3 0 300 100 100 i
!--- This line shows that network 10.10.10.0/24 is routed through AS 300
!--- with the ISP(A)-R1 link.
Why is it that R6 sees "300, 100, 100, i" as the best path to get to 10.10.10.0/24? Prepending the AS towards ISP-A should have made the 10.10.10.0/24 network less desirable. So shouldnt R6 best way to get to 10.10.10.0/24 be "400, 100, I" through ISP-B?
ASKER
RFC,
I re-read the example and see Both R1 and R2 are prepending AS 100 one time for network 10.10.10.0/24.
If both routers are prepending one time, what makes ISP-A the path to take from R6's perspective for network 10.10.10.0/24?
It sounds like the prepending cancels out
I re-read the example and see Both R1 and R2 are prepending AS 100 one time for network 10.10.10.0/24.
If both routers are prepending one time, what makes ISP-A the path to take from R6's perspective for network 10.10.10.0/24?
It sounds like the prepending cancels out
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thank you.
I am still undecided on which bgp path selection criteria to use for load sharing, but you have given me a better understanding.
I am still undecided on which bgp path selection criteria to use for load sharing, but you have given me a better understanding.
BGP path selection is not a criteria to use for load sharing; you are NOT able to do anyoutbound BGP load sharing based on a source prefix from your network. You typically can influence on what transit circuits are to be used for inbound to your network by prepending, utilizing Metrics, or the more perferred way is to contact your ISP and ask the for their communities for changing the local_pref for the prefixes that you are advertising. Most ISPs will have this routing policy in affect and operational.
Billy
Billy
Take a look at the section: Load Sharing When Multihomed to Two ISPs Through Multiple Local Routers
Since you want to route via source IP (Second Internet Subnet), you will have to implement Policy Based Routing.
http://www.cisco.com/en/US/products/ps6599/products_white_paper09186a00800a4409.shtml
http://www.cisco.com/en/US/docs/ios/12_2/qos/configuration/guide/qcfpbr_ps1835_TSD_Products_Configuration_Guide_Chapter.html
Billy