The Border Gateway Protocol: A Nontechnical Primer
The Border Gateway Protocol (BGP) is one of the fundamental building blocks of the modern Internet's ISP to ISP architecture, and is also used by people setting up global private networks. BGP routing is an incredibly technical area, and is arguably one of the most complex parts of networking technology in common use today.
BGP routing is an "exterior" networking protocol; it's a networking protocol for networks to talk to other networks. It was built off of the internet standard RFC 1163, put together by ICANN. BGP routing and networking has a lot of internal functions to reduce the size of routing tables (and keep performance up), and can be thought of as a "glue" protocol. A subtype of BPG is "Internal" BGP (or IBGP), and can be thought of as a subset of BGP used within a network to enhance performance with BGP ordered routing tables.
BGP networking is primarily used by Internet Service Providers (ISPs), and it lets them determine which packets of data (a packet is the smallest unit of data on a network) get sent where. Packets have instructions indicating where they originated from, where they're supposed to go, the time they were transmitted, the time they were last "touched" on a routing table, and, for lack of a better term, "instructions for assembly" – this tells the recipient software how to assemble the packets into useful data.
What BGP does is streamline the process by which packets get routed across a network, by checking them for other connections and other attributes, such as the community of origin, Local Preference, AS_Path and more – these are used to prioritize packets; because a network can divide things into packets and route them in the (hopefully) most efficient way possible, this allows them to apportion bandwidth in ways that allow more users to get the most benefit from the network. There's a lot of logic built into the protocol to ensure that routes do not collide, and that a firmly established "best route" is detectable and configured.
The usual order of precedence is this:
If a path specified is not available, it looks for an alternative. It then sorts through the criterion based on Weight, then Local Preference, then if those are both tied, look for the path of origination. There are other tie breakers as well – but this is a non-technical primer.
Network Testing Software
|