Please Whitelist This Site?

I know everyone hates ads. But please understand that I am providing premium content for free that takes hundreds of hours of time to research and write. I don't want to go to a pay-only model like some sites, but when more and more people block ads, I end up working for free. And I have a family to support, just like you. :)

If you like The TCP/IP Guide, please consider the download version. It's priced very economically and you can read all of it in a convenient format without ads.

If you want to use this site for free, I'd be grateful if you could add the site to the whitelist for Adblock. To do so, just open the Adblock menu and select "Disable on". Or go to the Tools menu and select "Adblock Plus Preferences...". Then click "Add Filter..." at the bottom, and add this string: "@@||^$document". Then just click OK.

Thanks for your understanding!

Sincerely, Charles Kozierok
Author and Publisher, The TCP/IP Guide

NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

Get The TCP/IP Guide for your own computer.
The TCP/IP Guide

Custom Search

Table Of Contents  The TCP/IP Guide
 9  TCP/IP Lower-Layer (Interface, Internet and Transport) Protocols (OSI Layers 2, 3 and 4)
      9  TCP/IP Internet Layer (OSI Network Layer) Protocols
           9  TCP/IP Routing Protocols (Gateway Protocols)
                9  TCP/IP Exterior Gateway/Routing Protocols (BGP and EGP)
                     9  TCP/IP Border Gateway Protocol (BGP/BGP-4)
                          9  BGP Fundamentals and General Operation

Previous Topic/Section
BGP Autonomous System Types, Traffic Flows and Routing Policies
Previous Page
Pages in Current Topic/Section
Next Page
BGP Path Attributes and Algorithm Overview
Next Topic/Section

BGP Route Storage and Advertisement, and BGP Routing Information Bases (RIBs)
(Page 2 of 2)

BGP Routing Information Bases (RIBs)

The heart of BGP's system of routing information management and handling is the database where routes are stored. This database is collectively called the Routing Information Base (RIB), but it is in fact not a monolithic entity. It is comprised of three separate sections that are used by a BGP speaker to handle the input and output of routing information. Two of these sections themselves consist of several individual parts, or copies.

The three RIB sections (using the cryptic names given them by the BGP standards, sorry!) are:

  • Adj-RIBs-In: A set of input database parts that holds information about routes received from peer BGP speakers.

  • Loc-RIB: The local RIB. This is the core database that stores routes that have been selected by this BGP device and are considered valid to it.

  • Adj-RIBs-Out: A set of output database parts that holds information about routes that this BGP device has selected to be disseminated to its peers.

Thus, the RIB can be considered either a single database or a set of related databases, depending on how you look at it. (The divisions above are conceptual in nature; the entire RIB can be implemented as a single database with an internal structure representing the different components, or as separate databases.)

The RIB is a fairly complex data structure, not just because of this multi-section structure, but because BGP devices store considerably more information about routes than simpler routing protocols. Routes are also called paths in BGP, and the detailed descriptions of them are stored in the form of special BGP path attributes.

The three sections of the RIB are the mechanism by which information flow is managed in a BGP speaker. Data received from Update messages transmitted by peer BGP speakers is held in the Adj-RIBs-In, with each Adj-RIB-In holding input from one peer. This data is then analyzed and appropriate portions of it selected to update the Loc-RIB, which is the main database of routes this BGP speaker is using. On a regular basis, information from the Loc-RIB is placed into the Adj-RIBs-Out to be sent to other peers using Update messages. This information flow is accomplished as part of the system of route update, selection and advertisement known as the BGP Decision Process.

Key Concept: The routine operation of BGP requires BGP speakers to store, update, select and advertise routing information. The central data structure used for this purpose is the BGP Routing Information Base (RIB). The RIB actually consists of three sections: a set of input databases (Adj-RIBs-In) that hold routing information received from peers, a local database (Loc-RIB) that contains the router’s current routes, and a set of output databases (Adj-RIBs-Out) used by the router to send its routing information to other routers.

Previous Topic/Section
BGP Autonomous System Types, Traffic Flows and Routing Policies
Previous Page
Pages in Current Topic/Section
Next Page
BGP Path Attributes and Algorithm Overview
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $

Home - Table Of Contents - Contact Us

The TCP/IP Guide (
Version 3.0 - Version Date: September 20, 2005

Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.