antiCisco blogs


блоги по технологиям и оборудованию cisco от инструкторов

Опубликовано 29 Апрель , 2011

В этой серии статей я расскажу о настройке QoS на коммутаторах 2960, 3560 и 3750. Объединил я их потому, что архитектура QoS и возможности у них примерно одинаковы (родоначальником явился 3750, потом были выпущены 2960 и 3560). Поскольку 3560 и 3750 – свичи 3-го уровня, они умеют немного больше, чем 2960.

Как-то в личной переписке с Сержем (Fedia) я сказал, что следующая моя статья на Антициске будет называться «Как настроить QoS на 3750 и не свихнуться» 🙂 Пусть теперь это будет кодовым названием серии статей – отдельно поговорим о классификации и маркировке, системе очередности, полисинге и VLAN-based QoS на 3560/3750.

Несмотря на то, что 2960 — коммутатор уровня доступа и «наследник» 2950, умеет он значительно больше своего предшественника. Во первых, он понимает все 64 возможных значения DSCP, а не 13 выборочных, как 2950. Например, таблица преобразования DSCP -> CoS выглядит так:

sw#sh 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

Например, во что преобразуется DSCP 46? Смотрим четверочку по горизонтали, шестерку по вертикали, получаем CoS 5. Просто как 101110 🙂

В 2950 любая маркировка приводилась к «общему знаменателю» — Internal DSCP. Здесь общий знаменатель называется QoS Label – и он может быть как DSCP, так и CoS – этакий двуликий Янус. Это зависит от того, какое значение (DSCP или CoS) мы будем использовать для распределения пакетов по исходящим очередям и порогам сброса. Теперь в каждой исходящей очереди мы можем настроить по 3 порога сброса для разных значений маркировок – получится WTD – взвешенный tail-drop.

Семейство 2960/3560/3750 понимает IP Precedence (есть таблички преобразования IPP -> DSCP, и можно писать match ip precedence в класс-мапе). Еще есть DSCP-мутация – не пугайтесь, это всего лишь преобразование одного значения DSCP в другое значение DSCP:

sw#sh mls qos maps dscp-mutation
Dscp-dscp mutation map:
Default DSCP Mutation 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 также ищем на пересечении строки и столбца.

В class-map теперь можно писать несколько условий и ставить match-all или match-any.

Классификация по аксесс-листам теперь понимает диапазон портов (то есть создаем ACL с range и скармливаем его класс-мапу – match access-group <номер ACL>

Появились входящие очереди, и поменялся алгоритм работы исходящих очередей – теперь это SRR (Shaped Round Robin).

Напоследок — очень важный момент, который иногда забывается – на всех коммутаторах семейства надо писать в глобальном конфиге mls qos – иначе весь QoS будет настроен, но работать он не будет.

Дисклеймер: все фичи и настройки проверялись на 2-х представителях семейства (2960 и 3750) с версией IOS 12.2(55)SE1.

Итак, кратенький обзор закончен, теперь:

Про классификацию и маркировку,

Про настройку очередей,

Про полисинг (coming soon),

Про 3560/3750 и VLAN-based QoS (coming soon).

--
С уважением,
Евгений Киселев aka Stratosphere
 

Метки: , , , , ,
Опубликовано: Маршрутизаторы и коммутаторы

 

8 комментариев “QoS на коммутаторах семейства 2960/3560/3750. Дорожная книга и старт.”

comment rss - Trackback

  1. P@ve1:

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

  2. Korso:

    Евгений есть практический вопрос по QOS на коммутаторах, как с вами можно связаться?

  3. axell:

    «Например, во что преобразуется DSCP 46? Смотрим четверочку по горизонтали, шестерку по вертикали, получаем CoS 5»

    а не наоборот?

    • Stratosphere:

      Приветствую!
      если бы было сначала по вертикали, было бы так: DSCP 95 преобразуется в CoS 7. Но ведь у нас нет DSCP 95, зато есть DSCP 59! 🙂
      Последнее валидное значение DSCP (если смотреть сначала по горизонтали, а потом по вертикали) как раз получается 63.

  4. mcmk:

    Здравствуйте!
    Немного не по теме Вашего поста, но все же 🙂
    Имеется cat 3550, на нем:

    interface FastEthernet0/X
    switchport access vlan Y
    switchport trunk encapsulation dot1q
    wrr-queue bandwidth 25 10 25 40
    wrr-queue cos-map 1 0 1
    wrr-queue cos-map 2 4
    wrr-queue cos-map 3 3 5
    wrr-queue cos-map 4 2 6 7

    получается, что в 4 выходные очереди становятся пакеты с назначенными значениями CoS в соответствии с cos-map, это понятно.
    Вопрос: очереди являются выходными относительно именно этого конкретного сконфигурированного порта, то есть все что с него «уйдет» в сторону конечного устройства (в данном случае) будет обработано согласно конфигу?

  5. Margarett:

    При недоверенном режиме на порту с входящих пакетов не снимается метка CoS (C2960). Свитч для теста использую как трубу. Думала, что на выходе будет 0, ан нет. Воз и ныне там. То есть метка. Можете помочь? Пока подробностями засорять пост не берусь

» Оставить комментарий

Вы должны войти чтобы прокомментировать.