Table Of Contents
Prerequisites for BGP Support for MTR
Restrictions for BGP Support for MTR
Information About BGP Support for MTR
BGP Sessions for Class-Specific Topologies
Topology Translation Using BGP
How to Configure BGP Support for MTR
Activating an MTR Topology Using BGP
Importing Routes from an MTR Topology Using BGP
Configuration Examples for BGP Support for MTR
Activating an MTR Topology Using BGP: Examples
Importing Routes from an MTR Topology Using BGP: Example
Feature Information for BGP Support for MTR
BGP Support for MTR
First Published: February 27, 2007Last Updated: February 27, 2007BGP support for MTR introduces a new configuration hierarchy and command-line interface (CLI) commands to support Multi-Topology Routing (MTR) topologies. The new configuration hierarchy, or scope, can be implemented by BGP independently of MTR. MTR allows the configuration of service differentiation through class-based forwarding. MTR supports multiple unicast topologies and a separate multicast topology. A topology is a subset of the underlying network (or base topology) characterized by an independent set of Network Layer Reachability Information (NLRI).
Finding Feature Information in This Module
Your Cisco IOS software release may not support all of the features documented in this module. To reach links to specific feature documentation in this module and to see a list of the releases in which each feature is supported, use the "Feature Information for BGP Support for MTR" section.
Finding Support Information for Platforms and Cisco IOS and Catalyst OS Software Images
Use Cisco Feature Navigator to find information about platform support and Cisco IOS and Catalyst OS software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Contents
•Prerequisites for BGP Support for MTR
•Restrictions for BGP Support for MTR
•Information About BGP Support for MTR
•How to Configure BGP Support for MTR
•Configuration Examples for BGP Support for MTR
•Feature Information for BGP Support for MTR
Prerequisites for BGP Support for MTR
•This document assumes that you are familiar with the feature Multi-Topology Routing, first released in Cisco IOS Release 12.2(33)SRB.
•A global MTR topology configuration has been configured and activated.
•IP routing and CEF are enabled.
Restrictions for BGP Support for MTR
•Redistribution within a topology is permitted. Redistribution from one topology to another is not permitted. This restriction is designed to prevent routing loops from occurring. You can use topology translation or topology import functionality to move routes from one topology to another.
•Only the IPv4 address family (multicast and unicast) is supported.
•Only a single multicast topology can be configured, and only the base topology can be specified if a multicast topology is created.
Information About BGP Support for MTR
Before using BGP to support MTR, you should be familiar with the following concepts:
•BGP Sessions for Class-Specific Topologies
•Topology Translation Using BGP
BGP Network Scope
A new configuration hierarchy, named scope, has been introduced into the BGP protocol. To implement MTR for BGP, the scope hierarchy is required, but the scope hierarchy is not limited to MTR use. The scope hierarchy introduces some new configuration modes such as router scope configuration mode. Router scope configuration mode is entered by configuring the scope command in router configuration mode, and a collection of routing tables is created when this command is entered. BGP commands configured under the scope hierarchy are configured for a single network (globally), or on a per-VRF basis, and are referred to as scoped commands. The scope hierarchy can contain one or more address families.
MTR CLI Hierarchy Under BGP
The BGP CLI has been modified to provide backwards compatibility for pre-MTR BGP configuration and to provide a hierarchical implementation of MTR. Router configuration mode is backwards compatible with the pre-address family and pre-MTR configuration CLI. Global commands that affect all networks are configured in this configuration mode. For address-family and topology configuration, general session commands and peer templates can be configured to be used in the address-family or topology configuration modes.
After any global commands are configured, the scope is defined either globally or for a specific VRF. Address family configuration mode is entered by configuring the address-family command in router scope configuration mode or router configuration mode. Unicast is the default address family if no subaddress family (SAFI) is specified. MTR supports only the IPv4 address family with a SAFI of unicast or multicast. Entering address family configuration mode from router configuration mode configures BGP to use pre-MTR-based CLI. This configuration mode is backwards compatible with pre-existing address family configurations. Entering address family configuration mode from router scope configuration mode configures the router to use the hierarchical CLI that supports MTR. Address family configuration parameters that are not specific to a topology are entered in this address family configuration mode.
BGP topology configuration mode is entered by configuring the topology (BGP) command in address family configuration mode. Up to 32 topologies (including the base topology) can be configured on a router. The topology ID is configured by entering the bgp tid command. All address family and subaddress family configuration parameters for the topology are configured here.
Note Configuring a scope for a BGP routing process removes CLI support for pre-MTR-based configuration.
The following shows the hierarchy levels that are used when configuring BGP for MTR implementation:
router bgp <autonomous-system-number> ! global commands scope {global | vrf <vrf-name>} ! scoped commands address-family {<afi>} [<safi>] ! address family specific commands topology {<topology-name> | base} ! topology specific commandsBGP Sessions for Class-Specific Topologies
MTR is configured under BGP on a per-session basis. The base unicast and multicast topologies are carried in the global (default) session. A separate session is created for each class-specific topology that is configured under a BGP routing process. Each session is identified by its topology ID. BGP performs a best-path calculation individually for each class-specific topology. A separate RIB and FIB are maintained for each session.
Topology Translation Using BGP
Depending on the design and policy requirements for your network, you may need to install routes from a class-specific topology on one router in a class-specific topology on a neighboring router. Topology translation functionality using BGP provides support for this operation. Topology translation is BGP neighbor-session based. The neighbor translate-topology command is configured using the IP address and topology ID from the neighbor.
The topology ID identifies the class-specific topology of the neighbor. The routes in the class-specific topology of the neighbor are installed in the local class-specific RIB. BGP performs a best-path calculation on all installed routes and installs these routes into the local class-specific RIB. If a duplicate route is translated, BGP will select and install only one instance of the route per standard BGP best-path calculation behavior.
Topology Import Using BGP
Topology import functionality using BGP is similar to topology translation. The difference is that routes are moved between class-specific topologies on the same router using BGP. This function is configured by entering the import topology command. The name of the class-specific topology or base topology is specified when entering this command. Best-path calculations are run on the imported routes before they are installed into the topology RIB. This command also includes a route-map keyword to allow you to filter routes that are moved between class-specific topologies.
How to Configure BGP Support for MTR
Before performing the following tasks, you must have configured MTR topologies. For more details, see the Multi-Topology Routing feature first released in Cisco IOS Release 12.2(33)SRB.
•Activating an MTR Topology Using BGP
•Importing Routes from an MTR Topology Using BGP
Activating an MTR Topology Using BGP
Perform this task to activate an MTR topology inside an address family using BGP. This task is configured on Router B in Figure 1 and must also be configured on Router D and Router E. In this task, a scope hierarchy is configured to apply globally and a neighbor is configured under router scope configuration mode. Under the IPv4 unicast address family, an MTR topology that applies to video traffic is activated for the specified neighbor. There is no interface configuration mode for BGP topologies.
Figure 1 BGP Network Diagram
The BGP CLI has been modified to provide backwards compatibility for pre-MTR BGP configuration and to provide a hierarchical implementation of MTR. A new configuration hierarchy, named scope, has been introduced into the BGP protocol. To implement MTR for BGP, the scope hierarchy is required, but the scope hierarchy is not limited to MTR use. The scope hierarchy introduces some new configuration modes such as router scope configuration mode. Router scope configuration mode is entered by configuring the scope command in router configuration mode, and a collection of routing tables is created when this command is entered. The following shows the hierarchy levels that are used when configuring BGP for MTR implementation:
router bgp <autonomous-system-number> ! global commands scope {global | vrf <vrf-name>} ! scoped commands address-family {<afi>} [<safi>] ! address family specific commands topology {<topology-name> | base} ! topology specific commandsBefore using BGP to support MTR, you should be familiar with all the concepts documented in the "Information About BGP Support for MTR" section.
Prerequisites
•A global MTR topology configuration has been configured and activated.
•IP routing and CEF are enabled.
Restrictions
•Redistribution within a topology is permitted. Redistribution from one topology to another is not permitted. This restriction is designed to prevent routing loops. You can use topology translation or topology import functionality to move routes from one topology to another.
•Only the IPv4 address family (multicast and unicast) is supported.
•Only a single multicast topology can be configured, and only the base topology can be specified if a multicast topology is created.
SUMMARY STEPS
1. enable
2. configure terminal
3. router bgp autonomous-system-number
4. scope {global | vrf vrf-name}
5. neighbor {ip-address | peer-group-name} remote-as autonomous-system-number
6. neighbor {ip-address | peer-group-name} transport {connection-mode {active | passive} | path-mtu-discovery | multi-session | single-session}
7. address-family ipv4 [mdt | multicast | unicast]
8. topology {base | topology-name}
9. bgp tid number
10. neighbor {ip-address} activate
11. neighbor {ip-address | peer-group-name} translate-topology number
12. end
13. clear ip bgp topology {* | topology-name} {as-number | dampening [network-address [network-mask]] | flap-statistics [network-address [network-mask]] | peer-group peer-group-name | table-map | update-group [number | ip-address]} [in [prefix-filter] | out | soft [in [prefix-filter] | out]]
14. show ip bgp topology {* | topology-name} summary
DETAILED STEPS
Command or Action PurposeStep 1
enable
Example:Router> enable
Enables privileged EXEC mode.
•Enter your password if prompted.
Step 2
configure terminal
Example:Router# configure terminal
Enters global configuration mode.
Step 3
router bgp autonomous-system-number
Example:Router(config)# router bgp 45000
Enters router configuration mode to create or configure a BGP routing process.
Step 4
scope {global | vrf vrf-name}
Example:Router(config-router)# scope global
Defines the scope to the BGP routing process and enters router scope configuration mode.
•BGP general session commands that apply to a single network, or a specified VRF, are entered in this configuration mode.
•Use the global keyword to specify that BGP uses the global routing table.
•Use the vrf keyword and vrf-name argument to specify that BGP uses a specific VRF routing table. The VRF must already exist.
Step 5
neighbor {ip-address | peer-group-name} remote-as autonomous-system-number
Example:Router(config-router-scope)# neighbor 172.16.1.2 remote-as 45000
Adds the IP address of the neighbor in the specified autonomous system to the multiprotocol BGP neighbor table of the local router.
Step 6
neighbor {ip-address | peer-group-name} transport {connection-mode {active | passive} | path-mtu-discovery | multi-session | single-session}
Example:Router(config-router-scope)# neighbor 172.16.1.2 transport multi-session
Enables a TCP transport session option for a BGP session.
•Use the connection-mode keyword to specify the type of connection, either active or passive.
•Use the path-mtu-discovery keyword to enable TCP transport path maximum transmission unit (MTU) discovery.
•Use the multi-session keyword to specify a separate TCP transport session for each address family.
•Use the single-session keyword to specify that all address families use a single TCP transport session.
Step 7
address-family ipv4 [mdt | multicast | unicast]
Example:Router(config-router-scope)# address-family ipv4
Specifies the IPv4 address family and enters router scope address family configuration mode.
•Use the mdt keyword to specify IPv4 MDT address prefixes.
•Use the multicast keyword to specify IPv4 multicast address prefixes.
•Use the unicast keyword to specify the IPv4 unicast address family. By default, the router is placed in address family configuration mode for the IPv4 unicast address family if the unicast keyword is not specified with the address-family ipv4 command.
•Non-topology-specific configuration parameters are configured in this configuration mode.
Step 8
topology {base | topology-name}
Example:Router(config-router-scope-af)# topology VIDEO
Configures the topology instance in which BGP will route class-specific or base topology traffic, and enters router scope address family topology configuration mode.
Step 9
bgp tid number
Example:Router(config-router-scope-af-topo)# bgp tid 100
Associates a BGP routing process with the specified topology ID.
•Each topology must be configured with a unique topology ID.
Step 10
neighbor ip-address activate
Example:Router(config-router-scope-af-topo)#
neighbor 172.16.1.2 activate
Enables the BGP neighbor to exchange prefixes for the NSAP address family with the local router.
Note If you have configured a peer group as a BGP neighbor, you do not use this command because peer groups are automatically activated when any peer group parameter is configured.
Step 11
neighbor {ip-address | peer-group-name} trans- late-topology number
Example:Router(config-router-scope-af-topo)# neighbor 172.16.1.2 translate-topology 200
(Optional) Configures BGP to install routes from a topology on another router to a topology on the local router.
•The topology ID is entered for the number argument to identify the topology on the router.
Step 12
end
Example:Router(config-router-scope-af-topo)# end
(Optional) Exits router scope address family topology configuration mode and returns to privileged EXEC mode.
Step 13
clear ip bgp topology {* | topology-name} {as-number | dampening [network-address [net- work-mask]] | flap-statistics [network-address [network-mask]] | peer-group peer-group-name | table-map | update-group [number | ip-ad- dress]} [in [prefix-filter] | out | soft [in [prefix-filter] | out]]
Example:Router# clear ip bgp topology VIDEO 45000
Resets BGP neighbor sessions under a specified topology or all topologies.
Step 14
show ip bgp topology {* | topology} summary
Example:Router# show ip bgp topology VIDEO summary
(Optional) Displays BGP information about a topology.
•Most standard BGP keywords and arguments can be entered following the topology keyword.
Note Only the syntax required for this task is shown. For more details, see the Cisco IOS IP Routing Protocols Command Reference.
Examples
The following example shows summary output for the show ip bgp topology command and the VIDEO topology:
Router# show ip bgp topology VIDEO summaryBGP router identifier 192.168.3.1, local AS number 45000BGP table version is 1, main routing table version 1Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd172.16.1.2 4 45000 289 289 1 0 0 04:48:44 0192.168.3.2 4 50000 3 3 1 0 0 00:00:27 0What to Do Next
Repeat this task for every topology that you want to enable, and repeat this configuration on all neighbor routers that are to use the topologies. If you want to import routes from one MTR topology to another on the same router, proceed to the next task.
Importing Routes from an MTR Topology Using BGP
Perform this task to import routes from one MTR topology to another on the same router, when multiple topologies are configured on the same router. In this task, a prefix list is defined to permit prefixes from the 10.2.2.0 network, and this prefix list is used with a route map to filter routes moved from the imported topology. A global scope is configured, address family IPv4 is entered, the VIDEO topology is specified, the VOICE topology is imported, and the routes are filtered using the route map named 10NET.
Prerequisites
•A global topology configuration has been configured and activated.
•IP routing and CEF are enabled.
Restrictions
•Redistribution within a topology is permitted. Redistribution from one topology to another is not permitted. This restriction is designed to prevent routing loops from occurring. You can use topology translation or topology import functionality to move routes from one topology to another.
•Only the IPv4 address family (multicast and unicast) is supported.
•Only a single multicast topology can be configured, and only the base topology can be specified if a multicast topology is created.
SUMMARY STEPS
1. enable
2. configure terminal
3. ip prefix-list list-name [seq seq-value] {deny network/length | permit network/length} [ge ge-value] [le le-value]
4. route-map map-name [permit | deny] [sequence-number]
5. match ip address {access-list-number [access-list-number... | access-list-name...] | access-list-name [access-list-number... | access-list-name] | prefix-list prefix-list-name [prefix-list-name...]}
6. exit
7. router bgp autonomous-system-number
8. scope {global | vrf vrf-name}
9. address-family ipv4 [mdt | multicast | unicast]
10. topology {base | topology-name}
11. import topology {base | topology-name} [route-map map-name]
12. end
DETAILED STEPS
Configuration Examples for BGP Support for MTR
This section contains the following configuration examples:
•Activating an MTR Topology Using BGP: Examples
•Importing Routes from an MTR Topology Using BGP: Example
Activating an MTR Topology Using BGP: Examples
This section contains the following configuration examples:
•BGP Topology Translation Configuration
•BGP Scope Global and VRF Configuration
BGP Topology Translation Configuration
The following example configures BGP in the VIDEO topology and configures topology translation with the 192.168.2.2 neighbor:
router bgp 45000scope globalneighbor 172.16.1.1 remote-as 50000neighbor 192.168.2.2 remote-as 55000neighbor 172.16.1.1 transport multi-sessionneighbor 192.168.2.2 transport multi-sessionaddress-family ipv4topology VIDEObgp tid 100neighbor 172.16.1.1 activateneighbor 192.168.2.2 activateneighbor 192.168.2.2 translate-topology 200endclear ip bgp topology VIDEO 50000BGP Scope Global and VRF Configuration
The following example shows how to configure a global scope for a unicast topology and also for a multicast topology. After exiting the router scope configuration mode, a scope is configured for the VRF named DATA.
router bgp 45000scope globalbgp default ipv4-unicastneighbor 172.16.1.2 remote-as 45000neighbor 192.168.3.2 remote-as 50000address-family ipv4 unicasttopology VOICEbgp tid 100neighbor 172.16.1.2 activateexitaddress-family ipv4 multicasttopology baseneighbor 192.168.3.2 activateexitexitexitscope vrf DATAneighbor 192.168.1.2 remote-as 40000address-family ipv4neighbor 192.168.1.2 activateendBGP Topology Verification
The following example shows summary output for the show ip bgp topology command. Information is displayed about BGP neighbors configured to use the MTR topology named VIDEO.
Router# show ip bgp topology VIDEO summaryBGP router identifier 192.168.3.1, local AS number 45000BGP table version is 1, main routing table version 1Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd172.16.1.2 4 45000 289 289 1 0 0 04:48:44 0192.168.3.2 4 50000 3 3 1 0 0 00:00:27 0The following partial output displays BGP neighbor information under the VIDEO topology:
Router# show ip bgp topology VIDEO neighbors 172.16.12
BGP neighbor is 172.16.1.2, remote AS 45000, internal linkBGP version 4, remote router ID 192.168.2.1BGP state = Established, up for 04:56:30Last read 00:00:23, last write 00:00:21, hold time is 180, keepalive interval is 60 secondsNeighbor sessions:1 active, is multisession capableNeighbor capabilities:Route refresh: advertised and received(new)Message statistics, state Established:InQ depth is 0OutQ depth is 0Sent RcvdOpens: 1 1Notifications: 0 0Updates: 0 0Keepalives: 296 296Route Refresh: 0 0Total: 297 297Default minimum time between advertisement runs is 0 secondsFor address family: IPv4 Unicast topology VIDEOSession: 172.16.1.2 session 1BGP table version 1, neighbor version 1/0Output queue size : 0Index 1, Offset 0, Mask 0x21 update-group memberTopology identifier: 100...Address tracking is enabled, the RIB does have a route to 172.16.1.2Address tracking requires at least a /24 route to the peerConnections established 1; dropped 0Last reset neverTransport(tcp) path-mtu-discovery is enabledConnection state is ESTAB, I/O status: 1, unread input bytes: 0Minimum incoming TTL 0, Outgoing TTL 255Local host: 172.16.1.1, Local port: 11113Foreign host: 172.16.1.2, Foreign port: 179...Importing Routes from an MTR Topology Using BGP: Example
The following example shows how to configure an access list to be used by a route map named BLUE to filter routes imported from the MTR topology named VOICE. Only routes with the prefix 192.168.1.0 are imported.
access-list 1 permit 192.168.1.0 0.0.0.255route-map BLUEmatch ip address 1exitrouter bgp 50000scope globalneighbor 10.1.1.2 remote-as 50000neighbor 172.16.1.1 remote-as 60000address-family ipv4topology VIDEObgp tid 100neighbor 10.1.1.2 activateneighbor 172.16.1.1 activateimport topology VOICE route-map BLUEendclear ip bgp topology VIDEO 50000Where to Go Next
To configure other IP routing protocols to support MTR and to perform other MTR-related tasks, see the Multi-Topology Routing feature first released in Cisco IOS Release 12.2(33)SRB.
Additional References
The following sections provide references related to the BGP Support for Multi-Topology Routing feature.
Related Documents
Related Topic Document TitleIP routing protocol commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples
Standards
Standard TitleNo new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
—
MIBs
RFCs
RFC TitleNo new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.
—
Technical Assistance
Command Reference
This section documents only commands that are new or modified.
address-family ipv4 (BGP)
To enter address family configuration mode to configure a routing session using standard IP Version 4 address prefixes, use the address-family ipv4 command in router configuration or router scope configuration mode. To exit address family configuration mode and remove the IPv4 address family configuration from the running configuration, use the no form of this command.
Syntax Available Under Router Configuration Mode
address-family ipv4 [mdt | multicast | tunnel | unicast [vrf vrf-name] | vrf vrf-name]
no address-family ipv4 [mdt | multicast | tunnel | unicast [vrf vrf-name] | vrf vrf-name]
Syntax Available Under Router Scope Configuration Mode
address-family ipv4 [mdt | multicast | unicast]
no address-family ipv4 [mdt | multicast | unicast]
Syntax Description
Command Default
IP Version 4 address prefixes are not enabled.
Command Modes
Router configuration
Router scope configurationCommand History
Usage Guidelines
The address-family ipv4 command replaces the match nlri and set nlri commands. The address-family ipv4 command places the router in address family configuration mode (prompt:
config-router-af)
, from which you can configure routing sessions that use standard IP Version 4 address prefixes. To leave address family configuration mode and return to router configuration mode, type exit.
Note Routing information for address family IPv4 is advertised by default for each BGP routing session configured with the neighbor remote-as command unless you enter the no bgp default ipv4-unicast command before configuring the neighbor remote-as command.
The tunnel keyword is used to enable the tunnel subaddress family identifier (SAFI) under the IPv4 address family identifier. This SAFI is used to advertise the tunnel endpoints and the SAFI-specific attributes (which contain the tunnel type and tunnel capabilities). Redistribution of tunnel endpoints into the BGP IPv4 tunnel SAFI table occurs automatically when the tunnel address family is configured. However, peers need to be activated under the tunnel address family before the sessions can exchange tunnel information.
The mdt keyword is used to enable the MDT SAFI under the IPv4 address family identifier. This SAFI is used to advertise tunnel endpoints for inter-AS multicast VPN peering sessions.
In Cisco IOS Release 12.2(33)SRB and later releases, the ability to use address family configuration under the router scope configuration mode was introduced. The scope hierarchy can be defined for BGP routing sessions and is required to support Multi-Topology Routing (MTR). To enter the router scope configuration mode, use the scope command, which can apply globally or for a specific VRF. When using the scope for a specific VRF, only the unicast keyword is available.
Examples
The following example places the router in address family configuration mode for the IP Version 4 address family:
Router(config)# router bgp 50000Router(config-router)# address-family ipv4Router(config-router-af)#Multicast Example
The following example places the router in address family configuration mode and specifies only multicast address prefixes for the IP Version 4 address family:
Router(config)# router bgp 50000Router(config-router)# address-family ipv4 multicastRouter(config-router-af)#Unicast Example
The following example places the router in address family configuration mode and specifies unicast address prefixes for the IP Version 4 address family:
Router(config)# router bgp 50000Router(config-router)# address-family ipv4 unicastRouter(config-router-af)#VRF Example
The following example places the router in address family configuration mode and specifies cisco as the name of the VRF instance to associate with subsequent IP Version 4 address family configuration mode commands:
Router(config)# router bgp 50000Router(config-router)# address-family ipv4 vrf ciscoRouter(config-router-af)#
Note Use this form of the command, which specifies a VRF, only to configure routing exchanges between provider edge (PE) and customer edge (CE) devices.
Tunnel Example
The following example places the router in tunnel address family configuration mode:
Router(config)# router bgp 100
Router(config-router)# address-family ipv4 tunnel
Router(config-router-af)#Router Scope Configuration Mode Example
The following example shows how to configure the IPv4 address family under router scope configuration. In this example, the scope hierarchy is enabled globally. the router enters address family configuration mode, and only multicast address prefixes for the IP Version 4 address family are specified:
Router(config)# router bgp 50000Router(config-router)# scope globalRouter(config-router-scope)# address-family ipv4 multicastRouter(config-router-scope-af)#Related Commands
bgp tid
To configure a Border Gateway Protocol (BGP) routing session to accept routes with a specified Multi-Topology Routing (MTR) topology ID, use the bgp tid command in router scope address family topology configuration mode. To disassociate the topology ID from the BGP process, use the no form of this command.
bgp tid number
no bgp tid
Syntax Description
Command Default
No ID is associated with an MTR topology instance.
Command Modes
Router scope address family topology configuration
Command History
Usage Guidelines
The bgp tid command is used to associate an ID with an MTR topology instance. Each topology must be configured with a unique topology ID. The topology ID is used to identify and group routes for each topology in BGP updates.
Examples
The following example configures a topology ID of 100 under the VOICE topology instance:
Router(config)# router bgp 50000
Router(config-router)# scope globalRouter(config-router-scope)# address-family ipv4Router(config-router-scope-af)# topology VOICERouter(config-router-scope-af-topo)# bgp tid 100
Router(config-router-scope-af-topo)# end
Related Commands
clear ip bgp topology
To reset Border Gateway Protocol (BGP) neighbor session information for a topology instance, use the clear ip bgp topology command in privileged EXEC mode.
clear ip bgp topology {* | topology-name} {autonomous-system-number | dampening [network-address [network-mask]] | flap-statistics [network-address [network-mask]] | peer-group peer-group-name | table-map | update-group [number | ip-address]} [in [prefix-filter] | out | soft [in [prefix-filter] | out]]
Syntax Description
Command Modes
Privileged EXEC
Command History
Usage Guidelines
The clear ip bgp topology command clears BGP session information under the specified topology or for all topologies. This command can be used to initiate a hard reset or soft reconfiguration. A hard reset tears down and rebuilds the specified peering sessions and rebuilds the BGP routing tables. A soft reconfiguration uses stored prefix information to reconfigure and activate BGP routing tables without tearing down existing peering sessions. Soft reconfiguration uses stored update information, at the cost of additional memory for storing the updates, to allow you to apply new BGP policy without disrupting the network. Soft reconfiguration can be configured for inbound or outbound sessions.
Generating Updates from Stored Information
To generate new inbound updates from stored update information (rather than dynamically) without resetting the BGP session, you must preconfigure the local BGP router using the neighbor soft-reconfiguration inbound command. This preconfiguration causes the software to store all received updates without modification regardless of whether an update is accepted by the inbound policy. Storing updates is memory intensive and should be avoided if possible.
Outbound BGP soft configuration has no memory overhead and does not require any preconfiguration. You can trigger an outbound reconfiguration on the other side of the BGP session to make the new inbound policy take effect.
Use this command whenever any of the following changes occur:
•Additions or changes to the BGP-related access lists
•Changes to BGP-related weights
•Changes to BGP-related distribution lists
•Changes to BGP-related route maps
Dynamic Inbound Soft Reset
The route refresh capability, as defined in RFC 2918, allows the local router to reset inbound routing tables dynamically by exchanging route refresh requests to supporting peers. The route refresh capability does not store update information locally for non-disruptive policy changes. It instead relies on dynamic exchange with supporting peers. Route refresh is advertised through BGP capability negotiation. All BGP routers must support the route refresh capability.
To determine if a BGP router supports this capability, use the show ip bgp neighbors command. The following message is displayed in the output when the router supports the route refresh capability:
Received route refresh capability from peer.If all BGP routers support the route refresh capability, use the clear ip bgp topology command with the in keyword. You need not use the soft keyword, because soft reset is automatically assumed when the route refresh capability is supported.
Note After configuring a soft reset (inbound or outbound), it is normal for the BGP routing process to hold memory. The amount of memory that is held depends on the size of routing tables and the percentage of memory chunks that are utilized. Partially used memory chunks will be used or released before more memory is allocated from the global router memory pool.
Examples
The following example configures soft reconfiguration for the inbound sessions with neighbors in the autonomous system 45000. The outbound sessions are unaffected.
Router#
clear ip bgp topology VOICE 45000 soft inRelated Commands
import topology
To configure Border Gateway Protocol (BGP) to import routes from one Multi-Topology Routing (MTR) topology to another on the same router, use the import topology command in router scope address family topology configuration mode. To disable the import configuration, use the no form of this command.
import topology {topology-name | base} [route-map map-name]
no import topology {topology-name | base} [route-map map-name]
Syntax Description
topology-name
Name of topology instance.
base
Imports routes from the base topology.
route-map map-name
(Optional) Specifies a route map to filter imported routes.
Command Default
No routes are imported from other topologies.
Command Modes
Router scope address family topology configuration
Command History
Usage Guidelines
The import topology command is used to configure BGP to import routes from one topology to another, when multiple topologies are configured on the same router. The name of the class-specific topology or the base topology is specified when entering this command. Best-path calculations are run on the imported routes before they are installed into the topology RIB. If a duplicate route is imported, BGP will select and install only one instance of the route per standard BGP best-path calculation behavior. This command also includes a route-map keyword to allow you to filter routes that are moved between class-specific topologies.
Examples
The following example configures BGP to import routes from a topology instance named VIDEO into the local topology instance. Imported routes are filtered through the route map named 10NET, which permits routes from the 10.0.0.0 network.
Router(config)# ip prefix-list 10 permit 10.0.0.0/8
Router(config)# route-map 10NET
Router(config-route-map)# match ip address prefix-list 10
Router(config-route-map)# exit
Router(config)# router bgp 50000
Router(config-router)# scope global
Router(config-router-scope)# address-family ipv4
Router(config-router-scope-af)# topology VOICE
Router(config-router-scope-af-topo)# import topology VIDEO route-map 10NET
Router(config-router-scope-af-topo)# end
Related Commands
neighbor translate-topology
To configure Border Gateway Protocol (BGP) to translate or move routes from a topology on another router to a topology on the local router, use the neighbor translate-topology command in router scope address family topology configuration mode. To disable the topology translation configuration, use the no form of this command.
neighbor ip-address translate-topology number
no neighbor ip-address translate-topology number
Syntax Description
Command Default
No routes are translated from a topology on another router.
Command Modes
Router scope address family topology configuration
Command History
Usage Guidelines
The neighbor translate-topology command is used to translate or move routes from a Multi-Topology Routing (MTR) class-specific topology on a neighbor router to the local topology under which the BGP session is configured. The topology ID identifies the class-specific topology of the neighbor. The routes in the class-specific topology of the neighbor are moved into a local class-specific topology RIB. BGP performs best-path calculation on imported routes and installs these routes into the local class-specific RIB. If a duplicate route is translated, BGP will select and install only one instance of the route per standard BGP best-path calculation behavior.
Examples
The following example configures BGP to translate the topology with the 255 ID from the 192.168.3.1 neighbor:
Router(config)# router bgp 50000Router(config-router)# scope globalRouter(config-router-scope)# bgp default ipv4-unicast
Router(config-router-scope)# neighbor 192.168.3.1 remote-as 45000Router(config-router-scope)# address-family ipv4 unicastRouter(config-router-scope-af)# topology VOICE
Router(config-router-scope-af-topo)# bgp tid 100
Router(config-router-scope-af-topo)# neighbor 192.168.3.1 activate
Router(config-router-scope-af-topo)# neighbor 192.168.3.1 translate-topology 255
Router(config-router-scope-af-topo)# end
Related Commands
neighbor transport
To enable a TCP transport session option for a Border Gateway Protocol (BGP) session, use the neighbor transport command in address family or router configuration mode. To disable a TCP transport session option for a BGP session, use the no form of this command.
neighbor {ip-address | peer-group-name} transport {connection-mode {active | passive} | path-mtu-discovery | multi-session | single-session}
no neighbor {ip-address | peer-group-name} transport {connection-mode | path-mtu-discovery | multi-session | single-session}
Syntax Description
Command Default
If this command is not configured, TCP path MTU discovery is enabled by default, but no other TCP transport session options are enabled.
Command Modes
Address family configuration
Router configurationCommand History
Release Modification12.4
This command was introduced.
12.2(33)SRA
The path-mtu-discovery keyword was added.
12.2(33)SRB
The multi-session and single-session keywords were added.
Usage Guidelines
This command is used to specify various transport options. An active or passive transport connection can be specified for a BGP session. TCP transport path MTU discovery can be enabled to allow a BGP session to take advantage of larger MTU links. Use the show ip bgp neighbors command to determine whether TCP path MTU discovery is enabled.
In Cisco IOS Release 12.2(33)SRB and later releases, options can be specified for the transport of address family traffic using a single TCP session or to enable a separate TCP session for each address family. Multiple TCP sessions are used to support Multi-Topology Routing (MTR), and the single session option is available for backwards compatibility for non-MTR configurations and for scalability purposes.
Examples
The following example shows how to configure the TCP transport connection to be active for a single internal BGP (iBGP) neighbor:
router bgp 45000neighbor 172.16.1.2 remote-as 45000neighbor 172.16.1.2 activateneighbor 172.16.1.2 transport connection-mode activeendThe following example shows how to configure the TCP transport connection to be passive for a single external BGP (eBGP) neighbor:
router bgp 45000neighbor 192.168.1.2 remote-as 40000neighbor 192.168.1.2 activateneighbor 192.168.1.2 transport connection-mode passiveendThe following example shows how to disable TCP path MTU discovery for a single BGP neighbor:
router bgp 45000neighbor 172.16.1.2 remote-as 45000neighbor 172.16.1.2 activateno neighbor 172.16.1.2 transport path-mtu-discoveryendThe following example shows how to reenable TCP path MTU discovery for a single BGP neighbor, if TCP path MTU discovery is disabled:
router bgp 45000neighbor 172.16.1.2 remote-as 45000neighbor 172.16.1.2 activateneighbor 172.16.1.2 transport path-mtu-discoveryendThe following example shows how to enable a separate TCP session for each address family for an MTR topology configuration:
router bgp 45000scope globalneighbor 172.16.1.2 remote-as 45000neighbor 172.16.1.2 transport multi-sessionaddress-family ipv4topology VIDEObgp tid 100neighbor 172.16.1.2 activateendRelated Commands
scope
To define the scope for a Border Gateway Protocol (BGP) routing session and to enter router scope configuration mode, use the scope command in router configuration mode. To remove the scope configuration, use the no form of this command.
scope {global | vrf vrf-name}
no scope {global | vrf vrf-name}
Syntax Description
global
Configures BGP to use the global routing table or a specific topology table.
vrf
Configures BGP to use a specific VRF routing table.
vrf-name
Name of an existing VRF.
Command Default
No scope is defined for a BGP routing session.
Command Modes
Router configuration
Command History
Usage Guidelines
A new configuration hierarchy, named scope, has been introduced into the BGP protocol. To implement Multi-Topology Routing (MTR) support for BGP, the scope hierarchy is required, but the scope hierarchy is not limited to MTR use. The scope hierarchy introduces some new configuration modes such as router scope configuration mode. Router scope configuration mode is entered by configuring the scope command in router configuration mode, and a collection of routing tables is created when this command is entered. The scope is configured to isolate routing calculation for a single network (globally) or on a per-VRF basis, and BGP commands configured in routing scope configuration mode are referred to as scoped commands. The scope hierarchy can contain one or more address families.
The BGP command-line interface (CLI) has been modified to provide backwards compatibility for pre-MTR BGP configuration and to provide a hierarchal implementation of MTR. From router scope configuration mode, MTR is configured first by entering the address-family command to enter the desired address family and then by entering the topology command to define the topology
Note Configuring a scope for a BGP routing process removes CLI support for pre-MTR-based configuration.
Examples
The following example defines a global scope that includes both unicast and multicast topology configurations. Another scope is specifically defined only for the VRF named DATA.
Router(config)# router bgp 45000Router(config-router)# scope globalRouter(config-router-scope)# bgp default ipv4-unicastRouter(config-router-scope)# neighbor 172.16.1.2 remote-as 45000
Router(config-router-scope)# neighbor 192.168.3.2 remote-as 50000
Router(config-router-scope)# address-family ipv4 unicastRouter(config-router-scope-af)# topology VOICERouter(config-router-scope-af)# bgp tid 100Router(config-router-scope-af)# neighbor 172.16.1.2 activateRouter(config-router-scope-af)# exitRouter(config-router-scope)# address-family ipv4 multicast
Router(config-router-scope-af)# topology baseRouter(config-router-scope-af-topo)# neighbor 192.168.3.2 activate
Router(config-router-scope-af-topo)# exit
Router(config-router-scope-af)# exit
Router(config-router-scope)# exitRouter(config-router)# scope vrf DATA
Router(config-router-scope)# neighbor 192.168.1.2 remote-as 40000
Router(config-router-scope)# address-family ipv4Router(config-router-scope-af)# neighbor 192.168.1.2 activate
Router(config-router-scope-af)# endRelated Commands
Command Descriptionbgp tid
Configures BGP to accept routes with a specified topology ID.
topology (BGP)
Configures a process to route IP traffic under the specified topology instance.
show ip bgp topology
To display topology instance information from the Border Gateway Protocol (BGP) table, use the show ip bgp topology command in privileged EXEC mode.
With BGP show Command Argument
show ip bgp topology {* | topology} [bgp-keyword]
With IP Prefix and Mask Length Syntax
show ip bgp topology {* | topology} [ip-prefix/length [bestpath] [longer-prefixes [injected]] [multipaths] [shorter-prefixes [mask-length]] [subnets]]
With Network Address Syntax
show ip bgp topology {* | topology} [network-address [mask | bestpath | multipaths] [bestpath] [longer-prefixes [injected]] [multipaths] [shorter-prefixes [mask-length]] [subnets]]
Syntax Description
*
Displays all routing topology instances.
topology
Name of topology for which information is displayed.
bgp-keyword
(Optional) Argument representing a show ip bgp command keyword that can be added to this command. See Table 1.
ip-prefix/length
(Optional) The IP prefix address (in dotted decimal format) and the length of the mask (0 to 32). The slash mark must be included.
bestpath
(Optional) Displays the bestpath for the specified prefix.
longer-prefixes
(Optional) Displays the route and more specific routes.
injected
(Optional) Displays more specific routes that were injected because of the specified prefix.
multipaths
(Optional) Displays the multipaths for the specified prefix.
shorter-prefixes
(Optional) Displays the less specific routes.
mask-length
(Optional) The length of the mask as a number in the range from 0 to 32. Prefixes longer than the specified mask length are displayed.
subnets
(Optional) Displays the subnet routes for the specified prefix.
network-address
(Optional) The IP address of a network in the BGP routing table.
mask
(Optional) The mask of the network address, in dotted decimal format.
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Table 1 displays optional additional show ip bgp command keywords that can be configured with the show ip bgp topology command. Replace the bgp-keyword argument with the appropriate keyword from the table. For more details about each command in its show ip bgp bgp-keyword form, see the Cisco IOS IP Routing Protocols Command Reference, Release 12.2SR.
Examples
The following example shows summary output for the show ip bgp topology command. Information is displayed about BGP neighbors configured to use the MTR topology named VIDEO.
Router# show ip bgp topology VIDEO summaryBGP router identifier 192.168.3.1, local AS number 45000BGP table version is 1, main routing table version 1Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd172.16.1.2 4 45000 289 289 1 0 0 04:48:44 0192.168.3.2 4 50000 3 3 1 0 0 00:00:27 0Table 2 describes the significant fields shown in the display.
The following is partial output for the show ip bgp topology command when the neighbors keyword is used. Information is displayed for each neighbor that is configured to use the topology named VIDEO, and the output is similar to the output for the show ip bgp neighbors command with the addition of topology-related information.
Router# show ip bgp topology VIDEO neighborsBGP neighbor is 172.16.1.2, remote AS 45000, internal linkBGP version 4, remote router ID 192.168.2.1BGP state = Established, up for 04:56:30Last read 00:00:23, last write 00:00:21, hold time is 180, keepalive interval is 60 secondsNeighbor sessions:1 active, is multisession capableNeighbor capabilities:Route refresh: advertised and received(new)Message statistics, state Established:InQ depth is 0OutQ depth is 0Sent RcvdOpens: 1 1Notifications: 0 0Updates: 0 0Keepalives: 296 296Route Refresh: 0 0Total: 297 297Default minimum time between advertisement runs is 0 secondsFor address family: IPv4 Unicast topology VIDEOSession: 172.16.1.2 session 1BGP table version 1, neighbor version 1/0Output queue size : 0Index 1, Offset 0, Mask 0x21 update-group memberTopology identifier: 100...Address tracking is enabled, the RIB does have a route to 172.16.1.2Address tracking requires at least a /24 route to the peerConnections established 1; dropped 0Last reset neverTransport(tcp) path-mtu-discovery is enabledConnection state is ESTAB, I/O status: 1, unread input bytes: 0Minimum incoming TTL 0, Outgoing TTL 255Local host: 172.16.1.1, Local port: 11113Foreign host: 172.16.1.2, Foreign port: 179...BGP neighbor is 192.168.3.2, remote AS 50000, external linkBGP version 4, remote router ID 192.168.3.2BGP state = Established, up for 00:08:24Last read 00:00:21, last write 00:00:20, hold time is 180, keepalive interval is 60 secondsNeighbor sessions:1 active, is multisession capableNeighbor capabilities:Route refresh: advertised and received(new)Message statistics, state Established:InQ depth is 0OutQ depth is 0Sent RcvdOpens: 1 1Notifications: 0 0Updates: 0 0Keepalives: 10 10Route Refresh: 0 0Total: 11 11Default minimum time between advertisement runs is 30 secondsFor address family: IPv4 Unicast topology VIDEOSession: 192.168.3.2 session 1BGP table version 1, neighbor version 1/0Output queue size : 0Index 2, Offset 0, Mask 0x42 update-group memberTopology identifier: 100...Address tracking is enabled, the RIB does have a route to 192.168.3.2Address tracking requires at least a /24 route to the peerConnections established 1; dropped 0Last reset neverTransport(tcp) path-mtu-discovery is enabledConnection state is ESTAB, I/O status: 1, unread input bytes: 0Minimum incoming TTL 0, Outgoing TTL 1Local host: 192.168.3.1, Local port: 11133Foreign host: 192.168.3.2, Foreign port: 179...Table 3 describes the significant fields shown in the display.
Related Commands
Command Descriptiontopology (BGP)
Configures a BGP routing process to route IP for a specified MTR topology instance.
topology (BGP)
To configure a Border Gateway Protocol (BGP) routing process to route IP traffic for the specified topology instance and to enter router scope address family topology configuration mode, use the topology command in router scope address family configuration mode. To disassociate the BGP routing process from the topology instance, use the no form of this command.
topology {topology-name | base}
no topology {topology-name | base}
Syntax Description
topology-name
Name of a class-specific topology. The topology-name argument is case-sensitive.
base
Specifies the base topology.
Command Default
No default behavior or values
Command Modes
Router scope address family configuration
Command Historyt
Usage Guidelines
The topology (BGP) command is used in a Multi-Topology Routing (MTR) configuration to enable a specific topology inside a BGP address family session. Command configurations after the topology command is entered apply only to the topology instance. The topology must first be defined globally using the global-address-family command in global configuration mode before the topology can be configured under the BGP routing session. The topology (BGP) command is entered under a BGP router scope hierarchy that includes an address family configuration.
Examples
The following example configures a BGP peering session with the 192.168.3.2 neighbor under the VOICE topology:
Router(config)# global-address-family ipv4
Router(config-af)# topology VOICE
Router(config-af-topology)# all-interfaces
Router(config-af-topology)# exit
Router(config-af)# exit
Router(config)# router bgp 45000
Router(config-router)# scope global
Router(config-router-scope)# bgp default ipv4-unicast
Router(config-router-scope)# neighbor 192.168.3.2 remote-as 50000
Router(config-router-scope)# address-family ipv4 unicast
Router(config-router-scope-af)# topology VOICE
Router(config-router-scope-af-topo)# bgp tid 100
Router(config-router-scope-af-topo)# neighbor 192.168.3.2 activate
Router(config-router-scope-af-topo)# end
Related Commands
Feature Information for BGP Support for MTR
Table 4 lists the release history for this feature.
Not all commands may be available in your Cisco IOS software release. For release information about a specific command, see the command reference documentation.
Use Cisco Feature Navigator to find information about platform support and software image support. Cisco Feature Navigator enables you to determine which Cisco IOS and Catalyst OS software images support a specific software release, feature set, or platform. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn. An account on Cisco.com is not required.
Note Table 4 lists only the Cisco IOS software release that introduced support for a given feature in a given Cisco IOS software release train. Unless noted otherwise, subsequent releases of that Cisco IOS software release train also support that feature.
Any Internet Protocol (IP) addresses used in this document are not intended to be actual addresses. Any examples, command display output, and figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses in illustrative content is unintentional and coincidental.
© 2007 Cisco Systems, Inc. All rights reserved.