Моделирование работы противоперегрузочных алгоритмов в сетях с низкой пропускной способностью
Автор: Трикоз В.В., Батыр С.С.
Источник: Информационные процессы и технологии.Информатика - 2013 / Материалы VI международной науково-технической конференции молодых ученых и студентов. — Севостополь, СевНТУ — 2013, с. 149-150.
Для повышения эффективности использования пропускной способности каналов связи необходимо выбрать наиболее оптимальный противоперегрузочный алгоритм, который обеспечит передачу данных с минимальной вероятностью потерь. На данный момент разра-ботано достаточное количество противоперегрузочных алгоритмов (TCP Tahoe, TCP Reno/Newreno, TCP Vegas, TCP BIC, TCP CUBIC, TCP Westwood и др.), но не все они пред-назначены для работы в сетях с низкой пропускной способностью. Для проведения модели-рования были выбраны алгоритмы TCP Reno и TCP Vegas, т.к. они являются наиболее рас-пространенными на сегодняшний день.
Алгоритм TCP Reno имеет две фазы изменения размера окна: фаза медленного старта и фаза избегания перегрузки. Когда размер окна не превышает пороговую величину, передаю-щая сторона находится в фазе медленного старта, и размер окна растет экспоненциально.
Исследование компьютерных программ при моделировании разных способов возбуждения колебаний позволяет определить точностные и частотные характеристики программ.
Алгоритм TCP Reno имеет две фазы изменения размера окна: фаза медленного старта и фаза избегания перегрузки. Когда размер окна не превышает пороговую величину, передаю-щая сторона находится в фазе медленного старта, и размер окна растет экспоненциально.
Когда размер окна превышает пороговую величину, передающая сторона находится в фазе ухода от перегрузки, и размер окна перегрузки растет линейно. TCP Reno предусматривает выход из фазы медленного старта при получении трех дублирующих пакетов подтверждения АСК. «Досрочный» выход из фазы медленного старта называется ускоренным восстановлением.
TCP Vegas реализует более сложные схемы управления пропускной способностью. Он использует разницу между ожидаемой и фактической скоростью потоков для оценки пропускной способности сети. Идея состоит в том, что когда сеть не перегружена, фактическая скорость потока будет близка к ожидаемой. В другом случае фактическая скорость будет меньше, чем ожидаемая скорость потока. TCP Vegas с помощью этой разницы скоростей потока оценивает уровень перегрузки сети и соответственным образом обновляет раз мер окна [1].
Для моделирования воспользуемся самой простой моделью мультисервисной сети – мо-делью с одним узким местом. Для данной топологии модели сети присущи все характерные особенности телекоммуникационного трафика интегрированной сети с коммутацией паке-тов, в том числе его самоподобность и масштабная инвариантность.
На рис. 1 с помощью s1, s2, … sN обозначены источники трафика, r1, r2, …, rN – приемники, а R – маршрутизаторы канала, являющегося узким местом.
Процесс определения потерь соответствует аналогичному процессу протокола ТСР, использующему в качестве признака потерь процесс приема пакетов подтверждений АСК и длительности пауз, для определения момента наступления и степени перегрузки.
Моделирование проводилось с использованием пакета прикладных программ MATLAB.
В этих экспериментах расчет изменения размера окна W(t) и длины очереди Q(t) производился с использованием гидродинамической модели потока(fluid flow model). Для каждого алгоритма, который использовал при моделировании, разработана своя гидродинамическая модель, которая учитывает конкретные особенности данного алгоритма.
Гидродинамическая модель потока описывается уравнениями (1),(2) и (2)-(4) для TCP Reno и TCP Vegas соответственно
где W(t) – средний размер окна TCP [пакеты], Q(t) - средняя длина очереди [пакеты], R(t)- RTT [секунды], С – пропускная способность канала [пакет/с], N(t) - количество TCP сессий, p(t) - вероятностная функция маркировки пакета.
где G(x)– нелинейная функция, описывающая изменение размера окна.
G(x) описывается функцией [2]
Моделирование проводим для 200 источников трафика, пропускная способность канала связи С=2 Мбит/с, максимальная длина очереди составляет 200 пакетов.
Результаты моделирования приведены на рис.1.
Проанализировав полученные результаты, отметим, что при использовании алгоритма TCP Vegas наблюдается меньшее колебание размера окна, чем при использовании TCP Reno. Это дает возможность передавать большее количество пакетов, что существенно влияет на формирование очереди. При увеличении пропускной способности канала связи наблюдается значительное уменьшение среднеквадратического значения длины очереди при использова-нии TCP Vegas, в то время как при использовании TCP Reno данный параметр изменяется не значительно
Перечень ссылок
- 1. Analysis and comparison of TCP Reno and Vegas [Електронний ресурс] /Jeonghoon Mo, Richard J. La, Venkat Anantharam, and Jean Walrand - режим доступа: http://www2.ensc.sfu.ca/~ljilja/ENSC833/Spring01/Assignments/draft4.pdf
- 2. A control theoretic analysis of RED [Електронний ресурс] / C.V. Hollot, Vishal Misra, Don Towsley and Wei-Bo Gong - режим доступа: ftp://gaia.cs.umass.edu/pub/MisraInfocom01-RED-Control.pdf