path-vector routing
termoUm método de roteamento em que cada rota leva a lista de sistemas autônomos que atravessou, e não apenas uma distância.
É assim que o BGP funciona. A RFC 4274 chama seu algoritmo de distance vector modificado, conhecido como path vector, que usa a informação de caminho para evitar os problemas tradicionais do distance vector. O leitor encontra a ideia ao comparar famílias de roteamento e ao ler a coluna de AS path numa tabela BGP.
Com cada destino, um speaker BGP envia a lista de sistemas autônomos (ASes) que o anúncio atravessou. A RFC 4271 diz que essa lista basta para montar um grafo da conectividade entre ASes, do qual se podem podar routing loops e aplicar alguma política no nível de AS. Um speaker põe o próprio número de AS no caminho quando anuncia a rota a um peer externo, e deixa o caminho intacto para peers internos.
A prevenção de loops é, portanto, uma varredura, e não uma contagem: o roteador verifica se o próprio número de AS aparece em algum ponto do AS_PATH, e uma rota que o contém sai da decisão. O comprimento do caminho também participa da escolha, como primeiro critério de desempate depois do grau de preferência: vence a rota com menos números de AS, e um AS_SET conta como um.
Duas leituras erradas são comuns. A RFC 4274 descreve o BGP como nem distance vector puro nem link state puro. E o caminho registra o anúncio, não os pacotes: depois de uma agregação, o caminho real pode não ser o que o AS_PATH mostra (RFC 4271, seção 5.1.6), e nada interno ao BGP protege essa lista contra alteração ou falsificação (RFC 4272).
Também conhecido como: path vector, path-vector protocol, path vector algorithm, path-vector