Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СОС_1.docx
Скачиваний:
7
Добавлен:
16.04.2019
Размер:
1.15 Mб
Скачать

Буферизация в cisco ios, поддержка QoS

Управление памятью в CISCO IOS происходит на 2 уровнях:

  1. Уровень пулов памяти – управляется менеджером памяти. Каждый пул – это непрерывная область произвольного размера, выделяемая по запросу модуля ОС.

  2. Уровень буферов пакетов – управляется менеджером буферов.

К аждый буфер состоит из области памяти для хранения пакетов и указателя на нее. Очереди буферов образуются из указателей. При перемещении пакета между очередями перемещается указатель на его буфер. Поддерживается 3 типа буферов и связанные с ними очереди пакетов:

  1. С каждым интерфейсом связаны две очереди Tx-ring и Rx-ring, предназначенные для приема пакетов от контроллера и передаче их в контроллер. К их указателям имеют доступ как процессор, так и контролер интерфейсов. Структура указателей и размеры ячеек Х-очередей зависит от типа интерфейса и выбираются таким образом, чтобы уместился кадр максимального для данного интерфейса размера. Если после приема кадра контроллер интерфейса не может найти в Х-очереди указателя на свободную ячейку, то фиксируется переполнение кольца и кадр теряется.

  1. Локальные очереди. С каждым интерфейсом связана входная и выходная локальная очередь. Доступна только процессору. Состоит из фиксируемого количества буферов, регулируемого администратором.

  1. Системные очереди. Используются для хранения пакетов любых интерфейсов. Применяются при перегрузке интерфейса и переполнении локальной очереди. Могут быть организованы двумя способами:

    1. Для младших моделей маршрутизаторов используется несколько системных очередей с ячейками определенного размера.

    2. В старших моделях маршрутизаторов ячейка системной очереди состоит из нескольких фрагментов, связанных дополнительными указателями.

В исходном состоянии все очереди инициализируются указателями на свободные ячейки памяти ввода-вывода. После записи кадров в контроллер он переносится в X-ring очередь, генерируется прерывание, рассматривается входная локальная очередь интерфейса в поиске пустой ячейки, если нет – то системная. Если есть свободная ячейка – ее указатель копируется в очереди X-ring, а адрес ячейки с принятым кадром – в соответствующую локальную (системную) очередь. Если свободных ячеек нет, флаг указателя на ячейку содержащую кадр меняется с «занято» на «свободно». После – непосредственно маршрутизация.

Программная маршрутизация и ускоренная коммутация в cisco ios

Маршрутизаторы CISCO поддерживают несколько вариантов маршрутизации, делящихся на 2 группы.

  1. Классические варианты маршрутизации, характерные для маршрутизаторов на базе универсальной ОС. Это называется программная маршрутизация, иногда указывается имя сетевого протокола.

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

Процесс-обработчик, получив управление, по таблице маршрутизации и ARP – таблице определяет МАС адрес назначения. По нему и выходному интерфейсу формируется выходной кадр в очередь X-ring или (если она занята) в локальную или системную.

  1. Эта группа включает режимы IP-маршрутизации, ускоряющей её за счет предварительного создания дополнительных структур данных, ускоряющих поиск записи в таблице маршрутизации и APR-таблице. Бывает 2 видов:

  1. Быстрая коммутация, fast switching. Основан на кэшировании информации, найденной процессом IP-input при маршрутизации пакета с определенным адресом назначения. При маршрутизации очередного пакета сначала просматривается КЭШ, и при попадании из него берется необходимый МАС-адрес. Для быстрого просмотра КЭШа выполняется детерминированное отображение IP-адреса на элемент таблицы КЭШа. Т.е. для получения номера элемента КЭШа над старшими и младшими байтами IP-адреса проводится побитовая операция «исключающее или». При попадании в КЭШ все операции выполняются в режиме обработки прерываний. Метод эффективен, когда состояние КЭЩа является стабильным, то есть на периферийных коммутаторах.

  2. Экспресс-продвижение, Cisco Express Forward, CEF. Записи, аналогичные записям в КЭШ при быстрой коммутации создаются для каждой записи таблицы маршрутизации заранее, при инициализации режима CIF. Связи IP-адрес назначения - МАС-адрес следующей точки называются записями таблицы связи, Adjacency Table. Таблица связи перестраивается только при аварии на линии или на другом маршрутизаторе. Для быстрого поиска нужной записи в таблице связи используются М-деревья, это иерархическая структура индексов, в котором каждому возможному значению IP-адреса соответствует путь до нужной ячейки в таблице связи. У каждого узла М-дерева 256 потомков, соответствующих значению байта IP-адреса того же уровня. Путь по такому дереву до конечного элемента всегда имеет фиксированную длину в 4 ветви.