Введение

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

Эффекты

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

Влияние на источники, контролируемые загрузкой

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

Влияние в случае ATM

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

Процесс

RFC 2475 описывает элементы управления трафиком, такие как счетчик и ограничитель. Они также могут опционально включать в себя маркер. Счетчик измеряет трафик и определяет, превышает ли он установленные параметры (например, по GCRA). В случае превышения параметров, определенная политика решает, отбрасывать ли данное PDU, или применять маркировку, и каким образом. Маркировка может включать установку флага перегрузки (например, ECN-флага TCP или бита CLP ATM) или установку индикатора агрегированного трафика (например, кода точки дифференцированных услуг IP – DSCP). В простых реализациях трафик классифицируется на две категории, или "цвета": соответствующий (зеленый) и превышающий (красный). RFC 2697 предлагает более точную классификацию, с тремя "цветами". В этом документе параметры установлены с помощью трех значений: гарантированная скорость передачи информации (CIR), гарантированный размер пакета (CBS) и максимальный размер пакета (EBS). Пакет считается "зеленым", если он не превышает CBS, "желтым", если он превышает CBS, но не EBS, и "красным" в противном случае. "Трехцветный маркер с одной скоростью", описанный в RFC 2697, допускает временные всплески трафика. Всплески разрешены, если линия была недостаточно загружена до их появления. Более предсказуемый алгоритм описан в RFC 2698, который предлагает "трехцветный маркер с двумя скоростями". RFC 2698 определяет новый параметр – пиковую скорость передачи информации (PIR). RFC 2859 описывает "Трехцветный маркер со сдвижным временным окном", который измеряет поток трафика и маркирует пакеты на основе измеренной пропускной способности относительно двух заданных скоростей: гарантированной целевой скорости (CTR) и пиковой целевой скорости (PTR).

Реализация

На оборудовании Cisco как управление трафиком, так и его формирование реализуются с помощью алгоритма токенов-в-букете. Управление трафиком в сетях ATM известно как контроль параметров использования/сети. Сеть также может отбрасывать некорректный трафик (с использованием Priority Control). Базовым стандартом для управления трафиком и его формирования в ATM (определенным ATM Forum и ITU-T) является алгоритм Generic Cell Rate Algorithm (GCRA), который описывается как вариант алгоритма "утекающего ведра". Однако, сравнение алгоритмов "утекающего ведра" и "токенов-в-букете" показывает, что они являются зеркальными отражениями друг друга: один добавляет содержимое ведра там, где другой его изымает, и наоборот. Таким образом, при эквивалентных параметрах, реализации обоих алгоритмов будут классифицировать один и тот же трафик как соответствующий нормам и не соответствующий им. Управление трафиком требует ведения численной статистики и измерений для каждого контролируемого потока, но не требует реализации или управления большими объемами буферов пакетов. Следовательно, его реализация значительно проще, чем формирование трафика.

Контроль доступа к соединению в качестве альтернативы

Сети, ориентированные на установление соединения (например, системы ATM), могут выполнять контроль допуска к соединению (CAC) на основе соглашений об трафике. В контексте Voice over IP (VoIP) это также известно как контроль допуска вызовов (CAC). Приложение, желающее использовать сеть, ориентированную на установление соединения, для передачи трафика, должно сначала запросить соединение (через сигнализацию, например Q.2931), что подразумевает предоставление сети информации о характеристиках трафика и требуемом качестве обслуживания (QoS). Эта информация сопоставляется с соглашением об трафике. Если запрос на соединение удовлетворен, приложению разрешается использовать сеть для передачи трафика. Эта функция защищает сетевые ресурсы от злонамеренных соединений и обеспечивает соответствие каждого соединения согласованному соглашению об трафике. Отличие CAC от управления трафиком заключается в том, что CAC представляет собой априорную проверку (перед началом передачи), а управление трафиком – апостериорную проверку (во время передачи).