Назад в библиотеку

Повышение производительности Интернет-ориетированной сетевой инфраструктуры:модели, алгоритмы, методы

Авторы: Рычка С. В., Аноприенко А. Я., Хасан Аль Абабнех
Источник: Материалы второй международной научно-технической конференции «Моделирование и компьютерная графика» 10-12 октября 2007 года, Донецк, ДонНТУ. – 2007. С. 326-330.

Аннотация

Розглядаються комбіновані методи підвищення продуктивності Інтернет-орієнтованої мережної інфраструктури шляхом використання моделі маршрутизатора зі застосуванням алгоритму керування чергами та механізму явного повідомлення про перенавантаження.

Совсем недавно абсолютное большинство корпоративных и университетских сетей состояло из небольшой группы хостов и сервера, осуществляющего доступ к глобальной сети и предоставляющий все Интернет-сервисы. Типичным современным вариантом является разветвленная инфраструктура с множеством сетевого активного оборудования, объединяющего сотни и тысячи хостов, разнесенных территориально [1]. Практически экспоненциально продолжает увеличиваться число пользователей, работающих как в глобальной сети, так и в корпоративных и университетских сетях [2]. Появление корпоративных сетей глобального масштаба ознаменовало собой новый этап в развитии сетевой инфраструктуры, который настоятельно требует существенных качественных изменений в подходе к управлению перегрузками и повышению производительности Интернет- ориентированной сетевой инфраструктуры [3].

Под Интернет-ориентированной инфраструктурой (ИОИ) будем понимать корпоративную либо научно-образовательную компьютерную сеть, активно использующую ресурсы сети Интернет. Участников обмена данными в сети Интернет можно разделить на: транзитные узлы передачи данных, к которым относятся магистральные, национальные и региональные Интернет-провайдеры (Internet Service Provider - ISP), и конечные пользователи или автономные системы, между которыми и происходит обмен данными. Как правило, ISP имеют избыточную пропускную способность относительно конечных пользователей, и их основной задачей является обеспечение качества обслуживания (Quality of Service - QoS) в предоставлении канала связи гарантированной пропускной способности для ИОИ. Таким образом, ISP, в отличие от ИОИ, в меньшей мере сталкиваются с проблемой перегрузок и уменьшением производительности сети. Для ИОИ “узким местом” продолжает оставаться канал связи с ISP.

Проблема перегрузки в канале связи с ISP с использованием стека протоколов TCP/IP возникает задолго до того, когда количество передаваемых данных начинает приближаться к значению допустимой пропускной способности [4]. Помимо пропускной способности канала связи, на производительность ИОИ в значительной степени влияют потери пакетов, следствием чего являются повторные передачи пакетов [5]. Увеличение размера очередей в маршрутизаторах позволяет уменьшить число потерянных пакетов вследствие перегрузки, но приводит к увеличению задержек, что также негативно сказывается на производительности. На рис. 1 представлена модель QoS-маршрутизатора, обычно находящегося на границе между ИОИ и ISP, на который также возлагаются функции управления перегрузкой в канале связи с ISP.

Модель маршрутизатора

После поступления в QoS-маршрутизатор, пакет проходит процедуру классификации, для определения принадлежности к соответствующему классу обслуживания в дальнейшем. Затем, после возможного прохождения стадии измерения и контроля нагрузки с помощью алгоритма Token Bucket или др., пакет обрабатывается алгоритмом управления очередями RED (Random Early Detection – Вероятностное заблаговременное определение перегрузки) [6] или др. Также пакет может быть обработан с помощью механизма TCP ECN (Explicit Congestion Notification – явное уведомление о перегрузке) [7,8], если приемник и передатчик его поддерживают. Далее пакет попадает в очередь, соответствующую классификации. Выборка из очередей с разными классами обслуживания происходит с помощью планировщика обслуживания пакетов WFQ (Weight Fair Queuing – взвешенная справедливая буферизация) или др. Потоки данных, принадлежащие к различным классам обслуживания, выбираются по очереди, в соответствии с указанным QoS для каждого из классов, и направляются по указанному маршруту.

В данной схеме, с точки зрения методов повышения производительности, нас интересуют алгоритмы управления очередями и механизм ECN. Первоочередной задачей повышения производительности является недопущение перегрузки в канале связи между ИОИ и ISP. Так как основная доля трафика ИОИ приходится на входящий трафик, а возможность непосредственного влияния на скорость поступления входящего трафика отсутствует, это осложняет ситуацию. Но при использовании QOS-маршрутизаторов эта задача, в основном, успешно решается с помощью алгоритмов управления очередями, которые определяют, какой пакет и с какой вероятностью необходимо отбросить для предотвращения возникновения или развития перегрузки. Одним из самых распространенных алгоритмов управления очередями является алгоритм RED. При помощи алгоритма RED осуществляется вероятностный сброс пакетов, принадлежащих различным соединениям, при возникновении перегрузки, что позволяет соблюдать принцип справедливого распределения ресурсов и предотвращает от волнообразного увеличения нагрузки. Сброс пакета заставит источник нагрузки уменьшить размер окна перегрузки cwnd (Congestion window) и уменшить нагрузку на сеть.

Однако, справившись с перегрузкой в канале связи за счет сброса пакетов, мы получаем новую проблему, связанную с необходимостью повторных передач данных, что существенно снижает производительность сети. Плюс ко всему, после сброса пакета TCP-сессия начинает работать в режиме медленного старта, который, несмотря на свой экспоненциальный характер, также снижает производительность за счет частичного простоя канала до момента, пока значение cwnd не сравняется с пороговым значением алгоритма медленного старта ssthresh (slow start threshold) и не начнется линейное увеличение окна перегрузки, которое будет расти, пока не сравняется с окном получателя rwnd (Receiver window) или пока снова не произойдет потеря пакета. Таким образом, метод отбрасывания пакетов с помощью алгоритма управления очередями является неявным уведомлением о перегрузке и не позволяет поддерживать производительность ИОИ на высоком уровне. Для повышения производительности ИОИ необходимо свести к минимуму как потерю пакетов на всем пути их следования, так и сброс пакетов с помощью алгоритма управления очередями. Этого можно добиться, используя явное уведомление о перегрузке.

Новый механизм TCP ECN, предоставляющий явное уведомление о перегрузке, в первую очередь призван управлять нагрузкой соединений TCP, чувствительных к задержкам и потерям пакетов. При этом не используется сброс пакета для подавления источника передачи данных в качестве индикации перегрузки. В случае использования ECN, источник должен быть проинформирован о перегрузке заранее, то есть до ее наступления, а не по факту самой перегрузки, чтобы успеть снизить скорость передачи данных, не дожидаясь потери или сброса пакета. Информация о приближении перегрузки передается QoS-маршрутизатором приемнику. Приемник, в свою очередь информирует источник о перегрузке, и источник должен уменьшить значение cwnd и ssthresh так же, как будто бы произошла потеря пакета или его сброс без использования механизма ECN. На данный момент одновременное использование механизма ECN и алгоритмов управления очередями позволяет эффективно управлять перегрузками. Так как не все конченые хосты поддерживают использование механизма ECN, QoS-маршрутизатор будет обрабатывать возникновение перегрузки по-разному: используя явное уведомление о перегрузке посредством механизма ECN или сброс пакета с помощью алгоритма управления очередью. Повышение производительности ИОИ при использовании механизма ECN, по сравнению со сбросом пакетов, достигается за счет отсутствия необходимости в повторных передачах, но не решает проблему неэффективного использования пропускной способности за счет уменьшения размера cwnd до одного максимального размера сегмента (Maximum Segment Size - MSS) и повторения процедуры медленного старта.

Вывод

повысить производительность можно за счет совместного использования явного уведомления о перегрузке, реализованного в механизме ECN и адаптивно регулируя значение окна перегрузки, что позволит при возникновении краткосрочной перегрузки не снижать до минимума скорость передачи TCP- соединения.

Список использованной литературы

1. Аноприенко А. Я., Джон С. Н. Рычка С. В. Особенности моделирования и оценки эффективности работы сетевой инфраструктуры. – Наукові праці Донецького державного технічного університету. Серія: Обчислювальна техніка та автоматизація. Випуск 38. – Донецьк: РВА ДонДТУ, 2002. – с. 205-210.
2. Аноприенко А. Я., Рычка С. В., Хасан Аль Абабнех. Способы и средства моделирования вычислительных сетей с целью обеспечения эффективности функционирования web-сервисов. – Моделирование и компьютерная графика: Материалы 1-й международной научно-технической конференции, г. Донецк, 04-07 октября 2005 г. – Донецк, ДонНТУ, Министерство образования и науки Украины, 2005. – с. 156-159.
3. Аноприенко А. Я., Джон С. Н. Рычка С. В. Моделирование университетской сетевой инфраструктуры. – Вісник Кременчуцького державного політехнічного університету: Наукові праці КДПУ. – Кременчук: КДПУ, 2001. – Вип. 2(11). – с. 306-308.
4. Аноприенко А. Я., Рычка С. В. Комбинированные подходы к управлению перегрузками в сетях TCP/IP. – Наукові праці Донецького національного технічного університету. Серія: “Проблеми моделювання та автоматизації проектування динамічних систем” (МАП-2006). Випуск 5(116). – Донецьк: ДонНТУ, 2006. – с. 53-65.
5. Gerla M., Kleinrok L. “Flow Control: A Comparative Survey”. IEEE Transactions on Communications, vol. 28 (4), 1980, pp. 553-574.
6. Floyd S., Jacobson V., “Random Early Detection gateways for Congestion Avoidance”, IEEE/ACM Transactions on Networking, vol. 1, no. 4, August 1993, p. 337-341.