• No results found

BGP Requirements

Border Gateway Protocol (BGP) is the de-facto standard for routing between Autonomous Systems in the Internet. BGP was developed to address the limitations with Exterior Gateway Protocol (EGP), which was not the strongest routing protocol, although it was widely used. BGP can be thought of as the next generation of EGP. All communications between Internet Service Providers (ISP) is handled via BGP-4, which is required for CIDR. BGP-4 differs from BGP-3 just as RIP-2 differs from RIP-1. BGP- 4 is also known as BGP4 without the hyphen.

BGP allows the use of announcements of classless routes, routes that are not strictly on Class A, Class B, or Class C networks. These classless routes can be subnets or supernets. For more information on supernets, refer to the section on CIDR.

The primary purpose of BGP is to advertise routes to other networks, which are called

Autonomous Systems (AS). BGP is also useful for advertising routes to upstream providers about what routes are available inside your network. When you are communicating with another ISP over the Internet, you are communicating with their network, or autonomous system, which is the more appropriate wording when speaking of routing with BGP. The border routers separate your AS from their AS. Every router in your AS should know the route to that destination AS. All AS routers in your area should contain the same routing information, and you should be advertising only routes that you know how to get to. The sin of BGP routing is advertising routes that you do not know how to reach.

There are three types of configurations in a network:

Stub areas. Always end points. This is usually a single, statically routed connection from a

central site, such as an ISP, to a remote location such as a home or office. BGP is not needed in stub area configurations.

Multihomed areas. Central sites with at least two statically-defined or dynamically routed

BGP is also not needed in this multihomed configuration.

Transit areas. Central sites with at least two connections to remote locations. One

connection is to a remote location with an Internet connection, and another connection is to an additional Internet connection. Each of these locations is an autonomous system (AS). BGP is required in this configuration.

BGP is needed in the configuration if the customer has multiple locations with multiple routers, but they do not want each location’s routing tables to affect the others. Defining these autonomous systems makes its possible to use these trusted paths between locations. This is the strategy that is used on the Internet to ensure better reliability and higher performance.

Figure 6.10 should clearly illustrate the purpose of BGP single-homed connections to an upstream provider.

Figure 6.10 Routing BGP in single-homed connections.

You can see how the default route for the AS is routed through the default route. This default route makes perfect sense on a singularly homed network, with only one connection to an upstream provider. From the upstream provider, it is also much easier, because your AS does not have a multihomed link to more than one upstream provider. This upstream provider can configure a static route to your AS. It would make no sense to configure this connection between the two ASs with a dynamic routing protocol, because this link between the ASs will rarely change. If this IP address to your AS were to change, you would simply have the upstream provider change the static routing address to your AS.

system number, which is used to represent the autonomous system to the Internet. Most networks will have only one autonomous system number. When you are exchanging routes with another router speaking BGP (called a peering session), it will start out like the following:

router BGP 14290

neighbor 204.118.35.166 remote-as 802 <the rest is omitted>

This communication starts out by saying “I would like to connect to ASN (autonomous system number) 14290 using BGP.” The list of commands that would initiate the routing table transfer is omitted.

If a node wishes to connect with BGP peer node, the node will open a connection on TCP port 179, which is the default port. A significant amount of information is transferred, such as the

identification numbers, authentication information, and protocol version numbers before the BGP update of the routing tables can take place. The update will not take place if the authentication has not been successful. If the update is successful, the changes will then be propagated to neighboring BGP routers.

When you communicate to other hosts and routers using BGP, you can make semi-intelligent routing decisions, which include the best path to reach a destination. This route contains more than just the first router to route the packet to; it can include the complete route to the destination. You can also advertise your routes to neighboring routers, and have those routers in turn advertise your routes to their neighboring routers.

BGP selects only one path as the best path to a destination. This path is now propagated to the neighboring BGP routers. Unlike some routing protocols, BGP does not need a periodic routing table refresh. The initial exchange between two BGP routers is the full routing table, but from then on only the optimal paths are advertised in update messages to the neighboring BGP routers. This makes long running sessions between BGP routers more efficient than short sessions, because the amount of times the full routing table is exchanged on initial contact is less.

There are actually two types of BGP that differ in terms of advertising routing information. The first is EBGP, basically referred to as BGP, which is what we have been discussing thus far. This is used to advertise routes to different autonomous systems, whereas IBGP is used to advertise routes within the same autonomous system. Figure 6.11 demonstrates the use of both types of BGP protocols and the autonomous system.

Figure 6.11 Differentiating between interior and exterior routing with IBGP and EBGP.

In the network example shown in Figure 6.11, BGP first makes sure that networks within the interior AS are reachable. Then border routers can exchange routing information with each other regarding the status of networks within their autonomous systems. EBGP is used to communicate with border routers, and IBGP is used within the AS.

Just like RIP, IBGP is an interior routing protocol that can be used for active routing within your network. IBGP does not distribute routes as much as EBGP. Each router in an IBGP configuration must be configured to peer into every other router to exchange this information, whereas this is not needed with straight BGP. However, IBGP is more flexible and provides a more efficient means of controlling and exchanging the routing information from within an AS.