RBridges - Comutadores RBridges - Comutadores
Resumo sobre TRILL
4 de agosto de 2016 Diego DiasLeave a comment
O protocolo TRILL (Transparent Interconnection of Lots of Links) é um padrão IETF que fornece a funcionalidade de roteamento em camada 2 em Data Centers. O protocolo permite a extensão de domínios de broadcast entre os equipamentos que rodam o TRILL e fornece alta disponibilidade para cenários de falha nos uplinks, funcionando como uma alternativa para substituição do protocolo Spanning-Tree.
O TRILL pode ser utilizado em Data Centers sem necessidade de configuração IP e mantem a simplicidade tradicional da comunicação de camada 2 com a convergência de redes roteáveis em camada 3.
O protocolo utiliza o a contagem de saltos ou TTL para prevenção de loops, mas roda diretamente sobre a camada 2 de forma que nenhuma configuração IP é necessária.
Se fizermos uma comparação com o protocolo Spanning-tree, o STP, utiliza um único caminho na rede para encaminhar os dados, bloqueando os caminhos redundantes entre os switches, que nem sempre são as melhores escolhas para bloqueio e/ou encaminhamento do fluxo de dados entre dois hosts. O TRILL suporta a seleção de melhor caminho, suportando também caminhos redundantes, e topologias no modelo ativo-ativo.
Um Switch com o processo TRILL habilitado é chamado de Routing Bridge ou RBridge por sua função de roteamento. É baseado no algoritimo link-state do IS-IS para escolha dos caminhos.
Cada RBridge é identificado por um system ID que é automaticamente gerado pelo TRILL. O ID é baseado no endereço MAC por padrão, mas pode ser também configurado manualmente. O system ID não é utilizado para encaminhar os quadros mas serve para identificar cada nó dentro da tabela link-state (LSDB) da rede TRILL.
Um RBridge encaminha os quadros de uma rede TRILL baseado no nickname de origem e destino, utilizando como referência em um valor hexadecimal de 16bits. Os nicknames podem também ser gerados automaticamente pelo sistema.
Cada nickname é distribuído pelo IS-IS para computar as rotas, como em protocolos de roteamento.
O protocolo possui facilidade de extensão utilizando as definições type, length, value (TLV).
Para o encaminhamento dos quadros Ethernet que chegam dos hosts para os RBridges, uma vez que o endereço já é conhecido, a consulta (lookup) acontece com o endereço do RBridge e um segundo lookup é efetuado para a RBridge do próximo salto e também a interface de saída para enviar o frame ao next-hop. Então o frame é encapsulado com o cabeçalho TRILL (TRILL overlay header).
Na terminologia TRILL, há os Switches CE, que são a terminologia para os clássicos switches ethernet que não executam o processo TRILL.
Em resumo, cada RBridge ao receber um frame TRILL irá descartar o cabeçalho externo (inserido pela RBridge anterior), analisará o nickname de destino e selecionará a interface de saída baseado na escolha de melhor caminho. A RBridge então adicionará um novo cabeçalho TRILL, decrementará o valor de TTL e transmitirá o frame para a próxima RBridge.
Se o quadro TRILL tiver como next-hop um endpoint, então o cabeçalho TRILL será removido e o frame Ethernet original será entregue para a host.