BGP (the Border Gateway Protocol) is what constitutes the heart of the routing protocol of the Internet.
BGP maintains a large table of IP (Internet Protocol) networks (prefixes as they are called) which designate
network reachability among ASs (autonomous systems).
To be real accurate, BGP is actually described as a path vector protocol.
However, BGP doesn't use traditional IGP metrics, but instead makes split-second routing decisions based on
the actual path, various network policies and depending on a host of rule sets and other complex conditions.
The Border Gateway Protocol was actually created to replace the older and now obsolete EGP (Exterior Gateway
Protocol) which now allows a fully decentralized routing basis in order to permit the removal of the NSF Net
Internet backbone network.
This now allows the Web to become a truly decentralized information system. Since 1994, version four of
the protocol (IPv4) has been in use on the Internet. All previous versions are now obsolete. The major
enhancement in version 4 was support of CIDR (Classless Inter-Domain Routing) and the use of various route
aggregation policies to help cut on the size of routing tables.
It must be noted however that most Web users don't use BGP directly in and by itself. But since most
ISPs (Internet Service Providers) must use BGP to establish routing between one another, especially if they
are multihomed, it's one of the most important protocols of the Internet today.
You can compare this with SS7 (Signalling System 7), which is the inter-provider core call setup protocol
on the PSTN (Public Switched Telephone Network). However, it's important to note that very large private IP
networks use BGP internally.
An example would be the joining of a number of large OSPF (Open Shortest Path First) networks where OSPF
by itself wouldn't adequately scale to size. Another reason to use BGP is multihoming a network for better
network redundancy either to multiple access points of a single ISP or to multiple ISPs.