- Cisco BGP Overview
- BGP 4
- Configuring a Basic BGP Network
- BGP 4 Soft Configuration
- BGP Support for 4-byte ASN
- Connecting to a Service Provider Using External BGP
- BGP Prefix-Based Outbound Route Filtering
- BGP Route-Map Continue
- BGP Route-Map Continue Support for Outbound Policy
- Removing Private AS Numbers from the AS Path in BGP
- Configuring BGP Neighbor Session Options
- BGP Neighbor Policy
- BGP Dynamic Neighbors
- BGP Support for Next-Hop Address Tracking
- BGP Restart Neighbor Session After Max-Prefix Limit Reached
- BGP Support for Dual AS Configuration for Network AS Migrations
- Configuring Internal BGP Features
- BGP VPLS Auto Discovery Support on Route Reflector
- BGP FlowSpec Route-reflector Support
- BGP Support for BFD
- IPv6 Routing: Multiprotocol BGP Extensions for IPv6
- IPv6 Multicast Address Family Support for Multiprotocol BGP
- IPv6 Routing: Multiprotocol BGP Link-Local Address Peering
- IPv6 NSF and Graceful Restart for MP-BGP IPv6 Address Family
- BGP NSF Awareness
- BGP Graceful Restart per Neighbor
- Configuring Multiprotocol BGP (MP-BGP) Support for CLNS
- BGP Link Bandwidth
- iBGP Multipath Load Sharing
- BGP Multipath Load Sharing for Both eBGP and iBGP in an MPLS-VPN
- Loadsharing IP Packets Over More Than Six Parallel Paths
- BGP Policy Accounting
- BGP Policy Accounting Output Interface Accounting
- BGP Cost Community
- Regex Engine Performance Enhancement
- BGP Support for IP Prefix Import from Global Table into a VRF Table
- BGP Support for IP Prefix Export from a VRF Table into the Global Table
- BGP per Neighbor SoO Configuration
- BGP Next Hop Unchanged
- Per-VRF Assignment of BGP Router ID
- BGP Event-Based VPN Import
- BGP Support for the L2VPN Address Family
- Detecting and Mitigating a BGP Slow Peer
- Configuring BGP: RT Constrained Route Distribution
- Configuring BGP Consistency Checker
- BGP—Origin AS Validation
- BGP Support for NSR with SSO
- BGP NSR Auto Sense
- BGP NSR Support for iBGP Peers
- BGP Graceful Shutdown
- BGP — mVPN BGP sAFI 129 - IPv4
- BGP-MVPN SAFI 129 IPv6
- BGP Attribute Filter and Enhanced Attribute Error Handling
- BGP Additional Paths
- BGP-RT and VPN Distinguisher Attribute Rewrite Wildcard
- BGP—Selective Route Download
- BFD—BGP Multihop Client Support, cBit (IPv4 and IPv6), and Strict Mode
- BGP MIB Support
- BGP 4 MIB Support for per-Peer Received Routes
- BGP PIC Edge for IP and MPLS-VPN
- BGP IPv6 PIC Edge and Core for IP/MPLS
- BGP Unified MPLS iBGP Client
- Cisco-BGP-MIBv2
- BGP Diverse Path Using a Diverse-Path Route Reflector
- BGP-VRF-Aware Conditional Advertisement
- BGP—Support for iBGP Local-AS
- IOS-XE IBGP local-as dual-as
- VPLS BGP Signaling
- BGP NSR Support for MPLS VPNv4 and VPNv6 Inter-AS Option B
- L3VPN iBGP PE-CE
- eiBGP Multipath for Non-VRF Interfaces (IPv4/IPv6)
- BGP-RTC for Legacy PE
- BGP PBB EVPN Route Reflector Support
- BGP Monitoring Protocol
- VRF Aware BGP Translate-Update
- BGP Support for MTR
- BGP Accumulated IGP
- Finding Feature Information
- Prerequisites for BGP Link Bandwidth
- Restrictions for BGP Link Bandwidth
- Information About BGP Link Bandwidth
- How to Configure BGP Link Bandwidth
- Configuration Examples for BGP Link Bandwidth
- Where to Go Next
- Additional References
- Feature Information for BGP Link Bandwidth
BGP Link Bandwidth
The BGP (Border Gateway Protocol) Link Bandwidth feature is used to advertise the bandwidth of an autonomous system exit link as an extended community. This feature is configured for links between directly connected external BGP (eBGP) neighbors. The link bandwidth extended community attribute is propagated to iBGP peers when extended community exchange is enabled. This feature is used with BGP multipath features to configure load balancing over links with unequal bandwidth.
- Finding Feature Information
- Prerequisites for BGP Link Bandwidth
- Restrictions for BGP Link Bandwidth
- Information About BGP Link Bandwidth
- How to Configure BGP Link Bandwidth
- Configuration Examples for BGP Link Bandwidth
- Where to Go Next
- Additional References
- Feature Information for BGP Link Bandwidth
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for BGP Link Bandwidth
BGP load balancing or multipath load balancing must be configured before BGP Link Bandwidth feature is enabled.
BGP extended community exchange must be enabled between iBGP neighbors to which the link bandwidth attribute is to be advertised.
Cisco Express Forwarding or distributed Cisco Express Forwarding must be enabled on all participating routers.
Restrictions for BGP Link Bandwidth
The BGP Link Bandwidth feature can be configured only under IPv4 and VPNv4 address family sessions.
BGP can originate the link bandwidth community only for directly connected links to eBGP neighbors.
Both iBGP and eBGP load balancing are supported in IPv4 and VPNv4 address families. However, eiBGP load balancing is supported only in VPNv4 address families.
Information About BGP Link Bandwidth
BGP Link Bandwidth Overview
The BGP Link Bandwidth feature is used to enable multipath load balancing for external links with unequal bandwidth capacity. This feature is enabled under an IPv4 or VPNv4 address family session by entering the bgp dmzlink-bw command. This feature supports iBGP, eBGP multipath load balancing, and eiBGP multipath load balancing in Multiprotocol Label Switching (MPLS) VPNs. When this feature is enabled, routes learned from directly connected external neighbor are propagated through the internal BGP (iBGP) network with the bandwidth of the source external link.
The link bandwidth extended community indicates the preference of an autonomous system exit link in terms of bandwidth. This extended community is applied to external links between directly connected eBGP peers by entering the neighbor dmzlink-bw command. The link bandwidth extended community attribute is propagated to iBGP peers when extended community exchange is enabled with the neighbor send-community command.
Link Bandwidth Extended Community Attribute
The link bandwidth extended community attribute is a 4-byte value that is configured for a link on the demilitarized zone (DMZ) interface that connects two single hop eBGP peers. The link bandwidth extended community attribute is used as a traffic sharing value relative to other paths while traffic is being forwarded. Two paths are designated as equal for load balancing if the weight, local-pref, as-path length, Multi Exit Discriminator (MED), and Interior Gateway Protocol (IGP) costs are the same.
Benefits of the BGP Link Bandwidth Feature
The BGP Link Bandwidth feature allows BGP to be configured to send traffic over multiple iBGP or eBGP learned paths where the traffic that is sent is proportional to the bandwidth of the links that are used to exit the autonomous system. The configuration of this feature can be used with eBGP and iBGP multipath features to enable unequal cost load balancing over multiple links. Unequal cost load balancing over links with unequal bandwidth was not possible in BGP before the BGP Link Bandwidth feature was introduced.
How to Configure BGP Link Bandwidth
Configuring and Verifying BGP Link Bandwidth
1.
enable
2.
configure
terminal
3.
router
bgp
autonomous-system-number
4.
address-family
ipv4
5.
address-family
ipv4
[mdt |
multicast |
unicast [vrf
vrf-name] |
vrf
vrf-name]
6.
bgp
dmzlink-bw
7.
neighbor
ip-address
dmzlink-bw
8.
neighbor
ip-address
send-community
[both |
extended |
standard]
9.
end
10.
show
ip
bgp
ip-address
[longer-prefixes [injected] |
shorter-prefixes [mask-length]]
11.
show
ip
route
ip-address
[mask] [longer-prefixes] |
protocol [process-id] | [list
access-list-number |
access-list-name] |
static
download]
DETAILED STEPS
Configuration Examples for BGP Link Bandwidth
Example: BGP Link Bandwidth Configuration
In the following examples, the BGP Link Bandwidth feature is configured so BGP will distribute traffic proportionally to the bandwidth of each external link. The figure below shows two external autonomous systems connected by three links that each carry a different amount of bandwidth (unequal cost links). Multipath load balancing is enabled and traffic is balanced proportionally.
Note | The BGP Link Bandwidth feature functions for simple topologies that have a single path toward the exit points. |
Caution | The BGP Link Bandwidth feature might not function properly if load balancing is required toward the exit points. |
Router A Configuration
In the following example, Router A is configured to support iBGP multipath load balancing and to exchange the BGP extended community attribute with iBGP neighbors:
RouterA(config)# router bgp 100 RouterA(config-router)# neighbor 10.10.10.2 remote-as 100 RouterA(config-router)# neighbor 10.10.10.2 update-source Loopback 0 RouterA(config-router)# neighbor 10.10.10.3 remote-as 100 RouterA(config-router)# neighbor 10.10.10.3 update-source Loopback 0 RouterA(config-router)# address-family ipv4 RouterA(config-router-af)# bgp dmzlink-bw RouterA(config-router-af)# neighbor 10.10.10.2 activate RouterA(config-router-af)# neighbor 10.10.10.2 send-community both RouterA(config-router-af)# neighbor 10.10.10.3 activate RouterA(config-router-af)# neighbor 10.10.10.3 send-community both RouterA(config-router-af)# maximum-paths ibgp 6
Router B Configuration
In the following example Router B is configured to support multipath load balancing, to distribute Router D and Router E link traffic proportionally to the bandwidth of each link, and to advertise the bandwidth of these links to iBGP neighbors as an extended community:
RouterB(config)# router bgp 100 RouterB(config-router)# neighbor 10.10.10.1 remote-as 100 RouterB(config-router)# neighbor 10.10.10.1 update-source Loopback 0 RouterB(config-router)# neighbor 10.10.10.3 remote-as 100 RouterB(config-router)# neighbor 10.10.10.3 update-source Loopback 0 RouterB(config-router)# neighbor 172.16.1.1 remote-as 200 RouterB(config-router)# neighbor 172.16.1.1 ebgp-multihop 1 RouterB(config-router)# neighbor 172.16.2.2 remote-as 200 RouterB(config-router)# neighbor 172.16.2.2 ebgp-multihop 1 RouterB(config-router)# address-family ipv4 RouterB(config-router-af)# bgp dmzlink-bw RouterB(config-router-af)# neighbor 10.10.10.1 activate RouterB(config-router-af)# neighbor 10.10.10.1 next-hop-self RouterB(config-router-af)# neighbor 10.10.10.1 send-community both RouterB(config-router-af)# neighbor 10.10.10.3 activate RouterB(config-router-af)# neighbor 10.10.10.3 next-hop-self RouterB(config-router-af)# neighbor 10.10.10.3 send-community both RouterB(config-router-af)# neighbor 172.16.1.1 activate RouterB(config-router-af)# neighbor 172.16.1.1 dmzlink-bw RouterB(config-router-af)# neighbor 172.16.2.2 activate RouterB(config-router-af)# neighbor 172.16.2.2 dmzlink-bw RouterB(config-router-af)# maximum-paths ibgp 6 RouterB(config-router-af)# maximum-paths 6
Router C Configuration
In the following example Router C is configured to support multipath load balancing and to advertise the bandwidth of the link with Router E to iBGP neighbors as an extended community:
RouterC(config)# router bgp 100 RouterC(config-router)# neighbor 10.10.10.1 remote-as 100 RouterC(config-router)# neighbor 10.10.10.1 update-source Loopback 0 RouterC(config-router)# neighbor 10.10.10.2 remote-as 100 RouterC(config-router)# neighbor 10.10.10.2 update-source Loopback 0 RouterC(config-router)# neighbor 172.16.3.30 remote-as 200 RouterC(config-router)# neighbor 172.16.3.30 ebgp-multihop 1 RouterC(config-router)# address-family ipv4 RouterC(config-router-af)# bgp dmzlink-bw RouterC(config-router-af)# neighbor 10.10.10.1 activate RouterC(config-router-af)# neighbor 10.10.10.1 send-community both RouterC(config-router-af)# neighbor 10.10.10.1 next-hop-self RouterC(config-router-af)# neighbor 10.10.10.2 activate RouterC(config-router-af)# neighbor 10.10.10.2 send-community both RouterC(config-router-af)# neighbor 10.10.10.2 next-hop-self RouterC(config-router-af)# neighbor 172.16.3.3 activate RouterC(config-router-af)# neighbor 172.16.3.3 dmzlink-bw RouterC(config-router-af)# maximum-paths ibgp 6 RouterC(config-router-af)# maximum-paths 6
Example: Verifying BGP Link Bandwidth
The examples in this section show the verification of this feature on Router A, Router B, and Router C.
Router B
In the following example, the show ip bgp command is entered on Router B to verify that two unequal cost best paths have been installed into the BGP routing table. The bandwidth for each link is displayed with each route.
RouterB# show ip bgp 192.168.1.0 BGP routing table entry for 192.168.1.0/24, version 48 Paths: (2 available, best #2) Multipath: eBGP Advertised to update-groups: 1 2 200 172.16.1.1 from 172.16.1.2 (192.168.1.1) Origin incomplete, metric 0, localpref 100, valid, external, multipath, best Extended Community: 0x0:0:0 DMZ-Link Bw 278 kbytes 200 172.16.2.2 from 172.16.2.2 (192.168.1.1) Origin incomplete, metric 0, localpref 100, valid, external, multipath, best Extended Community: 0x0:0:0 DMZ-Link Bw 625 kbytes
Router A
In the following example, the show ip bgp command is entered on Router A to verify that the link bandwidth extended community has been propagated through the iBGP network to Router A. Exit links are located on Router B and Router C. The output shows that a route for each exit link to autonomous system 200 has been installed as a best path in the BGP routing table.
RouterA# show ip bgp 192.168.1.0 BGP routing table entry for 192.168.1.0/24, version 48 Paths: (3 available, best #3) Multipath: eBGP Advertised to update-groups: 1 2 200 172.16.1.1 from 172.16.1.2 (192.168.1.1) Origin incomplete, metric 0, localpref 100, valid, external, multipath Extended Community: 0x0:0:0 DMZ-Link Bw 278 kbytes 200 172.16.2.2 from 172.16.2.2 (192.168.1.1) Origin incomplete, metric 0, localpref 100, valid, external, multipath, best Extended Community: 0x0:0:0 DMZ-Link Bw 625 kbytes 200 172.16.3.3 from 172.16.3.3 (192.168.1.1) Origin incomplete, metric 0, localpref 100, valid, external, multipath, best Extended Community: 0x0:0:0 DMZ-Link Bw 2500 kbytes
Router A
In the following example, the show ip route command is entered on Router A to verify the multipath routes that are advertised and the associated traffic share values:
RouterA# show ip route 192.168.1.0 Routing entry for 192.168.1.0/24 Known via "bgp 100", distance 200, metric 0 Tag 200, type internal Last update from 172.168.1.1 00:01:43 ago Routing Descriptor Blocks: * 172.168.1.1, from 172.168.1.1, 00:01:43 ago Route metric is 0, traffic share count is 13 AS Hops 1, BGP network version 0 Route tag 200 172.168.2.2, from 172.168.2.2, 00:01:43 ago Route metric is 0, traffic share count is 30 AS Hops 1, BGP network version 0 Route tag 200 172.168.3.3, from 172.168.3.3, 00:01:43 ago Route metric is 0, traffic share count is 120 AS Hops 1, BGP network version 0 Route tag 200
Where to Go Next
For information about the BGP Multipath Load Sharing for Both eBGP and iBGP in an MPLS-VPN feature, see the “BGP Multipath Load Sharing for Both eBGP and iBGP in an MPLS-VPN” module in the IP Routing: BGP Configuration Guide.
For information about the iBGP Multipath Load Sharing feature, see the “iBGP Multipath Load Sharing” module in the IP Routing: BGP Configuration Guide .
Additional References
Related Documents
Related Topic |
Document Title |
---|---|
BGP commands: complete command syntax, command mode, command history, defaults, usage guidelines, and examples |
|
CEF configuration tasks |
IP Switching Cisco Express Forwarding Configuration Guide |
Standards
Standard |
Title |
---|---|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
— |
MIBs
MIB |
MIBs Link |
---|---|
No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature. |
To obtain lists of supported MIBs by platform and Cisco IOS release, and to download MIB modules, go to the Cisco MIB website on Cisco.com at the following URL: http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml |
RFCs
RFC |
Title |
---|---|
draft-ramachandra-bgp-ext-communities-09.txt |
BGP Extended Communities Attribute |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password. |
Feature Information for BGP Link Bandwidth
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Feature Name |
Releases |
Feature Information |
---|---|---|
BGP Link Bandwidth |
12.2(2)T 12.2(14)S |
This feature advertises the bandwidth of an autonomous system exit link as an extended community. The link bandwidth extended community attribute is propagated to iBGP peers when extended community exchange is enabled. The following commands were introduced or modified: router bgp, address-family ipv4, address-family ipv4, bgp dmzlink-bw, neighbor, show ip bgp, show ip route. |