Previous section   Next section

Recipe 9.8 Load Balancing

9.8.1 Problem

You want to load balance traffic over two or more links, between two eBGP or iBGP neighbors.

9.8.2 Solution

Although BGP goes to great lengths to ensure that there is only one path for each route by default, Cisco routers also allow you to configure load balancing for equal- cost paths:

Router1#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z.
Router1(config)#router bgp 65500
Router1(config-router)#maximum-paths 4 
Router1(config-router)#end
Router1#

9.8.3 Discussion

This option is useful when there are multiple paths to a particular adjacent AS. As you can see from the following BGP route table, there are three different options for these routes:

Router1#show ip bgp
BGP table version is 12, local router ID is 172.18.5.2
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.0.0.0         192.168.1.5                            0 65510 65520 i
*>                  192.168.2.5              0             0 65520 i
*                   192.168.3.5                            0 65520 i
*  172.25.0.0       192.168.1.5                            0 65510 65520 i
*>                  192.168.2.5              0             0 65520 i
*                   192.168.3.5                            0 65520 i
Router1#

Without the maximum path option, there is only one route for each of these destinations in the IP routing table:

Router1#show ip route bgp
     172.25.0.0/16 is variably subnetted, 2 subnets, 2 masks
B       172.25.0.0/16 [20/0] via 192.168.2.5, 00:06:58
B    10.0.0.0/8 [20/0] via 192.168.2.5, 00:06:58

We then increase the maximum path value to 4 from the default of 1:

Router1(config)#router bgp 65500
Router1(config-router)#maximum-paths 4 

The router now installs two routes in the IP routing table for each prefix:

Router1#show ip route bgp
     172.25.0.0/16 is variably subnetted, 2 subnets, 2 masks
B       172.25.0.0/16 [20/0] via 192.168.2.5, 00:00:02
                      [20/0] via 192.168.3.5, 00:00:02
B    10.0.0.0/8 [20/0] via 192.168.2.5, 00:00:02
                [20/0] via 192.168.3.5, 00:00:02

Note that the router did not install all three of the available BGP routes. This is because the other routes, the ones that use 192.168.1.5 for the next-hop router, both have a longer AS Path. Similarly, if one of these routes had a smaller Local Preference value, it also would not be used. As we mentioned when discussing the BGP route selection rules in the introduction to this chapter, the router will only use the BGP multipath feature for routes that are equivalent after all tests up to and including the MED test.

Also note that for eBGP connections, this only balances the outbound traffic load. Incoming packets are subject to whatever routing policies your neighboring AS uses.


  Previous section   Next section
Top