Не принимая во внимание тип сети, в рамках которой мы хотим реализовать поддержку качества обслуживания (корпоративная сеть, сеть доступа или магистральная), передачу данных «из-конца-в-ко-нец» можно представить просто как прохождение пакетов через множество каналов и их обработку множеством маршрутизаторов. Таким образом, в предельном случае, задачу обеспечения качества обслуживания можно свести к задаче обработки (перенаправления) пакетов маршрутизаторами.
Задержка пакета при передаче «из-конца-в-конец» может быть определена как сумма задержек в линиях маршрута и времени обработки пакета в каждом узле. Задержки, вносимые линиями передачи, достаточно легко прогнозируются, т.к. они построены на таких известных технологиях как SDH, SONET, ATM и пр., в то время как время обработки пакета в узле можно лишь оценить снизу и сверху (определить минимальное и максимальное значения). Эти значения зависят от множества факторов как в отдельности, так и вместе, например, программного обеспечения узла, уровня нагрузки в нем, информации о перегрузке на направлении и т.д.
Для понимания базовых принципов функционирования маршрутизатора рассмотрим структуру маршрутизатора (рис. 2.3), реализующего услугу «наилучшая попытка» (Best Effort), т.е. трафик обрабатывается со скоростью, максимально возможной в текущих условиях загрузки ресурсов сети без обеспечения каких-либо гарантий по качеству обслуживания. Будем далее называть такой маршрутизатор традиционным.
Обратим внимание, что в традиционном маршрутизаторе отсутствует возможность изоляции пакетов трафика различных типов (приоритетов) друг от друга, т.е. все пакеты помешаются в общую очередь и обслуживаются поочередно (FIFO). Очевидно, что результатом такой особенности является ухудшение параметров обслуживания трафика - влияние различных потоков друг на друга вызывает увеличение задержки, джиттера и потерь.
Это объясняется тем, что некоторые типы трафика, например, соединения TCP для передачи электронной почты, более терпимы к задержкам нежели к потерям - очередь большой длины идеально подходит для такого типа трафика. Для других типов трафика, таких как, например, передача потокового видео через Интернет с использованием протокола UDP, предпочтительным является сброс (потеря) пакета при условии, что время его передачи в сети (или, фактически, аддитивное время нахождения пакета в буферах транзитных маршрутизаторов) превышает некоторый порог. В [Kouch03] показано, что при передаче последовательности MPEG для услуги VoD (Video-on-Demand) при определенных условиях размер буфера транзитного маршрутизатора целесообразно ограничивать максимальным размером одного пакета.
Еще одним сдерживающим фактором обеспечения качества обслуживания при использовании традиционных маршрутизаторов является неуправляемая потеря пакетов. В современных телекоммуникационных фиксированных сетях, построенных на базе протокола IP, подавляющее количество потерь пакетов происходит в буферах маршрутизаторов.
Потери вызываются, в первую очередь, перегрузками. Как известно, буферы маршрутизаторов имеют ограниченный размер, поэтому при высокой нагрузке вероятность того, что буфер будет полностью занят пакетами, стремительно растет. Если в момент времени, когда в маршрутизатор поступает новый пакет, все пространство буфера занято, то новый пакет удаляется, т.е. происходит потеря.
Рис. 2.3. Структура традиционного маршрутизатора (реализующего услугу Best Effort)
Теоретическая задержка пакета «из-конца-в-конец» для некоторой гипотетической сети может быть оценена как сумма средних задержек на каждом этапе передачи между транзитными узлами и среднего времени обработки пакета в каждом узле. Кроме того, время передачи по каналам примерно фиксировано, поэтому если для пакетов некоторого потока обеспечить верхний предел значения задержки в каждом узле маршрута «из-конца-в-конец», то можно гарантировать, что время доставки пакета «из-конца-в-конец» не будет превышать некоторого значения. Джиттер задержки также является важным параметром при обеспечении качества обслуживания, особенно для мультимедийных приложений реального времени. Значение джиттера определяет дисперсию задержки, или, другими словами, стабильность параметров маршрута «из-конца-в-конец».
Резюмируем информацию, изложенную выше. Исходя из структурных особенностей и «логики» программного обеспечения, можно утверждать, что традиционный маршрутизатор не способен поддерживать качество обслуживания на уровне коммерческого продукта. Таким образом, задачу обеспечения качества обслуживания можно сформулировать как изменение структуры и поведения традиционного маршрутизатора. Причем гипотетическая сеть провайдера сети Интернет (Internet Service Provider, далее - ISP), поддерживающая качество обслуживания, должна состоять только из маршрутизаторов с одинаковыми возможностями. Говоря другими словами, в маршруте «из-конца-в-конец» для услуги с заданным качеством обслуживания пакеты должны обрабатываться только «маршрутизаторами с реализованными функциями качества обслуживания» (QoS-aware routers). Если в маршруте «из-конца-в-конец» будет содержаться хотя бы один традиционный (или с нереализованными функциями обеспечения качества обслуживания) маршрутизатор, то с высокой степенью уверенности можно утверждать, что качество обслуживания для рассматриваемой услуги не будет поддержано.
Резюмируя высказанные выше соображения об обеспечении качества обслуживания в сетях IP, особое внимание стоит отвести маршрутизатору - именно тому объекту, при помощи которого можно построить сеть с поддержкой качества обслуживания. Очевидно, что маршрутизатор должен определять класс обслуживания поступающих пакетов, обеспечивать потоки необходимым буферным пространством и обслуживать их в соответствии с приоритетом. В (ArmOO] была предложена концепция построения маршрутизатора с реализованными функциями обеспечения качества обслуживания именуемая «Классификация, Буферизация и Обслуживание» (Classify, Queue and Schedule, далее - CQS). Далее в этой главе будут рассмотрены составные части обеспечения качества обслуживания в транзитном узле в соответствии с этой концепцией.
⇐Явная обратная связь | Управление трафиком и качество обслужевания в сети | Принцип «справедливого распределения ресурсов»⇒