Статус
нашего
сайта:
ICQ Secrets Center is Online  ICQ Information Center


ICQ SHOP
     5-значные
     6-значные
     7-значные
     8-значные
     9-значные
     Rippers List
ОПЛАТА
СТАТЬИ
СЕКРЕТЫ
HELP CENTER
OWNED LIST
РОЗЫСК!New!
ICQ РЕЛИЗЫ
Протоколы ICQ
LOL ;-)
Настройка компьютера
Аватарки
Смайлики
СОФТ
     Mail Checkers
     Bruteforces
     ICQTeam Soft
     8thWonder Soft
     Other Progs
     ICQ Patches
     Miranda ICQ
ФорумАрхив!
ВАШ АККАУНТ
ICQ LiveJournal

Реклама

Наш канал:

irc.icqinfo.ru

Таненбаум Э.- Архитектура компьютера. стр.444


Таненбаум Э.- Архитектура компьютера. стр.444

Помимо РРЕ-контроллеров, у всех сетевых процессоров имеется управляющий процессор для выполнения всех действий, не относящихся напрямую к обработке пакетов (например, обновление таблиц маршрутизации). Обычно он представляет собой RISC-процессор общего назначения, память для данных и команд которого находится на одном кристалле с процессором. Более того, в сетевом процессоре может быть несколько специализированных процессоров, предназначенных для выполнения критически важных операций. Они представляют собой очень маленькие специализированные интегральные схемы (ASIC), способные выполнять только одно несложное действие, такое как поиск целевого адреса в таблице маршрутизации. Все компоненты сетевого процессора взаимодействуют друг с другом на мультигигабитных скоростях по одной или нескольким расположенным на кристалле параллельным шинам.

Обработка пакетов

Независимо от того, имеет сетевой процессор конвейерную или параллельную организацию, каждый прибывший пакет проходит несколько этапов обработки. У некоторых процессоров эти этапы разделяются на входную (ingress processing) и выходную обработку (egress processing). К первой группе относятся операции с пакетами, пришедшими извне (через сетевую линию или системную шину), а ко второй — с пакетами перед их отправкой. Таким образом, каждый пакет подвергается сначала входной обработке, а затем выходной. Это разделение достаточно условно, так как некоторые операции можно производить на любом из этапов (например, сбор сведений о трафике).

Мы рассмотрим эти этапы в том порядке, в котором они могли бы выполняться, но имейте в виду, что выполнять их нужно не для всех пакетов, кроме того, возможна другая последовательность действий.

1. Проверка контрольной суммы. Если входящий пакет прибывает из сети Ethernet, его контрольная сумма (CRC-код) пересчитывается и сравнивается со значением, имеющемся в пакете, чтобы убедиться, что пакет принят без ошибок.

Если оба значения оказываются равными или поле CRC в Ethernet-пакете отсутствует, вычисляется контрольная сумма IP-пакета и сравнивается со значением в пакете. Это позволяет убедиться, что IP-пакет не был поврежден по вине сбойного бита в памяти отправителя после того, как отправителем была посчитана контрольная сумма для IP-пакета. Если все проверки пройдены, пакет передается для дальнейшей обработки, в противном случае он просто отбрасывается.

2. Извлечение значений полей. Путем анализа определяется положение нужного заголовка, и из пакета извлекаются значения соответствующих этому заголовку ключевых полей. В Ethernet-коммутаторе исследуется только Ethernet-заголовок, в IP-маршрутизаторе — только IP-заголовок. Значения ключевых полей сохраняются либо в регистрах (при параллельной организации РРЕ-контроллеров), либо в SRAM (при конвейерной организации).

3. Классификация пакетов. Пакеты классифицируются в соответствии с рядом программных правил. В простейшем случае пакеты данных отделяются от управляющих пакетов, но обычно разделение гораздо более тонкое.

4. Выбор пути. У большинства сетевых процессоров имеется особый быстрый путь, оптимизированный для передачи всего многообразия пакетов данных, в то время как остальные пакеты обрабатываются по-своему, обычно управляющим процессором. Соответственно, должен быть выбран либо быстрый путь, либо один из медленных путей.


⇐ Предыдущая страница| |Следующая страница ⇒

.