BGP Frequently Asked Questions

From ImageStream Router Documentation

Revision as of 05:54, 21 May 2008 by RichardJune (Talk | contribs)
Jump to: navigation, search


What is BGP?

The Border Gateway Protocol (BGP) is an exterior routing protocol. BGP version 4, described in RFC 1771, and further defined in version 5 of the BGP4 Internet Draft of January 1997, was designed for routing between Autonomous Systems. BGP Autonomous System Confederations information can be found in RFC 1965. BGP Route Reflection information can be found in RFC 1966. The BGP COMMUNITIES attribute is described in RFC1997. Although it can be used internally, BGP is primarily used to route between networks, rather within them (such as RIP, OSPF, IS-IS).

What implementation of BGP do ImageStream routers use?

ImageStream routers provide BGP via either Quagga or GateD. While both packages are available, ImageStream reccommends Quagga as the BGP daemon of choice. This document currently addresses questions from a GateD specific manner. Additions from a Quagga perspective are forthcoming.

What is "multi-homing"?

"Multi-homing" means having multiple connections to the Internet. There are two basic types of multi-homed organizations:
  • An organization which has connections to provider at more than one point of presence, and has internal links between these sites;
  • An organization which has a connection to provider and at least one other Internet access provider.
If you have only a single connection to the Internet there is not a lot to be gained from using BGP. With only one gateway, your router already knows how to send all traffic not destined to one of your networks. Everyone should be conscious of keeping the Internet's routing table as small as possible. This can be best addressed by aggregating addresses using CIDR blocks. As a single-homed connection, your provider will likely choose to aggregate your networks with the networks of other single-homed customers and thus announce a single CIDR block under their ASN in order to reduce the routing table size.

What are the benefits of using BGP?

The single word answer is "control". When you decided to multi-home it was for a reason, maybe extra capacity, redundancy, or tariffing, so in order to actually perform any of these functions you need to control how your networks are announced to your providers. If you don't exchange routes with them but rely on them announcing your routes you could find your traffic flowing down an expensive low capacity link with the other cheaper, higher capacity links mostly idle!

Does using BGP make it easier to change providers?

Each Tier 1 backbone provider has its own procedures to handle customers that wish to use BGP. These procedures may be easier than the procedures used for staticly-routed customers, but generally each will require some sort of route registration, so there is no real time or effort saved.
However if you are using BGP to more than one provider, you can migrate routes between the providers without their intervention (assuming any route registration has already been performed). In order to migrate the routes, you should start announcing the routes to the new provider and confirm that the new path is visible via a "looking glass". You may need to prepend your AS on the old path to make that path "longer". Having confirmed that the new provider is successfully announcing the routes you can then terminate the announcement to the old provider.

Do I have to use BGP with all of my upstream providers?

For the best results, you will find it advantageous to use BGP, but it isn't strictly necessary. In theory, your routes should originate from the same AS number, so you should announce your routes via BGP even if you don't listen to all announcements being sent to you. For example, you could use a static route to default to a provider rather than accept the routes they are sending via BGP.

Where can I get an Autonomous System Number?

You can get an Autonomous Number from The American Registry for Internet Numbers (ARIN). ARIN is a non-profit organization established for the purpose of administration and registration of Internet Protocol (IP)numbers to the geographical areas previously managed by Network Solutions, Inc. (InterNIC). The URL for ARIN's Registration Services is
One of the following conditions must be satisfied before receiving an Autonomous System Number:
  • Unique Routing Policy: Please explain how your routing policy is different from your provider.
  • Multi-homed Site: If your organization is currently multi-homed, please explain exactly how you are connected to the Internet. Please include the gateway protocol used, the IP network addresses that make up your AS, and technical point of contact information of your upstream providers/peers. The point of contact information must include full name, and email address for verification.
The URL for the Autonomous System Number application form is
For a complete list of all registered ASes on the Internet, see this link:

What is the Network Layer Reachability Information (NLRI)?

Sets of destinations are the Network Layer Reachability Information (NLRI). A destination is a network address prefix, with a prefix length. For example, the NLRI for the private network would be

What is a BGP route?

The combined bundle of a path to a destination Autonomous System, the attributes of the path used to reach the Autonomous System, and the NLRI located at that Autonomous System is called a BGP route.

What ImageStream routers support BGP4 and how much memory do they require?

All Pro Series routers, as well as the Rebel, Gateway and Enterprise Routers in the Industrial Series support BGP4. All of these products require 512MB of memory in order to run BGP4 and receive full routing views.

How can I tell if BGP4 is enabled on my ImageStream router?

Use the Configuration and Update Menu:
  1. At the Login: prompt, enter root.
  2. At the Password: prompt, enter your password.
  3. Choose Option 1 (Configuration and Update Menu) from the Main Menu.
  4. Select Option 6 (Dynamic routing configuration).
  5. From the Dynamic routing configuration menu, you can see the status of both GateD and Quagga/Zebra. If either is running, the option will show "(running)". Conversely, if either is not currently running, the menu option will display "(stopped)".

How can I enable BGP4 on the router?

Enable BGP using Quagga

Use the Configuration and Update Menu:
  1. At the Login: prompt, enter root.
  2. At the Password: prompt, enter your password.
  3. Choose Option 1 (Configuration and Update Menu) from the Main Menu.
  4. Select Option 6 (Dynamic routing configuration).
  5. Select Option 2 (Dynamic routing (Quagga/Zebra))
  6. To enable Quagga, select option 2 (Enable Quagga service on boot)
  7. Select Option 1 (Enable Quagga on boot) and Option 2 (Enable bgpd on boot)
  8. Select 0 to go back to Dynamic routing (Quagga/Zebra)
  9. To start Quagga, select option 4 (Start Quagga service)
  10. Select Option 1 (Start quagga) and Option 2 (Start bgpd)
  11. Select 0 to go back to Dynamic routing (Quagga/Zebra)

Enable BGP using GateD

Use the Configuration and Update Menu:
  1. At the Login: prompt, enter root.
  2. At the Password: prompt, enter your password.
  3. Choose Option 1 (Configuration and Update Menu) from the Main Menu. Select Option 3 (Service Configuration).
  4. From the Service Configuration menu, you can see the status of the Dynamic routing (gated) package. If gated is running, the option will show "(running)".
  5. To start gated, choose Option 3 (Dynamic routing) and choose Option 5 (Start gated) from the Dynamic routing menu. You will also want to select Option 3 (Enable gated on boot) to ensure that BGP session will be established at boottime. Ensure that you have configured gated prior to attempting to start it. Unless it is properly configured, gated will not start.

What is the best source of information about ImageStream's BGP4?

The Quagga home page provides the most comprehensive up to date information.
The BGP Routing Protocol page on the ImageStream Technical Support site or in the individual gated configuration files on the router.

Why must all BGP peers in an Autonomous System be peered with each other?

A fundamental rule of BGP is that all internal peers in the same Autonomous System must all fully talk to each other. That is:
  • If you have peers, A, B, C in an Autonomous System, then there has to be three peers: An A/B peer, a B/C peer, and an A/C peer. Add a fourth, D, and then you need A/D, B/D, and C/D peers.
  • The point being, from the BGP spec: If a router B, learns a route (path attributes + destination) from internal peer A, it _assumes_ that all other internal peers hear it too, so it won't forward the information onto any other internal peer. It is possible to sidestep this requirement through the use of either BGP route reflectors or BGP confederations.

What is used as the BGP Router ID on ImageStream routers?

The IP address of the Ethernet0 interface is typically used. But the router will not assume this; it must be explicitly set in the BGP configuration file (gated.bgp).

Do I need to define my static routes in my interface configuration file (wan.conf) and in the main gated configuration file (gated.conf)?

Yes, you must specify any static routes in both places. If you do not specify the static routes in the main gated configuration file (gated.conf), gated will remove those routes from the routing table at runtime.

How long must a route exist before BGP will forward it?

A route must exist for 30 seconds before BGP will forward it.

Why do I have to inform my providers manually about the networks that I am announcing?

Answer goes here.

In the route precedence, where are Local (Directly Connected) routes in the precedence?

Local (directly connected) routes are the most highly preferred routes, with static routes being the next highly preferred. Route precedence can be adjusted within the configuration by changing the preferences on different route types.
Local (Direct) routes>Static routes>Dynamic routes

What third-party products are interoperable with BGP4 on an ImageStream router?

ImageStream's BGP4 implementation has been tested for interoperability with the following products, among others:
  • Cisco IOS
  • Nortel/Bay Networks OS
  • Juniper Networks OS
  • gated public and commercial versions
  • zebra / quagga
Any RFC-compliant BGP4 equipment should interoperate with ImageStream routers. Please contact ImageStream Technical Support if you have BGP interoperability questions with specific equipment.
Personal tools
Router software releases