Основы QoS (Quality of Service)

Для начала расшифруем аббревиатуры. ToS означает Type of Service, DSCP — Differenciated Services Code Point, CoS — Class of Service, QoS — Quality of Service.

Термин QoS объединяет три термина ToS, DSCP, CoS. QoS — Quality of Service (качество обслуживания) выражается в построении и обработке очереди пакетов с разным приоритетом по одному из алгоритмов DWRED (Distributed Weighted Random Early Detection), WFQ (weighted fair queueing), CAR (Committed Access Rate).

Аббревиатуры ToS и DSCP родственны — используются для обозначения специального байта данных стандартного заголовка IP-пакета. Этот байт несет информацию о приоритете трафика, который в бизнес-трафике обычно назначается для пакетов IP-телефонии (третий сетевой уровень L3). Поскольку этот один и тот же байт иногда интерпретируется по-разному (либо как ToS байт, либо как DS/DSCP байт), получается некоторая путаница, хотя смысл и принцип технологии приоритезации не меняется — пакеты, помеченные более высоким приоритетом, передаются быстрее (менее приоритетные становятся в очередь).

Накладывание на пакеты битов приоритета еще называют «маркированием» трафика, и чтобы приоритезация действительно работала, на всем пути прохождения трафика биты приоритета должны быть проанализированы и обработаны на активном сетевом оборудовании (настраиваемые роутеры и коммутаторы). На рисунке показано расположение бит байта маркировки трафика (красным помечена наиболее важная, серым — неиспользуемая часть).

Когда используют терминологию ToS, то в контексте приоретизации имеют в виду 3 старшие бита P2..P0, кодирующие уровень приоритета от 0 (минимальный приоритет) до 7 (максимальный приоритет).

Качество обслуживания в операторских сетях

Для IP-телефонии применяется уровень приоритета 5 (critical, ToS-байт равен 0xA0 или 10100000b), а для обычного трафика уровень 0 (routine, ToS-байт равен 0x00 или 00000000b). У Cisco есть для каждого уровня приоритета специальное имя (precedence critical, precedence flash и т. д., см. таблицу).

IP Precedence Value

Уровень Имя
0   routine
1   priority
2   immediate
3   flash
4   flash-override
5   critical
6   internet
7   network

Когда используют терминологию DSCP, имеются в виду 6 старших бит DS5..DS0, где DS5..DS3 кодируют уровень класса обслуживания от 0 (минимальный приоритет) до 7 (максимальный приоритет) и приоритет удаления (от 0, когда приоритет удаления максимальный, до 7, когда приоритет удаления минимальный — кодирование приоритета удаления “обратное”). В итоге получается число от 0 до 63, кодирующее приоритет (чем больше число, тем трафик важнее). Такое многоуровневое кодирование приоритета часто оказывается избыточным, и поэтому используются только биты DS5..DS3. При IP-телефонии применяется класс сервиса 5 (DS-байт равен 0xA0 или 10100000b), а для обычного трафика класс сервиса 0 (DS-байт равен 0x00 или 00000000b). Сравните с ToS — изменилась только терминология, а значение байта передается то же самое.

Буквенные мнемонические коды величины DSCP можно посмотреть командой:
Router(config)# class-map match-all VOIP
 1751-uut1(config-cmap)# match ip dscp ?
   <0-63>  Differentiated services codepoint value
   af11    Match packets with AF11 dscp (001010)
   af12    Match packets with AF12 dscp (001100)
   af13    Match packets with AF13 dscp (001110)
   af21    Match packets with AF21 dscp (010010)
   af22    Match packets with AF22 dscp (010100)
   af23    Match packets with AF23 dscp (010110)
   af31    Match packets with AF31 dscp (011010)
   af32    Match packets with AF32 dscp (011100)
   af33    Match packets with AF33 dscp (011110)
   af41    Match packets with AF41 dscp (100010)
   af42    Match packets with AF42 dscp (100100)
   af43    Match packets with AF43 dscp (100110)
   cs1     Match packets with CS1(precedence 1) dscp (001000)
   cs2     Match packets with CS2(precedence 2) dscp (010000)
   cs3     Match packets with CS3(precedence 3) dscp (011000)
   cs4     Match packets with CS4(precedence 4) dscp (100000)
   cs5     Match packets with CS5(precedence 5) dscp (101000)
   cs6     Match packets with CS6(precedence 6) dscp (110000)
   cs7     Match packets with CS7(precedence 7) dscp (111000)
   default Match packets with default dscp (000000)
   ef       Match packets with EF dscp (101110)
 Router1(config-cmap)# match ip dscp af31

Эти коды используются также при назначении трафику маркировки, при конфигурировании policy-map:
!создается карта политики Police-GE0/1
policy-map Police-GE0/1
  class Voice-GE0/1
  priority 5000
  set dscp ef
  class Route-GE0/1
  set dscp cs6
  priority 1000
  class Signal-GE0/1
  set dscp cs3
  priority 4500
  class class-default
  fair-queue

Когда используется термин CoS, то обычно имеется в виду перенос информации о приоритете на втором сетевом уровне L2 (MAC-адреса). При этом для кодирования приоритета используются 3 бита (получаются уровни от 0 до 7). Расположение этих бит в потоке данных зависит типа магистрального канала L2.

Материал из Xgu.ru

Перейти к: навигация, поиск

Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Quality of Service, QoS, качество обслуживания — …

В различных операционных системах и сетевых устройствах механизмы QoS реализованы по-разному:

[править] Основные понятия

  • Quality of Service (QoS) —
  • Type of Service (ToS) — поле в IP-заголовке (1 байт). Предназначено для маркировки трафика на сетевом уровне.
  • Class of Service (CoS) — поле из 3 бит в теге 802.1Q Ethernet-кадра.
  • Differentiated Services Code Point (DSCP) — RFC 2474
  • Differentiated Services (DiffServ) — RFC 2475 (An Architecture for Differentiated Services)

[править] Классификация и маркировка трафика

[править] IP Precedence

Изначально в поле ToS были выделены 3 бита, которые были названы IP Precedence (IPP). Ещё 4 бита определяли флаги, которые могли быть выставлены для указания конкретного сервиса QoS.

Значения поля IP Precedence и соответствующие названия:

Имя Десятичное значение Двоичное значение
Routine Precedence 0 000
Priority Precedence 1 001
Immediate Precedence 2 010
Flash Precedence 3 011
Flash Override Precedence 4 100
Critic/Critical Precedence 5 101
Internetwork Control Precedence 6 110
Network Control Precedence 7 111

[править] Differentiated Services

Позже был определен новый формат поля ToS.

Серия RFC, которые определяют новую трактовку поля ToS и возможности связанные с этим, называется Differentiated Services (DiffServ):

  • Сам байт ToS был переименован в поле Differentiated Services (DS);
  • Вместо поля IPP было определено новое поле из 6 бит, которое называется Differentiated Services Code Point (DSCP);
  • Оставшиеся 2 бита поля DS используются в QoS Explicit Congestion Notification (ECN).

[править] Терминология

  • DS behavior aggregate — множество пакетов с одинаковым значением DSCP, которые передаются через канал в одном направлении.

  • DS-домен (DS domain) — непрерывное множество узлов, которые используют общие политики обеспечения связи и одинаковые PHB.

[править] Per-Hop Behaviors

DiffServ описывает каким образом должны быть обработаны пакеты по пути их передачи. Осуществляется это заданием соответствия между конкретным значением DSCP в IP-пакете и тем, каким образом пакет будет обрабатываться на каждом узле сети. Описание конкретного типа обработки пакетов называется Per-Hop Behaviors (PHB).

PHB на сетевом узле реализуется, например, с помощью обслуживания очередей на исходящем интерфейсе на основе weighted round-robin (WRR) или управления приоритетом отбрасывания пакетов.

Некоторые PHB определены в RFC:

  • Default PHB
  • Class Selector PHB
  • Expedited Forwarding PHB
  • Assured Forwarding PHB

В RFC описаны рекомендованные для использования соответствия DSCP и PHB, но в любом DS-домене могут быть определены другие соответствия.

[править] Default PHB

Для того чтобы сетевые узлы, которые не маркируют трафик, могли передавать данные по сети используется значение DSCP 000000, которое называется Default PHB. Пакеты, которые изначально были промаркированы для Default PHB, могут быть перемаркированы на другом узле сети при передаче данных.

[править] Class Selector PHB

Для совместимости с предыдущим определением поля ToS (IP Precedence), в DiffServ определены специальные значения, которые совместимы с IPP.

Сетевые узлы, которые трактуют поле ToS как IPP, прочитают только первые три бита из DSCP и трафик будет обслужен в соответствии с приоритетами IPP. Хотя узлы, которые работают с использованием DiffServ, могут, получив пакет с таким же значением DSCP, обрабатывать его дополнительно.

В RFC2474 определены требования к Class Selector PHB — это минимальные требования к набору PHB, которые соответствуют тому как обрабатываются пакеты на основании поля IP Precedence.

Кроме того, определены значения DSCP Class Selector Codepoints, которые обязательно должны соответствовать Class Selector PHB.

Могут быть определены другие, более детальные, процедуры PHB для зарезервированных значений DSCP. Другие значения DSCP могут ссылаться на Class Selector PHB.

Расшифровка DSCP и TOS значений

[править] Expedited Forwarding PHB

RFC2598 описывает значение 46 DSCP, которое называется Expedited Forwarding (EF).

Пакеты, которые промаркированы значением EF, должны получать приоритет в очереди таким образом, чтобы для них было минимальное время ожидания (latency) и др.

[править] Assured Forwarding PHB

Assured Forwarding (AF) Per-Hop-Behavior (PHB) Group — обеспечивает доставку IP-пакетов в четырех независимо передаваемых AF-классах.

В каждом классе IP-пакету может быть присвоено одно из трёх различных уровней drop precedence.

DS-узел не меняет порядок IP-пакетов в одном микропотоке, если они принадлежат одному AF-классу.

[править] Классификация и маркировка трафика на канальном уровне

При передаче IP-пакета по сети, пакет инкапсулируется в различные заголовки на канальном уровне. В заголовках канального уровня есть поля, которые могут использоваться для классификации и маркировки трафика.

Примеры полей:

  • 802.1Q (ethernet frame) — Class of Service (CoS), 3 бита;
  • Frame Relay — Discard Eligible (DE), 1 бит;
  • ATM — Cell Loss Priority (CLP), 1 бит;
  • MPLS — Traffic Class (TC), 3 бита.

[править] Class of Service

В Ethernet-заголовке может передаваться значение приоритета только если трафик содержит тег 802.1Q.

Стандарт IEEE 802.1Q определяет 3 бита в теге, которые называются user-priority bits. Однако чаще, применимо к этому полю, используется термин Class of Service.

Class of Service (CoS) способ управления трафиком, который позволяет группировать трафик одного типа вместе и затем обрабатывать его по-разному, в зависимости от приоритета.

QoS предоставляет различные уровни сервиса на основании bandwidth и времени доставки (delivery time) (например, с помощью bandwidth prioritization или traffic shaping), а CoS — приоритета доставки трафика.

Категории: Незавершённая статья | QoS

Differentiated services

.

Добавить комментарий

Закрыть меню