Thursday, April 9, 2015

BGP Peer Groups

Peer groups are used to group multiple individual peers that share the same neighbor characteristics. For example, lots of iBGP peers in a full mesh BGP setup would most likely (almost) all have the same neighbor statements. If done individually, this would have the BGP process generate an update message for each peer separately. Grouping them together will have BGP process outbound messages once and then send to all the peers configured in the peer group.

The configuration is quite simple. In the following example, the router R1 is configured with multiple iBGP neighbors using a peer group for ease of management. The routers R2, R3 and R4 are configured with the neighbor <R1 IP address> remote-as 100 command. The network is not fully meshed.
Routers in AS 100 w/ peer groups configured on R1
The pertinent configuration on R1 is shown in the output below.
R1#show run | section router bgp
router bgp 100
 bgp log-neighbor-changes
 neighbor PGROUP peer-group
 neighbor PGROUP remote-as 100
 neighbor 10.0.12.2 peer-group PGROUP
 neighbor 10.0.13.3 peer-group PGROUP
 neighbor 10.0.14.4 peer-group PGROUP
This example does not achieve much in the form of easing configuration burden, however, the CPU and memory loads on R1 is somewhat reduced due to it having to process outbound policies only once for all three peers.

Imagine the same scenario without peer groups configured and a task to apply an outbound distribute list for all peers landed on your desk. The distribute list would be exactly the same, so you could reuse some of the configuration, but you would still have to apply the distribute list on each neighbor individually - and the router would process them each individually. With peer groups, this would be done once for the configuration and the router would process the outbound policy once and apply it to all peer group members in the update message.

No comments:

Post a Comment