УЧЕНЫЕ ЗАПИСКИ ПЕТРОЗАВОДСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
Март, № 2 Физико-математические науки 2015
УДК 004.728.5+51-74
ольга юрьевна Богоявленская
кандидат технических наук, доцент кафедры информатики и математического обеспечения математического факультета, Петрозаводский государственный университет (Петрозаводск, Российская Федерация) olbgvl@cs. karelia. ru
оценка дисперсии производительности алгоритма предотвращения насыщения в сети передачи данных
Построена оценка стационарной дисперсии размера скользящего окна алгоритма предотвращения насыщения протокола Transmission Control Protocol (TCP). Алгоритм предотвращения насыщения играет ключевую роль в сетях передачи данных, реализуя распределенное управление сетевой инфраструктурой (маршрутизаторы и каналы связи). Производительность протокола определяется соотношением между размером скользящего окна протокола (объем данных, который источник может отправить в сеть без подтверждения доставки) и временем кругового оборота. Дисперсия этой величины представляет значительный интерес для решения проблем управления и проектирования сетевых фрагментов. В работе рассматривается кусочно-линейный случайный процесс размера скользящего окна в условиях, когда объемы данных, отправленных последовательно без потерь, образуют процесс восстановления. На основе дальнейшего анализа этого процесса получена оценка математического ожидания размера скользящего окна без применения неравенства Гельдера. Последняя затем используется для построения оценки дисперсии снизу. Получены условия применимости построенной оценки дисперсии.
Ключевые слова: сети передачи данных, алгоритм предотвращения насыщения, протокол TCP
ВВЕДЕНИЕ
Проблема распределенного управления и справедливого разделения ресурсов инфраструктуры между источниками данных носит фундаментальный характер для обеспечения функционирования и развития глобальных сетей передачи данных. Современная парадигма распределенного управления, предложенная в 1974 году [1], не предполагает использование механизмов резервирования каналов и/или ресурсов маршрутизаторов источниками данных1. Маршрутизаторы различных уровней сети отличаются по уровню производительности и набору аппаратного обеспечения, однако функционально являются однородными, обеспечивая трансляцию кадров локальных сетей и перенаправление дейтаграмм в соответствии с таблицами маршрутизации.
Интенсивное развитие методов распределенного управления началось, когда в 1984 году был описан, а в октябре 1986-го наблюдался так называемый коллапс перегрузки (congestion collapse) [2]. Анализ этого явления показал, что из-за переполнения очереди промежуточного маршрутизатора сеть была полностью заполнена повторно отправленными данными. При этом новые данные в сеть не поступали. Для решения проблемы был предложен ряд новых методов. Согласно последним, функции распределенного управления реализуются источниками данных, которые, следуя специальным алгоритмам, на основе сигналов обратной связи согласованно
наращивают или сокращают пропускную способность соединений.
В частности, такими алгоритмами успешная доставка данных интерпретируется как свидетельство о наличии в сети свободных ресурсов, а событие потери данных трактуется как сигнал обратной связи, означающий, что загрузка каналов и маршрутизаторов близка к критическим значениям. В первом случае алгоритм наращивает производительность, во втором уменьшает ее. Актуальность задач анализа производительности таких протоколов весьма высока как из-за быстрого роста масштабов сети, так и ввиду диверсификации носителей сигнала и сетевых приложений. Основные механизмы распределенного управления реализуются протоколом Transmission Control Protocol (TCP), который контролирует соединения на уровне точка - точка. Заметим, что этот протокол является единственным программным модулем в архитектуре OSI, реализующим такие функции.
Одним из важнейших алгоритмов, включенным во все существующие реализации TCP, является алгоритм предотвращения насыщения Congestion Avoidance (CA)2. Для утилизации доступной мощности канала связи и одновременного контроля доставки данных TCP использует механизм скользящего окна. Скользящее окно -это объем данных, которые источник может отправить в сеть без подтверждения об их доставке.
Алгоритм CA управляет размером скользящего окна. Если доставка данных подтвержда-
© Богоявленская О. Ю., 2015
104
О. Ю. Богоявленская
ется получателем, то размер скользящего окна линейно возрастает со скоростью b, где последняя определяется величиной времени кругового оборота и реализацией протокола. Если источник получает сведения о потере данных, то размер скользящего окна уменьшается в 0 < 1/а < 1 раз. Стандарт IETF [3] определяет а = 1/2, реализации могут использовать другие значения. Если сведений о доставке данных не было получено вовсе, то алгоритм CA прекращает передачу данных, включает механизм случайной отсрочки и передает управление алгоритму Slow Start. Однако стабильное TCP-соединение, для которого уровень потерь данных на сетевом маршруте не превышает 2,5 %, большую часть времени находится под управлением алгоритма CA. Анализ производительности TCP-соединения под управлением пары алгоритмов Slow Start и CA проведен в работе [4].
Подавляющее большинство исследований производительности алгоритма CA посвящены анализу математического ожидания его пропускной способности для разных видов потоков потерь данных. Анализу моментов более высокого порядка и анализу центральных моментов в литературе практически не уделяется внимание. Исключение составляет [5], где получена дисперсия алгоритма CA при условии, что потери данных являются случайным точечным процессом; ряд работ, где получены преобразования Лапласа для стационарного распределения (см., например, [6]) пропускной способности, а также [7], где построен точный численный алгоритм линейной сложности, позволяющий рассчитать стационарное распределение скользящего окна в условиях, когда потери данных описываются распределением Бернулли.
Однако качество услуг, предоставляемых большинством современных приложений (например, видео- и аудиопотоки), также существенно зависит от дисперсии пропускной способности потока. Поэтому оценки математического ожидания не дают информации, достаточной для дальнейшего анализа и эффективного решения задач проектирования и администрирования сетей. Кроме того, в настоящее время разработано более десятка экспериментальных версий протокола TCP, имеющих целью улучшить утилизацию широкополосных каналов связи и адаптировать свойства протокола к свойствам беспроводных носителей сигнала. В частности, протокол TCP CUBIC [8] используется по умолчанию в ОС Linux, начиная с версии 2.6.19. Характеристики производительности новых протоколов изучены весьма слабо, однако если для сравнения математических ожиданий пропускной способности имеется теоретическая основа, то дисперсия стандартного алгоритма CA также изучена слабо. Использование полученных в литературе преобразований Лапласа для расчета дисперсии
требует громоздких вычислений, следовательно, построение аналитических оценок дисперсии алгоритма CA является весьма актуальным.
В настоящей работе проведен анализ и построена оценка дисперсии алгоритма CA версии NewReno в условиях, когда объемы данных, последовательно успешно доставленных получателю, образуют последовательность независимых одинаково распределенных случайных величин. Построено условие применимости оценки. Приведены примеры использования оценки.
ПОСТРОЕНИЕ ОЦЕНКИ ДИСПЕРСИИ
Определим X(t) € R+ объем данных, которые источник может отправить в сеть без получения подтверждения от получателя в момент времени t. Пусть на интервалах [вп,Qn+1) n = 0,1, ... имеет место X(t)=X(to)+b(t-to), " [to,t] С q,^+1), где b-1 = E[£n ] математическое ожидание времени кругового оборота сегмента данных. В случайные моменты времени |9n }n>0 процесс {X (t )}t >0 совершает скачок вида X(9n + 0) = aX(9n), где 0 < а < 1. При этом последовательность
9n+1
J X(x)dт
9n
(объем данных, последовательно доставленных получателю без потерь) образует процесс восстановления с абсолютно непрерывной функцией восстановления G(y) = P(sn < y), имеющей конечные моменты первого и второго порядков, E[sn ] = X-1,X > 0 и E[sn2] < ^ . Пример траектории процессаX (t) представлен на рисунке.
Пример траектории размера скользящего окна
О п р е д е л и м п о с л е д о в ат е л ь н о с т ь {Xn = X(9n)}n>0 . Заметим, что из геометрических соображений для последней имеет место соотношение
Xn+1 = a2X2 + 2bsn . (1)
Сначала опишем основную проблему, возникающую при получении оценок дисперсии пропускной способности алгоритма CA. Физические
Оценка дисперсии производительности алгоритма предотвращения насыщения в сети передачи данных 105
свойства носителей сигнала и алгоритмы управления очередью определяют свойства случайного потока потерь данных, видимые отправителем, которые, в свою очередь, являются важнейшим параметром аналитических моделей алгоритма AIMD. В литературе, как правило, применяются два основных способа описания потока потерь данных:
1. Определяется последовательность случайных величин {5n}и>0 , где 5n - это интервал времени между двумя последовательными событиями потерь данных.
2. Определяется последовательность случайных величин {sn }n>0, где sn - объем данных, отправленных последовательно без потерь. Например, если предполагается, что потери сегментов происходят независимо с вероятностью р, то распределение sn определяется по схеме Бернулли.
В литературе обе указанные выше последовательности определяются и как дискретные, и как непрерывные в зависимости от контекста и используемых методов анализа.
Если в качестве основного параметра модели используется распределение P {8n = ®n+1 ®n - x},
как это сделано, например, в работе [5], тогда рекуррентное соотношение
Xn+i =aXn + b5n (2)
позволяет получить точное значение стационарного математического ожидания Xn в виде
lim[ Xn ] = -^~ E[8n ]
n—~ 1 - а
и затем вычислить дисперсию стандартным способом.
Однако идентификация параметров последовательности 8n требует более сложных вычислений, а также получения данных из ядра ОС. Соответствующая выборка, как правило, имеет значительно меньший объем, чем выборка, которую, в некоторых случаях, можно построить для идентификации параметров последовательности sn . Кроме того, связь между уровнем потерь данных и производительностью алгоритма CA является фундаментальной характеристикой протокола TCP. Поэтому в подавляющем большинстве работ именно характеристики объема данных, переданных последовательно без потерь, являются параметрами моделей производительности протокола TCP. В этом случае соотношение (1) позволяет получить явное выражение для второго начального момента, на основе которого в литературе строится оценка математического ожидания с помощью неравенства Гельдера. Последняя непригодна для построения оценок дисперсии.
Теперь построим оценку стационарного математического ожидания размера скользящего
окна, не используя неравенство Гельдера. Опираясь на (1), получим
x2+n = 2b Еа2Ч+n_t (3)
i=0
или
X7 =
k+n
2b Xa isk+
i =0
Последнее выражение можно преобразовать к виду:
Xk+n ^a4Sk+n-i .
i=0
Тогда
E[Xk+n ] = E
V
2b Xa 4+n—
i =0
<
(4)
<
V2* E [V sk+n-i}
i=0
Здесь и далее будем предполагать, что предел E [ X ]= limE [ Xn ]
n——ж
существует3. Тогда, основываясь на свойствах математического ожидания и пределов числовых последовательностей, получим следующее неравенство
E [ X ]= limE [ Xn ]<
-sfTb lim Ja! E
i=0
47b г
E
1 -a [
4s~n
Теперь заметим, что, согласно (3),
lim E
П—ж
X 2
= 2b lim ^ E
n—“ i=0
a2is„,
2b
J 1 -a
2E [sn ] (5)
и, значит,
n-i
E[X]<J7^7E[s„] .
V1 -a2
Таким образом, нами получены две оценки математического ожидания, одна из которых в точности равна квадратному корню из второго начального момента4. Следовательно, нами доказана следующая
Теорема 1. Если функция распределения G (у) такова, что имеет место неравенство
E[47-]<^1-aE[Sn] , (6)
то для стационарной дисперсии D последовательности {Xn } имеет место
п т^ тл
D > 2b
E [ Sn ] - e2 [yFn ] ^ 1 -a7 (1 -a)7
(7)
106
О. Ю. Богоявленская
ПРИМЕРЫ
Положим значения b = 1 и а = 1/2, которые используются большинством реализаций протокола TCP. Тогда условие теоремы примет вид
E
E
s
П
<
3
Оценки математического ожидания, полученные выше, примут вид: ______
E[X]< 2yf2E[^] и E[X]<^3e[sn] .
Пример 1. Пусть sn удовлетворяют показательной функции распределения и G(у) = 1 - e .
Тогда 1 E [ '■ ] = Л
E
1 у/к
2
Условие теоремы не выполняется, следовательно, оценка (7) не может быть использована.
Пример 2. Пусть sn удовлетворяют % -распределению Пирсона. Тогда его моменты имеют
вид: k , ^
22 г( n + k
E
2
Г|
(8)
и
s
n
2
где n - число степеней свободы. Используя оценки, построенные выше, получим
и
22 Г
E
n +1 2
E
Г
24 Г
2n +1 4
Г|
2
Условие теоремы 1 выполняется, например, для n = 10.
1
s
n
n
2
1
n
ЗАКЛЮЧЕНИЕ
Работа посвящена анализу дисперсии размера скользящего окна алгоритма предотвращения насыщения (Congestion Avoidance) протокола Transmission Control Protocol. Размер скользящего окна является ключевой характеристикой производительности протокола TCP, а его дисперсия -важным параметром для многих современных приложений сетей передачи данных. В работе построена модель эволюции размера скользящего окна, получена оценка его математического ожидания без использования неравенства Гельдера. Получена оценка стационарной дисперсии снизу и доказана теорема об условии ее применимости. Приведены примеры анализа условия теоремы.
ПРИМЕЧАНИЯ
1 Заметим, что такие механизмы существовали в сети передачи данных, использовавших, например, комплексные стандарты X.25 или X.110, а также в сети «Автодин» Министерства обороны США. Однако эти технологии не получили широкого распространения и были вытеснены сетевыми стандартами DARPA.
2 Последовательно использовались версии Tahoe, Reno, NewReno. Дальнейший анализ проводится для версии NewReno.
3 Более подробно см. [5].
4 Заметим, что последняя оценка совпадает с оценкой, полученной в [9] для детерминированного потока потерь данных.
СПИСОК ЛИТЕРАТУРЫ
1. Богоявленская О. Ю. Анализ случайного потока, генерируемого транспортным протоколом с обратной связью, в сети передачи данных // Автоматика и телемеханика. 2003. № 12. С. 60-68.
2. Богоявленская О. Ю. Вероятностная модель алгоритмов протокола распределенного управления сети интернет // Автоматика и телемеханика. 2009. № 1. С. 119-129.
3. Allman M., Pax so n V., Blanton E. TCP Congestion Control. 2009. RFC 5681.
4. Altman E., Avrachenkov K., Barakat C. A Stochastic model of TCP/IP with Stationary Random Losses // Proceedings of ACM SIGCOMM’00. Stockholm, 2000. P. 231-242.
5. C e r f V. G., Kahn R. E. A Protocol for Packet Network Intercommunication // IEEE Transactions on Communications. 1974. Vol. 22. № 5. P. 637-648.
6. Dumas V., Guillemin F. and Robert P A Markovian analysis of AIMD algorithms // Advances in Applied Probability. 2002. Vol. 34. № 1. P 85-111.
7. Floyd S., Fall F. Promoting the use of end-to-end congestion control in the Internet // IEEE/ACM Transactions on Networking. 1999. August.
8. Ha S., Rhee I., Xu L. Cubic: a new tcp-friendly high-speed tcp variant // SIGOPS Operation Systems Review. 2008. July. Vol. 42. № 5. P 64-74.
9. Jacobson V. Congestion Avoidance and Control // Proceedings of the SIGCOMM ’88 Symposium. 1988. August. P 314-32.
Оценка дисперсии производительности алгоритма предотвращения насыщения в сети передачи данных 107
Bogoyavlenskaya O. Yu., Petrozavodsk State University (Petrozavodsk, Russian Federation)
ESTIMATION OF PERFORMANCE VARIANCE FOR NETWORKING CONGESTION AVOIDANCE
ALGORITHM
The estimate of the variance for Transmission Control Protocol (TCP) Congestion Avoidance algorithm is derived. Congestion Avoidance algorithm provides stability of the data communication networks performing distributed control of the networking infrastructure (data links and routers). The performance of the protocol is basically defined by the relation between sliding window size (amount of data that a sender is allowed to send through the network without acknowledgement) and round trip time. The variance of this value is essentially important for network design and administration tasks. We consider piece-wise linear stochastic process of the sliding window size with the assumption that multiple data successfully delivered in sequence form a renewal process. Further analysis provides the estimate of sliding window expectation without applying Goelder’s inequality. This estimate is used then to derive the estimate of the variance. Conditions suitable for proper application of the estimate are obtained as well.
Key words: Networking, Congestion Avoidance Algorithm, TPC protocol
REFERENCES
1. Bogoyavlenskaya O. Yu. Analysis of the Random Flow Generated by the Feedback Transport Protocol in a Data Transfer Network // Automation and Remote Control. 2003. Vol. 64. № 12. P. 1882-1889.
2. Bogoyavlenskaya O. Yu. Probabilistic model of the algorithms of distributed control protocol in the internet network // Automation and Remote Control. Vol. 70. № 1. 2009. P. 107-117.
3. Allman M., Paxson V., Blanton E. TCP Congestion Control. 2009. RFC 5681.
4. Altman E., Avrachenkov K., Barakat C. A Stochastic model of TCP/IP with Stationary Random Losses // Proceedings of ACM SIGCOMM’00. Stockholm, 2000. P. 231-242.
5. C e r f V. G., Kahn R. E. A Protocol for Packet Network Intercommunication // IEEE Transactions on Communications. 1974. Vol. 22. № 5. P. 637-648.
6. Dumas V, Guillemin F. and Robert P. A Markovian analysis ofAIMD algorithms // Advances in Applied Probability. 2002. Vol. 34. № 1. P. 85-111.
7. Floyd S., Fall F. Promoting the use of end-to-end congestion control in the Internet // IEEE/ACM Transactions on Networking. 1999. August.
8. Ha S., Rhee I., Xu L. Cubic: a new tcp-friendly high-speed tcp variant // SIGOPS Operation Systems Review. 2008. July. Vol. 42. № 5. P. 64-74.
9. Jacobson V. Congestion Avoidance and Control // Proceedings of the SIGCOMM ’88 Symposium. 1988. August. P. 314-32.
Поступила в редакцию 05.11.2014