Коммутаторы : ??????????? Cisco Catalyst ????? 3750

Примеры настройки функций качества обслуживания (QoS) на коммутаторах Cisco Catalyst 3750

7 апреля 2008 - Перевод, выполненный профессиональным переводчиком
Другие версии: PDF-версия:pdf | Машинный перевод (28 июля 2013) | Английский (17 мая 2007) | Отзыв

Содержание

Введение
Предварительные условия
     Требования
     Используемые компоненты
     Условные обозначения
Обзор функций обеспечения качества обслуживания
     Коммутатор Cisco Catalyst 3750 без контроля качества обслуживания
     Функции средств контроля качества (QoS) обслуживания коммутатора Cisco Catalyst 3750
Функции обеспечения качества обслуживания входящих данных
     Конфигурации по умолчанию для средств обеспечения качества обслуживания
     Классификация и маркирование
     Ограничение трафика (Policing)
     Управление и предотвращение перегрузок
Функции обеспечения качества обслуживания (QoS) входящего трафика
     Команды управления качеством (QoS) для исходящей очереди
     Конфигурация по умолчанию
     Обработка очереди, сброс пакетов и планирование
Связанные обсуждения сообщества поддержки Cisco
Дополнительные сведения

Введение

Коммутаторы Cisco Catalyst 3750 поддерживают различные функции обеспечения качества обслуживания, например классификацию, маркирование, планирование и ограничение трафика, а также формирование очередей. В документе разъясняется работа этих функций обеспечения качества обслуживания (QoS) и приводятся примеры их настройки.

Предварительные условия

Требования

Cisco рекомендует ознакомиться с правилами Настройки функций обеспечения качества обслуживания (QoS).

Используемые компоненты

Сведения, содержащиеся в данных документах, касаются следующих версий программного и аппаратного обеспечения:

  • Коммутатор Cisco Catalyst 3750 — WS-C3750-24TS

  • Cisco IOS® Software Release 12.2(35)SE2

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

Условные обозначения

Более подробную информацию о применяемых в документе обозначениях см. в документе Cisco Technical Tips Conventions (Условные обозначения, используемые в технической документации Cisco).

Обзор функций обеспечения качества обслуживания

При помощи функций контроля качества (QoS) можно обеспечить предпочитаемые уровни обработки определенным типам трафика за счет других типов. Типы трафика могут дифференцироваться при помощи меток качества (QoS labels). Две наиболее часто используемые метки качества обслуживания IP-заголовка 3-го уровня — это поля "Приоритет IP-пакета" и "DSCP". Метка контроля качества обслуживания заголовка кадра уровня 2 называется классом обслуживания (CoS). Средства обеспечения качества обслуживания коммутатора Catalyst могут предоставлять приоритетный уровень обслуживания на основе меток контроля качества уровня 3 или уровня 2. В этом документе приведены несколько примеров, которые могут дать представление об использовании меток контроля качества уровня 2 и уровня 3 в коммутаторах Cisco Catalyst.

cat3750-qos-config1.gif

Коммутатор Cisco Catalyst 3750 без контроля качества обслуживания

По умолчанию, в коммутаторах Catalyst 3750 контроль качества обслуживания отключен. При отключенном контроле качества обслуживания, все кадры и пакеты передаются через коммутатор без изменений. Например, если кадр класса обслуживания 5 и пакетом внутри кадра со значением DSCP, равным EF передается коммутатору, метки класса обслуживания и DSCP не изменяются. Данные отправляются от коммутатора с теми же значениями класса обслуживания и DSCP, что и ранее. Весь трафик, включая голосовой, доставляется с самым высоким приоритетом.

Switch#show mls qos
QoS is disabled
QoS ip packet dscp rewrite is enabled
!--- Even then it says QoS ip packet dscp rewrite is enabled,
!--- the switch does not alter the DSCP label on the packets when the QoS is disabled.

			

Функции средств контроля качества (QoS) обслуживания коммутатора Cisco Catalyst 3750

После включения режима контроля качества (QoS) обслуживания для коммутатора серии 3750, некоторые функции контроля качества входной и выходной сети включаются по умолчанию. На этой диаграмме показано высокоуровневое представление архитектуры системы обеспечения качества обслуживания коммутатора:

cat3750-qos-config2.gif

Сводные материалы пунктов (по диаграмме):

  • Функции обеспечения качества обслуживания входящего трафика, например классификация, маркирование и ограничение трафика, могут быть настроены отдельно для каждого порта.

  • Таблицы структур входящих данных и постановку входящих данных в очередь можно настроить для системы в целом. Их нельзя настроить отдельно для каждого порта.

  • SRR для объектов очереди входящих данных может быть настроен для всей системы.

  • Пропускная способность стека коммутаторов в кольцевой топологии зависит от типа и свойств кабельных соединений между отдельными узлами. Если стек подключен и настроен на полную пропускную способность, то общая пропускная способность составит 32 Гбит/с. Эта пропускная способность разделяется всеми коммутаторами стека.

  • Таблицы структур исходящих данных и очереди исходящих данных можно настроить для всей системы. Можно определить два набора настроек очереди и применить к порту любой из них.

  • SRR для исходящей очереди можно настроить для каждого порта отдельно.

Функции обеспечения качества обслуживания входящих данных

В этом разделе описаны различные способы настройки средств качества обслуживания. В этом разделе рассматриваются следующие темы:

Конфигурации по умолчанию для средств обеспечения качества обслуживания

Вот как коммутатор по умолчанию обрабатывает кадры после включения средств обеспечения качества обслуживания:

  • Кадр передается порту коммутатора, и он непомечен (что означает, что порт — это порт доступа и кадр принимается коммутатором, не обладая при этом инкапсуляциями видов ISL или dot1q).

  • Коммутатор выполняет инкапсуляцию кадра методом dot1q (игнорируя ISL, поскольку dot1q используется по умолчанию для всех новых коммутаторов).

  • В состав тега кадра dot1q входят три бита, которые называются доступными битами приоритета 802.1p или, иначе, классом обслуживания. Эти биты устанавливаются в значение 0.

  • После этого коммутатор определяет значение DSCP в соответствии с таблицей CoS-DSCP. Согласно таблице, коммутатор устанавливает значение DSCP равным 0. Значение DSCP находится в заголовке IP пакета.

В общем, значения классов обслуживания и DSCP кадра передаются коммутатору по умолчанию со значением 0 тогда, когда средства обеспечения качества обслуживания включены для этого коммутатора.

Классификация и маркирование

В коммутаторах Cisco Catalyst классификация и маркирование уровней качества обслуживания выполняется иначе, чем в маршрутизаторах. В маршрутизаторах Cisco можно классифицировать пакеты при помощи MQC либо на основе значения DSCP входящего пакета, либо на основе списка управления доступом (ACL). Это зависит от степени доверия метке контроля качества обслуживания входящего пакета. В коммутаторе Cisco Catalyst 3750 кадры можно классифицировать либо с учетом входящих значений класса обслуживания и DSCP, либо на основе списка управления доступом.

Настройка по входящему значению класса обслуживания и DSCP достигается тремя различными способами:

  • Настройка каждого порта при помощи команд интерфейса mls qos

  • Настройка на основе MQC с использованием карты классов и карты политик

  • Настройка на базе сети VLAN

Можно использовать любой из этих методов. Для каждого порта нельзя использовать более одного метода. Например, выполнена настройка при помощи команды mls qos trust cos, для конкретного порта. При настройке порта с использованием команды service-policy input <policy-map-name> происходит автоматическое удаление команды mls qos trust cos, .

В разделе Классификация и маркирование на базе портов описывается настройка на основе портов.

В разделе Классификация и маркирование на базе MQC описывается настройка на основе MQC.

Классификация и маркирование на базе портов

В этом разделе описывается классификация, основанная на настройках интерфейса. Могут возникнуть вопросы, связанные с классификацией и маркированием заголовка раздела. Это происходит потому, что для коммутаторов Cisco Catalyst 3750, класс обслуживания или значения DSCP кадров (пакетов внутри кадров) перемаркируются с использованием таблиц. Использование таблиц в маршрутизаторах Cisco недоступно. Функции, связанные с использованием таблиц, доступны только в коммутаторах Cisco Catalyst. В этом разделе объясняются функции, которые предполагают использование этих таблиц.

В этом разделе описываются следующие две конфигурации:

cat3750-qos-config3.gif

Классификация — настройка доверенных портов

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

  • Является ли доверенной метка качества обслуживания пакета/кадра, поступившего в порт?

  • Если к порту подключен IP-телефон и ПК, вы доверяете меткам пакетов контроля качества, отправляемым с телефона, ПК или с обоих устройств?

Если метки качества обслуживания входящего пакета/кадра не являются доверенными, то необходимо классифицировать его согласно списку доступа и присвоить метку качества обслуживания. Если метки качества обслуживания входящего пакета/кадра являются доверенными, то следующим шагом необходимо определить, следует ли доверять значениям класса обслуживания или DSCP пакета/кадра, поступившего на один из портов? Это зависит от сценария. В этом разделе приводятся различные сценарии с примерами.

Параметры настройки доверия для порта таковы:

Switch(config-if)#mls qos trust ?
  cos            cos keyword
  device         trusted device class
  dscp           dscp keyword
  ip-precedence  ip-precedence keyword
  <cr>
  • Пример 1. Если порт представляет собой порт доступа или порт уровня 3, необходимо настроить команду mls qos trust dscp . Нельзя использовать команду mls qos trust cos, поскольку кадр от порта доступа или порта уровня 3 не содержит тегов dot1q или ISL. Биты класса обслуживания присутствуют только в кадрах dot1q или ISL.

    interface GigabitEthernet1/0/1
     description **** Layer 3 Port ****
     no switchport
     ip address 192.168.10.1 255.255.255.0
     mls qos trust dscp
    end
    interface GigabitEthernet1/0/2
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     mls qos trust dscp
    end
  • Пример 2. Если используемый порт является магистральным, можно настроить либо команду mls qos trust cos, либо mls qos trust dscp . Таблица сопоставлений dscp-cos используется для вычисления значения класса обслуживания, если порт настроен на доверие DSCP. Таким же образом, таблица сопоставлений dscp-cos используется для вычисления значения DCSP, если порт настроен на доверие классу обслуживания.

    interface GigabitEthernet1/0/3
    description **** Trunk Port ****
    switchport trunk encapsulation dot1q
    switchport mode trunk
    switchport trunk native vlan 5
    switchport trunk allowed vlan 5,10,20,30,40,50
    mls qos trust cos
    end
    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end
    !--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice VLAN traffic.
    
    						
  • Пример 3. Если порт является магистральным портом dot1q и настроен при помощи команды mls qos trust cos, то собственные кадры сети VLAN будут иметь нулевые значения класса обслуживания (CoS) и DSCP. Поскольку собственные кадры сети VLAN не обладают тегами, а теги присваиваются только после попадания кадра в коммутатор, коммутатор задает значение CoS по умолчанию равным 0, а в таблице сопоставления CoS-DSCP значение DSCP также устанавливается равным 0.

    Примечание: Значение DSCP пакета, получаемого от собственной сети VLAN, будет установлено равным 0.

    Можно также настроить порт коммутатора на изменение нулевого значения класса обслуживания по умолчанию для неотмеченных тегами кадров на любое другое в диапазоне от 0 до 7 при помощи команды mls qos cos<0-7> . Эта команда не изменяет значений CoS для кадров, отмеченных тегами.

    Например, порт GigabitEthernet1/0/12 настроен для доступа по сети VLAN 10 и передачи голосового трафика по сети VLAN 20.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    !--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice VLAN traffic.
    !--- Voice VLAN is only supported on access ports and not on trunk ports, 
    !--- even though the configuration is allowed.
    
    end

    По умолчанию компьютер не присваивает тегов отправляемым данным. Неотмеченный тегами трафик от устройства, подключенного к телефону Cisco IP Phone, проходит через телефон без изменений, вне зависимости от состояния доверия порта доступа телефона. Телефон передает маркированные кадры dot1q с идентификатором голосовой VLAN 20. Поэтому, если порт настроен при помощи команды mls qos trust cos, он доверяет значениям класса обслуживания кадров, отправляемых с телефона (кадры, отмеченные тегами), и обнуляет значения класса обслуживания кадров, передаваемых от ПК (кадры, не отмеченные тегами). Затем таблица сопоставлений CoS-DSCP обнуляет значение DSCP для пакета внутри кадра, поскольку в таблице сопоставлений значению CoS "0" соответствует значение DSCP "0". Если пакеты от компьютера обладают каким бы то ни было значением DSCP, то это значение будет обнулено. При настройке команды mls qos cos 3 для этого порта, будет выполнена установка значения класса обслуживания всех кадров от компьютера в значение "3", что не изменит значение класса обслуживания для кадров, передаваемых телефоном.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     mls qos cos 3
     spanning-tree portfast
    end

    При настройке этого порта при помощи команды mls qos cos 3 override, происходит установка значений класса обслуживания всех кадров (как отмеченных, так и неотмеченных тегами) в значение "3". Происходит смена изначально настроенных значений доверия.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     mls qos cos 3 override
    !--- Overrides the mls qos trust cos.
    
    							!--- Applies CoS value 3 on all the incoming packets on both the vlan 10 and 20.
    
     spanning-tree portfast
    end
  • Пример 4. Например, пусть порт gi 1/0/12 настроен следующим образом.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end

    Если ПК присваивает своему кадру тег идентификатора VLAN 20, это также устанавливает значение класса обслуживания равным пяти. Коммутатор обрабатывает отмеченный тегом трафик данных (в формате кадров IEEE 802.1Q или IEEE 802.1p) от устройства, подключенного к порту доступа телефона Cisco IP Phone. Поскольку интерфейс настроен на доверие значению класса обслуживания, весь трафик, получаемый через порт доступа телефона IP Cisco Phone, проходит через телефон без изменений. Коммутатор также доверяет и пропускает трафик от ПК, предоставляя этому трафику тот же приоритет, что и трафику IP-телефона. Такая конфигурация не является оптимальной. Этого можно избежать при помощи команды switchport priority extend cos <cos-value> .

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     switchport priority extend cos 0
    !--- Overrides the CoS value of PC traffic to 0.
    
     spanning-tree portfast
    end

    Команда switchport priority extend cos <cos-value> выполняет настройку IP-телефона таким образом, что в нем происходит обнуление значений класса обслуживания трафика ПК.

  • Пример 5. Например, по одному и тому же интерфейсу кто-то пытается реализовать прямое подключение ПК к коммутатору и указать в кадрах dot1q данных ПК теги с более высоким значением класса обслуживания. Этого можно избежать при помощи команды mls qos trust device cisco-phone .

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     switchport priority extend cos 0
     mls qos trust device cisco-phone 
    !--- Specify that the Cisco IP Phone is a trusted device.
    
     spanning-tree portfast
    end
  • Пример 6. Например, на интерфейсе GigabitEthernet1/0/12 необходимо настроить доверие меткам класса обслуживания, передаваемых от ПК. Также, ПК подключен к собственной VLAN 10. В этом случае команда mls qos trust cos, не сработает, поскольку пакет, передаваемый от ПК, не содержит необходимого значения класса обслуживания. При помощи тега будет добавлено только значение DSCP. Поэтому коммутатор добавляет кадр dot1q и устанавливает значение класса обслуживания по умолчанию, равное 0. Затем при помощи таблицы сопоставления класса обслуживания рассчитывается и сбрасывается в 0 значение DSCP.

    Решить эту проблему можно двумя способами. Первый способ — настроить классификацию и маркирование при помощи MQC. Можно создать список управления доступом (ACL) для сопоставления трафика ПК в зависимости от источника, IP-адреса назначения и исходных/целевых номеров портов. После этого можно сопоставить этот список управления доступом в карте классов. Можно создать карту политик для доверия этому типу трафика. Это решение описывается в следующем разделе. В этом разделе описывается второй метод. Второй метод заключается в том, чтобы включить доверие метке DSCP вместо метки CoS. После этого метка DSCP-CoS используется для вычисления и установки значения класса обслуживания, которое соответствует значению DSCP.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust dscp
     spanning-tree portfast
    end

    Первый метод является предпочтительным, поскольку не рекомендуется доверять всем меткам класса обслуживания трафика.

Маркирование — настройка таблиц карт качества обслуживания

После включения функций качества обслуживания, таблицы карт создаются со значениями по умолчанию и, затем, применяются.

Distribution1#show mls qos maps cos-dscp
   Cos-dscp map:
        cos:   0  1  2  3  4  5  6  7
     --------------------------------
       dscp:   0  8 16 24 32 40 48 56

Distribution1#show mls qos maps dscp-cos
   Dscp-cos map:
     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
  • Пример 1. Если порт настроен на доверие классу обслуживания, все входящие значения класса обслуживания становятся доверенными, а значения DSCP перемаркируются согласно таблице сопоставления класса обслуживания и DSCP. В соответствии с настройками сопоставления класса обслуживания и DSCP по умолчанию, значения сопоставляются следующим образом:

    Класс обслуживания (CoS)

    DSCP (десятичное)

    DSCP

    0

    0

    По умолчанию

    1

    8

    CS1

    2

    16

    CS2

    3

    24

    CS3

    4

    32

    CS4

    5

    40

    CS5

    6

    48

    CS6

    7

    56

    CS7

    Важное значение, которое необходимо принять во внимание, это значение DSCP, которое соответствует классу обслуживания 5. Это значение CS5. В примере 2 используется это значение.

  • Пример 2. например, интерфейс GigabitEthernet1/0/12 настроен на доверие классу обслуживания.

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end

    Телефон Cisco IP Phone отмечает полезную нагрузку значениями класса обслуживания 5 и DSCP EF при отправке трафика на коммутатор. При входе трафика в порт Gi 1/0/12, коммутатор доверяет значению класса обслуживания. После этого, коммутатор выводит значение DSCP CS5 (40) для значения класса обслуживания 5 из таблицы сопоставления класса обслуживания и DSCP. Весь полезный голосовой трафик с классом обслуживания 5 маркируются значением DSCP, равным CS5. Использование этого значения нежелательно. Необходимое значение DSCP для полезной голосовой нагрузки — DSCP EF. По умолчанию, другие значения класса обслуживания сопоставляются значениям DSCP согласно спецификациям RFC.

    Эта конфигурация позволяет настраивать таблицу сопоставлений классов обслуживания и DSCP так. чтобы изменить значение DSCP, равное EF, таким образом, что оно соответствует классу обслуживания 5.

    Distribution1(config)#mls qos map cos-dscp 0  8 16 24 32 46 48 56
    !--- DSCP 46 is EF
    
    						

    После этой настройки, значения отображаются так, как показано ниже:

    Класс обслуживания (CoS)

    DSCP (десятичное)

    DSCP

    0

    0

    По умолчанию

    1

    8

    CS1

    2

    16

    CS2

    3

    24

    CS3

    4

    32

    CS4

    5

    46

    EF

    6

    48

    CS6

    7

    56

    CS7

  • Пример 3. Если порт настроен на доверие DSCP, все входящие значения DSCP становятся доверенными, а значения класса обслуживания перемаркируются согласно таблице сопоставления класса обслуживания и DSCP. В соответствии с настройками сопоставления DSCP и класса обслуживания по умолчанию, значения сопоставляются следующим образом:

    DSCP

    DSCP (десятичное)

    Класс обслуживания (CoS)

    По умолчанию

    0-7

    0

    CS1

    AF11

    AF12

    AF13

    8-15

    1

    CS2

    AF21

    AF22

    AF23

    16-23

    2

    CS3

    AF31

    AF32

    AF33

    24-31

    3

    CS4

    AF41

    AF42

    AF43

    32-39

    4

    CS5

    EF

    40-47

    5

    CS6

    48-55

    6

    CS7

    56-63

    7

    Не требуется изменять эти значения по умолчанию.

В этой таблице приведены сопоставления значений DSCP и классов обслуживания для справки:

DSCP (десятичное)

DSCP

Класс обслуживания (CoS)

0

По умолчанию

0

8

CS1

1

10

AF11

1

12

AF12

1

14

AF13

1

16

CS2

2

18

AF21

2

20

AF22

2

22

AF23

2

24

CS3

3

26

AF31

3

28

AF32

3

30

AF33

3

32

CS4

4

34

AF41

4

36

AF42

4

38

AF43

4

40

CS5

5

42

5

44

5

46

EF

5

48

CS6

6

56

CS7

7

Примечание: В одной сети все коммутаторы Cisco Catalyst должны обладать идентичными таблицами сопоставлений. Наличие различных таблиц в разных коммутаторах приведет к нежелательным реакциям при обеспечении качества обслуживания.

Классификация и маркирование на базе MQC

В разделе "Классификация и маркирование" описывается метод классификации и маркирования при помощи MQC. Вместо настройки для каждого порта можно использовать MQC. Можно также маркировать входящие пакеты при помощи карты политик.

Требования в этом примере таковы:

  • Установите доверительное отношение к значениям класса обслуживания трафика, передаваемого при помощи телефона IP.

  • Отметьте значение DSCP для пакетов программного телефонного приложения на ПК, подключенного к IP-телефону.

  • Отключите доверительное отношение ко всему другому трафику ПК.

cat3750-qos-config4.gif

На этой диаграмме показана карта политик, закрепленная за входом интерфейса. Нельзя применить карту политик к исходящему трафику любого интерфейса коммутатора Catalyst 3750. Следующая конфигурация представляет собой диаграмму. В этом разделе не уделено особого внимания той составляющей функции обеспечения контроля качества, которая основывается на очередях. Раздел посвящен MQC, который применяется для интерфейса.

Предполагается, что у VLAN данных идентификатор 10 и маска подсети 172.16.10.0/24. Идентификатор голосовой VLAN — 100 с маской подсети 192.168.100.0/24.

					!--- Section A

Distribution1(config)#ip access-list extended voice-traffic
Distribution1(config-std-nacl)#permit ip 192.168.100.0 0.0.0.255 any

Distribution1(config-std-nacl)#ip access-list extended database-application
Distribution1(config-ext-nacl)#permit tcp any any eq 1521
Distribution1(config-ext-nacl)#permit tcp any any eq 1810
Distribution1(config-ext-nacl)#permit tcp any any eq 2481
Distribution1(config-ext-nacl)#permit tcp any any eq 7778
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map  Class-A
Distribution1(config-cmap)#match access-group name voice-traffic
Distribution1(config-cmap)#exit
Distribution1(config)#class-map  Class-B
Distribution1(config-cmap)#match access-group name database-application
Distribution1(config-cmap)#exit
					!--- Section B

Distribution1(config)#policy-map sample-policy1
Distribution1(config-pmap)#class Class-A
Distribution1(config-pmap-c)#trust cos
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#class Class-B
Distribution1(config-pmap-c)#set dscp af21
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit
					!--- Section C

Distribution1(config)#interface gigabitEthernet 1/0/13
Distribution1(config-if)#switchport access vlan 10
Distribution1(config-if)#switchport mode access
Distribution1(config-if)#switchport voice vlan 100
Distribution1(config-if)#spanning-tree portfast
Distribution1(config-if)#service-policy input sample-policy1
Distribution1(config-if)#exit
				

Раздел A:

  • Классификация трафика IP-телефона как принадлежащего к классу A (Class-A). IP-телефон принадлежит голосовой VLAN, и ему присвоен адрес в подсети 192.168.100.0.

  • Классификация трафика приложений баз данных как принадлежащего к классу B (Class-B). Трафик компьютера (практически любой трафик согласно заданной конфигурации), направляемый на любой адрес через порты 1521, 1810, 2481 и 7778, классифицируется как принадлежащий карте Class-B.

Раздел B:

  • Трафик, соответствующий критериям класса Class-A, настраивается на доверие метке класса обслуживания (CoS). Это означает, что значения CoS всего трафика от IP-телефона являются доверенными. Как видно на диаграмме, значение DSCP вычисляется при помощи карты сопоставлений CoS-DSCP для трафика карты Class-A.

  • Трафику, соответствующему критериям класса Class-B, устанавливается значение DSCP, равное AF21. Как показано на диаграмме, значение DCoS вычисляется при помощи карты сопоставлений CoS-DSCP для трафика карты Class-B.

  • Настройки, заданные для каждого класса карты политик, называются действиями PHB. Действия PHB, поддерживаемые в маршрутизаторах Cisco: маркирование, формирование очередей, ограничение и профилирование трафика, а также избежание перегрузок. Маркирование и ограничение трафика — единственные поддерживаемые действия PHB в коммутаторах Cisco Catalyst 3750.

    Distribution1(config)#policy-map test
    Distribution1(config-pmap)#class test
    Distribution1(config-pmap-c)#?
    QoS policy-map class configuration commands:
      exit            Exit from QoS class action configuration mode
      no              Negate or set default values of a command
      police          Police
      service-policy  Configure QoS Service Policy
      set             Set QoS values
      trust           Set trust value for the class
      <cr>

    Команды set и trust являются PHB-действиями маркирования. В качестве PHB-действия можно задать либо set, либо trust . Нельзя выполнить настройку обоих действий для одного и того же класса карты политик. Однако можно задать действие set для одного класса и действие trust — для другого класса внутри одной карты политик.

    Команда police позволяет выполнить PHB-действие ограничения трафика. Подробное описание этой функции приведено в следующем разделе.

    Функция профилирования трафика в коммутаторах Cisco Catalyst 3750 не поддерживается. Функции формирования очередей и предотвращения перегрузки в коммутаторах Cisco Catalyst 3750 поддерживаются, однако их нельзя настроить при помощи MQC. Более подробные сведения о настройке функций формирования очередей и предотвращения перегрузок см. в следующих разделах настоящего документа.

Раздел C:

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

    Distribution1(config)#int gi 1/0/3
    Distribution1(config-if)#service-policy output test
    Warning: Assigning a policy map to the output side of an interface not supported
    
    Service Policy attachment failed
    Warning: Assigning a policy map to the output side of an interface not supported
  • В случае применения данной карты политик любые другие методы классификации QoS (например по портам или по VLAN), настроенные для порта gi 1/0/3, будут удалены. Пусть, например, для порта Gi 1/0/13 доверие к CoS задано следующим образом:

    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     mls qos cos 3
     mls qos trust cos
     spanning-tree portfast
  • При применении карты политик к данному интерфейсу происходит удаление команды trust .

    Distribution1(config)#int gi 1/0/13
    Distribution1(config-if)#service-policy input sample-policy1
    Distribution1(config-if)#do show run int gi 1/0/13
    Building configuration...
    
    Current configuration : 228 bytes
    !
    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     service-policy input sample-policy1  
     !--- It replaces the mls qos trust or mls qos 
    !--- vlan-based command.
    
     mls qos cos 3    
     !--- This command is not removed.
    
     spanning-tree portfast
    end

    Здесь наглядно показано, что при применении политик обслуживания на входящем интерфейсе заменяются только команды mls qos trust либо mls qos vlan-based . При этом не изменяются другие команды, например mls qos cos или mls qos dscp-mutation . Т. е. происходит замена команд классификации качества обслуживания, но не происходит замены команд маркирования качества обслуживания.

  • В карте политик присутствуют только две карты классов. Class-A соответствует трафику IP-телефона, а Class-B соответствует трафику приложений баз данных от ПК. Весь остальной трафик ПК (кроме приложений баз данных, определенных в списке доступа) классифицируется как принадлежащий классу трафика, не классифицируемого для данной карты политик. Это позволяет обрабатывать весь остальной трафик, не соответствующий параметрам карты классов для данной карты политик. Поэтому трафик, принадлежащий классу неклассифицируемого трафика, не является доверенным для порта, а метки CoS и DSCP по умолчанию для данных пакетов являются нулевыми. Для данного неклассифицируемого трафика можно задать любое значение CoS или DSCP по умолчанию.

    Задать значение DSCP по умолчанию можно при помощи MQC. Значение CoS вычисляется по таблице карты сопоставлений DSCP-CoS.

    Distribution1(config)#policy-map sample-policy1
    Distribution1(config-pmap)#class class-default
    Distribution1(config-pmap-c)#set dscp af13
    Distribution1(config-pmap-c)#exit
    						

    Значение CoS по умолчанию задается следующим образом. Значение DSCP вычисляется при помощи таблицы карты сопоставлений CoS-DSCP.

    Distribution1(config)#int gi 1/0/13
    Distribution1(config-if)#mls qos cos 3
    Distribution1(config-if)#do show run int gi 1/0/13
    Building configuration...
    
    Current configuration : 228 bytes
    !
    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     service-policy input sample-policy1  
     mls qos cos 3    
     spanning-tree portfast

Ограничение трафика (Policing)

В коммутаторах Cisco Catalyst 3750 ограничение трафика может настраиваться только для порта входа. Ограничение трафика может быть настроено только при помощи MQC. Т. е. не существует команды ограничения трафика для отдельного интерфейса. Ограничение трафика можно настроить при помощи карты политик, а применить эту карту политик можно только при помощи команды service-policy input <policy-name> . Не допускается применение карты политик для интерфейса вывода.

Distribution1(config-if)#service-policy output test
police command is not supported for this interface
Configuration failed!
Warning: Assigning a policy map to the output side of an interface not supported

Этот раздел посвящен следующим вопросам:

Классификация, маркирование и ограничение трафика (действие при превышении — drop)

Раздел посвящен настройкам функции ограничения трафика, при которых избыточный трафик отбрасывается. При включенном ограничении входящий трафик измеряется, а его скорость поддерживается на постоянном уровне (в битах в секунду). Коммутатор Cisco Catalyst 3750 поддерживает ограничение трафика только на одной скорости с одним критерием отбора. Т. е. коммутатор измеряет трафик только на одной скорости и выполняет его профилирование по двум категориям: соответствующий и несоответствующий. На диаграмме показана карта политик sample-policy2 с тремя картами классов.

Требования в этом примере таковы:

  • Настройте регулирование входящего трафика ftp, pop3 и imap на скорости 10 Мбит/с.

  • Настройте доверие значению DSCP пакетов IP-коммуникатора, получаемых от ПК, подключенного к IP-телефону. Также необходимо ограничивать скорость этого трафика до уровня 1 Мбит/с.

  • Настройте маркирование и ограничение трафика приложения filnet.

cat3750-qos-config5.gif

Конфигурация приведенной на диаграмме карты политик:

					!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended BULK-DATA
Distribution1(config-ext-nacl)#permit tcp any any eq ftp
Distribution1(config-ext-nacl)#permit tcp any any eq ftp-data
Distribution1(config-ext-nacl)#permit tcp any any eq pop3
Distribution1(config-ext-nacl)#permit tcp any any eq 143
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A
Distribution1(config-cmap)#match access-group name BULK-DATA
Distribution1(config-cmap)#exit
					!--- Create Access-list and Class map Class-B

Distribution1(config)#ip access-list extended IP-Communicator
Distribution1(config-ext-nacl)#remark *** Voice Payload ***
Distribution1(config-ext-nacl)#permit udp any any range 16384 32767
Distribution1(config-ext-nacl)#remark *** Voice Signalling ***
Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B
Distribution1(config-cmap)#match access-group name IP-Communicator
Distribution1(config-cmap)#exit
					!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application
Distribution1(config-ext-nacl)#remark *** Application for example ***
Distribution1(config-ext-nacl)#permit tcp any any eq 32768
Distribution1(config-ext-nacl)#permit udp any any eq 32768
Distribution1(config-ext-nacl)#permit tcp any any eq 32769
Distribution1(config-ext-nacl)#permit udp any any eq 32769
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-C
Distribution1(config-cmap)#match access-group name application
Distribution1(config-cmap)#exit
					!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy2
Distribution1(config-pmap)#class Class-A
Distribution1(config-pmap-c)#police 10000000 8000 exceed-action drop
Distribution1(config-pmap-c)#class Class-B
Distribution1(config-pmap-c)#trust dscp
Distribution1(config-pmap-c)#police 256000 8000 exceed-action drop
Distribution1(config-pmap-c)#class Class-C
Distribution1(config-pmap-c)#set dscp CS2
Distribution1(config-pmap-c)#police 25000000 8000 exceed-action drop
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit
					!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/20
Distribution1(config-if)#service-policy input sample-policy2
				

Пояснения к конфигурации карты политик:

  • Class-A. Скорость ограничения трафика, соответствующего данному классу — 10 Мбит/с. Метки качества обслуживания (QoS) для трафика данного класса не являются доверенными. Значение CoS и DSCP маркируются как 0. Избыточные пакеты отбрасываются ограничителем трафика.

  • Class-B. Для трафика, соответствующего данному классу, возможно выполнение двух действий PHB. Первое действие — доверие, второе — ограничение трафика. Значение DSCP для трафика данного класса является доверенным. Значение CoS получается из таблицы сопоставлений DSCP-CoS. Кроме того, скорость трафика класса B ограничивается до уровня 256 Кбит/с. Избыточные пакеты отбрасываются ограничителем трафика.

  • Class-С. Для трафика, соответствующего данному классу, возможно выполнение двух действий PHB. Первое действие — маркировка, второе — ограничение трафика. Входящие пакеты, соответствующие данному классу, маркируются значением DSCP, равным CS2, а значение CoS получается из таблицы сопоставлений DSCP-CoS и равно 2. Кроме того, скорость трафика класса С ограничивается до уровня 25 Мбит/с. Избыточные пакеты отбрасываются ограничителем трафика.

Классификация, маркирование и ограничение трафика (действие при превышении - policed-dscp-transmit)

Раздел посвящен настройкам функции ограничения трафика, при которых выполняется маркирование и передача избыточного трафика. На диаграмме показана карта политик sample-policy3 с тремя картами классов.

cat3750-qos-config6.gif

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

Distribution1(config)#do show mls qos map policed-dscp
   Policed-dscp map:
     d1 :  d2 0  1  2  3  4  5  6  7  8  9
     ---------------------------------------
      0 :    00 01 02 03 04 05 06 07 08 09
      1 :    10 11 12 13 14 15 16 17 18 19
      2 :    20 21 22 23 24 25 26 27 28 29
      3 :    30 31 32 33 34 35 36 37 38 39
      4 :    40 41 42 43 44 45 46 47 48 49
      5 :    50 51 52 53 54 55 56 57 58 59
      6 :    60 61 62 63

Из таблицы видно, что сопоставляются одинаковые значения DSCP. Например, значению DSCP 34 сопоставлено значение DSCP 34. Трафик, который соответствует требованиям ограничителя, передается без изменения значения DSCP. Трафик, превышающий порог ограничителя, может передаваться с другим значением DSCP. Например, его можно маркировать таким значением DSCP, которое гарантирует большую вероятность того, что он будет отброшен.

Если использовать значения таблицы сопоставлений policed-DSCP по умолчанию, использование ограничения трафика нецелесообразно. К примеру, вы настроили ограничение трафика на скорости 10 Мбит/с. Значение DSCP входящего пакета равно CS4. При сохранении значения DSCP по умолчанию трафик, соответствующий условиям регулирования (10 Мбит/с), передается со значением DSCP, равным CS2. А трафик, скорость которого превышает 10 Мбит/с, передается со значением DSCP, равным CS2. Это происходит потому, что значениям таблицы policed-DSCP по умолчанию сопоставляются те же самые значения. Поэтому рекомендуется настроить таблицу policed-DSCP таким образом, чтобы значения DSCP дифференцировались.

Требования в этом примере таковы:

  • Настройте таблицу сопоставлений policed-DSCP следующим образом:

    • EF сопоставлено с AF31

    • CS3 сопоставлено с AF13

    • CS2 сопоставлено с AF11

  • Настройте доверие для значений DSCP пакетов IP-коммуникатора и настройте ограничение на уровне 256 Кбит/с. Если трафик превышает 256 Кбит/с, перемаркируйте значения DSCP при помощи таблицы сопоставлений policed-DSCP.

  • Настройте маркирование и ограничение трафика приложения filnet. Если трафик превышает 25 Мбит/с, перемаркируйте значения DSCP при помощи таблицы сопоставлений policed-DSCP.

Конфигурация приведенной на диаграмме карты ограничения трафика:

					!--- Policed DSCP table Configuration

Distribution1(config)#mls qos map policed-dscp 46 to 26
Distribution1(config)#mls qos map policed-dscp 24 to 14
Distribution1(config)#mls qos map policed-dscp 16 to 10
					!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended IP-Communicator
Distribution1(config-ext-nacl)#remark *** Voice Payload ***
Distribution1(config-ext-nacl)#permit udp any any range 16384 32767
Distribution1(config-ext-nacl)#remark *** Voice Signalling ***
Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A
Distribution1(config-cmap)#match access-group name IP-Communicator
Distribution1(config-cmap)#exit
					!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application
Distribution1(config-ext-nacl)#remark *** Application for example ***
Distribution1(config-ext-nacl)#permit tcp any any eq 32768
Distribution1(config-ext-nacl)#permit udp any any eq 32768
Distribution1(config-ext-nacl)#permit tcp any any eq 32769
Distribution1(config-ext-nacl)#permit udp any any eq 32769
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B
Distribution1(config-cmap)#match access-group name application
Distribution1(config-cmap)#exit
					!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy3
Distribution1(config-pmap-c)#class Class-A
Distribution1(config-pmap-c)#trust dscp
Distribution1(config-pmap-c)#police 256000 8000 exceed-action policed-dscp-transmit
Distribution1(config-pmap-c)#class Class-B
Distribution1(config-pmap-c)#set dscp CS2
Distribution1(config-pmap-c)#police 25000000 8000 exceed-action policed-dscp-transmit
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit
					!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/21
Distribution1(config-if)#service-policy input sample-policy3
				

Пояснения к конфигурации карты политик:

  • Policed-DSCP. Три значения из таблицы сопоставлений policed-DSCP изменяются при сопоставлении.

    • EF сопоставлено с AF31

    • CS3 сопоставлено с AF13

    • CS2 сопоставлено с AF11

    Первые два значения изменяются в зависимости от типа трафика, классифицируемого при помощи карт классов Class-A и Class-B.

  • Class-A. Голосовая полезная нагрузка и модуляция голосового сигнала программным телефоном классифицируются при помощи карты Class-A. Голосовой полезный трафик имеет значение DSCP, равное EF, а трафик голосового управления имеет значение DSCP, равное CS3. Согласно конфигурации карты политик эти значения DSCP являются доверенными. Скорость ограничения трафика данного класса: 256 Кбит/с. Трафик, соответствующий данному критерию регулирования, пересылается без изменения значения DSCP на входе. Трафик, превышающий скорость ограничения, перемаркируется при помощи таблицы сопоставления policed-DSCP и передается далее. Согласно заданным настройкам таблица сопоставления policed-DSCP выполняет перемаркировку EF в AF31, а CS3 в AF13. Затем значения CoS получаются при помощи таблицы DSCP-CoS.

  • Class-B. Входящие пакеты, соответствующие критериям данного класса, маркируются значением DSCP, равным CS2. Скорость ограничения трафика данного класса: 25 Мбит/с. Трафик, не превышающий данной скорости, передается со значениям DSCP, равным 2, и со значением CoS, получаемым из таблицы сопоставлений DSCP-CoS (в данном случае 2). Трафик, превышающий скорость ограничения, перемаркируется при помощи таблицы сопоставления policed-DSCP и передается далее. Согласно заданным настройкам таблица сопоставлений policed-DSCP выполняет перемаркировку EF в AF31, а CS3 в AF13. Затем значения CoS получаются при помощи таблицы DSCP-CoS.

Управление и предотвращение перегрузок

Управление и предотвращение перегрузок выполняются в три этапа. Это формирование очередей, отбрасывание пакетов и планирование нагрузки. При формировании очередей пакеты помещаются в различные программные очереди на базе меток качества обслуживания (QoS). В коммутаторе Cisco Catalyst 3750 предусмотрено разделение входящего трафика на две очереди. После того, как трафик классифицируется и маркируется при помощи меток качества обслуживания (QoS), он может быть направлен в две различные очереди (в зависимости от присвоенных меток QoS).

Функция взвешенного отбрасывания остатка (WTD) используется для управления длиной очередей и предоставления приоритета сброса для различных классов трафика.

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

Раздел посвящен трем типам конфигурации.

Доступные команды настройки:

Distribution1(config)#mls qos srr-queue input ?
					!--- Queueing

  buffers         Configure buffer allocation
  cos-map         Configure cos-map for a queue id
  dscp-map        Configure dscp-map for a queue id
!--- Scheduling

  bandwidth       Configure SRR bandwidth
  priority-queue  Configure priority scheduling
!--- Dropping

  threshold       Configure queue tail-drop thresholds

Формирование очередей, отбрасывание пакетов и планирование загрузки — конфигурация по умолчанию

Эти выходные данные показывают присваиваемые очередям метки QoS по умолчанию. Каждая очередь может поддерживать три пороговых уровня. По умолчанию каждая поддержка очереди обладает единственным пороговым значением, равным 100%.

cat3750-qos-config7.gif

  • Конфигурация карты очереди по умолчанию:

    Пакеты со значение CoS, равным 5 (DSCP от 40 до 47), помещаются в очередь 2. Остальные пакеты помещаются в очередь 1.

    Distribution1#show mls qos maps cos-input-q
       Cos-inputq-threshold map:
                  cos:  0   1   2   3   4   5   6   7
                  ------------------------------------
      queue-threshold: 1-1 1-1 1-1 1-1 1-1 2-1 1-1 1-1
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2    0     1     2     3     4     5     6     7     8     9
         ------------------------------------------------------------
          0 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          1 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          2 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          3 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          4 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
          5 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          6 :    01-01 01-01 01-01 01-01

    В этой таблице приведены присваиваемые очередям входящего трафика значения CoS/DSCP по умолчанию:

    Класс обслуживания (CoS)

    DSCP

    Входящая очередь

    0

    от 0 до 7

    1

    1

    от 8 до 15

    1

    2

    от 16 до 23

    1

    3

    от 24 до 31

    1

    4

    от 32 до 39

    1

    5

    от 40 до 47

    2

    6

    от 48 до 55

    1

    7

    от 56 до 63

    1

  • Конфигурация очереди по умолчанию:

    Буфер очереди входящего трафика на 90% используется очередью 1 и на 10% — очередью 2. Пороговые значения 1, 2 и 3 составляют 100%.

    Distribution1#show mls qos input-queue
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :       4       4
    priority  :       0      10
    threshold1:     100     100
    							threshold2:     100     100
    						
  • Конфигурация планировщика по умолчанию:

    Очередь 2 является приоритетной. В соответствии с заданной пропорцией на обслуживание приоритетной очереди SRR выделяет 10% полосы пропускания. Остальные 90% SRR выделяет для совместного использования обеими входящими очередями и обслуживает их в заданном соотношении. В данном случае на обе очереди (1 и 2) выделяется по 45%.

    Distribution1#show mls qos input-queue
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :       4       4
    							priority  :       0      10
    threshold1:     100     100
    threshold2:     100     100

Формирование очередей и планирование нагрузки

Настройка формирования очередей и планирования нагрузки осуществляется в три этапа. Этапы настройки:

  1. Настройка карты очереди:

    Настроенная карта очереди используется для распределения пакетов на две входящие очереди в зависимости от значений DSCP или класса обслуживания (CoS).

  2. Конфигурация очереди:

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

  3. Конфигурация планировщика:

    SRR задает пропорцию (веса), определяющую частоту удаления пакетов из каждой очереди в кольцевой стек коммутаторов.

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

cat3750-qos-config8.gif

В этом разделе уровни отбрасывания WTD не настроены. Т. е. пакеты отбрасываются при 100-процентном заполнении очереди.

  • Конфигурация карты очереди:

    Сначала очередям сопоставляются значения класса обслуживания (CoS). В этом разделе пороговые значения не настроены.

    							!--- Assign the frames into the queue based on the CoS value.
    
    Distribution1(config)#mls qos srr-queue input cos-map
    							queue 1 0 1 
    Distribution1(config)#mls qos srr-queue input cos-map
    							queue 2 2 3 4 5 6 7
    
    !--- Show output.
    
    Distribution1#show mls qos maps cos-input-q
       Cos-inputq-threshold map:
                  cos:  0   1   2   3   4   5   6   7
                  ------------------------------------
      queue-threshold: 1-1 1-1 2-1 2-1 2-1 2-1 2-1 2-1
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2    0     1     2     3     4     5     6     7     8     9
         ------------------------------------------------------------
          0 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          1 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          2 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          3 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          4 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
          5 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          6 :    01-01 01-01 01-01 01-01

    Здесь показан конфликт между картами сопоставлений Cos-inputq-threshold и Dscp-inputq-threshold. Например, класс обслуживания CoS 3 определен для очереди 2 в таблице Cos-inputq-threshold. Однако значение DSCP, равное 24 (которое соответствует классу обслуживания CoS 3) передается очереди 1 согласно условиям карты Dscp-inputq-threshold. Фактически, карта Dscp-inputq-threshold замещает настройки карты Cos-inputq-threshold. Эти карты должны по возможности соответствовать друг другу, чтобы обеспечить предсказуемость операций и упростить поиск и устранение неисправностей. Поэтому карта Dscp-inputq-threshold настраивается таким образом, чтобы обеспечить синхронизацию с картой Cos-inputq-threshold.

    							!--- Assign the frames into the queue based on the DSCP value.
    
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2  16 17 18 19 20 21 22 23
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2  24 25 26 27 28 29 30 31
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2  32 33 34 35 36 37 38 39
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2  48 49 50 51 52 53 54 55
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2  56 57 58 59 60 61 62 63
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2    0     1     2     3     4     5     6     7     8     9
         ------------------------------------------------------------
          0 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          1 :    01-01 01-01 01-01 01-01 01-01 01-01 02-01 02-01 02-01 02-01
          2 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
          3 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
          4 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
          5 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
          6 :    02-01 02-01 02-01 02-01
  • Конфигурация очереди:

    После включения функции обеспечения качества обслуживания (QoS) IOS выполняет выделение буферного пространства по умолчанию для постановки входящих пакетов в очереди. Обе входящие очереди (1 и 2) совместно используют буферное пространство. В коммутаторе Catalyst 3750 можно задать процентное соотношение, в котором это буферное пространство будет использоваться каждой из очередей. 67% всей доступной для входящих очередей памяти выделяется для очереди 1, а оставшиеся 33% — для очереди 2.

    Distribution1(config)#mls qos srr-queue input buffers 67 33
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :       4       4
    priority  :       0      10
    threshold1:     100     100
    threshold2:     100     100
  • Конфигурация планировщика:

    Эта настойка выполняется при помощи команды mls qos srr-queue input bandwidth . Здесь bandwidth (полоса пропускания) указывает количество бит, обслуживаемых SRR во всех очередях.

    Distribution1(config)#mls qos srr-queue input bandwidth 90 10
    Distribution1(config)#mls qos srr-queue input priority-queue 2 bandwidth 20
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :      90      10
    priority  :       0      20
    threshold1:     100     100
    threshold2:     100     100

    По умолчанию очередь 2 является приоритетной, и для приоритетной очереди выделяется 10% всей полосы пропускания внутреннего кольца коммутаторов. Приоритетной можно также назначить очередь 1. Однако невозможно назначить сразу обе очереди в качестве приоритетных.

    Если совокупная полоса пропускания кольца коммутаторов составляет 10 Гбит/с, 20% этой скорости (2 Гбит/с) SRR выделяет для приоритетного обслуживания очереди 2. Оставшаяся часть полосы пропускания (8 Гбит/с) совместно используется очередями 1 и 2. Согласно данной конфигурации очередь 1 обслуживается на 90%, а очередь 2 — на 10% оставшейся полосы пропускания 8 Гбит/с. Полоса пропускания 8 Гбит/с обслуживается SRR в режиме совместного использования. Это означает, что настроенное процентное соотношение полосы пропускания гарантируется, но им не ограничивается.

    Примечание: Приоритетную очередь можно отключить при помощи команды mls qos srr-queue input priority-queue 2 bandwidth 0 .

    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :      90      10
    priority  :       0       0
    threshold1:     100     100
    threshold2:     100     100
    Distribution1(config)#

Формирование очередей, отбрасывание пакетов и планирование нагрузки

В этом разделе пороговые уровни WTD настроены в дополнение к объему очереди буфера. Каждому проходящему через коммутатор пакету можно назначить определенную очередь и порог.

cat3750-qos-config9.gif

Ниже показаны примеры конфигураций с соответствующими пояснениями.

  • Конфигурация карты очереди:

    Сначала очередям сопоставляются значения класса обслуживания (CoS).

    							!--- Assign the frames into the queue based on the CoS value.
    
    Distribution1(config)#mls qos srr-queue input cos-map queue 1 threshold 2  1
    Distribution1(config)#mls qos srr-queue input cos-map queue 1 threshold 3  0
    Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 1  2
    Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 2  4 6 7
    Distribution1(config)#mls qos srr-queue input cos-map queue 2 threshold 3  3 5
    							!--- Show output.
    
    Distribution1(config)#do show mls qos maps cos-input-q
       Cos-inputq-threshold map:
                  cos:  0   1   2   3   4   5   6   7
                  ------------------------------------
      queue-threshold: 1-3 1-2 2-1 2-3 2-2 2-3 2-2 2-2
    
    Distribution1(config)#do show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2    0     1     2     3     4     5     6     7     8     9
         ------------------------------------------------------------
          0 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          1 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          2 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          3 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          4 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
          5 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          6 :    01-01 01-01 01-01 01-01

    Здесь показан конфликт между картами сопоставлений Cos-inputq-threshold и Dscp-inputq-threshold. Например, согласно таблице Cos-inputq-threshold значение CoS 3 сопоставляется очереди 2, однако в карте Dscp-inputq-threshold значение DSCP, равное 24 (которое соответствует CoS 3), назначается очереди 1. Фактически, карта Dscp-inputq-threshold замещает настройки карты Cos-inputq-threshold. Эти карты должны по возможности соответствовать друг другу, чтобы обеспечить предсказуемость операций и упростить поиск и устранение неисправностей. Поэтому карта Dscp-inputq-threshold настраивается таким образом, чтобы обеспечить синхронизацию с картой Cos-inputq-threshold.

    							!--- Assign the frames into the queue based on the DSCP value.
    
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 2  9 10 11 12 13 14 15
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 3  0 1 2 3 4 5 6 7
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1 threshold 3  32
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 1  16 17 18 19 20 21 22 23
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2  33 34 35 36 37 38 39 48
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2  49 50 51 52 53 54 55 56
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 2  57 58 59 60 61 62 63
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 threshold 3  24 25 26 27 28 29 30 31
    
    Distribution1(config)#do show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2    0     1     2     3     4     5     6     7     8     9
         ------------------------------------------------------------
          0 :    01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-01 01-02
          1 :    01-02 01-02 01-02 01-02 01-02 01-02 02-01 02-01 02-01 02-01
          2 :    02-01 02-01 02-01 02-01 02-03 02-03 02-03 02-03 02-03 02-03
          3 :    02-03 02-03 01-03 02-02 02-02 02-02 02-02 02-02 02-02 02-02
          4 :    02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-02 02-02
          5 :    02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02
          6 :    02-02 02-02 02-02 02-02
  • Конфигурация очереди:

    По умолчанию значение порога "3" соответствует 100% и его нельзя изменить.

    Distribution1(config)#mls qos srr-queue input buffers 67 33
    Distribution1(config)#mls qos srr-queue input threshold 1 8 16
    Distribution1(config)#mls qos srr-queue input threshold 2 34 66
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :       4       4
    priority  :       0      10
    threshold1:       8      34
    threshold2:      16      66
  • Конфигурация планировщика:

    После включения функции обеспечения качества обслуживания (QoS) IOS выполняет выделение буферного пространства по умолчанию для каждого входящего порта. Обе очереди совместно используют выделенное буферное пространство. В коммутаторах Catalyst 3560/3750 можно настроить процентное соотношение, в котором это буферное пространство будет использоваться каждой очередью.

    Distribution1(config)#mls qos srr-queue input bandwidth 90 10
    Distribution1(config)#mls qos srr-queue input priority-queue 2 bandwidth 20
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :      90      10
    priority  :       0      20
    threshold1:       8      34
    threshold2:      16      66

    По умолчанию очередь 2 является приоритетной, и для приоритетной очереди выделяется 10% всей полосы пропускания внутреннего кольца коммутаторов. Приоритетной можно также назначить очередь 1. Однако невозможно назначить сразу обе очереди в качестве приоритетных.

    Если совокупная полоса пропускания кольца коммутаторов составляет 10 Гбит/с, 20% этой скорости (2 Гбит/с) SRR выделяет для приоритетного обслуживания очереди 2. Оставшаяся часть полосы пропускания (8 Гбит/с) совместно используется очередями 1 и 2. Согласно данной конфигурации очередь 1 обслуживается на 90%, а очередь 2 — на 10% оставшейся полосы пропускания 8 Гбит/с. Полоса пропускания 8 Гбит/с обслуживается SRR в режиме совместного использования. Это означает, что настроенное процентное соотношение полосы пропускания гарантируется, но им не ограничивается.

    Примечание: Приоритетную очередь можно отключить при помощи команды mls qos srr-queue input priority-queue 2 bandwidth 0 .

    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :      90      10
    priority  :       0       0
    threshold1:     100     100
    threshold2:     100     100
    Distribution1(config)#

Функции обеспечения качества обслуживания (QoS) входящего трафика

Управление перегрузками — эта функция обеспечения управления качеством обслуживания для входящего трафика, которая поддерживается коммутаторами Cisco Catalyst 3750. Действия по управлению перегрузками выполняются в три шага. Это формирование очередей, отбрасывание пакетов и планирование нагрузки.

При формировании очередей пакеты помещаются в различные программные очереди на базе меток качества обслуживания (QoS). Коммутатор Cisco Catalyst 3750 обрабатывает 4 исходящие очереди, 3 порога для каждой очереди. После того, как трафик классифицируется и маркируется при помощи меток качества обслуживания (QoS), он может быть направлен в две различные очереди (в зависимости от присвоенных меток QoS).

Каждую очередь можно настроить с отдельными параметрами объема буфера, резервируемого порога, уровнями порога и максимальным пороговым значением. Функция взвешенного отбрасывания остатка (WTD) используется для управления длиной очередей и предоставления приоритета сброса для различных классов трафика. Параметры входящей очереди настраиваются для всей системы. Параметры входящей очереди не зависят от порта. В отличие от них, параметры исходящей очереди настраиваются для каждого порта отдельно. Даже тогда необходимо выполнять настройку для каждого порта отдельно. Все порты должны быть настроены одинаково. Каждый порт можно настраивать двумя разными способами. Это называется набором очереди. При настройке всей системы можно настроить максимально два различных набора очереди. Для интерфейса можно применить любой из двух наборов.

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

Команды управления качеством (QoS) для исходящей очереди

В этом разделе показана классификация всех доступных команд управления качеством обслуживания (QoS).

  • Настройка карты очереди:

    Чтобы назначить значения класса обслуживания (CoS) для исходящей очереди, выполните следующие команды:

    Rack1SW1(config)#mls qos srr-queue output cos-map queue ?
      <1-4>  enter cos-map output queue id
    
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold ?
      <1-3>  enter cos-map threshold id
    
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold 1 ?
      <0-7>  8 cos values separated by spaces

    Чтобы назначить значения класса обслуживания (DSCP) для исходящей очереди, выполните следующие команды:

    Rack1SW1(config)#mls qos srr-queue output dscp-map queue ?
      <1-4>  enter dscp-map output queue id
    
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1 threshold ?
      <1-3>  enter dscp-map threshold id
    
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1 threshold 1 ?
      <0-63>  dscp values separated by spaces (up to 8 values total)
  • Конфигурация очереди:

    Конфигурация исходящей очереди позволяет настроить два набора очередей. Каждый набор очередей может быть настроен для использования буфера заданного размера и порогового значения для исходящих очередей. Затем можно применить любой из наборов очередей к любому порту. По умолчанию, набор очередей 1 назначается всем портам при включении функций обеспечения качества обслуживания (QoS) на коммутаторе.

    Rack1SW1(config)#mls qos queue-set output ?
      <1-2>  queue-set id
    
    Rack1SW1(config)#mls qos queue-set output 1 ?
      buffers    assign buffers to each egress queue
      threshold  Assign threshold values to a queue
    					

    Чтобы настроить размер буфера для всех четырех исходящих очередей, выполните следующие команды:

    Rack1SW1(config)#mls qos queue-set output 1 buffers ?
      <0-99>  enter buffer percentage for queue 1 0-99
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 ?
      <1-100>  enter buffer percentage for queue 2 1-100 (includes CPU buffer)
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 ?
      <0-99>  enter buffer percentage for queue 3 0-99
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 30 ?
      <0-99>  enter buffer percentage for queue 4 0-99

    Чтобы настроить два пороговых значения, резервное и максимальное, для каждой очереди (пороговое значение 3 по умолчанию составляет 100% и является неизменяемым параметром):

    Rack1SW1(config)#mls qos queue-set output 1 threshold ?
      <1-4>  enter queue id in this queue set
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 ?
      <1-400>  enter drop threshold1 1-400
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 ?
      <1-400>  enter drop threshold2 1-400
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60 ?
      <1-100>  enter reserved threshold 1-100
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60 100 ?
      <1-400>  enter maximum threshold 1-400

    Чтобы применить набор очередей (queue-set) к интерфейсу (по умолчанию набор очереди 1 назначается всем портам при включении функций обеспечения качества обслуживания на коммутаторе):

    Rack1SW1(config-if)#queue-set ?
      <1-2>  the qset to which this port is mapped
  • Настройка планировщика:

    Для интерфейса коммутатора доступны три различных настраиваемых параметра. Эти настройки — профилирование трафика полосы пропускания, совместное использование и ограничение. Можно также настроить исходящую очередь 1 в качестве приоритетной. Если функция использования приоритетной очереди включена, SRR обслуживает ее полностью перед обслуживанием трех других очередей. Однако, для входящей приоритетной очереди, SRR обслуживает приоритетную очередь в соответствии с настроенным значением.

    Rack1SW1(config-if)#srr-queue bandwidth ?
      limit  Configure bandwidth-limit for this interface
      shape  Configure shaping on transmit queues
      share  Configure shared bandwidth
    
    Rack1SW1(config-if)#priority-queue ?
      out  egress priority queue

    Настройка ограничения полосы пропускания:

    Rack1SW1(config-if)#srr-queue bandwidth limit ?
      <10-90>  enter bandwidth limit for interface  as percentage

    Настройка профилирования трафика полосы пропускания:

    Rack1SW1(config-if)#srr-queue bandwidth shape ?
      <0-65535>  enter bandwidth weight for queue id 1
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 ?
      <0-65535>  enter bandwidth weight for queue id 2
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 ?
      <0-65535>  enter bandwidth weight for queue id 3
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 30 ?
      <0-65535>  enter bandwidth weight for queue id 4

    Настройка совместного использования полосы пропускания:

    Rack1SW1(config-if)#srr-queue bandwidth share ?
      <1-255>  enter bandwidth weight for queue id 1
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 ?
      <1-255>  enter bandwidth weight for queue id 2
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 20 ?
      <1-255>  enter bandwidth weight for queue id 3
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 20 30 ?
      <1-255>  enter bandwidth weight for queue id 4

    Все четыре очереди участвуют в SRR до тех пор, пока не включена приоритетная очередь, в каковом случае полоса пропускания приоритетной очереди игнорируется при расчетах соотношений других очередей. Приоритетная очередь обслуживается до тех пор, пока все пакеты не буду успешно переданы, после чего обслуживаются все другие очереди. Включение приоритетной очереди выполняется при помощи команды настройки интерфейса priority-queue out .

Конфигурация по умолчанию

Конфигурация карты очереди по умолчанию:

cat3750-qos-config10.gif

Эти сопоставления по умолчанию можно изменять:

				!--- Map CoS to Egress Queue

Distribution1#show mls qos maps
				cos-output-q
   Cos-outputq-threshold map:
              cos:  0   1   2   3   4   5   6   7
              ------------------------------------
  queue-threshold: 2-1 2-1 3-1 3-1 4-1 1-1 4-1 4-1

!--- Map DSCP to Egress Queue

Distribution1#show mls qos maps
				dscp-output-q
   Dscp-outputq-threshold map:
     d1 :d2    0     1     2     3     4     5     6     7     8     9
     ------------------------------------------------------------
      0 :    02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
      1 :    02-01 02-01 02-01 02-01 02-01 02-01 03-01 03-01 03-01 03-01
      2 :    03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01
      3 :    03-01 03-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01
      4 :    01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 04-01 04-01
      5 :    04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01
      6 :    04-01 04-01 04-01 04-01

Конфигурация очереди по умолчанию:

cat3750-qos-config11.gif

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

Выполнена настройка двух наборов очередей, и набор очередей 1 по умолчанию назначается всем портам. Для каждой очереди выделяется по 25% всего буферного пространства. За каждой очередью резервируется 50% выделенного буферного пространства, что составляет 12,5% всего буферного пространства. Все зарезервированное буферное пространство представляет собой резервный пул, а остальная часть буферного пространства является частью обычного пула. При использовании конфигурации по умолчанию максимальный объем памяти для очереди устанавливается в размере 400%. При превышении этого уровня пакеты отбрасываются.

Distribution1#show mls qos
				queue-set 1
Queueset: 1
Queue     :       1       2       3       4
----------------------------------------------
buffers   :      25      25      25      25
threshold1:     100     200     100     100
threshold2:     100     200     100     100
reserved  :      50      50      50      50
maximum   :     400     400     400     400

Distribution1#show mls qos
				queue-set 2
Queueset: 2
Queue     :       1       2       3       4
----------------------------------------------
buffers   :      25      25      25      25
threshold1:     100     200     100     100
threshold2:     100     200     100     100
reserved  :      50      50      50      50
maximum   :     400     400     400     400

Distribution1#show mls qos int
				gigabitEthernet 1/0/20 buffers
GigabitEthernet1/0/20
The port is mapped to qset : 1
The allocations between the queues are : 25 25 25 25

Конфигурация планировщика по умолчанию:

Приоритетная очередь отключена. Как режим профилирования трафика, так и режим совместного использования настроены для использования SRR. Режим профилирования трафика имеет преимущество перед значениями для совместного использования. В результате, очередь 1 обслуживается в режиме профилирования трафика, а очереди 2, 3 и 4 обслуживаются в режиме совместного использования. Это означает, что очередь 1 используется с абсолютным значением, которое составляет 25% от пропускной способности. Очереди 2, 3 и 4 обслуживаются на 25 % всей пропускной способности. При наличии свободной пропускной способности, очереди 2, 3 и 4 могут обслуживаться на скорости, превышающей 25% всей пропускной способности.

Distribution1#show mls qos int gigabitEthernet 1/0/20 queueing
GigabitEthernet1/0/20
Egress Priority Queue : disabled
Shaped queue weights (absolute) :  25 0 0 0
Shared queue weights  :  25 25 25 25
The port bandwidth limit : 100  (Operational Bandwidth:100.0)
The port is mapped to qset : 1

Обработка очереди, сброс пакетов и планирование

Ниже представлены примеры конфигураций:

  • Настройка карты очереди:

    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold 3 5
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1 threshold 1 2 4
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 2 threshold 2 3
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 2 threshold 3 6 7
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 3 threshold 3 0
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 4 threshold 3 1
    					
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1 threshold 3  46
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  16
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  18 20 22
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  25
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  32
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 1  34 36 38
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 2  24 26
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2 threshold 3  48 56
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 3 threshold 3  0
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4 threshold 1  8
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4 threshold 3  10 12 14
    					
  • Конфигурация очереди:

    Здесь показана настройка обоих наборов очередей, 1 и 2. По умолчанию, набор очередей 1 применяется ко всем интерфейсам.

    Rack1SW3(config)#mls qos queue-set output 1 buffers 10 10 26 54
    Rack1SW3(config)#mls qos queue-set output 2 buffers 16 6 17 61
    					
    Rack1SW3(config)#mls qos queue-set output 1 threshold 2 70 80 100 100
    Rack1SW3(config)#mls qos queue-set output 1 threshold 4 40 100 100 100
    
    Rack1SW3(config)#mls qos queue-set output 2 threshold 1 149 149 100 149
    Rack1SW3(config)#mls qos queue-set output 2 threshold 2 118 118 100 235
    Rack1SW3(config)#mls qos queue-set output 2 threshold 3 41 68 100 272
    Rack1SW3(config)#mls qos queue-set output 2 threshold 4 42 72 100 242
    					
    Rack1SW3(config)#int fa 1/0/11
    Rack1SW3(config-if)#queue-set 2
    					

    Применение набора очереди 2 к интерфейсу 1/0/11.

    Rack1SW3(config-if)#do show mls qos int fa 1/0/10 buffers
    FastEthernet1/0/10
    The port is mapped to qset : 1
    The allocations between the queues are : 10 10 26 54
    
    Rack1SW3(config-if)#do show mls qos int fa 1/0/11 buffers
    FastEthernet1/0/11
    The port is mapped to qset : 2
    The allocations between the queues are : 16 6 17 61
  • Настройка планировщика:

    Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5
    Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0
    					

    Исходящая очередь коммутатора Cisco Catalyst 3750 не поддерживает обработку очередей при низкой задержке (LLQ). Однако для него реализована поддержка приоритетной обработки очереди. При настройке приоритетной исходящей очереди, очередь 1 всегда обслуживается при наличии пакета, предназначенного к передаче.

    Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5
    Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0
    Rack1SW3(config-if)#priority-queue out
    					

    Настройка этой команды отражается на нагрузке и скорости обработки SRR, поскольку в SRR принимает участие еще одна очередь. Это означает, что пропорция 1 в команде srr-queue bandwidth shape или srr-queue bandwidth share игнорируются (т. е. не используются при вычислении коэффициента использования).

При помощи следующей команды можно наблюдать сброс пакетов в отдельных очередях:

Step 1:
 
1/ #show platform pm if-numbers
 
use sh platform pm if-numbers and check the port info corresponding to
your interface (This is the OUTGOING INTERFACE on your 3750!!!!!)
for example fas 0/3 will be port 0/4   --> keep 4 as port value, if the
first value is not a zero then you the first value (which is the asic
#).
 
interface gid  gpn  lpn  port slot unit slun port-type lpn-idb gpn-idb
------------------------------------------------------------------------
---------
Gi0/1     1    1    25   0/1  1    1    1    local     Yes     Yes
Gi0/2     2    2    26   0/0  1    2    2    local     Yes     Yes
Fa0/1     3    3    1    0/2  1    1    3    local     Yes     Yes
Fa0/2     4    4    2    0/3  1    2    4    local     Yes     Yes
Fa0/3     5    5    3    0/4  1    3    5    local     Yes     Yes
Fa0/4     6    6    4    0/5  1    4    6    local     Yes     Yes
Fa0/5     7    7    5    0/6  1    5    7    local     Yes     Yes
Fa0/6     8    8    6    0/7  1    6    8    local     Yes     Yes
 
Port Value corresponding to the interface fa 0/3 is 0/4. Now you can see the queue drops of interface fa 0/3
with the command sh platform port-asic stats drop port 4

Step 2:
2/ #show platform port-asic stats drop port
				4
       
Port-asic Port Drop Statistics - Summary
========================================
  RxQueue 0 Drop Stats: 0
  RxQueue 1 Drop Stats: 0
  RxQueue 2 Drop Stats: 0
  RxQueue 3 Drop Stats: 0
...
 
  Port 4 TxQueue Drop Statistics
    Queue 0
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 0
    Queue 1
      Weight 0 Frames 0
      Weight 1 Frames 2755160   <--- Here is an example of drops
      Weight 2 Frames 0
    Queue 2
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 0
    Queue 3
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 8

Связанные обсуждения сообщества поддержки Cisco

В рамках сообщества поддержки Cisco можно задавать и отвечать на вопросы, обмениваться рекомендациями и совместно работать со своими коллегами.


Дополнительные сведения


Document ID: 91862