Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
78
Добавлен:
25.03.2016
Размер:
555.52 Кб
Скачать

Резервирование ресурсов

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

Резервирование ресурсов и коммутация пакетов

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

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

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

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

Пример

Предположим, что в исходном состоянии ресурсы сети, показанной на рис. 7.12, не были зарезервированы. Затем было решено выделить некоторые ресурсы сети потоку 1. Для этого необходимо знать, по крайней мере, такой параметр потока, как среднюю требуемую скорость передачи данных. Предположим, что эта скорость для потока 1 равна 15 Мбит/с, а пропускные способности всех каналов связи (а значит, и интерфейсов коммутаторов) равны 100 Мбит/с. Будем для упрощения считать, что каждый входной интерфейс оснащен собственным процессором, производительность которого превышает производительность данного интерфейса, так что процессор не может быть узким местом, и мы не будем принимать его в расчет при принятии решения о выделении ресурсов.

Рис. 7.12. Резервирование ресурсов в сетях с коммутацией пакетов

Поток 1 может быть принят на обслуживание, потому что все интерфейсы на его пути обладают достаточной для его обслуживания производительностью (15 < 100). Поэтому резервирование выполняется, и каждый интерфейс вдоль пути потока запоминает, что он уже выделил 15 Мбит/с своей производительности потоку 1.

Допустим, что после этого возникла потребность в резервировании ресурсов для потока 2, который обладает средней скоростью передачи данных 70 Мбит/с. Такое резервирование также может быть сделано, так как у всех интерфейсов вдоль маршрута потока 2 свободная (не зарезервированная) пропускная способность интерфейсов превышает 70 Мбит/с. У тех интерфейсов, через которые проходят как поток 1, так и поток 2 (интерфейсы i3 и i1 коммутаторов S2 и S3 соответственно), остается 85 Мбит/с свободной пропускной способности, а у остальных интерфейсов — 100 Мбит/с. После резервирования у интерфейсов i3 и i1 остается по 15 Мбит/с свободной пропускной способности.

Также оказывается успешной попытка резервирования пропускной способности для потока 3, средняя скорость которого равна 10 Мбит/с. Однако резервирование для потока 4, средняя скорость которого 20 Мбит/с, оказывается невозможным, так как у интерфейсов i3 и i1 осталось только по 5 Мбит/с свободной пропускной способности.

Этот пример показывает, что сеть отказывается принять на обслуживание поток, если она не может гарантировать ему требуемый уровень качества обслуживания. Мы, конечно, упростили схему резервирования ресурсов. В действительности, сеть может гарантировать потоку не только соблюдение его средней скорости, о которой мы говорили в примере, но и обеспечить другие характеристики QoS, такие как максимальная задержка, максимальная вариация задержки и допустимый уровень потерь данных. Однако для этого сеть должна знать некоторые дополнительные параметры потока, например его максимальный уровень пульсации, чтобы зарезервировать необходимое пространство в буфере.

Свободная пропускная способность для чувствительного к задержкам трафика и для эластичного трафика должна при резервировании учитываться отдельно. Чтобы обеспечить для приоритетного трафика приемлемый уровень задержек и их вариаций, максимальная суммарная резервируемая пропускная способность не должна превышать 30-50 % от общей пропускной способности каждого ресурса. Для иллюстрации этого воспользуемся предыдущим примером. Пусть мы решили отвести чувствительному к задержкам трафику 30 % пропускной способности ресурсов. Тогда, если чувствительными к задержкам являются потоки 1 и 3, то резервирование для них возможно. Если же такими потоками являются потоки 1 и 2, то нет, так как суммарная средняя скорость этих потоков равна 85 Мбит/с, что больше чем 30 Мбит/с (30 % от 100 Мбит/с).

Если мы подразумеваем, что чувствительный к задержкам трафик будет обслуживаться в приоритетной очереди, то при резервировании пропускной способности для эластичного трафика нужно учитывать, что ему может быть выделена только та часть пропускной способности, которая осталась от чувствительного к задержкам трафика. Например, если потоки 1 и 3 являются чувствительными к задержкам и мы выделили им требуемую среднюю пропускную способность 30 Мбит/с, то для эластичных потоков остается только 70 Мбит/с свободой пропускной способности.

Что же меняется в сети после того, как в ней выполнено резервирование? Ничего принципиально нового. Просто сеть оказывается загруженной рациональным образом. В ней нет ресурсов, которые работают с перегрузкой. Механизмы организации очередей по-прежнему обеспечивают временную буферизацию пакетов в периоды пульсаций. Так как мы планировали загрузку ресурсов из расчета средних скоростей передачи данных, то на периодах пульсаций в течение некоторого ограниченного времени скорости потоков могут превышать средние скорости, так что механизмы борьбы с перегрузками по-прежнему нужны. Для обеспечения требуемых средних скоростей потоков на периодах перегрузок соответствующие потоки могут обслуживаться с помощью взвешенных очередей.

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

Сеть с коммутацией каналов подобного перераспределения ресурсов выполнить не может, так как у нее в распоряжении нет независимо адресуемых единиц информации — пакетов!

Пример

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

Возвращаясь от автомобильного трафика к сетям с коммутацией пакетов, следует отметить: для того чтобы соблюсти гарантии обслуживания каждого потока, описанной схемы резервирования недостаточно. Мы предположили, что точно знаем среднюю пропускную способность и параметры пульсаций потоков. На практике такие сведения не всегда бывают достоверными. А что случится, если поток будет поступать в сеть со скоростью, превышающей ту, которую мы учитывали при резервировании? И еще один немаловажный вопрос остается открытым — как обеспечить автоматическое резервирование пропускной способности вдоль маршрута следования потока?

Для решения поставленных задач в сети необходима система обеспечения качества обслуживания, в которую помимо механизмов управления очередями входят некоторые дополнительные механизмы.

Системы обеспечения качества обслуживания, основанные на резервировании

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

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

  • механизмов обслуживания очередей;

  • протокола резервирования ресурсов;

  • механизмов кондиционирования трафика.

Рис. 7.13. Архитектура системы обеспечения качества обслуживания,

основанная на резервировании ресурсов

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

Протокол резервирования ресурсов нужен для автоматизации процедуры резервирования на всем пути следования некоторого потока, то есть «из конца в конец». Протокол резервирования является аналогом протоколов установления соединения в сетях с коммутацией каналов, поэтому он иногда называется сигнальным протоколом, в соответствии с терминологией, принятой для этого типа сетей.

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

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

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

В сетях с виртуальными каналами функции протокола резервирования ресурсов обычно выполняет протокол установления виртуального канала — это является его дополнительной задачей. В дейтаграммных сетях протокол резервирования является самостоятельным протоколом. Примером такого протокола является протокол резервирования ресурсов (ReSource reserVation Protocol, RSVP), который работает в IP-сетях. Резервирование может выполняться и вручную администратором сети, который должен сконфигурировать параметры резервирования для каждого потока в каждом коммутаторе сети.

Механизмы кондиционирования трафика следят за тем, чтобы текущие параметры потоков соответствовали заявленным при резервировании. Это своего рода контрольно-пропускные пункты, которые проверяют трафик на входе в коммутатор. Без таких механизмов невозможно выполнение гарантий обслуживания трафика. Если средние скорости потоков или пульсации превысят тот уровень, который был указан при резервировании, то задержки и потери пакетов выше допустимых. Такое превышение может произойти по разным причинам. Скажем, потому, что достаточно трудно точно оценить параметры трафика. Предварительные измерения средней скорости и пульсации могут не дать правильного результата, потому что эти характеристики могут меняться с течением времени, и через неделю они уже не будут соответствовать действительности. Кроме того, нельзя исключать умышленного искажения характеристик трафика, что возможно при использовании коммерческих услуг.

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

  • Классификация трафика. Эта функция выделяет из общей последовательности пакетов, поступающих в устройство, пакеты одного потока, имеющего общие требования к качеству обслуживания. В сетях с виртуальными каналами признаком потока является метка виртуального пути, поэтому дополнительной классификации не требуется. В дейтаграммных сетях такого признака, как правило, нет, поэтому классификация выполняется на основе нескольких формальных признаков пакета — адресов источника и назначения, идентификаторов приложений и т. п. Без классификации пакетов в дейтаграммных сетях невозможно обеспечить требуемое качество обслуживания.

  • Профилирование трафика. Для каждого входного потока в каждом коммутаторе имеется соответствующий ему набор параметров QoS, то есть профиль трафика. Профилирование трафика подразумевает проверку соответствия каждого входного потока параметрам его профиля. Существуют алгоритмы, которые позволяют выполнить такую проверку автоматически в темпе поступления пакетов на входной интерфейс коммутатора. Примерами алгоритмов профилирования являются алгоритмы «дырявого ведра» и «ведра маркеров». Эти алгоритмы будут рассмотрены при изучении отдельных технологий, таких как IP, Frame Relay и ATM.

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

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

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

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

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

Однако сеть не может сконфигурировать алгоритм приоритетного обслуживания так, чтобы он строго обеспечил какой-либо заранее заданный порог задержек и их вариации. Направление пакетов в приоритетную очередь только позволяет гарантировать, что задержки будут достаточно низкими — существенно меньше, чем у пакетов, которые обрабатываются по алгоритму взвешенного обслуживания. Но аналитически оценить количественные значения задержек очень сложно. Каким же образом поставщик услуг может выполнить свои обязательства перед клиентами?

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

Соседние файлы в папке olifer_v_g_olifer_n_a_kompyuternye_seti_principy_tehnologii