Relazioni TCAM nell'architettura di commutazione hardware


10

Conosco bene (alto livello) il funzionamento della memoria indirizzabile del contenuto ternario, ma rimango confuso sul modo in cui TCAM si collega agli ASIC e quando questi componenti possono anche combinarsi con la CPU per migliorare le prestazioni di commutazione ... (in particolare quando i fornitori spesso commercializzano l'uso di silicio commerciale / personalizzato o ASIC personalizzati per nuovi prodotti e funzionalità, quindi appare confuso) .

Conosco Cisco IOS, ad esempio, con la possibilità di partizionare più spazio per le prestazioni TCAM per funzioni come qos, acl e ricerche di rotte. Comprendo anche che funzionalità come NAT dipenderanno ancora dall'elaborazione della CPU, tuttavia mi sto confrontando in modo specifico;

  1. TCAM fa parte della stessa architettura hardware, ovvero interna o esterna all'ASIC stesso?
  2. I TCAM sono scalabili (ad esempio i produttori possono continuare ad aggiungere TCAM a una piattaforma per prestazioni e funzionalità personalizzate maggiori) o esiste un limite basato su elementi come il consumo energetico?
  3. I cicli TCAM e gli ASIC funzionano in parallelo con la CPU per funzionalità come NAT o dovrei solo considerarli come cose indipendenti?

Risposte:


14

TCAM è un tipo di memoria che impiega 10-12 transistor per memorizzare un singolo bit. A titolo di confronto, la RAM statica ( SRAM ) impiega solo 6 transistor per memorizzare un singolo bit e la RAM dinamica ( DRAM ) richiede un transistor e un condensatore. Tutti questi diversi tipi di memorie possono essere interni o esterni a un ASIC. Uno dei motivi per mettere tutti i ricordi su un chip è che possono essere eseguiti a frequenze di clock più elevate rispetto a quando sono esterni a un chip. Perché scegliere un tipo di memoria piuttosto che un altro? Ciò ha a che fare con le caratteristiche della memoria, è possibile accedere a SRAM a ogni clock, DRAM richiede un aggiornamento periodico, quindi non è possibile accedere a tutti gli clock e TCAM offre funzionalità ternarie .

I TCAM sono scalabili purché si disponga di spazio su un chip per istanziarli o pin sulla confezione per connettersi a quelli esterni. Il problema con TCAM è che occupano 2x spazio di SRAM e 12x spazio di DRAM . Non ha sempre senso utilizzare TCAM per le stesse operazioni che è possibile eseguire in modo algoritmico (hash, * tentativi) con altri tipi di memoria. Si tratta di un compromesso tra l'efficacia dell'utilizzo dell'algoritmo e lo spazio sul chip su cui scegliere. L' utilizzo di energia di TCAM cresce in proporzione lineare alle dimensioni. La maggior parte dei TCAM di grandi dimensioni (maggiori di 2 milioni di voci) ora utilizza tecniche algoritmiche per ottenere risparmi energetici.

NAT / PAT è una funzionalità complessa, che in genere richiede una CPU o un processore di rete (NPU) per gestire le correzioni. Il flusso di pacchetti generale per NAT è il primo pacchetto che va a CPU / NPU e una voce di flusso viene installata nella tabella di flusso o nella tabella ACL con le informazioni su come tradurre i pacchetti successivi nel flusso. Esistono diverse forme di NAT / PAT e altrettanti modi per ottimizzare ciascuna in un chip. Il NAT più semplice è riscrivere gli IP e non preoccuparti se rompi gli indirizzi incorporati nel payload, senza correzioni.

Esiste un'altra versione di BRKARC-3466 che è stata presentata al CiscoLive 2013 a Melbourne che copre alcune delle idee di alto livello dietro le ricerche, che manca a quella di Orlando del 2013. Un buon libro di riferimento in quest'area è Network Algorithmics: un approccio interdisciplinare alla progettazione di dispositivi di rete veloci di George Varghese.


4

ASIC può essere pensato come una specie di chip. Normalmente è costruito per fare qualcosa nell'hardware che altrimenti si farebbe con il software. In questo modo Cisco può creare un ASIC per tutto ciò che desidera. A seconda del modello dell'interruttore ci sono 1 o molti ASIC. TCAM è un design di memoria poiché di solito si trova sui sistemi del telaio e viene implementato come 1 di molti asics. TCAM è utilizzato per particolari funzioni di ricerca come routing (CEF) o ACLS, quindi se un ASIC non ha bisogno di fare quel tipo di ricerca, funziona separatamente da TCAM. D'altra parte gli ASIC che gestiscono la marcatura QoS lavorano a braccetto con TCAM. La presentazione di seguito su cisco live discute alcuni dei compromessi di progettazione e un buon posto in cui cercare per capire cosa va in switch design

BRKARC-3466 - Esplorando l'ingegneria alla base della realizzazione di uno switch (Orlando 2013) contiene elenchi di asics e molte informazioni generali sulla progettazione di switch

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.