[[PageOutline(2-5,Содержание:)]] [[span(style=color: #FF0000, Внимание! Статья находится в состоянии редактирования, информация может быть неточной или неполной. )]] == Первоначальное присваивание VLAN ID пакетам == Каждому принятому портом коммутатора пакету присваивается идентификатор VLAN (VLAN ID, VID). Алгоритм этого присваивания зависит от типа принятого пакета и конфигурационных настроек коммутатора. Принятые пакеты классифицируется коммутатором по различным признакам. В зависимости от того, имеет ли пакет тег 802.1q, коммутатор относит пакет к тегированным (tagged) или нетегированным (untagged). Наличие тега определяется коммутатором анализом поля !EtherType в зависимости от настройки "Port mode" (см. описание конфигурационных параметров порта ниже). Если параметр "Port mode" имеет значение "non-QinQ", и поле !EtherType пакета имеет значение 0x8100, пакет считается тегированным. Если "Port mode" имеет значение "Core port", и поле !EtherType пакета имеет значение 0x88a8, пакет также считается тегированным. Во всех остальных случаях принятый пакет считается нетегированным. Тегированные пакеты, в свою очередь, могут быть отнесены к тегированным VLAN (VLAN-tagged), если VLAN ID тега имеет ненулевое значение), или тегированным приоритетом (priority-tagged), если VLAN ID равен нулю. Если коммутатором принят нетегированный пакет, данному пакету присваевается VLAN ID в соответствии с конфигурационным параметром порта "Default VLAN ID" (см. описание конфигурационных параметров порта ниже). Если коммутатором принят тегированный пакет, присваивание пакету VLAN ID определяется конфигурационным параметром "PVID assigniment mode": - **PVID assigned to all packets** - пакет получает VID в соответствии со значением параметра "Default VLAN ID"; - **PVID assigned to untagged packets** - пакет получает VID в соответствии со значением VID его тега. Если конфигурационный параметр "PVID precedence" порта имеет значение "hard", назначенный пакету по описанному выше алгоритму VID является окончательным. Если же параметр имеет значение "soft", VID пакета может быть изменен другими механизмами коммутатора: присваивание VID в зависимости от протокола (protocol-based VLAN) и правилами политик (policy rules). Алгоритм присваивания VLAN ID принятому пакету показан на следующей диаграмме: {{{#!plantuml @startuml start :принят пакет; if (Port mode == Access port?) then (да) :VID = Default VLAN ID; else (нет) if(порту назначено\nприсваивать PVID\nвсем пакетам?) then (да) :VID = Default VLAN ID; else (нет) if(пакет тегирован\nи VLAN ID != 0?) then (нет) :VID = Default VLAN ID; else (да) :VID = VLAN ID принятого пакета; endif endif endif if(PVID precedence) then (soft) if(порту разрешено назначать VID в\nзависимости от протокола?) then (да) if(есть совпадение протокола?) then (да) :VID = протокол VID; else (нет) endif else (нет) endif if(PVID precedence) then (soft) if(порту разрешены политики?) then (да) if(выполняется условие правила\nполитики с переназначением VID?) then (да) :VID = PCL rule VID; else (нет) endif else (нет) endif else (hard) endif else (hard) endif stop @enduml }}} == Классификация трафика == Для обеспечения требуемого качества обслуживания (QoS) различных видов трафика коммутатор ethernet выполняет классификацию принимаемых пакетов. В процессе классификации каждому принятому пакету присваиваются следующие аттрибуты: - QoS профиль (0...71); - QoS precedence (soft или hard); - флаг Modify DSCP; - флаг Modif UP. Каждый QoS профиль содержит следующие параметры: - Класс трафика (Traffic Class, TC); - Криоритет отбрасывания (Drop Precedence, DP); - User Priority (UP); - DSCP. Коммутатор имеет несколько различных последовательно выполняющихся механизмов установки пакету атрибутов QoS. Последующие механизмы могут изменить первоначально присвоенные пакету атрибуты, например QoS профиль. Атрибут **QoS precedence** определяет, может ли присвоенный пакету QoS профиль позже быть изменен. Если QoS precedence имеет значение "soft", QoS профиль может быть изменен последующими механизмами маркировки, например полисером или правилом PCL. Если QoS precedence имеет значение "hard", QoS профиль не может быть изменен последующими механизмами маркировки. Если флаг **Modify DSCP** установлен, при передаче в порт в поле DSCP пакета будет установлено значение DSCP, заданное QoS профилем. Если флаг **Modify UP** установлен, при передаче в порт в поле User Priority (UP) пакета будет установлено значение UP, заданное QoS профилем. **Класс трафика (TC)** определяет номер очереди передачи (от 0 до 7) порта, в который будет передан пакет. **Приоритет отбрасывания (Drop Precedence, DP)** (0 или 1) определяет лимиты, в зависимости от которых пакет либо будет помещен в очередь, либо отброшен. Первоначальное присваивание атрибутов QoS пакету производится в соответствии с конфигурационными параметрами "QoS default profile", "Port QoS precedence", "modify DSCP" и "modify UP" принявшего пакет порта. Если конфигурационный параметр "protocol-based QoS" порта отмечен, и пакет принадлежит одному из включенных протоколов в таблице протоколов порта, атрибуты QoS пакета могут быть изменены в соответствии с параметрами "QoS profile cmd", "QoS profile", "QoS profile precedence", "Modify DSCP" и "Modify Up" порта. Подробнее см. [#Диалогнастройкипорта описание конфигурационный параметров порта]. Атрибуты QoS пакета могут быть изменены правилами PCL (см. описание PCL). При совпадении условия правила PCL могут быть назначено изменение одного или нескольких атрибутов QoS, а именно: - изменение номера QoS профиля (если QoS precedence имеет значение "soft"); - установка QoS precedence в значение "hard" (значение "hard" изменить на "soft" нельзя); - установить или сбросить флаг Modify DSCP; - установить или сбросить флаг Modify UP. Подробнее см. описание вкладки "PCL rules". Атрибуты QoS пакета могут быть изменены полисером. Правилами PCL отдельным видам трафика может быть назначено использование полисера. Полисер производит измерение скорости потока и сравнение ее с установленным порогом. На основании данного сравнения пакеты классифицируются как in-profile (если скорость потока не превышает заданный порог) или out-of-profile (если скорость потока превышает заданный порог). Пакетам, классифицированным как out-of-profile, могут быть изменены номер QoS профиля, установлен или сброшен флаг Modify DSCP, установлен или сброшен флаг Modify UP. Подробнее см. описание вкладки "Policers". == Планировщик очередей передачи == Каждый порт коммутатора имеет 8 очередей передачи пакетов - по одной очереди на каждый класс трафика (Traffic Class, TC). Пакеты находятся в очередях в ожидании своей очереди на отправку в порт. Планировщик очередей отвечает за выбор очереди, из которой будет взят очередной пакет для отправки в порт. Каждый порт коммутатора, включая внутренний порт CPU, поддерживает два алгоритма планировщика: Strict Priority (SP) и Shaped Deficit Weighted Round Robin (SDWRR), а также комбинацию SP и SDWRR. Применение алгоритма SP позволяет достичь минимальных задержек передачи трафика реального времени. Применение алгоритма SDWRR позволяет обеспечить гарантированную минимальную пропускную способность для различных классов трафика. Для каждой из очередей передачи назначается либо алгоритм SP, либо алгоритм SDWRR. === Strict Priority (SP) === При использовании алгоритма SP очереди обслуживаются в соответствии со своим номером (Traffic Class, TC) начиная с самого приоритетного TC 7 и заканчивая минимальным приоритетом TC 0. Трафик более высокого класса всегда передается раньше трафика менее приоритетных классов (имеющих меньший номер). Очереди, использующие алгоритм SP, не обязаны располагаться подряд (занимать непрерывную последовательность TC), они могут перемежаться с группами очередей, использующих SDWRR. Если очередь SDWRR имеет более высокий номер (TC), чем очередь SP, трафик более приоритетной очереди SDWRR всегда отправляется раньше трафика менее приоритетной очереди SP. === Shaped Deficit Weighted Round Robin (SDWRR) === Коммутатор поддерживает две независимые группы очередей SDWRR на каждый порт. Внутри каждой группы SDWRR очереди обслуживаются в соответствии с назначенным им весом. Вес очереди может принимать значение от 1 до 255. Таким образом, соотношение пропускной способности очередей может составлять от 1:1 до 1:255. Например, для равного распределения полосы пропускания между очередями SDWRR всем очередям можно назначить вес 1. Если же имеется 4 очереди SDWRR, и полосу пропускания требуется распределить медлу ними в пропорции 10%-20%-30%-40%, назначьте очередям вес 1, 2, 3 и 4 соответственно. === Scheduler профили === Коммутатор имеет 4 независимых профиля с конфигуарцией очередей передачи. Каждому порту коммутатора назначается один из четырех профилей. Профили настраиваются на вкладке "Sched" веб-интерфейса. Обратите внимание, что если в профиле сконфигурировано две группы SDWRR, для правильной работы алгоритма требуется, чтобы очереди внутри одной группы располагались последовательно (имели непрерывную последовательность номеров). Пример профиля с несколькими группами: ||= Q7 =||= Q6 =||= Q5 =||= Q4 =||= Q3 =||= Q2 =||= Q1 =||= Q0 =|| {{{#!td style="background-color:#ffbbcc" SP }}} {{{#!td style="background-color:#ffbbcc" SP }}} {{{#!td colspan="3" style="background-color:#ffddbb" SDWRR группа 0 }}} {{{#!td colspan="2" style="background-color:#ddffff" SDWRR группа 1 }}} {{{#!td style="background-color:#ffbbcc" SP }}} В изображенном примере очередь Q7 имеет высший приоритет. Если в очереди Q7 имеются пакеты, очреедной пакет для передачи в порт будет взят из очереди Q7. Если очередь Q7 пуста, пакеты будут передаваться из очереди Q6. Если и очередь Q7, и очередь Q6 пусты, пакеты будут передаваться из очередей Q3, Q4 и Q5, составляющих SDWRR группу 0. Очереди этой группы будут чередоваться в соответствии с назначенными им весами. Если очереди Q3-Q7 пусты, пакеты будут передаваться из очередей Q1 и Q2, составляющих SDWRR группу 1. Наконец, пакеты из очереди Q0 будут передаваться только если все остальные очереди Q1-Q7 пусты. == PCL == Коммутатор позволяет производить обработку пакетов ethernet на основании списков PCL (Policy Control Lists). Списки PCL состоят из последовательности правил, обрабатываемях коммутатором для каждого принятого пакета (если это разрешено глобальной настройкой и настройками портов). Каждое правило состоит из двух основных элементов - условия и действия. Обработка пакетов правилами PCL может быть отключена глобально, а также (если обработка не отключена глобально) может быть включена/выключена индивидуально для каждого порта коммутатора. Обработка пакета выполняется в случае, если политики разрешены глобально **и** включены в настройках порта, принявшего пакет. Обработке правилами PCL подлежат только пакеты, которым назначена команда forward, то есть предназначенные для форвардинга обычным образом. Пакеты, зеркалированные в порт анализатора, перенаправленные в порт CPU или передаваемые от CPU в определенный порт коммутатора (например кадры обнаружения петли или кадры RSTP BPDU) правиламт PCL не обрабатываются. Для каждого принятого пакета коммутатор выполняет последовательную проверку условий правил PCL. Если условие выполняется, коммутатор выполняет заданное правилом действие и заканчивает поиск. Описанных проходов поиска по списку правил может быть настроено один или два (lookup 0 и lookup 1). === Ключ поиска === Условия правил могут включать в себя как проверку данных пакета (например MAC адрес отправителя и получателя, протокол, IP адрес отправителя, IP адрес получателя, поля DSCP и т.п.), так и метаданных, назначенных принятому пакету коммутатором (например номер порта, номер QoS профиля, VLAN ID и т.п.). Для проверки условий списков PCL коммутатор формирует ключ, состоящий из данных и метаданных пакета, о которых блыо сказано выше. В зависимости от типа принятого пакета (не-IP, ARP, IPv4, IPv6) и конфигурации PCL может быть сформировано семь различных типов ключа размером 24 или 48 байт. В свою очередь, условия правил PCL состоят из значения и маски, также размером 24 или 28 байт каждые. Проверка условия заключается в накладывании (побитном умножении) маски на ключ поиска и сравнения результата с значением условия правила. Если результат совпал с заданным значением, условие правила считается выполненным, и коммутатор выполняет указанное правилом действие. Таким образом, условие правила может проверять любое из составляющее ключ полей на равенство заданному значению (если соответствующие полю биты маски установлены в 1), игнорировать значение поля (если соответствующие полю биты маски сброшены в 0) или проверять только часть значения поля (если часть соответствующих битов маски установлена), например равенство префикса адреса IPv6 заданному значению. Алгоритм выбора типа (формата) ключа показан на следующий диаграмме. {{{#!plantuml @startuml start if (размер ключа?) then (short (standard)) if(тип пакета?) then (не-IP) #palegreen :L2; else (IP или ARP) if (протокол?) then (IPv4 или ARP) if(IP key type?) then #palegreen :IPv4+L4; else #palegreen :L2+IPv4/6 QoS; endif else (IPv6) if(lookup 0?) then (да) #palegreen :L2+IPv4/6 QoS; else (нет) if(IPv6 short key type?) then #palegreen :L2+IPv4/6 QoS; else #palegreen :IPv6 DIP; endif endif endif endif else (long (extended)) if(тип пакета?) then (IPv6) if(IP key type?) then #palegreen :L2+IPv6; else #palegreen :IPv6+L4; endif else (не-IPv6) #palegreen :L2+IPv4+L4; endif endif kill @enduml }}} === PCL-ID === В памяти коммутатора могут храниться различные списки правил PCL. В зависимости от того, каким портом/транком/VLAN принят пакет, к нему могут применяться разные списки правил. Также разные списки правил могут применяться на первом и втором проходах поиска. Для идентификации списка правил служит 10-битный идентификатор PCL (PCL-ID). Значение идентификатора назначается в соответствии с конфигурацией PCL. Поле PCL-ID является частью условия любого правила PCL. Таким образом, любое правило PCL может быть привязано к конкретному значению PCL-ID (если все биты PCL-ID "открыты" маской), может быть привязано к нескольким PCL-ID (если только часть битов PCL-ID "открыты маской), или применяться независимо от PCL-ID (если поле PCL-ID полностью "закрыто" маской). Как уже было сказано выше, конфигурация PCL определяет: - какие проходы поиска PCL правил (lookup 0 и/или lookup1) будут выполняться; - значение PCL-ID для каждого из выполняемых проходов (lookup 0 и lookup 1); - тип (формат) ключа. В коммутаторе существует таблица, содержащая 1152 конфигурации PCL. Существует два варианта выбора конкретной конфигурации PCL из таблицы: - в зависимости от номера порта или транка, принявшего пакет (source port/trunk); - в зависимости от номера физического порта или VLAN ID пакета. Выбор варианта осуществляется конфигурационным параметром "PCL-ID Mode" в диалоге "Policy Engine Global Configuration". Если параметр "PCL-ID Mode" установлен в значение "port/VLAN", выбор конфигурации PCL осуществляется в зависимости от конфигурационного параметра "PCL-ID assignment mode" принявшего пакет порта. Если параметр "PCL-ID assignment mode" принявшего пакет порта установлен в значение "according to the VLAN ID", и VLAN ID пакета находится в диапазоне от 0 до 1023, конфигурация PCL выбирается по значению VLAN ID. Если значение VLAN ID пакета больше чем 1023 или если параметр "PCL-ID assignment mode" принявшего пакет порта установлен в значение "according to the Incoming port", конфигурация PCL выбирается по номеру порта плюс 1024. {{{#!plantuml @startuml start if (PCL-ID Mode?) then (port/VLAN) if(PCL-ID assignment mode?) then (according to the\nIncoming port) #palegreen :index = <номер порта> + 1024; else (according to the VLAN ID) if(VLAN ID < 1024?) then (нет) #palegreen :index = <номер порта> + 1024; else (да) #palegreen :index = ; endif endif else (source port/trunk) if(Пакет из транка?) then (нет) #palegreen :index = <номер порта>\n(CPU=1023); else (да) #palegreen :index = <номер транка> + 1024; endif endif kill @enduml }}} При нажатии в веб-интерфейсе кнопки "Конфигурация PCL" ([[Image(policy-icon.png)]]) в таблице портов или таблице VLAN автоматически вычисляется индекс в таблице конфигурации PCL, соответствующийданному порту или VLAN, и открывается диалог конфигурации PCL. === Определяемые пользователем байты (User Defined Bytes) === Помимо заранее определенных полей заголовка пакета, таких как EtherType, DSCP или IP protocol, коммутатор позволяет (в зависимости от формата ключа) определить до шести произвольных байтов пакета, которые будут извлечены из первых 128 байт пакета в ключ поиска и могут быть проверены условиями правил PCL. Каждый определяемый пользователем байт имеет два параметра: - **Якорь** - условная точка (позиция) в пакете, от которой отсчитывается смечещние байта. Якорь может быть выбран из следующих возможных значений: - **start of L2 header** - начало заголовка L2 (ethernet); - **start of L3 header** - начало заголовка L3 (IP); - **start of L4 header** - начало заголовка L4 (payload IP, например TCP или UDP); - **start of IPv6 ext.header** - начало заголовка расширений IPv6. - **Смещение** - число байт (от 0 до 127), добавляемое к позиции якоря для определения позиции извлекаемого байта. Как было сказано выше, определяемый пользователем байт может быть извлечен только из первых 128 байт пакета. Если в результате вычисления позиции определяемого пользователем байта обнаруживается выход за пределы первых 128 байт пакета, поведение коммутатора определяется параметром "Invalid user defined bytes" глобальных настроек PCL. === Действия правил PCL === Действие правила определяет, какие манипуляции с пакетом будут произведены в случае выполнения условия. Эти действия могут включать: - изменение команды (решения о судьбе пакета): forward, hard drop, soft drop, mirrot to CPU, trap to CPU; - изменение идентификатора VLAN; - перемаркировка QoS (изменение QoS профиля, изменение флагов модификации UP/DSCP, изменение QoS precedence); - инкремент счетчика; - зеркалировать пакет в порт анализатора; - перенаправление пакета в определенный порт, транк или мультикастовую группу; - применение полисера. == Обнаружение петель (Loopback detection) == Плата SW-01 имеет функцию обнаружения петель в сети ethernet. Обнаружение петель может быть сконфигурировано для каждой VLAN независимо. За обнаружение петель в настройках VLAN отвечают конфигурационные параметры "Loopback detection interval" и "Loopback detection recovery". Если значение параметра "Loopback detection interval" не равно нулю, в каждый из портов, являющихся членами VLAN, с заданной параметром периодичностью передается специальный мультикастовый фрейм контроля петли. При отсутствии в топологии сети ethernet петель эти кадры не должны возвращаться обратно в коммутатор. При наличии же петли этот кадр вернется обратно в этот же или в другой порт коммутатора. Если коммутатор принимает отправленный им кадр обнаружения петли, в системный журнал выводится запись об обнаружении петли, и порт коммутатора, в который был передан кадр, блокируется - не принимает и не передает пакеты. По умолчанию блокировка порта длится 60 секунд. Это время может быть изменено конфигурационным параметром "Loopback detection recovery". Если значение параметра "Loopback detection recovery" больше нуля, оно используется в качестве времени блокировки порта. Если значение равно нулю, используется время блокировки по умолчанию - 60 секунд. См. описание конфигурационных параметров "Loopback detection interval" и "Loopback detection recovery" в [#ДиалогнастроекVLAN диалоге настроек VLAN]. == Вкладка Ethernet. Расширенные настройки. == Для отображения расширенных настроек Ethernet нужно на вкладке "Разное" в настройке "Конфигурация Ethernet" выбрать вариант "полная". Вкладка Ethernet предназначена для настройки коммутатора ethernet платы SW-01. Содержащиеся здесь настройки, в свою очередь, разбиты на вкладки нижнего уровня: "Порты", "VLAN'ы", "MС группы", "RSTP", "Транки", "QoS профили", "Tail-drop", "Sched", "Policy Rules", "Policy Counters", "Policers", "Policer counters", "Remarking table", "Протоколы", "FDB". Над вкладками расположены кнопки "Analyzer configuration", "Экспорт настроек" и "Испорт настроек" (см.рисунок ниже): [[Image(pic1.jpg)]] === Analyzer configuration === Коммутатор платы SW-01 имеет возможность направлять копии пакетов (зеркалировать пакеты), принимаемых или отправляемых коммутатором, в специально назначенный порт, называемый портом анализатора (Analyzer port). Коммутатор позволяет работать с двумя анализаторами - входящим (ingres analyzer) и исходящим (egress analyzer). Входящему анализатору зеркалируются пакеты при получении их коммутатором, исходящему - при отправке пакетов из коммутатора. Любой из портов коммутатора ethernet платы SW-01 может быть назначен портом входящего и/или исходящего анализатора. При нажатии кнопки "Analyzer configuration" открывается диалог настроек порта анализатора. Описание конфигурационных параметров диалога см. [#Диалогконфигурациипортаанализатора ниже]. === Экспорт настроек === При нажатии кнопки "Экспорт настроек" плата SW-01 формирует и передает текущие настройки коммутатора ethernet в формате документа XML. === Импорт настроек === При нажатии кнопки "Импорт настроек" появляется диалог загрузки файла настроек. При указании файла и нажатии кнопки "Загрузить" файл загружается в плату SW-01, после чего настройки передаются коммутатору ethernet. Для обновления настроек ethernet в веб-интерфейсе после закрытия диалога с сообщением об успешном импорте настроек веб-страница автоматически перезагружается. === Вкладка Порты === На вкладке Порты расположена таблица, отображающая состояние портов Ethernet коммутатора платы SW-01. Часть столбцов таблицы совпадает с тем что отображается в кратких настройках Ethernet, далее будут описаны отличающиеся элементы.[[BR]] При нажатии иконки "Настройки порта" ([[Image(preferences-icon.png)]]) открывается диалог настроек порта. Описание конфигурационных параметров диалога см. [#Диалогнастройкипорта ниже]. При нажатии иконки "Конфигурация PCL" ([[Image(policy-icon.png)]]) открывается диалог настроек политик порта (PCL configuration). Описание конфигурационных параметров диалога см. [#Диалогнастройкиполитикпорта ниже]. Sync:: Для портов 0-9 зеленый фон ячейки сигнализирует о наличии синхронизации кодовых групп принимаемого потока 1.25 Гбит/с интерфейса SGMII - три раза успешно принята последовательность COMMA (0011111 или 1100000). Красный фон сигнализирует об отсутствии синхронизации (последовательность COMMA не обнаружена). Для порта CPU фон ячейки всегда зеленый. SyncFail10ms:: Для портов 0-9 красный фон ячейки сигнализирует об отсутствии синхронизации с принимаемым потоком 1.25 Гбит/с интерфейса SGMII в течение 10 или более мс. !AnDone:: Зеленый фон сигнализирует о том, что процесс Auto-Negotiation завершен. Pause:: Ячейка отображает состояние приема/передачи кадров Pause (управление потоком). Возможные состояния ячеек в этой колонке: - `RX` - из порта принят кадр Pause, передача в порт приостановлена; - `TX` - в порт передаются кадры Pause для приостановки передачи удаленной стороной; - `RX/TX` - из порта принят кадр Pause, передача в порт приостановлена, одновременно в порт передаются кадры Pause для приостановки передачи удаленной стороной; - пусто - кадры Pause не принимаются из порта и не передаются в порт, передача данных возможна в обоих направлениях. !UcRcvd:: Ячейка отображает счетчик валидных юникасторых кадров, принятых соответствующим портом коммутатора. !McRcvd:: Ячейка отображает счетчик валидных мультикасторых кадров, принятых соответствующим портом коммутатора. !BcRcvd:: Ячейка отображает счетчик валидных бродкасторых кадров, принятых соответствующим портом коммутатора. !UcSent:: Ячейка отображает счетчик валидных юникасторых кадров, переданных соответствующим портом коммутатора. !McSent:: Ячейка отображает счетчик валидных мультикасторых кадров, переданных соответствующим портом коммутатора. !BcSent:: Ячейка отображает счетчик валидных бродкасторых кадров, переданных соответствующим портом коммутатора. !BadCRC:: Ячейка отображает счетчик принятых кадров, имеющих ошибку CRC. !RxError:: Ячейка отображает счетчик ошибок приема. !Collisions:: Ячейка отображает счетчик коллизий порта. !Jabber:: Ячейка отображает счетчик принятых jabber-кадров. !Oversize:: Ячейка отображает счетчик принятых кадров, размер которых превышает MRU. !Undersize:: Ячейка отображает счетчик принятых кадров, размер которых меньше 64 октетов. !Frag:: Ячейка отображает счетчик принятых фрагментов кадров. Трафик Rx:: Приблизительная скорость принимаемых в порт данных. Трафик Tx:: Приблизительная скорость передаваемых в порт данных. === Вкладка VLAN'ы === Вкладка "VLAN'ы" предназначена для настройки VLAN коммутатора. Вид вкладки показан на следующем рисунке: [[Image(pic5.jpg)]] Вкладка содержит таблицу имеющихся в коммутаторе VLAN. Для каждой VLAN в таблице отображается: - идентификатор VLAN; - Комментарий; - Список портов членов VLAN. При нажатии кнопки "Добавить VLAN" ([[Image(add-icon.png)]]) открывается диалог настроек новой VLAN. При нажатии кнопки "Изменить настройки" ([[Image(preferences-icon.png)]]) открывается тот же диалог настроек для уже существующей VLAN. Нажатие кнопки "Удалить" ([[Image(delete-icon.png)]]) удаляет VLAN. === Вкладка QoS профили === Вкладка "QoS профили" предназначена для просмотра и изменения настроек 72 QoS профилей, а также таблицы маппинга значений DSCP в номер QoS профиля. [[Image(pic7.jpg)]] В верхней части вкладки отображаются паарметры всех 72 QoS профилей. Для каждого профиля указывается: - класс трафика (Traffic Class, TC); - приоритет отбрасывания пакетов (Drop Precedence, DP); - приоритет пользователя (User Priority, UP); - значение DSCP. При нажатии кнолпки "Изменить настройки" ([[Image(preferences-icon.png)]]) открывается диалог, позволяющий изменить перечисленные выше параметры QoS профиля. В нижней части вкладки расположена таблица маппинга DSCP в QoS профиль. В таблице для каждого из 64 возможных значений поля DSCP содержится номер QoS профиля, в который маппится значение DSCP принятого пакета. При клике ячейки таблицы с номером профиля открывается диалог, позволяющий изменить номер QoS профиля для соответствующего значения DSCP. По умолчанию все значения DSCP маппятся в QoS профиль 0. === Вкладка Tail-drop === Для организации хранения пакетов в памяти коммутатора используются буферы и дескрипторы. Буферы используются для хранения данных пакета. Каждый буфер имеет размер 256 байт. В зависимости от размера пакета для его хранения используется один или несколько связанных в список буферов. Дескрипторы используются для помещения пакета в очередь передачи и вказывают на список буферов, хранящих данные пакета. Если один пакет передается сразу в несколько портов коммутатора, используется несколько дескрипторов (по одному на каждый выходной порт), указывающих на один и тот же список буферов, хранящих данные пакета. Общее количество буферов и дескрипторов коммутатора составляет 512 буферов и 512 дескрипторов. Вкладка "Tail-drop" предназначена для просмотра и изменения настроек четырех Tail-drop профилей, отвечающих за предотвращение перегрузок (заторов) в очередях передачи. Tail-drop профиль устанавливает лимиты буферов и пакетов для каждой очереди передачи. Если при помещении пакета в очередь оказывается превышенным любой из установленных оимитов (лимит буферов или лимит дескрипторов), пакет не добавляется в очередь (отбрасывается). Каждая очередь позволяет установить разные лимиты для двух разных приоритета отбрасывания (Drop Precedence, DP) порта. Благодаря этому лимиты очереди могут быть сконфигурированы таким образом, чтобы в случае возникновения затора (увеличения количества пакетов в очереди) пакеты с высоким приоритета отбрасывания отбрасывались, в то время как пакеты м низким приоритета отбрасывания продложали добавляться в очередь. Вид вкладки "Tail-drop" показан на следующем рисунке: [[Image(pic8.jpg)]] Buffer Limit:: Лимит буферов, которые могут быть задействованы всеми очередями передачи порта. Desc Limit:: Лимит дескрипторов, которые могут быть задействованы всеми очередями передачи порта. Share buffers and descriptors:: Если чекбокс не отмечен, то когда сумма буферов и дескрипторов, задействованных в очередях порта, превышает установленный лимит порта, пакет не помещается в очередь передачи (отбрасывается). Если чекбокс отмечен, и очередь, в которую должен быть помещен пакет, пуста, то пакет помещается в очередь передачи даже в случае превышения лимита буферов и/или дескрипторов порта. Эта опция позволяет избежать "голодания" очереди в ситуации, когда лимит порта исчерпан пакетами, находящимися в других очередях. На момент написания этой статьи эта функция не реализована. При нажатии кнолпки "Изменить" ([[Image(edit-icon.png)]]) открывается диалог, позволяющий изменить лимиты буферов и дескрипторов для соответствующей комбинации класса трафика (TC) и приоритета отбрасывания (DP) пакетов. === Вкладка Sched === Вкладка "Sched" предназначена для просмотра и изменения профилей планировщика (Scheduler профилей): [[Image(pic9.jpg)]] Для каждого класса трафика (TC) каждого профиля отображаются следующие параметры: - **Algorithm** - алгоритм планоровщика (SP или SDWRR); - **Weight** - вес очереди (1...255); - **Group** - группа (0 или 1). При нажатии кнолпки "Изменить" ([[Image(edit-icon.png)]]) открывается диалог, позволяющий изменить алгоритм, вес и номер группы для соответствующего класса трафика (TC) и профиля. === Вкладка Policy Rules === Вкладка "Policy Rules" предназначена для проимотра и изменения правил PCL. Вид вкладки "Policy Rules" показан на рисунке ниже: [[Image(pic10.jpg)]] При нажатии кнопки "Настройки" открывается диалог глобальных настроек PLC "Policy Engine Global Configuration". Группа "Тип ключа" позволяет выбрать формат ключа, от которого зависит интерпретация условий правил PCL и настройки определяемых пользователем байтов в расположенных ниже таблицах. Таблица "User defined bytes" отображает параметры (якорь и смещение) определяемых пользователем байтов, имеющихся в выбранном формате ключа. При нажатии кнопки "Изменить" ([[Image(edit-icon.png)]]) открывается диалог, позволяющий изменить параметры "Якорь" и "Смещение". Таблица "PCL правила" служит для просмотра и редактирования правил PCL. В таблице отображается текущий сисок правил, для каждого из которых отображается: - порядковый номер правила; - тип правила ("standard" или "extended"); - условие правила (интерпретация условия зависит от выбранного формата ключа); - действия правила; - кнопка "удалить" для удаления правила. Для удобства пользователя при выборе стандартных 24-байтных ключей строки с расширенными правилами отображаются с более темным фоном, что говорит о неприменимести к ним выбранного формата ключа. И наоборот, при выборе расширенного формата ключа строки со стандартными правилами имеют более темный фон. Кнопка "Добавить правило" ([[Image(row-insert-icon.png)]]) Служит для добавления нового правила. При нажатии этой кнопки появляется диалог выбора типа правила с двумя кнопками - "Standard" для создания стандартного правила с коротким 24-байтным ключом и "Extended" для создания расширенного правила с широким 48-байтным ключом. При нажатии одной из этих кнопок в конец таблицы добавляется новое правило выбранного типа. Условие нового правила состоит из нулевых бит и нулевой маски и, таким образом, правило выполняется всегда. В столбце "Условие" такого парвила отображается "any". Действие для добавленного правила устанавливается в значение "Forward", доабвленное правило никак не модифицирует пакеты. ==== Диалог условия правила PCL ==== При клике ячейки "Условие" в таблице PCL правил открывается диалог редактирования условия. Дилог открывается только в том случае, если выбранный формат ключа соответствует типу правила ("standard" или "extended"). Вид и содержимое диалога зависит от выбранного формата ключа. Примеры диалогов покананы ниже: [[Image(pic12.jpg)]] [[Image(pic13.jpg)]] [[Image(pic14.jpg)]] В диалогах условий используется несколько типов элементов ввода в зависимости от назначения поля ключа. Поле-флаг:: Поле-флаг отображается в диалогах в виде чекбокса, имеющего три возможных состояния: - [[Image(cb-empty.png)]] чекбокс не отмечен - флаг сброшен (условие выполняется, если флаг равен нулю); - [[Image(cb-checked.png)]] чекбокс отмечен - флаг установлен (условие выполняется, если флаг равен единице); - [[Image(cb-dontcare.png)]] чекбокс отмечен полупрозрачной отметкой - флаг не участвует в проверке условия (соответствующий бит маски равен нулю); Поле-число:: Поле отображается в виде текстовой строки ввода. Значение строки имеет формат `<значение>/<маска>`, где "значение" - значение поля ключа в виде десятичного числа, "маска" - маска значения также в виде десятичного числа. Например значение поля "Src port" `8/63` означает, что все 6 бит номера порта одлжны иметь значение 8. Значение `8/62` означает, что условие выполняется как для порта 8, так и для порта 9, так как младший бит маски имеет значение 0 и, таким образом, проверяются только значения 5 старших бит. Значение `0/0` выполняется всегда, так как в маске нет ни одного бита, равного единице. Для удобства задания условий докускается ввод только значения без маски и символа "/" - в этом случае автоматически будет установлена маска, имеющая единицы во всех разрядах поля. Поле-MAC адрес:: Поле отображается в виде текстовой строки ввода. Значение строки имеет формат `<значение>/<маска>`, где "значение" - значение поля ключа в виде шести шестнадцатеричных чисел, разделенных символом ":", "маска" - маска значения, имеющая тот же формат. Например значение поля "MAC DA" `01:80:c2:00:00:00/ff:ff:ff:ff:ff:ff` означает, что условие выполняется только для MAC адреса назначения BPDU (01:80:c2:00:00:00). Значение `01:80:c2:00:00:00/ff:ff:ff:ff:ff:f0` означает, что условие выполняется для любых MAC адресов из диапазона 01:80:c2:00:00:00 - 01:80:c2:00:00:0f. Для удобства задания условий докускается ввод только значения MAC адреса без маски и символа "/" - в этом случае автоматически будет установлена маска, имеющая единицы во всех разрядах поля. Поле-IPv4 адрес:: Поле отображается в виде текстовой строки ввода. Значение строки имеет формат `<значение>/<маска>`, где "значение" - значение поля ключа в виде четырех десятичных чисел, разделенных символом ".", "маска" - маска значения, имеющая тот же формат. Например значение поля "Destination IP" `192.168.12.5/255.255.255.255` означает, что условие выполняется только для IP адреса 192.168.12.5. Значение `192.168.12.0/255.255.255.0` означает, что условие выполняется для любых IP адресов из подсети 192.168.12.0/24. Для удобства задания условий докускается ввод только значения IP адреса без маски и символа "/" - в этом случае автоматически будет установлена маска, имеющая единицы во всех разрядах поля. Поле-IPv6 адрес:: Поле отображается в виде текстовой строки ввода. Значение строки имеет формат `<значение>/<маска>`, где "значение" - значение поля ключа в формате записи адреса IPv6, "маска" - маска значения, также имеющая формат адреса IPv6. Например значение поля "Destination IP" `2a00:1450:4010:c09::64/ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff` означает, что условие выполняется только для IP адреса 2a00:1450:4010:c09::64. Значение `2a00:1450:4010:c09::/ffff:ffff:ffff:ffff::` означает, что условие выполняется для любых IP адресов, имеющих префикс 2a00:1450:4010:c09::/64. Для удобства задания условий докускается ввод только значения IP адреса без маски и символа "/" - в этом случае автоматически будет установлена маска, имеющая единицы во всех разрядах поля. Далее следует описание полей ключй PCL. PCL ID:: Тип поля - число. Значение поля берется из конфигурации PCL для соответствующего прохода поиска (lookup 0 или lookup 1). Поле предназначено для идентификации списков правил различного назначения. Например можно создать разные списки правил фильтрации входящего трафика для разных портов и/или VLAN. Поле присутствует в ключах всех форматов. Src port:: Тип поля - число. Значением поля является номер физического порта, получившего пакет. Поле присутствует в ключах всех форматов. VLAN ID:: Тип поля - число. Значением поля является VLAN ID пакета. Поле присутствует в ключах всех форматов. UP:: Тип поля - число. Значением поля является приоритет пользователя (User Priority) пакета. Поле присутствует в ключах всех форматов. QoS profile:: Тип поля - число. Значением поля является номер QoS профиля пакета. Поле присутствует в ключах всех форматов. tagged:: Тип поля - флаг. Поле равно 1 если принят тегированный пакет, и 0 - если принят нетегированный пакет (см. раздел [#ПервоначальноеприсваиваниеVLANIDпакетам Первоначальное присваивание VLAN ID пакетам] выше). Поле присутствует в ключах всех форматов. is IPv4:: Тип поля - флаг. Поле равно 1 если принят пакет IPv4 (пакет IPv4 идентифицируется по значению поля EtherType равному 0x0800) и 0 если пакет не является пакетом IPv4. Поле присутствует в ключах форматов: Standard L2+IPv4/6+QoS, Standard IPv4+L4, Standard IPv6 DIP, Standard L2. is IPv6:: Тип поля - флаг. Поле равно 1 если принят пакет IPv6 (пакет IPv6 идентифицируется по значению поля EtherType равному 0x86DD) и 0 если пакет не является пакетом IPv6. Поле присутствует в ключах форматов: Extended L2+IPv4+L4, Extended L2+IPv6, Extended IPv6+L4. is IP:: Тип поля - флаг. Поле равно 1 если принят пакет IPv4 или IPv6, и 0 если принят не-IP пакет. Поле присутствует в ключах всех форматов. is ARP:: Тип поля - флаг. Поле равно 1 если принят пакет ARP (пакет ARP идентифицируется по значению поля EtherType равному 0x0806) и 0 если пакет не является пакетом ARP. Поле присутствует в ключах форматов: Standard L2+IPv4/6+QoS, Standard IPv4+L4, Standard IPv6 DIP, Standard L2. MAC SA:: Тип поля - MAC адрес. Значением поля является MAC адрес отправителя пакета. Поле присутствует в ключах форматов: Standard L2+IPv4/6+QoS, Standard L2, Extended L2+IPv4+L4, Extended L2+IPv6. MAC DA:: Тип поля - MAC адрес. Значением поля является MAC адрес получателя пакета. Поле присутствует в ключах форматов: Standard L2+IPv4/6+QoS, Standard L2, Extended L2+IPv4+L4, Extended L2+IPv6. User defined bytes valid:: Тип поля - флаг. Этот флаг устанавливается, если все определяемые пользователем байты, используемые в данном ключе, успешно распарсены. Поле присутствует в ключах всех форматов кроме Standard IPv6 DIP. User defined byte [0..5]:: Тип поля - число. Значением поля является байт, определяемый пользователем (см. раздел [#ОпределяемыепользователембайтыUserDefinedBytes Определяемые пользователем байты] выше). Поле присутствует в ключах всех форматов кроме Standard IPv6 DIP. IP protocol:: Тип поля - число. Поле валидно только в случае приема пакета IP. Значением поля является номер протокола layer 4, инкапсулированного в пакете IPv4/IPv6. Поле присутствует в ключах всех форматов кроме Standard L2. Packet DSCP:: Тип поля - число. Поле валидно только в случае приема пакета IP. Значением поля является значение DSCP принятого пакета. Поле присутствует в ключах всех форматов кроме Standard L2. === Диалог настроек VLAN === Диалог настроек VLAN показан на рисунке: [[Image(pic6.jpg)]] Далее описаны имеющиеся в нем конфигурационные параметры. VLAN ID:: Идентификатор VLAN. Допустимые значения - от 0 до 4095. Идентификатор может быть задан только при создании нового VLAN, при изменении настроек существующей изменение VLAN ID невозможно. Комментарий:: Текстовый комментарий, отображаемый в таблице VLAN. STP group index:: Индекс группы STP для данной VLAN. Для корректной работы STP значение всегда дложно быть 0. Unregistered non IP Multicast packets:: Конфигурационный параметр определяет действие с мультикастовыми не-IP кадрами, MAC адрес получателя которых отсутствует в FDB. Возможна установка одного из следующих вариантов: - **Flood** - кадр форвардится во все остальные порты, кроме порта CPU; - **Mirror to CPU** - кадр форвардится во все остальные порты, а также порт CPU; - **Trap to CPU** - кадр форвардится только в порт CPU; - **Hard drop** - кадр отбрасывается с приоритетом hard; - **Soft drop** - кадр отбрасывается с приоритетом soft. Кадр может быть направлен в порт CPU последующими командами TRAP/MIRROR других механизмов, например правилами PCL. Unregistered IPv4 Broadcast packets:: Конфигурационный параметр определяет действие с бродкастовыми IPv4 кадрами. Возможные варианты действий такие же, как в параметре "Unregistered non IP Multicast packets". Unregistered IPv6 Multicast packets:: Конфигурационный параметр определяет действие с мультикастовыми IPv6 кадрами, адрес получателя которых отсутствует в FDB. Возможные варианты действий такие же, как в параметре "Unregistered non IP Multicast packets". Unregistered Non-IPv4 Broadcast packets:: Конфигурационный параметр определяет действие с бродкастовыми не-IPv4 кадрами. Возможные варианты действий такие же, как в параметре "Unregistered non IP Multicast packets". Unknown unicast packets:: Конфигурационный параметр определяет действие с юникастовыми кадрами, адрес получателя которых отсутствует в FDB. Возможные варианты действий такие же, как в параметре "Unregistered non IP Multicast packets". enable IGMP trapping or mirroring to CPU:: Установка отметки чекбокса включает функцию "IGMP snooping" для данного VLAN. Снятие отметки выключает IGMP snooping. enable IPv6 ICMP trapping or mirroring to CPU:: Данный конфигурационный параметр не имеет эффекта. enable control IP trapping or mirroring to CPU:: Отметка чекбокса включает форвардинг в порт CPU управляющих пакетов: ARP broadcast, IPv6 neighbor solicitation multicast. Отметка данного чекбокса равносильна отметке чекбокса порта 63 (CPU) соответствующего VLAN подвкладки "VLAN" вкладки "Ethernet" в кратком режиме настроек ethernet. mirror to analizer:: Отметка чекбокса включает зеркалирование входящего трафика, назначенного на данную VLAN, в порт входящего анализатора (Ingress analyzer). IPv6 IPM bridging enable:: Отметка чекбокса включает фильтрацию мультикастового трафика IPv6. На момент написания этой статьи данная функция не реализована. IPv6 IPM bridging mode:: Параметр выбирает режим фильтрации мультикастового трафика IPv6. На момент написания этой статьи данная функция не реализована. enable IPv4 unicast routing:: Отметка чекбокса включает маршрутизацию пакетов IPv4 для данной VLAN. На момент написания этой статьи данная функция не реализована. enable IPv6 unicast routing:: Отметка чекбокса включает маршрутизацию пакетов IPv6 для данной VLAN. На момент написания этой статьи данная функция не реализована. Loopback detection interval:: Если значение параметра не равно нулю, в каждый из портов, являющихся членами VLAN, с заданной параметром периодичностью передается специальный мультикастовый фрейм контроля петли. Если значение равно нулю, функция обнаружения петель для данной VLAN отключена. Допустимые значения - от 0 до 3600 секунд. Значение по умолчанию - 0 (обнаружение петель отключено). Loopback detection recovery:: Конфигурационный параметр определяет время, на которое блокируется порт при обнаружении петли. Если значение параметра равно нулю, действует время блокировки по умолчанию - 60 секунд. При ненулевом значении параметра время блокировки равно заданному значению. Допустимые значения - от 0 до 9999 секунд. Значение по умолчанию - 0 (порт блокируется на 60 секунд). Члены VLAN:: Группа чекбоксов определяет, какие порты коммутатора являются членами данной VLAN. Отметка чекбокса означает, что соответствующий порт является членом VLAN, отсутствие отметки - что порт не является членом VLAN. Тегировать пакеты:: Группа чекбоксов определяет, будут ли тегироваться пакеты данной VLAN, передаваемые в соответствующий порт. Если чекбокс отмечен, пакеты данной VLAN, передаваемые в соответствующий порт, ьудут иметь тег 802.1q. Если чекбокс не отмечен, пакеты данной VLAN передаются в порт не тегированными. === Диалог конфигурации порта анализатора === При нажатии кнопки "Analyzer configuration" открывается диалог настроек порта анализатора: [[Image(pic2.jpg)]] ==== Mirror packet to egress analyzer port ==== Когда коммутатор зеркалирует исходящий (egress) пакет в порт анализатора, пакет может быть передан в порт анализатора в том виде, как он передан в наблюдаемый порт, включая все произведенные модификации пакета (например добавление/удаление/изменение тега VLAN, изменение DSCP и т.п.), или в том виде, как пакет был принят коммутатором. - **as transmitted** - пакет передается в порт анализатора в том виде, как он был передан в подлежащий наблюдению порт, со всеми модификациями; - **as received** - пакет передается в порт анализатора в том виде, как он был принят коммутатором. ==== Ingress analyzer ==== Конфигурационные параметры в этой группе назначают порт коммутатора, к которому подключен анализатор входящего трафика (Ingress analyzer). Device:: идентификатор устройства, всегда должен иметь значение 0. Port:: номер порта коммутатора, к которому подключен анализатор. Допустимые значения - от 0 до 9 или 63 для порта CPU. ==== Ingress analyzer QoS ==== Конфигурационные параметры в этой группе определяют параметры качества обслуживания (Quality of Service, QoS), которые будут присвоены пакетам, зеркалируемым анализатору входящего трафика (Ingress analyzer). Traffic Class:: Класс трафика, назначаемый пакетам, зеркалируемым анализатору входящего трафика (Ingress analyzer). Drop Precedence:: Приоритет отбрасывания, назначаемый пакетам, зеркалируемым анализатору входящего трафика (Ingress analyzer). ==== Egress analyzer ==== Конфигурационные параметры в этой группе назначают порт коммутатора, к которому подключен анализатор исходящего трафика (Egress analyzer). Device:: идентификатор устройства, всегда должен иметь значение 0. Port:: номер порта коммутатора, к которому подключен анализатор. Допустимые значения - от 0 до 9 или 63 для порта CPU. ==== Egress analyzer QoS ==== Конфигурационные параметры в этой группе определяют параметры качества обслуживания (Quality of Service, QoS), которые будут присвоены пакетам, зеркалируемым анализатору исходящего трафика (Egress analyzer). Traffic Class:: Класс трафика, назначаемый пакетам, зеркалируемым анализатору исходящего трафика (Egress analyzer). Drop Precedence:: Приоритет отбрасывания, назначаемый пакетам, зеркалируемым анализатору исходящего трафика (Egress analyzer). === Диалог настройки порта === При нажатии иконки "Настройки порта" ([[Image(preferences-icon.png)]]) открывается диалог настроек порта: [[Image(pic3.jpg)]] Default VLAN ID:: Идентификатор VLAN, назначаемый входящим в порт пакетам по умолчанию. PVID assigniment mode:: Конфигурационный параметр определяет режим присваивания Default VLAN ID пакетам: - **PVID assigned to untagged packets** - Default VLAN ID присваивается только принятым пакетам, не имеющим 802.1q тега. Пакеты, имеющие 802.1q тег с ненулевым VLAN ID, получают VLAN ID, указанный в теге; - **PVID assigned to all packets** - Default VLAN ID присваивается всем принятым пакетам независимо от наличия у них 802.1q тега. PVID precedence:: Конфигурационный параметр определяет возможность изменить изначально присвоенный пакету Default VLAN ID: - **soft** - первоначально присвоенный пакету VLAN ID может быть изменен другими механизмами (например правилами политик); - **hard** - первоначально присвоенный пакету VLAN ID не может быть изменен. MRU:: Максимальный размер принимаемого кадра в октетах. Кадры, превышающие указанный размер, будут отбрасываться. Допустимые значения - от 18 до 16382. Значение по умолчанию - 1522. Port mode:: Конфигурационный параметр определяет режим работы порта при использовании технологии QinQ (вложенные теги). Может принимать следующие значения: - **Non-QinQ** - вложенные теги не используются; - **Access port** - порт доступа (пользовательский порт) в режиме QinQ (вложенных тегов). - **Core port** - порт сети оператора в режиме QinQ (вложенных тегов). Порт использует дополнительный VLAN тег. QoS default profile:: Номер QoS profile, присваиваемый пакетам, принимаемым через данный порт, по умолчанию (номер может быть изменен другими механизмами, например правилами политик). Допустимые значения - от 0 до 71. mirror to analizer:: Если чекбокс отмечен, все пакеты, принимаемые данным портом, миррорятся в порт входящего анализатора (Ingress analyzer port). Rate limit (egress):: Конфигурационный параметр задает ограничение скорости передаваемого в порт трафика в кбит/с. Допустимые значения - от 0 до 1000000. Значение 0 означает отсутствие ограничения трафика. Значение по умолчанию - 0. PCL-ID assignment mode:: Параметр определяет режим присваивания PCL-ID: - **according to the Incoming port** - в соответствии с номером входящего порта; - **according to the VLAN ID** - в соответствии с VLAN ID (не поддерживается). protocol-based VLAN:: Установка чекбокса включает механизм назначения идентификатора VLAN пакетам, принимаемым через данный порт, в зависимости от протокола (IEEE 802.1v). Значение по умолчанию - чекбокс не отмечен (механизм выключен). protocol-based QoS:: Установка чекбокса включает механизм назначения QoS profile пакетам, принимаемым через данный порт, в зависимости от протокола (IEEE 802.1v). Значение по умолчанию - чекбокс не отмечен (механизм выключен). policy enable:: Если чекбокс отмечен, для данного порта разрешено применение политик (Policy Engine). Значение по умолчанию - чекбокс не отмечен (использование политик отключено). ingress filtering:: Если чекбокс отмечен, для принимаемых портом пакетов выполняется проверка, является ли порт членом VLAN, присвоенного пакету в процессе классификации (см. "Первоначальное присваивание VLAN ID пакетам" выше). Если порт не является членом VLAN принятого пакета, принятый пакет отбрасывается. Если чекбокс не отмечен, проверка на принадлежность порта VLAN пакета не производится. Port QoS precedence:: Конфигурационный параметр определяет возможность изменить изначально присвоенный пакету QoS profile: - **soft** - первоначально присвоенный пакету QoS profile может быть изменен другими механизмами (например правилами политик); - **hard** - первоначально присвоенный пакету QoS profile не может быть изменен. QoS Trust mode:: Конфигурационный параметр определяет, как принятому пакету будет присвоен QoS profile: - **Untrust** - QoS profile присваивается в соответствии с значением параметра "QoS default profile". - **Trust L2** - Если принятый пакет VLAN-tagged или priority-tagged, QoS profile присваивается в соответствии со значением поля User Priority тега принятого пакета. Значение поля User Priority используется как индекс к таблице преобразования User Priority в QoS profile (**не поддерживается**: для любого User Priority пакет получает QoS profile 0). Если принятый пакет нетегированный, QoS profile присваивается в соответствии с значением параметра "QoS default profile". - **Trust L3** - Если принятый пакет является пакетом IP, QoS profile присваивается в соответствии со значением поля DSCP принятого пакета. Значение поля DSCP используется как индекс к таблице преобразования DSCP в QoS profile (см. описание вкладки "QoS профили"). Если принятый пакет не является пакетом IP, QoS profile присваивается в соответствии с значением параметра "QoS default profile". - **Trust L2+L3** - Если принятый пакет является пакетом IP, QoS profile присваивается как в варианте "Trust L3" (см. выше). Если принятый пакет не является пакетом IP, но имеет 802.1q тег, QoS profile присваивается как в варианте "Trust L2" (см. выше). В противном случае (если пакет не является пакетом IP и не тегирован) QoS profile присваивается в соответствии с значением параметра "QoS default profile". remap DSCP:: Если чекбокс отмечен, и параметр "QoS Trust mode" имеет значение "Trust L3" или "Trust L2+L3", для каждого принятого пакета IP выполняется ремаппинг (мутация) значения поля DSCP в соответствии с таблицей DSCP-to-DSCP mapping (**не поддерживается**: все элементы таблицы имеют значение 0). Если чекбокс не отмечен, ремаппинг DSCP принятого пакета не производится. modify DSCP:: Если чекбокс отмечен, значение поля DSCP принятых через данный порт пакетов IP будет модифицировано, когда пакет будет передаваться в другой порт коммутатора, в соответствии с QoS profile пакета. Соответствие QoS profile и нового значения DSCP устанавливается на вкладке "QoS профили" (см. описание ниже). Обратите внимание, что установленный при приеме пакета флаг модификации DSCP может быть впоследствии сброшен правилами политик (см. описание вкладки "Policy Rules" ниже). Если чекбокс не отмечен, модификация поля DSCP пакета при передаче в порт не производится. Обратите внимание, что флаг модификации DSCP может быть впоследствии установлен правилами политик. modify UP:: Если чекбокс отмечен, значение поля User Priority принятых через данный порт пакетов будет модифицировано, когда пакет будет передаваться в другой порт коммутатора как тегированный, в соответствии с QoS profile пакета. Соответствие QoS profile и значения User Priority устанавливается на вкладке "QoS профили" (см. описание ниже). Обратите внимание, что установленный при приеме пакета флаг модификации User Priority может быть впоследствии сброшен правилами политик (см. описание вкладки "Policy Rules" ниже). Если чекбокс не отмечен, модификация поля User Priority пакета при передаче в порт не производится. Обратите внимание, что флаг модификации User Priority может быть впоследствии установлен правилами политик. PUP:: Параметр устанавливает значение Port User Priority. Заданное этим параметром значение User Priority присваивается принятому пакету в случае, если пакет не имеет тега 802.1q. TD профиль:: Конфигурационный параметр назначает порту один из четырех Tail-Drop профилей, устанавливающих предельное количество буферов и дескрипторов пакетов, для каждой очереди передачи и Drop Precedence пакета, а также общий лимит буферов и дескрипторов для порта. Sched профиль:: Конфигурационный параметр назначает порту один из четырех Scheduling профилей, устанавливающих порядок обслуживания очередей передачи порта. Ingress rate limit:: Группа параметров, устанавливающих ограничение скорости приема пакетов в порт коммутатора. Чекбоксы "Limit unknown unicast", "Limit known unicast", "Limit multicast" и "Limit broadcast" определяют типы трафика, подлежащие ограничению скорости. Параметр "Limit" устанавливает величину ограничения скорости. При использовании функций **protocol-based VLAN** и/или **protocol-based QoS** необходимы дополнительные настройки, расположенные в таблице в нижней части диалога. Каждая строка таблицы соответствует протоколу, сконфигурированному на вкладке "Протоколы". Ниже описано назначения содержащихся в таблице конфигурационных параметров. Вкл.:: Если чекбокс отмечен, при приеме пакета соответствующего протокола выполняются настроенные в строке таблицы модификации VLAN/QoS принятого пакета. Если чекбокс не отмечен, настройки данной строки не применяются. VLAN cmd:: Если отмечен чекбокс "protocol-based VLAN", данный параметр определяет, VLAN ID каких пакетов будет модифицирован при совпадении протокола: - **do not change** - VLAN ID не будет модифицирован; - **untagged only** - будет модифицирован VLAN ID только нетегированных пакетов; - **tagged only** - будет модифицирован VLAN ID только тегированных пакетов; - **all packets** - будет модифицирован VLAN ID всех пакетов. VLAN ID:: Если отмечен чекбокс "protocol-based VLAN", данный параметр устанавливает VLAN ID, который будет присвоен пакетам данного протокола в соответствии с настройкой "VLAN cmd". VLAN ID Precedence:: Если чекбокс "hard" отмечен, присвоенный пакету VLAN ID не может быть впоследствии модифицирован другими механизмами коммутатора. Если чекбокс не отмечен (soft precedence), присвоенный пакету VLAN ID может быть впоследствии модифицирован другими механизмами коммутатора (например правилами политик). QoS profile cmd:: Если отмечен чекбокс "protocol-based QoS", данный параметр определяет, QoS profile каких пакетов будет модифицирован при совпадении протокола: - **do not change** - QoS profile не будет модифицирован; - **untagged only** - будет модифицирован QoS profile только нетегированных пакетов; - **tagged only** - будет модифицирован QoS profile только тегированных пакетов; - **all packets** - будет модифицирован QoS profile всех пакетов. QoS profile:: Если отмечен чекбокс "protocol-based QoS", данный параметр устанавливает QoS profile, который будет присвоен пакетам данного протокола в соответствии с настройкой "QoS profile cmd". QoS profile precedence:: Если чекбокс "hard" отмечен, присвоенный пакету QoS profile не может быть впоследствии модифицирован другими механизмами коммутатора. Если чекбокс не отмечен (soft precedence), присвоенный пакету QoS profile может быть впоследствии модифицирован другими механизмами коммутатора (например правилами политик). Modify DSCP:: Если чекбокс отмечен, значение поля DSCP принятых через данный порт пакетов IP данного протокола будет модифицировано, когда пакет будет передаваться в другой порт коммутатора - см. описание параметра "Modify DSCP" порта. Modify UP:: Если чекбокс отмечен, значение поля User Priority принятых через данный порт пакетов данного протокола будет модифицировано, когда пакет будет передаваться в другой порт коммутатора - см. описание параметра "Modify UP" порта. === Диалог настройки политик порта === При нажатии иконки "Настройки порта" ([[Image(policy-icon.png)]]) открывается диалог настроек политик порта (PCL configuration): [[Image(pic4.jpg)]] PCL configuration valid:: Отметка данного чекбокса разрешает коммутатору использование всех прочих настроек данного диалога. При снятии отметки коммутатор игнорирует настройки политик данного порта, то есть политики не применяются. enable lookup 0:: Усли чекбокс отмечен, разрешено выполнение прохода 0 поиска правил PCL. Lookup 0 IP key type:: Параметр определяет формат короткого (24-байт) ключа при выполнении прохода 0 поиска правил PCL. Lookup 0 PCL ID:: Параметр устанавливает значение PCL ID, используемое при выполнении прохода 0 поиска правил PCL. enable lookup 1:: Усли чекбокс отмечен, разрешено выполнение прохода 1 поиска правил PCL. Lookup 1 IP key type:: Параметр определяет формат короткого (24-байт) ключа при выполнении прохода 1 поиска правил PCL. Lookup 0 PCL ID:: Параметр устанавливает значение PCL ID, используемое при выполнении прохода 1 поиска правил PCL. Lookup 1 IPv6 short key type:: Параметр определяет формат короткого (24-байт) ключа при выполнении прохода 1 поиска правил PCL для пакетов IPv6. === Диалог глобальных настроек PCL === Диалог глобальных настроек PCL "Policy Engine Global Configuration" показан на следующем рисунке: [[Image(pic11.jpg)]] policy disable:: Шлобальный запрет использования политик. Если чекбокс установлен, политики не применяются коммутатором независимо от включения политик в настройках портов. Если чекбокс не отмечен, коммутатор применяет политики, если это разрешено настройками входящего порта. TCAM mode select:: Конфигурационный параметр определяет режим хранения условий PCL правил в ассоциативной памяти коммутатора (TCAM): - **statuc** - статический режим: правила PCL могут быть только одного типа - стандартные с коротким (short, narrow) 24-байтным ключом или расширенные с длинным (long, wide) 48-байтным ключом. Тип ключа определяется конфигурационным параметром "TCAM mode". - **dynamic** - динамический режим: в ассоциативной памяти коммутатора могут одновременно находиться как стандартные (standard), так и расширенные (extended) правила. Тип используемого ключа (короткий 24-байтный или длинный 48-байтный) определяется отдельно для каждого прохода поиска настройками политик конкретного порта. TCAM mode:: Если конфигураицонный параметр "TCAM mode select" имеет значение "static", параметр "TCAM mode" определяет, какого типа PCL правила содержатся в ассоциативной памяти коммутатора (TCAM): - **narrow** - TCAM содержит стандартные правила с узким (коротким) 24-байтным ключом; - **wide** - TCAM содержит расширенные правила с широким (длинным) 48-байтным ключом. PCL-ID Mode:: Параметр определяет, каким образом коммутатор выбирает конфигурацию PCL из таблицы конфигураций PCL: - **source port/trunk** - конфигурация выбирается по номеру порта или номеру транка; - **port/VLAN** - конфигурация выбирается по VLAN ID или номеру порта. IP length check mode:: Когда коммутатор определяет, является ли пакет валидным пакетом IP, одна из выполняемых проверок - что длина IP пакета, указанная в его заголовке, не превышает размер пакета. Результатом является поле ключа LCP "IP header OK". Данный конфигурационный параметр определяет режим этой проверки. - **ip_total_length**: [[BR]] для IPv4: ip_total_length <= (число байт пакета), [[BR]] для IPv6: ip_total_length + 40 <= (число байт пакета); - **ip_total_length + (L3 offset) + 4(CRC)**:[[BR]] для IPv4: ip_total_length + (L3 offset) + 4(CRC) <= (число байт пакета),[[BR]] для IPv6: ip_total_length + 40 + (L3 offset) + 4(CRC) <= (число байт пакета). Invalid user defined bytes:: Конфигурационный параметр определяет действие, выполняемое с пакетом в случае, когда ключ поиска правила PCL содержит определяемый пользователем байт, который не может быть извлечен из пакета, так как лежит за пределами первых 128 байт пакета.