path-vector routing
termA routing method in which each route carries the list of autonomous systems it has crossed, not just a distance.
BGP works this way. RFC 4274 calls its algorithm a modified distance vector, referred to as path vector, that uses path information to avoid the traditional distance-vector problems. The reader meets the idea when comparing routing families and when reading the AS path column of a BGP table.
With each destination a BGP speaker sends the list of autonomous systems (ASes) the announcement has traversed. RFC 4271 says that list is enough to build a graph of AS connectivity, from which routing loops may be pruned and some policy enforced at the AS level. A speaker prepends its own AS number when it advertises a route to an external peer, and leaves the path unchanged towards internal peers.
Loop prevention is therefore a scan rather than a count: a router checks whether its own AS number appears anywhere in the AS_PATH, and a route that contains it is excluded from the decision. Path length also takes part in choosing a route, as the first tie-break after the degree of preference: the route with the fewest AS numbers wins, an AS_SET counting as one.
Two misreadings are common. RFC 4274 describes BGP as neither a pure distance-vector nor a pure link-state algorithm. And the path records the announcement, not the packets: after aggregation the actual path may not be the one the AS_PATH shows (RFC 4271, section 5.1.6), and nothing internal to BGP protects that list against being modified or forged (RFC 4272).
Also known as: path vector, path-vector protocol, path vector algorithm, path-vector