Групповое вещание в IP-сетях

Автор работы: Пользователь скрыл имя, 08 Июня 2014 в 15:22, дипломная работа

Краткое описание

Основной целью группового вещания является создание эффективного механизма передачи данных по схеме "один-ко-многим" и "многие-ко-многим". Традиционные механизмы стека TCP/IP доставки пакетов мало пригодны для поддержки группового вещания. Например, использование уникальных адресов (unicast) приводит к необходимости установления многочисленных двухточечных соединений между отправителем и каждым из получателей. Другим способом передачи данных является широковещательная передача, когда станция направляет пакеты, используя широковещательные адреса (broadcast). Пакеты с такими адресами передаются всем конечным узлам указанной сети независимо от того, нужны ли они каждому из них. Во многих ситуациях такой способ передачи также оказывается неэффективным вследствие своей избыточности, которая ведет к чрезмерному росту трафика, особенно в крупных сетях.

Прикрепленные файлы: 1 файл

Диплом Групповая адресация в IP сетях.doc

— 3.51 Мб (Скачать документ)

Правила политики могут конфигурироваться и храниться отдельно в каждом сетевом устройстве. Однако это требует от администратора крупной сети значительных усилий и наверняка порождает большое количество ошибок, что приводит к несогласованной работе сетевых устройств. Ведь одно из них может выделить определенному потоку пропускную способность в 1 Мбит/с, а другое — в 1 Кбит/с.

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

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

Описанной модели службы QoS соответствует большинство конкретных протоколов поддержки QoS, таких как RSVP, DiffServ сетей TCP/IP, протоколов служб CBR, VBR и ABR сетей ATM.

 

    1. Алгоритмы управления очередями

 

      1. Общая информация

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

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

Главным по степени влияния на возникновение очередей фактором является коэффициент нагрузки устройства — отношение средней интенсивности входного трафика устройства к средней интенсивности продвижения пакетов на выходной интерфейс.

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

Это происходит тогда, когда имеется некоторая вариация интервалов поступления пакетов в устройство — чем больше эта вариация, тем больше средняя длина очереди. Вариация интервалов поступления пакетов является вторым по величине фактором, влияющим на поведение очередей, после коэффициента нагрузки. При пульсирующем характере многих типов трафика компьютерных сетей, когда коэффициент пульсаций равен 100:1 или более, очереди могут быть значительными. Если же эта вариация отсутствует, то есть пакеты прибывают строго через определенные промежутки времени, как это происходит у трафика типа равномерного потока, то очередь при коэффициенте загрузки, меньшем 1, не возникает. Влияние пульсаций трафика на появление задержек обслуживания хорошо известно пользователям разделяемых сегментов Ethernet. Даже при значениях коэффициента нагрузки сегмента 0,5 задержки доступа к сети бывают значительными, что заставляет использовать эти сети с коэффициентом нагрузки сегмента не более 0,3.

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

 

      1. Традиционный алгоритм FIFO

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

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

 

      1.   Приоритетное обслуживание

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

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

Классификация трафика представляет собой отдельную задачу. Пакеты могут разбиваться на приоритетные классы в соответствии с типом сетевого протокола — например, IP, IPX или DECnet (заметим, что такой способ подходит только для устройств, работающих на втором уровне), на основании адресов назначения и источника, номера TCP/UDP порта и любых других комбинаций признаков, которые содержатся в пакетах. Правила классификации пакетов на приоритетные классы представляют собой часть политики управления сетью.

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

Этот вариант классификации требует наличия в пакете специального поля. В поле можно запомнить назначенное значение приоритета, чтобы им могли воспользоваться остальные сетевые устройства, обрабатывающие трафик после классифицирующего устройства. Такое поле имеется в заголовке многих протоколов. Так, в пакете IP для этой цели есть трехбитное подполе IP Precedence в поле TOS (Type Of Service). В тех же случаях, когда специального поля приоритета в заголовке нет, то разрабатывается дополнительный протокол, который вводит новый заголовок с таким полем. Так произошло с протоколом Ethernet — для него (и других протоколов семейства 802) пришлось разработать спецификации IEEE 802.1Q/p, которые вводят дополнительное трехбитное поле приоритета.

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

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


 

 

 

 

 

Рис. 4.2. – Приоритетное управление очередями

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

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

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

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

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

 

      1.   Взвешенные настраиваемые очереди.

Алгоритм взвешенных очередей (Weighted Queuing) разработан для того, чтобы можно было предоставить всем классам трафика определенный минимум пропускной способности или гарантировать некоторые требования к задержкам. Под весом данного класса понимается процент предоставляемой классу трафика пропускной способности от полной пропускной способности выходного интерфейса. Алгоритм, в котором вес классов трафика может назначаться администратором, называется "настраиваемой очередью" (Custom Queuing). Этот алгоритм рассматривается в данном разделе. В случае, когда веса назначаются автоматически, на основании некоторой адаптивной стратегии, реализуется так называемый алгоритм "взвешенного справедливого обслуживания" (WeightedFair Queuing, WFQ), рассматриваемый в следующем разделе.

Информация о работе Групповое вещание в IP-сетях