- Aug 27, 2004
BGP Path Vector Implementation
BGP implements the path vector concept on a larger scale; rather than treating a single router as a single point in the path to any given destination. BGP treats each autonomous system as a single point on the path to any given destination. Figure 1-3 illustrates.
Figure 1-3: Path vector over a set of autonomous systems
This case is identical to the case in Figure 1-2, except that each autonomous system is considered a point along the path, rather than a single router. The network 10.1.1.0/24, typically referred to as a prefix, is advertised with the list of autonomous systems the update has passed through; this list of autonomous systems is called the AS Path. AS 65100 originates the prefix 10.1.1.0/24, adding itself to the AS Path, and advertises it to AS 65200. AS 65200 adds itself to the AS Path, and advertises the prefix to 65300. When AS 65300 advertises the prefix 10.1.1.0/24 to AS 65100, the prefix will be rejected, since the 65100 sees that it's local AS is already included in the AS Path, and accepting the route would result in a routing information loop.
The primary reason BGP treats an entire autonomous system as a single hop in the AS Path is to hide topological details of the AS. AS 65200, for instance, cannot tell what the path through AS 65100 looks like, only that the destination is reachable through AS 65100. One interesting side effect of treating each autonomous system as a single entity with which the autonomous system path vector is associated is that without additional information or rules, BGP can only detect loops between autonomous systems, it can not guarantee loop free paths inside an AS. Figure 1-4 illustrates.
Figure 1-4: BGP routing within an AS
Since every router within AS 65200 receives theprefix 10.1.1.0/24 with the same AS Path, and BGP relies on the AS Path to prevent loops from forming, it is obvious that BGP cannot provide loop free routing within an AS. As a result, BGP must insure that every router in the AS makes the same decision as to which exit point to use when forwarding packets to a given destination, and that a constrained set of route advertisement rules are used within the autonomous system. BGP then allows the interior gateway protocol running within the AS to determine the best path to each of the AS exit points.