BGP4 Frequently Asked Questions

UPDATED August 20, 1999

{Back to Top}


SECTION 1-BGP4 BETA FAQ INDEX:

  1. What is BGP?
  2. Where can I get an Autonomous System Identifier?
  3. What is the Network Layer Reachability Information (NLRI)?
  4. What is a BGP route?
  5. What PortMaster(TM) products that support BGP4 and how much memory do they require?
  6. How can I tell if BGP4 is enabled on the PortMaster?
  7. How can I enable BGP4 on the PortMaster?
  8. What is the best source of information about PortMaster BGP4?
  9. Why must all BGP peers in an Autonomous System be peered with each other?
  10. What is used as the BGP Identifier on the PM-3 and IRXs?
  11. Do I need policies to utilize a connection to a BGP peer?
  12. How long must a route exist before BGP will forward it?
  13. In the Rules of Route Precedence, where are Local routes in the precedence?
  14. What third-party products are interoperable with BGP4 on a PortMaster?
  15. How is the memory utilized to store the ~45,000 routes of the INTERNET?

SECTION 2-QUESTIONS AND ANSWERS: 

Q. What is BGP?

A. 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.
Q. Where can I get an Autonomous System Identifier?

A. You can get an Autonomous Identifier 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 http://www.arin.net/regserv.html

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 Identifier application form is http://www.arin.net/asnform.html. Use this ASN Template to be sure you are supplying the correct information in the form: http://www.arin.net/templates/asntemplate.txt

For a complete list of all ASes in the Internet, check out this list: ftp://rs.arin.net/netinfo/asn.txt

Back to Top

Q. What is the Network Layer Reachability Information (NLRI)?

A. 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 192.168.20.0 would be 192.168.20.0/24.

Q. What is a BGP route?

A. 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.

Q. What PortMaster products that support BGP4 and how much memory do they require?

A. IRXs, PM-3s, and PM-4s. All of these products require 16MB of memory in order to run BGP4.

Q. How can I tell if BGP4 is enabled on a PortMaster?

A. Use the show bundle command. 

  
        Example:


        irx114:192.168.10.5> bundle
        Module           State   Start        Len
        ---------------- -----  ------  ---------
        0 SNMP            HEAP    7d34      25812
        1 IPX              ACT    3e10      16164
        2 INIT            HEAP       0      15888
        3 SYNC             ACT    e70c      17188
        4 OSPF             ACT   226cc      53276
        5 BGP              ACT   12a30      64668  BGP

Back to Top

Q. How can I enable BGP4 on the PortMaster?

A. Use the following commands:

        set bgp enable
        save all

        reboot

Q. What is the best source of information about PortMaster BGP4?

A. The Configuring BGP chapter in the PortMaster Routing Guide or in the Command Line Administrator's Guide. 

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

A. 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.

Q. What is used as the BGP Router ID on PortMaster equipment?

A. The IP address of the ether0 interface is typically used. But the PortMaster equipment will not assume this; it must be explicitly set. 

Back to Top

Q. Do I need policies to utilize a connection to a BGP peer?

A. Yes, there are three types of policies that are used with a connection to a BGP peer:

  • Acceptance policy: this policy is used for admitting an IP prefix learned from a peer into a BGP database on the PortMaster for further consideration as a route.
  • Injection policy: this policy is used for injecting IP prefixes into the routing table (displayed by the show route command) that the PortMaster uses to forward packets it receives to their ultimate destination.
  • Advertisement policy: this policy is used for advertising an IP prefix that the PortMaster learned from another peer to a BGP internal or external peer. 
  • There is a predefined policy named "all" that may be used when all information is wished to be accepted, advertised, or injected, and there is also the "easy-multihome" parameter to the BGP peer configuration, which allows you to cause a common set of "built-in" policies to be applied to the peer, so policy configuration may be avoided.

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

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

Q. In the Rules of Route Precedence, where are Local routes in the precedence?

A. Local routes are preferred immediately after static, with static routes being the the most highly preferred.
     Static routes>Local routes>Dynamic routes

Back to Top
 

Q. What third-party products are interoperable with BGP4 on a PortMaster?

A. Lucent's BGP4 has been tested for interoperability with the following products:

  • Cisco-IOS version 11.1(5)
  • Bay Network-OS version 11.0
  • gated version 3.5.3
  • Proteon OS version 

Q. How is memory utilized to store the ~45,000 routes of the INTERNET?

A.  The best answer is to give you the memory usage information we have found. Of course, if your location is off a far chain of ISPs, etc., before you get to the `Internet backbone' (as best as it can vaguely be defined), you will use more memory as the path lists of Autonomous Systems will be longer and use more space. Or less, if you are more `tightly' attached than us. (Again, such vague terms, but precision is not what the Internet is about..) 

Back to Top
 


Routing Table For Common Data Structures Bytes
  • One time overhead to hold ~44,300 routes in a routing table:
    • This is used to store the information in an efficient manner for redistribution into other routing protocols (and vice versa) as well as for packet forwarding. 
~2,133,000 Bytes 
  • One time overhead to hold ~44,300 routes in BGP structures:
    • This is used to store common route information that is shared between all advertisers of a route. 
~3,453,000 Bytes
Total: ~5,586,000 Bytes
  • Now, the above represents no advertiser specific overhead whatsoever, and that must exist for at least one advertiser! So, that is the following:
  • Per peer overhead to hold ~44,300 routes in BGP structures:
    • This is used to store the advertiser information that is unique to each advertiser of a route. 
~1,920,000 Bytes 
Total: ~7,506,000 Bytes
  • However, the interesting part is when you add more peers. Each will almost always take up no more information than the unique part of the first peer, or another.
~1,920,000 Bytes
  • Therefore, lets say you want three feeds. These will create an extra 0 of 2*1,920,000 bytes for the two new network feeds, giving a new overhead, in addition to the above.. 
~3,840,000 Bytes
Total, to have full routing with three peers: ~11,346,000 Bytes

Note: If your peers are redundant feeds to the same remote Autonomous System, then very likely those additional peers will have no extra overhead whatsoever, because the `duplicate advertisement' is recognized and the data structure is shared for the advertisement from both peers. 

What does all this mean? Well, since memory sizes are typically 4, 8, 16, or 32 MBytes, then with the ComOS 4MByte overhead mentioned, then 4 or 8 MByte is too small. 16MByte will let you have two full feeds (5.586+3.840=9.426+4MByte ComOS=13.426), and you can even fit three full feeds in there (11.346+4=15.346), but that makes it awfully close to the 16MByte total on a PM-3 (on an IRX, which only uses about 750K-1MByte overhead, there is no trouble at all with three feeds.) 

Back to Top