TCAM отношения в архитектуре аппаратного переключения

10

Я знаком (на высоком уровне) с тем, как работает адресная память Ternary Content, но я все еще не понимаю, как TCAM относится к ASIC, и когда эти компоненты могут также объединяться с процессором для повышения производительности коммутации ... (особенно, когда производители часто продают использование торгового / пользовательского кремния, или пользовательских ASIC для новых продуктов и функций, тогда это кажется запутанным) .

Я знаком с Cisco IOS, например, со способностью распределять больше пространства для производительности TCAM для таких функций, как qos, acl и поиск маршрутов. Я также понимаю, что такие функции, как NAT, все еще будут зависеть от процессорной обработки, однако я специально борюсь с этим;

  1. Является ли TCAM частью той же аппаратной архитектуры, то есть внутренней или внешней по отношению к самой ASIC?
  2. Являются ли TCAM масштабируемыми (например, могут ли производители просто добавлять TCAM на платформу для повышения производительности и пользовательских функций) или есть ли ограничения, основанные на таких вещах, как энергопотребление?
  3. Работают ли циклы TCAM и ASIC параллельно с ЦП для таких функций, как NAT, или я должен думать о них как о независимых вещах?
штейн
источник

Ответы:

14

TCAM - это тип памяти, для хранения которого требуется 10-12 транзисторов. Для сравнения: для статического ОЗУ ( SRAM ) требуется только 6 транзисторов для хранения одного бита, а для динамического ОЗУ ( DRAM ) - один транзистор и конденсатор. Все эти различные типы памяти могут быть внутренними или внешними по отношению к ASIC. Одна из причин, по которой все чипы хранятся в памяти, заключается в том, что они могут работать с более высокой тактовой частотой, чем вне чипа. Зачем выбирать один тип памяти над другим? Это связано с характеристиками памяти, доступ к SRAM возможен каждый такт, DRAM требует периодического обновления, поэтому доступ к нему возможен не каждый такт, а TCAM предоставляет троичные возможности .

TCAM можно масштабировать до тех пор, пока у вас есть место на чипе для их создания или контакты на пакете для подключения к внешним. Проблема с TCAM заключается в том, что они занимают 2- кратное пространство SRAM и 12-кратное пространство DRAM . Не всегда имеет смысл использовать TCAM для тех же операций, которые вы можете выполнять алгоритмически (хэши, * попытки) с другими типами памяти. Это сводится к компромиссу между эффективностью использования алгоритма и местом на кристалле, на котором можно выбирать. Использование энергии TCAM растет линейно пропорционально размеру. Большинство крупных TCAM (больше 2М записей) теперь используют алгоритмические методы, чтобы можно было экономить электроэнергию.

NAT / PAT - это сложная функция, для которой обычно требуется процессор или сетевой процессор (NPU) для обработки исправлений. Общий поток пакетов для NAT - это первый пакет, отправляемый в CPU / NPU, и запись потока устанавливается в таблице потоков или таблице ACL с информацией о том, как преобразовывать последующие пакеты в потоке. Существует множество различных форм NAT / PAT и столько же способов оптимизации каждого из них в микросхеме. Простейший NAT - это перезапись IP-адресов, и не беспокойтесь, если вы сломаете адреса, встроенные в полезную нагрузку, никаких исправлений.

Существует еще одна версия BRKARC-3466, которая была представлена ​​на CiscoLive 2013 в Мельбурне, которая охватывает некоторые идеи высокого уровня, стоящие за поиском, которая отсутствует в Орландо 2013 года. Хороший справочник в этой области - « Сетевые алгоритмы: междисциплинарный подход к проектированию быстродействующих сетевых устройств » Джорджа Варгезе.

user3697
источник
4

ASIC можно рассматривать как своего рода чип. Обычно он создается для того, чтобы сделать что-то аппаратное, что в противном случае было бы программным. Таким образом, Cisco может создать ASIC для всего, что захочет. В зависимости от модели коммутатора имеется 1 или несколько ASIC. TCAM - это дизайн памяти, так как он обычно встречается в системах шасси, он реализован как 1 из множества asics. TCAM используется для определенных функций поиска, таких как маршрутизация (CEF) или ACLS, поэтому, если ASIC не требуется выполнять такой поиск, он работает отдельно от TCAM. С другой стороны, ASIC, которые обрабатывают маркировку QoS, работают рука об руку с TCAM. В приведенной ниже презентации на cisco live обсуждаются некоторые компромиссы в дизайне и хорошее место, где можно найти понимание того, что входит в дизайн коммутаторов.

BRKARC-3466 - Изучение техники создания переключателя (Орландо, 2013) содержит списки асик и множество общей информации о конструкции переключателя.

fredpbaker
источник