Relações TCAM na arquitetura de comutação de hardware

10

Eu estou familiarizado (alto nível) com o funcionamento da Memória Endereçável de Conteúdo Ternário, mas continuo confuso sobre como o TCAM se relaciona com os ASICs e quando esses componentes possivelmente também se combinam com a CPU para obter melhor desempenho de comutação ... (principalmente quando os fornecedores costumam comercializar o uso) de comerciante / silício personalizado ou ASICs personalizados para novos produtos e recursos, então parece confuso) .

Conheço o Cisco IOS, por exemplo, com a capacidade de particionar mais espaço para o desempenho do TCAM para recursos como qos, acl e pesquisas de rota. Também entendo que recursos como o NAT ainda dependem do processamento da CPU, no entanto, estou lutando especificamente com;

  1. O TCAM faz parte da mesma arquitetura de hardware, ou seja, interna ou externa ao próprio ASIC?
  2. Os TCAMs são escaláveis ​​(por exemplo, os fabricantes podem continuar adicionando TCAMs a uma plataforma para obter melhor desempenho e recursos personalizados) ou existe um limite baseado em itens como consumo de energia?
  3. Os ciclos TCAM e ASICs funcionam em paralelo com a CPU para recursos como NAT ou devo apenas pensar neles como coisas independentes?
MattE
fonte

Respostas:

14

TCAM é um tipo de memória que leva de 10 a 12 transistores para armazenar um único bit. A título de comparação, a RAM estática ( SRAM ) leva apenas 6 transistores para armazenar um único bit e a RAM dinâmica ( DRAM ) leva um transistor e um capacitor. Todos esses tipos diferentes de memórias podem ser internos ou externos a um ASIC. Uma razão para colocar todas as memórias em um chip é que elas podem ser executadas com taxas de clock mais altas do que quando externas a um chip. Por que escolher um tipo de memória em detrimento de outro? Isso tem a ver com as características da memória, a SRAM pode ser acessada a cada relógio, a DRAM requer atualização periódica, portanto, não pode ser acessada a cada relógio e o TCAM oferece capacidade ternária .

Os TCAM s são tão escaláveis, desde que você tenha espaço em um chip para instancia-lo ou pinos na embalagem para conectar-se a outros externos. O problema com o TCAM é que eles ocupam 2x o espaço da SRAM e 12x o espaço da DRAM . Nem sempre faz sentido usar o TCAM para as mesmas operações que você pode executá- las algoritmicamente (Hashes, * tenta) com outros tipos de memória. Tudo se resume a uma troca entre a eficácia da utilização do algoritmo e o espaço no chip no qual escolher. A utilização de energia do TCAM cresce em proporção linear ao tamanho. A maioria dos TCAMs grandes (com mais de 2 milhões de entradas) agora usa técnicas algorítmicas para que você possa obter economia de energia.

NAT / PAT é um recurso complexo, que geralmente precisa de uma CPU ou NPU (Processador de Rede) para lidar com reparos. O fluxo geral de pacotes para NAT é o primeiro pacote que vai para CPU / NPU e uma entrada de fluxo é instalada na tabela de fluxo ou na tabela ACL com as informações sobre como converter pacotes subsequentes no fluxo. Existem várias formas diferentes de NAT / PAT e tantas maneiras de otimizar cada uma em um chip. O NAT mais simples é reescrever os IPs e não se preocupe se você quebrar os endereços incorporados na carga, sem consertos.

Há outra versão do BRKARC-3466, apresentada no CiscoLive 2013 em Melbourne, que cobre algumas das idéias de alto nível por trás das pesquisas, que estão ausentes da versão 2013 de Orlando. Um bom livro de referência nessa área é Algoritmics de Rede: Uma Abordagem Interdisciplinar para Design de Dispositivos de Rede Rápida, de George Varghese.

user3697
fonte
4

O ASIC pode ser pensado como um tipo de chip. Normalmente é construído para fazer algo no hardware que, de outra forma, seria feito é um software. Portanto, a Cisco pode criar um ASIC para qualquer coisa que desejar. Dependendo do modelo do switch, existem 1 ou mais ASICs. O TCAM é um design de memória, pois geralmente é encontrado nos sistemas de chassi e é implementado como um dos muitos asics. O TCAM é usado para funções de pesquisa específicas, como roteamento (CEF) ou ACLS, portanto, se um ASIC não precisar fazer esse tipo de pesquisa, ele trabalha separadamente do TCAM. Por outro lado, os ASICs que lidam com a marcação de QoS trabalham lado a lado com o TCAM. A apresentação abaixo no cisco live discute algumas das vantagens e desvantagens do design, e um bom lugar para procurar entender o que se passa com o design do switch

BRKARC-3466 - Explorando a engenharia por trás da fabricação de um switch (Orlando 2013), ele contém listas dos asics e muitas informações gerais sobre o design do switch

fredpbaker
fonte