[GTER] Communities no IX.br

Henrique de Moraes Holschuh hmh at hmh.eng.br
Sat Oct 29 10:30:16 -02 2016


On Sat, 29 Oct 2016, Rafael Ganascim wrote:
> Gostaria de entender este ponto aqui:
> 
> "Nos servidores de rotas do IX.br será implementada a abordagem de
> múltiplas RIBs, de forma que para cada cliente do servidor de rotas exista
> uma RIB separada.

...

> Por exemplo, sou o AS 1 e tenho conexão direta ao IX e conexão ao AS 2 (que
> também é participante do IX e me anuncia para o mesmo IX).
> 
> Na visão de um outro AS participante do IX, AS 3... vai chegar a ele dos
> router servers:
> - como é hoje, apenas a melhor rota via AS 1 diretamente (sem eventuais
> problemas do path-hiding caso ocorra um filtro); ou
> - vão chegar as duas rotas: AS1 direto e AS1 via AS2

Vai chegar uma só rota.  Esta alteração elimina os casos onde não
chegaria *nenhuma* rota, ela não resulta em rotas duplicadas.

Quem não filtra ninguém (nem é filtrado por ninguém) não vai ver
diferença nenhuma nas rotas que recebe do IX.br.

A lógica a ser aplicada é "mais ou menos" essa (simplificada para ficar
mais fácil de entender): 


Antes das alterações propostas:

route-server filtra o *resultado* da convegência BGP de uma RIB global
(que contém apenas a "melhor" rota na visão *global* do route-server)
usando filtros "por participante".

Se alguma rota for descartada pela filtragem por participante na saída
daquele participante, ele não recebe rota alguma... mesmo que exista
alguma possível rota alternativa via outro AS (que não foi "a melhor" na
visão global).

Ou seja, por não poder reber a "melhor rota" do ponto de vista da RIB
global, ele não recebe rota alguma.  Isso é um problema.

No seu exemplo, se AS3 filtrar AS1, ele não recebe nenhum prefixo (nem
os repassados via AS2) -- porque pro route-server, o caminho direto via
AS1 era o melhor e foi essa a única rota instalada na RIB global: ele
não tem como enviar nenhuma alternativa.  Ou é aquele, ou não é nenhum.
Então, ele não envia nenhum.


Depois das alterações propostas:

route-server filtra *ao* convergir o BGP numa RIB específica por
participante (resultando só no "melhor" prefixo na visão baseada nos
filtros que se aplicam àquele participante indo para a RIB destinada
àquele participante).  A filtragem é específica para cada participante,
e não afeta o resultado dos demais.

Ou seja, do ponto de vista de cada participante, será como se fosse um
route-server só dele, aplicando só as filtragens relevantes para o AS
dele :-)

Note bem que não são só os filtros *dele*, filtros via a community de
"não anuncie para o AS fulano" vão ser aplicados ao convergir a RIB
específica para o AS fulano :p

Como o route-server só convergiu as rotas que eram aceitáveis para o
anúncio para aquele participante em específico, ele vai poder escolher a
rota que seja aceitável pelos critérios de filtragem dentre todas as
possíveis, e o participante *recebe* uma rota para aquele prefixo.

No seu exemplo, se AS3 filtrar AS1 no IX.br, vai receber do IX.br as
rotas para os prefixos de AS1 que forem repassados por AS2.

-- 
  Henrique Holschuh



More information about the gter mailing list