Por que a tabela CAM está em um comutador chamado tabela CAM e não na tabela MAC, mesmo que contenha endereços MAC?

15

Eu sei que a tabela CAM em um comutador contém endereços MAC e as portas associadas aos respectivos endereços MAC. Pelo que sei, não existem endereços CAM, por que é chamado tabela CAM e não tabela MAC?

yoyo_fun
fonte
Se você procurar "Tabela CAM" na Wikipedia, isso será explicado no primeiro parágrafo.
precisa saber é o seguinte
Por favor, aceite uma resposta ...
11
As tabelas CAM são um tipo de dispositivo de memória / tabela usado para armazenar e pesquisar dados com eficiência. O nome "CAM" não está relacionado ao nome do nome dos dados que está armazenando "endereço MAC" - é apenas coincidência que sejam as mesmas três letras, mas ao contrário.
jwbensley

Respostas:

27

CAM (memória endereçável por conteúdo) é uma memória que pode ser endereçada por conteúdo, em vez de um endereço de memória numérica. Você pode procurar na interface apresentando a memória com o endereço MAC. Isso é feito em um único ciclo da CPU versus a programação tradicional de pesquisa em uma tabela, que custará muitos ciclos da CPU.

Também há TCAM (memória endereçável de conteúdo ternário) que pode usar uma máscara. Isso é particularmente útil para endereçamento IP e é usado por ACLs ou tabelas de roteamento, entre outras coisas.

O CAM e o TCAM custam muito mais do que o DRAM padrão, mas o aumento de desempenho fornecido por eles para aplicativos específicos pode valer os compromissos de custo, energia e tamanho que você deve fazer.

Como a maioria dos PCs padrão não inclui nada parecido com isso, você pode ver como uma peça de hardware criada especificamente para fins específicos, como roteador ou switch, pode ter uma vantagem de desempenho em relação a um PC padrão para fins de roteamento ou comutação.

Ron Maupin
fonte
O TLB é um CAM
Joshua
3
(Muito) grosso modo, o CAM é o equivalente de hardware de um dicionário C # , um mapa C ++ ou um mapa Java que permite acesso rápido por valor, em vez de posição / índice .
TripeHound 31/08/19
14

CAM - Memória Endereçável de Conteúdo, referente à memória usada para a tabela de endereços MAC.

Funciona meio que inversamente a partir da RAM, você o endereça fornecendo a ele conteúdo e retorna o endereço onde o conteúdo está armazenado - que é usado para encontrar a porta de saída para esse endereço.

sergeyrar
fonte
Essa memória é algum tipo especial de circuito eletrônico integrado?
precisa saber é o seguinte
2
Eu não estou familiarizado com os internos, mas aqui é algum artigo: pagiamtzis.com/cam/camintro
sergeyrar
11
@yoyo_fun basicamente sim
user253751
@yoyo_fun Toda a memória do computador (moderna e volátil) é algum tipo de circuito integrado eletrônico (ou um componente de tal).
JAB
4

Na verdade, é chamada de tabela MAC pela maioria. O comando para procurá-lo em quase todos os switches / dispositivos é show table mac-address (ou alguma forma disso). Muito raramente é especificada como a tabela CAM, a menos que a distinção entre CAM e TCAM precise ser feita ou alguém esteja ensinando a matéria.

Fixitrod
fonte
2
Ou é um interruptor correndo Cisco CatOS ...
psmears
@ psmears, correção ... é um switch da Cisco. O CatOS não existe há mais de uma década
Mike Pennington
@ Mike: Se apenas um ser produto EOLed significava que ele fez não existem mais no campo suspiro ...
psmears
11
Deixe-me esclarecer: se um switch executa CatOS ou IOS é irrelevante. Todos os switches Cisco usam CAM, independentemente de qual sistema operacional eles executam.
Mike Pennington
2

Uma tabela CAM também pode ser usada para armazenar outras formas de entradas de correspondência exata em um comutador L2 / L3 que não exigem máscaras, por exemplo, rotas de host, rótulos MPLS ou mesmo correspondências exatas sem máscara, por exemplo, particionando uma tabela com entradas de 24 bits e preenchendo-o com / 24 rotas.

Joel Jaeggli
fonte