Введение
Предварительные условия
Требования
Используемые компоненты
Условные обозначения
Терминология
Управление портом ввода
Коммутаторный модуль (PFC)
Настройка политики обслуживания для классификации или маркирования пакета в программном обеспечении Cisco IOS версий 12.1(12c)E и более поздних
Настройка политики обслуживания для классификации и маркирования пакета в программном обеспечении Cisco IOS более ранних версий, чем ПО Cisco IOS версии 12.1(12c)E
4 возможных источника внутреннего поля DSCP
Как выбирается внутреннее поле DSCP?
Управление исходящим портом
Примечания и ограничения
Стандартный ACL (список управления доступом)
Ограничения линейных плат WS-X61xx, WS-X6248-xx, WS-X6224-xx и WS-X6348-xx
Пакеты, поступающие из MSFC1 или MSFC2 в Supervisor Engine 1A/PFC
Обзор классификации
Мониторинг и проверка конфигурации
Проверка настройки порта
Проверка заданных классов
Проверка карты ограничения, применяемой к интерфейсу
Примеры
Случай 1: Маркировка на границе
Случай 2: Доверие в центральном узле с интерфейсами только Gigabit Ethernet
Дополнительные сведения
В этом документе описано, что происходит при маркировании и классификации пакета на различных стадиях в шасси Cisco Catalyst 6500/6000, использующем ПО Cisco IOSВ®. В этом документе описаны различные случаи и ограничения, а также короткие примеры.
В документе не представлен исчерпывающий список всех команд программного обеспечения Cisco IOS, связанных с качеством обслуживания или маркированием. Дополнительную информацию об интерфейсе командной строки (CLI) программного обеспечения Cisco IOS см. в документе Конфигурация качества обслуживания PFC.
Для данного документа нет особых требований.
Сведения, содержащиеся в данном документе, основаны на следующих версиях аппаратного обеспечения:
Коммутаторы Catalyst серии 6500/6000 с программным обеспечением Cisco IOS и использующие один из следующих модулей управления Supervisor Engine:
Модуль управления Supervisor Engine 1A с платой политик ограничений (PFC; Policy Feature Card) и платой функции многоуровневой коммутации (MSFC; Multilayer Switch Feature Card)
Модуль управления Supervisor Engine 1A с PFC и MSFC2
Модуль управления Supervisor Engine 2 с PFC2 и MSFC2
Данные для документа были получены в специально созданных лабораторных условиях. Все устройства, используемые в этом документе, были запущены в исходной (заданной по умолчанию) конфигурации. Если ваша сеть работает в реальных условиях, убедитесь, что вы понимаете потенциальное воздействие каждой команды.
Дополнительную информацию об используемых в документе обозначениях см. в документе Условные обозначения, используемые в технической документации Cisco.
Список использованной в документе терминологии:
Поле кода дифференцирования обслуживания (DSCP) - Первые шесть битов из байта вида услуг (ToS) в IP-заголовке. DSCP присутствует только в IP-пакете.
Примечание: Коммутатор также назначает каждому пакету, IP или не IP, внутреннее поле DSCP. Раздел 4 возможных источника внутреннего поля DSCP данного документа подробно описывает назначение внутреннего поля DSCP.
IP-приоритетность - Первые три бита из байта ToS в IP-заголовке.
Класс услуг (CoS) - Единственное поле, которое может быть использовано для маркирования пакета на уровне 2 (L2). Класс услуг (CoS) состоит из любых из этих трех битов:
Три бита IEEE 802.1p (dot1p) в теге IEEE 802.1Q (dot1q) для пакета dot1q.
Примечание: По умолчанию коммутаторы Cisco не помечают пакеты своей VLAN.
Три бита, именуемые "User Field" (полем пользователя) в заголовке межкоммутаторного канала (ISL) для пакета, инкапсулированного в ISL.
Примечание: Класс обслуживания (CoS) не присутствует внутри не-dot1q пакета или пакета ISL.
Классификация - Процесс, используемый для выделения трафика, который должен быть маркирован.
Маркировка - Процесс, устанавливающий в пакете значение DSCP уровня 3 (L3). Этот документ расширяет определение маркировки для того, чтобы включить установку значений CoS уровня L2.
Коммутаторы Catalyst серии 6500/6000 могут выполнять классификацию на основании следующих трех параметров:
DSCP
IP-приоритетность
CoS (класс обслуживания)
Коммутаторы Catalyst серий 6500/6000 выполняют классификацию и маркировку на различных стадиях. Вот что происходит в различных местах:
Входной порт (входная специализированная интегральная схема [ASIC])
Коммутаторный модуль (PFC)
Исходящий порт (выходная ASIC)
Основным параметром конфигурации входящего порта, относительно классификации, является состояние порта trust. Каждый порт системы имеет одно из следующих состояний trust:
trust-ip-precedence (доверие IP-приоритетности)
trust-dscp (доверие dscp)
trust-cos (доверие cos)
untrusted (нет доверия)
Чтобы установить или изменить состояние порта trust, введите данную команду ПО Cisco IOS в режиме interface (интерфейс):
6k(config-if)#mls qos trust ? cos cos keyword dscp dscp keyword ip-precedence ip-precedence keyword <cr>
Примечание. По умолчанию все порты находятся в состоянии untrusted при включенном QoS. Для включения QoS на Catalyst 6500 с программным обеспечением Cisco IOS, введите команду mls qos в режиме основной конфигурации.
На уровне входящего порта можно также установить на каждый порт CoS по умолчанию. Ниже приведен пример:
6k(config-if)#mls qos cos cos-value
Этот CoS по умолчанию применяется ко всем пакетам, таким как IP и межсетевой пакетный обмен (IPX; Internetwork Packet Exchange). Можно также применить CoS по умолчанию к любому физическому порту.
Если порт находится в состоянии untrusted, отметьте кадр CoS по умолчанию для порта и передайте заголовок на модуль коммутатора (PFC). Если порт настроен на одно из состояний trust, введите один из следующих параметров:
Если кадр не имеет полученного CoS (dot1q или ISL), примените CoS по умолчанию для порта.
Для кадров dot1q and ISL не изменяйте CoS.
Затем передайте кадр на модуль коммутатора.
В данном примере представлена входящая классификация и маркировка. В примере показан способ назначения внутреннего CoS для каждого кадра:
Примечание: Как показывает пример, каждому кадру назначается внутренний CoS. Назначение основано на полученном CoS или на CoS порта, который установлен по умолчанию. Внутренний CoS включает кадры без тега, которые не имеют никаких реальных CoS. Внутренний CoS записывается в специальный заголовок пакета, который называется заголовок шины данных, и передается в коммутаторный модуль через эту шину данных.
При попадании заголовка в коммутаторный модуль, улучшенная логика распознавания адресов (EARL) этого модуля назначает каждому кадру внутреннее поле DSCP. Это внутреннее поле DSCP является внутренним приоритетом назначаемым кадру с помощью PFC, когда кадр проходит через коммутатор. Это не поле DSCP в IP-заголовке версии 4 (IPv4). Внутреннее поле DSCP является результатом установленных настроек CoS или ToS и необходимо для восстановления CoS или ToS, когда кадр выходит из коммутатора. Это внутреннее поле DSCP назначается для всех кадров (даже не IP-кадров), коммутируемых или маршрутируемых PFC.
В разделе описано назначение интерфейсу политики обслуживания для выполнения маркировки. В разделе также описана конечная настройка внутреннего поля DSCP, которое зависит от состояния trust порта и применяемой политики обслуживания.
Выполните следующие действия, чтобы настроить политику обслуживания:
Настройте список управления доступом (ACL) для определения трафика, который необходимо рассмотреть.
Список управления доступом (ACL) может быть пронумерован или иметь имя, а Catalyst 6500/6000 поддерживает расширенный список ACL. Введите команду программного обеспечения Cisco IOS access-list xxx, как показано в примере:
(config)#access-list 101 permit ip any host 10.1.1.1
Установите класс трафика (карта класса) для нахождения трафика в соответствии с определенным списком ACL или полученным полем DSCP.
Введите команду программного обеспечения Cisco IOS class-map. QoS PFC не поддерживает более одного оператора совпадения в каждой карте класса. Кроме этого, QoS PFC поддерживает только эти операторы совпадения:
match ip access-group
match ip dscp
match ip precedence
match protocol
Примечание. Команда match protocol активирует использование сетевого приложения распознавания (NBAR; Network Based Application Recognition) для нахождения трафика.
Примечание. Из всех параметров, поддерживаются и функционируют только операторы match ip dscp и match ip precedence. Тем не менее эти операторы не помогают выполнить маркирование или классификацию пакетов. Эти операторы можно использовать, например, для ограничения всех пакетов с определенным полем DSCP. Тем не менее, эта процедура не рассматривается в этом документе.
(config)#class-map class-name (config-cmap)#match {access-group | input-interface | ip dscp}
Примечание: В этом примере представлены только три варианта команды match. Но, используя ввод этой команды, можно настроить множество других вариантов.
Примечание: Один из параметров команды match применяется как критерий совпадения, а остальные параметры остаются в соответствии с входящими пакетами.
Ниже приведен пример:
class-map match-any TEST match access-group 101 class-map match-all TEST2 match ip precedence 6
Настройте карту ограничения для того, чтобы соотнести стратегию с предварительно определенным вами классом.
Карта ограничения содержит:
Имя
Набор операторов класса
Для каждого оператора класса – действие, применяемое к этом классу
Поддерживаемые действия для QoS в PFC1 и PFC2:
trust dscp (доверие dscp)
trust ip precedence (доверие IP-приоритету)
trust cos (доверие CoS)
set ip dscp в программном обеспечении Cisco IOS версии 12.1(12c)E1 и более поздних
set ip precedence в программном обеспечении Cisco IOS версии 12.1(12c)E1 и более поздних
police (ограничение)
Примечание. Эта процедура не рассматривается в данном документе.
(config)#policy-map policy-name (config-pmap)#class class-name (config-pmap-c)#{police | set ip dscp}
Примечание. В этом примере представлены только два параметра, но команда (config-pmap-c)# позволяет настраивать множество других параметров.
Ниже приведен пример:
policy-map test_policy class TEST trust ip precedence class TEST2 set ip dscp 16
Настройте входные данные политики обслуживания для того, чтобы соотнести предварительно определенную карту ограничения с одним или более интерфейсами.
Примечание. Политику обслуживания можно привязать к физическому, коммутируемому виртуальному интерфейсу или интерфейсу VLAN. При связывании стратегии обслуживания с VLAN-интерфейсом единственными портами, использующими эту стратегию, являются те, которые принадлежат интерфейсу VLAN и настроены на качество обслуживания (QoS), основанное на VLAN. Если порт не настроен на QoS, основанное на VLAN, порт использует QoS по умолчанию, и смотрит на стратегию обслуживания, которая связана с физическим интерфейсом.
В этом примере стратегия обслуживания test_policy применяется к порту Gigabit Ethernet 1/1:
(config) interface gigabitethernet 1/1 (config-if)#service-policy input test_policy
В данном примере стратегия обслуживания test_policy применяется ко всем портам в интерфейсе VLAN 10, которые имеют основанные на VLAN конфигурации с точки зрения качества обслуживания:
(config) interface gigabitethernet 1/2 (config-if)#switchport mode access (config-if)#switchport access vlan 10 (config-if)#mls qos vlan-based (config-if)#exit (config-if)#interface vlan 10 (config-if)#service-policy input test_policy
Примечание. Этапы 2 и 3 данной процедуры можно совмещать, если пропустить некоторые определения класса и непосредственно связать ACL (список управления доступом) с определением карты ограничения. В этом примере, где класс TEST police не был определен до настройки карты ограничения, класс определяется картой ограничения.
(config)#policy-map policy-name (config-pmap)#class class_name {access-group acl_index_or_name | dscp dscp_1 [dscp_2 [dscp_N]] | precedence ipp_1 [ipp_2 [ipp_N]]} !--- Примечание: эта команда должна вводиться в одной строке. policy-map TEST class TEST police access-group 101
В более ранних версиях программного обеспечения Cisco IOS (более ранних, чем 12.1(12c)E1), нельзя использовать процедуры set ip dscp или set ip precedence в карте ограничения. Таким образом, единственный способ выполнить маркировку определенного трафика, определяемого классом – это настроить ограничитель на очень высокую скорость. Эта скорость, например, должна представлять собой линейную скорость порта или быть достаточно высокой для разрешения трафику достичь ограничителя. Затем необходимо использовать set-dscp-transmit xx в качестве согласованной процедуры. Для настройки этой конфигурации выполните следующие действия:
Настройте список управления доступом (ACL) для определения трафика, который необходимо рассмотреть.
Список управления доступом (ACL) может быть пронумерован или иметь имя, а Catalyst 6500/6000 поддерживает расширенный список ACL. Введите команду программного обеспечения Cisco IOS access-list xxx, как показано на рисунке:
(config)#access-list 101 permit ip any host 10.1.1.1
Установите класс трафика (карта класса) для нахождения трафика в соответствии с определенным списком ACL или полученным полем DSCP.
Введите команду программного обеспечения Cisco IOS class-map. QoS PFC не поддерживает более одного выражения совпадения в каждой карте класса. Кроме этого, QoS PFC поддерживает только эти операторы совпадения:
match ip access-group
match ip dscp
match ip precedence
match protocol
Примечание. Команда match protocol активирует использование NBAR для нахождения трафика.
Примечание. Из всех операторов, поддерживаются и функционируют только два – match ip dscp и match ip precedence. Тем не менее эти операторы не помогают выполнить маркирование или классификацию пакетов. Эти операторы можно использовать, например, для ограничения всех пакетов с определенным полем DSCP. Однако, эта процедура не рассматривается в этом документе.
(config)#class-map class-name (config-cmap)#match {access-group | input-interface | ip dscp}
Примечание: В этом примере представлены только три варианта команды match. Но, используя ввод этой команды, можно настроить множество других вариантов.
Ниже приведен пример:
class-map match-any TEST match access-group 101 class-map match-all TEST2 match ip precedence 6
Настройте карту ограничения для того, чтобы соотнести стратегию с предварительно определенным вами классом.
Карта ограничения содержит:
Имя
Набор операторов класса
Для каждого оператора класса – действие, применяемое к этом классу
Поддерживаемые действия для QoS в PFC1 или PFC2:
trust dscp (доверие dscp)
trust ip precedence (доверие IP-приоритету)
trust cos (доверие CoS)
police (ограничение)
Необходимо использовать оператор police, так как процедуры set ip dscp и set ip precedence не поддерживаются. Для того, чтобы не управлять трафиком, а только его пометить, используйте ограничитель, определенный для разрешения трафика. То есть, настройте ограничитель для большой скорости и пиков нагрузки. Например, можно настроить ограничитель с максимально допустимой скоростью и пиками нагрузки. Ниже приведен пример:
policy-map test_policy class TEST trust ip precedence class TEST2 police 4000000000 31250000 conform-action set-dscp-transmit 16 exceed-action policed-dscp-transmit
Настройте входные данные стратегии обслуживания для того, чтобы соотнести предварительно определенную карту ограничения с одним или более интерфейсами.
Примечание: Стратегию обслуживания можно привязать к физическому, коммутируемому виртуальному (SVI) или VLAN-интерфейсу. При связывании стратегии обслуживания с VLAN-интерфейсом единственными портами, использующими эту стратегию, являются те, которые принадлежат интерфейсу VLAN и настроены на качество обслуживания (QoS), основанное на VLAN. Если порт не настроен на QoS, основанное на VLAN, порт использует QoS по умолчанию, и смотрит на стратегию обслуживания, которая связана с физическим интерфейсом.
В этом примере стратегия обслуживания test_policy применяется к порту Gigabit Ethernet 1/1:
(config) interface gigabitethernet 1/1 (config-if)#service-policy input test_policy
В данном примере стратегия обслуживания test_policy применяется ко всем портам в интерфейсе VLAN 10, которые имеют основанные на VLAN конфигурации с точки зрения качества обслуживания:
(config) interface gigabitethernet 1/2 (config-if)#switchport mode access (config-if)#switchport access vlan 10 (config-if)#mls qos vlan-based (config-if)#exit (config-if)#interface vlan 10 (config-if)#service-policy input test_policy
Внутреннее поле DSCP может быть определено следующими факторами:
Наличием полученного значения поля DSCP, установленного до того, как кадр вошел в коммутатор
В качестве примера – trust dscp.
Полученными битами IP-приоритетности, уже установленными в заголовке IPv4
Поскольку имеется только 64 значения DSCP и только 8 значений IP-приоритетности, администратор настраивает соответствие, которое коммутатор использует для определения поля DSCP. Кроме этого, соответствие настроено по умолчанию, на случай, если администратор не установит соответствие. В качестве примера – trust ip precedence.
Полученные биты CoS, уже установленные до входа кадра в коммутатор и хранящиеся в заголовке шины данных, или при отсутствии CoS во входящем кадре, из стандартного CoS входящего порта
Как и в случае с IP-приоритетностью, максимальное количество значений CoS равно восьми, при этом каждое из них должно быть соотнесено с одним из 64 значений DSCP. Администратор может настроить эту карту, или коммутатор может использовать карту, уже установленную по умолчанию.
Стратегия обслуживания может задать внутреннему полю DSCP определенное значение.
Для номеров 2 и 3 в этом списке статическое маркирование установлено по умолчанию следующим образом:
Для установления соответствия CoS - DSCP, поле DSCP считается равным CoS, умноженному на восемь.
Для установления соответствия IP precedence - DSCP, поле DSCP считается равным IP precedence, умноженному на восемь.
Для замены или проверки статического соответствия можно ввести следующие команды:
mls qos map ip-prec-dscp dscp_1 dscp_2 dscp_3 dscp_4 dscp_5 dscp_6 dscp_7 dscp_8
mls qos map cos-dscp dscp_1 dscp_2 dscp_3 dscp_4 dscp_5 dscp_6 dscp_7 dscp_8
Первое значение DSCP, соответствующее согласованию с CoS (или IP-приоритетностью), равно 0. Второе значение для CoS (или IP-приоритетности) равно 1 и так далее. Например, эта команда меняет преобразование таким образом, что значение CoS, равное 0, соответствует нулевому значению DSCP, а значение CoS, равное 1 – соответствует значению DSCP, равному 8, и т. д.
Cat65(config)#mls qos map cos-dscp 0 8 16 26 32 46 48 54 Cat65#show mls qos maps CoS-dscp map: cos: 0 1 2 3 4 5 6 7 ----------------------------------- dscp: 0 8 16 26 32 46 48 54
В основе выбора внутреннего поля DSCP лежат следующие параметры:
Карта ограничения QoS применяется к пакету
Карта ограничения QoS определяют следующие правила:
Если ни одна стратегия обслуживания не связана с входящим портом или VLAN, следует использовать настройки по умолчанию.
Примечание. Эта стандартное действие устанавливает внутреннее поле DSCP в 0.
Если стратегия обслуживания связана с входящим портом или VLAN, или если трафик соответствует одному из классов, определяемых стратегией, следует использовать эту запись.
Если стратегия обслуживания связана с входящим портом или VLAN, или если трафик не соответствует никакому из классов, определяемых стратегией, следует использовать установки по умолчанию.
состояние порта trust и действие карты ограничения
Когда порт имеет определенное состояние trust и карту стратегии с определенной маркировкой (и одновременно действие "trusting"), применяются следующие правила:
Команда set ip dscp или поле DSCP, определяемое для каждого ограничителя в карте ограничения, применяются только в том случае, если порт остался в состоянии untrusted.
Если порт находится в состоянии trust, то такое состояние trust используется для получения внутреннего поля DSCP. Приоритет отдается состоянию trust, а не команде set ip dscp.
Команда trust xx в карте ограничения имеет преимущество над состоянием trust порта.
Если порт и стратегия имеют разные состояния trust, рассматриваться будет состояние trust, полученное от карты ограничения.
Следовательно, внутренний DSCP зависит от следующих факторов:
Состояния trust порта
Политики обслуживания (с использованием списка управления доступом (ACL)), связанной с портом
Карты ограничения по умолчанию
Примечание. По умолчанию, DSCP устанавливается в нулевое значение.
Основанный на VLAN или на порту по отношению к списку управления доступом
На схеме изображено изменение внутреннего поля DSCP на основании данных конфигураций:
Параметр PFC также может выполнять функцию ограничения. В конечном итоге это может сказаться на понижении значения внутреннего поля DSCP. Более подробную информацию об ограничении см. в документе Ограничение QoS в коммутаторах Catalyst серий 6500/6000.
Изменение классификации на уровне исходящего порта невозможно. Тем не менее, можно маркировать пакет, учитывая следующие правила:
Если имеется пакет IPv4, скопируйте внутреннее поле DSCP, которое коммутаторный модуль назначил на байт ToS заголовка IPv4.
Если исходящий порт настроен на ISL или инкапсуляцию dot1q, используйте CoS, полученный из внутреннего поля DSCP. Скопируйте CoS в ISL или в кадр dot1q.
Примечание. CoS получен из внутреннего поля DSCP в соответствии со статикой. Выполните следующую команду для настройки статики:
Router(config)#mls qos map dscp-cos dscp1 [dscp2 [dscp3 [dscp4 [dscp5 [dscp6 [dscp7 [dscp8]]]]]]] to cos_value !--- Примечание: эта команда должна вводиться в одной строке.
Стандартные конфигурации появляются. По умолчанию CoS является целой частью поля DSCP, деленного на восемь. Выполните следующую команду для просмотра и проверки согласования.
cat6k#show mls qos maps ... Dscp-cos map: (dscp= d1d2) d1 : d2 0 1 2 3 4 5 6 7 8 9 ------------------------------------- 0 : 00 00 00 00 00 00 00 00 01 01 1 : 01 01 01 01 01 01 02 02 02 02 2 : 02 02 02 02 03 03 03 03 03 03 3 : 03 03 04 04 04 04 04 04 04 04 4 : 05 05 05 05 05 05 05 05 06 06 5 : 06 06 06 06 06 06 07 07 07 07 6 : 07 07 07 07
Чтобы изменить данное согласование, введите следующую команду конфигурации в нормальном режиме конфигурации:
mls qos map dscp-cos 0 1 2 3 4 5 6 7 to 0 mls qos map dscp-cos 8 9 10 11 12 13 14 15 to 1 mls qos map dscp-cos 16 17 18 19 20 21 22 23 to 2 ...
После того, как поле DSCP записано в IP-заголовок, а CoS получен из поля DSCP, пакет отправляется в одну из очередей вывода для планирования вывода на основе CoS. Это происходит даже если пакет не является dot1q или ISL. Дополнительную информацию о построении очереди вывода см. в документе Планирование вывода на основе QoS для коммутаторов Catalyst серии 6500/6000 с программным обеспечением системы Cisco IOS.
На схеме изображен процесс обработки пакета относительно маркировки в исходящем порту:
Стандартный ACL применяет "dscp 0" в качестве ключевого слова классификации. Весь трафик, входящий в коммутатор через порт без доверия и не соответствующий записи в политике обслуживания, маркируются нулевым значением поля DSCP в случае, если QoS включено. В настоящее время нельзя изменить стандартный ACL в программном обеспечении Cisco IOS.
Примечание. В программном обеспечении Catalyst OS (CatOS) можно изменять и настраивать это заданное по умолчанию поведение. Дополнительную информацию см. в разделе Стандартный ACL документа Классификация и маркировка QoS в коммутаторах Catalyst серии 6500/6000 с программным обеспечением CatOS.
В данном разделе рассматриваются только следующие линейные карты:
WS-X6224-100FX-MT: Catalyst 6000 24-Port 100 FX Multimode
WS-X6248-RJ-45: Модуль Catalyst 6000 48-Port 10/100 RJ-45
WS-X6248-TEL: Модуль Catalyst 6000 48-Port 10/100 Telco
WS-X6248A-RJ-45: Catalyst 6000 48-Port 10/100, Enhanced QoS (улучшенное качество обслуживания)
WS-X6248A-TEL: Catalyst 6000 48-Port 10/100, Enhanced QoS (улучшенное качество обслуживания)
WS-X6324-100FX-MM: Catalyst 6000 24-Port 100 FX, Enhanced QoS (улучшенное качество обслуживания), MT
WS-X6324-100FX-SM: Catalyst 6000 24-Port 100 FX, Enhanced QoS (улучшенное качество обслуживания), MT
WS-X6348-RJ-45: Catalyst 6000 48-Port 10/100, Enhanced QoS (улучшенное качество обслуживания)
WS-X6348-RJ21V: Catalyst 6000 48-Port 10/100, Inline Power (питание по линии)
WS-X6348-RJ45V: Catalyst 6000 48-Port 10/100, повышенное качество обслуживания, питание по линиип
WS-X6148-RJ21V: Catalyst 6500 48-Port 10/100, Inline Power (питание по линии)
WS-X6148-RJ45V: Catalyst 6500 48-Port 10/100, Inline Power (питание по линии)
У этих линейных карт имеется ограничение. На уровне порта невозможно настроить состояние trust, используя любое из следующих ключевых слов:
trust-dscp (доверие dscp)
trust–ipprec (доверие ipprec)
trust-cos (доверие cos)
Можно использовать только состояние untrusted. Любая попытка настроить состояние trust на одном из этих портов приводит к появлению следующих предупреждающих сообщений.
Tank(config-if)#mls qos trust ? extend extend keyword Tank(config-if)#mls qos trust % Incomplete command. Tank(config-if)#mls qos trust cos ^ % Invalid input detected at '^' marker. Tank(config-if)#mls qos trust ip-pre ^ % Invalid input detected at '^' marker.
Чтобы на такую линейную плату поступил кадр с доверием, необходимо связать политику обслуживания с портом или VLAN. Используйте способ в разделе Случай 1: Маркировка на границе данного документа.
Все пакеты, поступающие из MSFC1 или MSFC2, имеют нулевое значение CoS. Этот пакет может как маршрутироваться программным обеспечением, так и быть сгенерированным MSFC. Это является ограничением PFC, так как это приводит к сбросу CoS всех пакетов, поступающих с MSFC. DSCP и IP-приоритетность все еще поддерживаются. PFC2 не имеет такого ограничения. Исходящий класс обслуживания (CoS) PFC2 идентичен IP-приоритетности пакета.
В таблицах данного раздела показаны DSCP, которые являются результатом данных классификаций:
Состояние trust входящего порта
Ключевое слово классификации в пределах применяемого ACL (списка управления доступом)
В данной таблице представлены общие итоги для всех портов, кроме WS-X62xx и WS-X63xx:
Ключевое слово карты ограничения |
set-ip-dscp xx or set-dscp-transmit xx |
trust-dscp |
trust-ipprec |
trust-cos |
---|---|---|---|---|
Состояние Trust (доверия) порта |
||||
untrusted (нет доверия) |
xx1 |
Принятый2 DSCP |
Получено из принятого ipprec |
0 |
trust-dscp |
Принятый DSCP |
Принятый DSCP |
Получено из принятого ipprec |
Получено из принятого CoS или CoS порта |
trust-ipprec |
Получено из принятого ipprec |
Принятый DSCP |
Получено из принятого ipprec |
Получено из принятого CoS или CoS порта |
trust-cos |
Получено из принятого CoS или CoS порта |
Принятый DSCP |
Получено из принятого ipprec |
Получено из принятого CoS или CoS порта |
1 Это единственный способ выполнения новой маркировки кадра.
2 Rx = принятый
В следующей таблице представлена сводка для портов WS-X61xx, WS-X62xx, and WS-X63xx:
Ключевое слово карты ограничения |
set-ip-dscp xx или set-dscp-transmit xx |
trust-dscp |
trust-ipprec |
trust-cos |
---|---|---|---|---|
Состояние Trust (доверия) порта |
||||
untrusted (нет доверия) |
xx |
Принятый DSCP |
Получено из принятого ipprec |
0 |
trust-dscp |
Не поддерживается |
Не поддерживается |
Не поддерживается |
Не поддерживается |
trust-ipprec |
Не поддерживается |
Не поддерживается |
Не поддерживается |
Не поддерживается |
trust-cos |
Не поддерживается |
Не поддерживается |
Не поддерживается |
Не поддерживается |
Введите команду show queuing interface идентификатор интерфейса для проверки настроек и конфигурации порта.
Наряду с другими параметрами, при выполнении данной команды можно выполнить проверку следующих параметров классификации:
На основе порта или VLAN
Тип trust порта
ACL (список управления доступом), связанный с портом
Ниже приведен пример выходных данных этой команды. Важные поля, имеющие отношение к классификации, выделены жирным шрифтом:
6500#show queuing interface gigabitethernet 3/2 Interface GigabitEthernet3/2 queuing strategy: Weighted Round-Robin Port QoS is enabled Trust state: trust COS Default COS is 0 Transmit queues [type = 1p2q2t]:
Выходные данные показывают, что конфигурация этого конкретного порта имеет trust cos на уровне порта. Кроме этого, значение класса обслуживания (CoS) порта по умолчанию равняется 0.
Введите команду show class-map для проверки заданных классов. Ниже приведен пример:
Boris#show class-map Class Map match-all test (id 3) Match access-group 112 Class Map match-any class-default (id 0) Match any Class Map match-all voice (id 4)
Введите следующие команды для проверки карты ограничения, применяемой и имеющей место в предыдущих командах:
show mls qos ip interface идентификатор интерфейса
show policy-map interface идентификатор интерфейса
Ниже представлен пример выходных данных, полученных при выполнении данных команд:
Boris#show mls qos ip gigabitethernet 1/1 [In] Default. [Out] Default. QoS Summary [IP]: (* - shared aggregates, Mod - switch module) Int Mod Dir Class-map DSCP AgId Trust FlId AgForward-Pk AgPoliced-k ---------------------------------------------------------------------- Gi1/1 1 In TEST 0 0* No 0 1242120099 0
Примечание. Можно просмотреть на поля, имеющие отношение к классификации:
Class-map - сообщает о том, какой класс прикреплен к политике обслуживания, которая, в свою очередь, связана с этим интерфейсом.
Trust - сообщает о том, будет ли действие стратегии в этом классе содержать команду trust и чему именно доверяют в этом классе.
DSCP - Сообщает DSCP, передаваемый для пакетов, удовлетворяющих этому классу.
Tank#show policy-map interface fastethernet 4/4 FastEthernet4/4 service-policy input: TEST_aggre2 class-map: Test_marking (match-all) 27315332 packets 5 minute offered rate 25726 pps match: access-group 101 police : 10000000 bps 10000 limit 10000 extended limit aggregate-forwarded 20155529 packets action: transmit exceeded 7159803 packets action: drop aggregate-forward 19498 pps exceed 6926 pps
В данном разделе содержаться примеры наиболее распространенных конфигураций, использующихся в сетях.
Предположим, что вы настраиваете коммутатор Catalyst 6000, используемый в качестве коммутатора доступа. Большая часть пользователей подключается к слоту 2 коммутатора, в котором установлена линейная плата WS-X6348 (10/100 Мбит/с). Пользователи могут отправлять:
Обычный поток данных. Данный вид трафик всегда во VLAN 100 и требует присвоения DSCP со значением 0.
Голосовой трафик с IP-телефонов. Данный вид трафика всегда в дополнительной голосовой VLAN 101 требует присвоения DSCP со значением 46.
Трафик критически важных приложений. Данный трафик также поступает во VLAN 100 и направляется на сервер 10.10.10.20. Данный трафик требует присвоения DSCP со значением 32.
Приложение не помечает какой-либо из этих видов трафика. Несмотря на это оставьте порт в состоянии untrusted и настройте специальный ACL (список контроля доступа) для классификации трафика. Один ACL применяется для VLAN 100 и другой для VLAN 101. Также необходимо настроить все порты, как основанные на VLAN. Ниже приведен пример конфигурации и результат:
Boris(config)#mls qos Boris(config)#interface range fastethernet 2/1-48 Boris(config-if)#mls qos vlan-based Boris(config-if)#exit Boris(config)#ip access-list extended Mission_critical Boris(config-ext-nacl)#permit ip any host 10.10.10.20 Boris(config)#ip access-list extended Voice_traffic Boris(config-ext-nacl)#permit ip any any Boris(config)#class-map voice Boris(config-cmap)#match access-group Voice_traffic Boris(config)#class-map Critical Boris(config-cmap)#match access-group Mission_critical Boris(config)#policy-map Voice_vlan Boris(config-pmap)#class voice Boris(config-pmap-c)#set ip dscp 46 Boris(config)#policy-map Data_vlan Boris(config-pmap)#class Critical Boris(config-pmap-c)#set ip dscp 32 Boris(config)#interface vlan 100 Boris(config-if)#service-policy input Data_vlan Boris(config)#interface vlan 101 Boris(config-if)#service-policy input Voice_vlan
Предположим, что вы настроили центральный Catalyst 6000 только с интерфейсом Gigabit Ethernet в слоте 1 и 2. Предварительно трафик был корректно помечен коммутаторами доступа. Вам не нужно изменять метки. Несмотря на это, необходимо убедиться, что центральный коммутатор доверяет входящим DSCP. Данный случай является более легким, т.к. все порты отмечены как trust-dscp, что должно быть достаточным:
6k(config)#mls qos 6k(config)#interface range gigabitethernet 1/1-2 , gigabitethernet 2/1-2 6k(config-if)#mls qos trust dscp