СПОСОБ ДЛЯ ВЫПОЛНЕНИЯ ПРОВЕРКИ ПРОПУСКНОЙ СПОСОБНОСТИ СВЯЗИ ОТ ПЕРВОЙ СЕТЕВОЙ СТАНЦИИ ДО ВТОРОЙ СЕТЕВОЙ СТАНЦИИ В СЕТИ СВЯЗИ, СООТВЕТСТВУЮЩИЕ УСТРОЙСТВА ДЛЯ ВЫПОЛНЕНИЯ ЭТАПОВ СПОСОБА И СООТВЕТСТВУЮЩИЕ КОМПЬЮТЕРНЫЕ ПРОГРАММЫ
METHOD FOR PERFORMING COMMUNICATION BANDWIDTH TESTING FROM FIRST NETWORK STATION TO SECOND NETWORK STATION IN COMMUNICATION NETWORK, CORRESPONDING DEVICES FOR EXECUTING STEPS OF METHOD AND CORRESPONDING COMPUTER PROGRAMS

Уровень техники изобретения
Активное измерение сети является способом получения информации о характеристиках сетевого соединения для наиболее эффективного использования ресурсов сети. «Активное измерение» в этом смысле означает измерения производительности сети на основе введения дополнительных пакетов данных в сеть передачи данных. Тогда измерение выполняется путем анализа основных параметров таких зондирующих выборок. Самыми важными параметрами при этом являются односторонняя задержка (OWD) и межпакетный интервал времени, измеренный на принимающей станции (IpIR). Это интервал времени между приемом двух последовательных поступающих выборок. Принимающая станция замечает время, когда поступают пакеты данных зондирующей выборки, и вычисляет межпакетный интервал времени (IpIR). В дальнейшем для длинного выражения «пакеты данных зондирующей выборки» синонимично используются короткие формы «пакет зондирующей выборки» или «зондирующий пакет». Примером «пакета данных зондирующей выборки» является дейтаграмма UDP, которая содержит отметку времени, показывающую время на отправляющей станции, когда была отправлена эта дейтаграмма. UDP здесь означает общеизвестный протокол дейтаграмм пользователя.
Из-за изменений в трактах передачи и при задержке постановки в очередь задержки передачи, испытываемые разными пакетами, могут значительно меняться недетерминированным образом. В крайних случаях пакет, отправленный раньше, может поступить в более позднее время, чем пакет, который был отправлен позже.
В литературе существует так называемая модель скорости зондирования (PRM). В соответствии с этой моделью отправитель многократно отправляет приемнику пакеты зондирующей выборки по сети. Измерение выполняется в каждой итерации с разной постоянной скоростью передачи битов (CBR). В каждой итерации отправитель отправляет так называемую серию зондирующих выборок – некоторое количество последовательных зондирующих выборок, отправленных с постоянным межпакетным интервалом IpIS времени, измеренным на отправляющей станции. После приема серии зондирующих выборок приемник анализирует принятые дейтаграммы и их моменты поступления и предполагает, была ли CBR в последней итерации выше доступной пропускной способности. Если результат показывает, что CBR выше, то приемник формирует новый межпакетный интервал времени, который отправителю нужно использовать (IpIS) для следующей итерации. Следовательно, он будет возвращен отправителю в некотором сообщении. Зависимость между CBR и IpIS показана в уравнении (1)
где SS является размером сегмента у пакета UDP.
Измерения в соответствии с моделью PRM начинаются с максимальной возможной CBR (например, со скорости передачи данных линии связи у отправителя, то есть зондирующие пакеты «нагнетаются» в конвейер данных с минимальным возможным расстоянием по времени), а затем многократно уменьшается до тех пор, пока приемник не предположит, что CBR в последней итерации не превышала доступную пропускную способность на тракте между отправителем данных и приемником данных. Это конечная точка фазы измерения, и предполагается, что доступная пропускная способность не меньше последней используемой CBR.
Модель PRM описывается в следующих статьях:
[1] M. Jain and C. Dovrolis, «End-to-end available bandwidth: measurement methodology, dynamics, and relation with TCP throughput», IEEEACM Trans. Netw., vol. 11, no. 4, pp. 537–549, Aug. 2003.
[2] J. Sommers, P. Barford, and W. Willinger, «A Proposed Framework for Calibration of Available Bandwidth Estimation Tools», in 11th IEEE Symposium on Computers and Communications, 2006. ISCC ’06. Proceedings, 2006, pp. 709–718.
Сущность изобретения
Точность измерений имеет корреляцию с количеством зондирующих выборок, которые доставлены в конвейер данных в каждой итерации. Чем больше выборок вводится в соединение, тем выше точность обеспечивается данным способом измерения. Однако введение зондирующих выборок в сеть также могло бы стать причиной перегрузки или снижения качества обслуживания в сети. Вот почему важно отыскать некоторое оптимальное значение количества зондирующих выборок, приходящееся на итерацию, которое будет достаточно большим, чтобы обеспечивать приемлемую точность измерения пропускной способности, и достаточно малым, чтобы не потреблять много ресурсов сети. Также важна длительность измерения. Обычно сеть с коммутацией пакетов является динамической системой, и доступная пропускная способность значительно изменяется со временем. Чтобы сделать быстрой реакцию на изменения сети, необходимо как можно быстрее оценить доступную пропускную способность. Также длительность измерения зависит от количества выборок, выданных в каждой итерации. Чем меньше отправляется выборок, тем быстрее можно закончить измерение. Таким образом, цель изобретения – оптимизировать способ активных измерений пропускной способности в конкретной модели скорости зондирования (PRM).
Решение в соответствии с изобретением основывается, во-первых, на идее использования переменного количества пакетов зондирующей выборки для разных скоростей, с которыми пакеты зондирующей выборки вводятся в конвейер данных.
С помощью экспериментов обнаружена оптимальная форма зависимости количества пакетов зондирующей выборки от скорости зондирования. Такую зависимость можно легко реализовать с помощью формулы:
где R – скорость передачи битов зондирующего пакета в Мбит/с, используемая для итерации, и
N – количество выборок, которое нужно отправить в следующей итерации.
В дополнительном варианте осуществления изобретения допустимы вычисления с измененной формулой, которые приводят к результатам в диапазоне ±20% отклонений от результатов вычисления в соответствии с приведенной формулой.
Эти признаки изобретения обеспечивают более эффективную проверку производительности преимущественно в показателях уменьшенного времени оценки/проверки и уменьшенного объема служебного сетевого трафика для проверки.
Другой аспект изобретения заключен в идее адаптации проверки производительности к фазовому дрожанию в сети. Авторы изобретения признали, что существует большая вероятность, что оценка производительности сети будет неверной, если дрожание задержки пакетов является сильным. Поэтому другая идея изобретения состоит в оценке фазового дрожания в сети и адаптации шага регулировки в итерации во время проверки к фазовому дрожанию в сети с помощью коэффициента уменьшения шага.
Опять же с помощью экспериментов обнаружена оптимальная зависимость коэффициента уменьшения шага от фазового дрожания в сети. В силу этого, в качестве метрики предложено отношение между фазовым дрожанием в сети и воспринимаемым межпакетным интервалом времени. Такую зависимость можно легко реализовать с помощью формулы:
next
curr
при этом IpIS – отрегулированный межпакетный интервал времени, используемый для следующей итерации в устройстве-источнике, IpIS – межпакетный интервал времени, с которым пакеты зондирующей выборки введены в конвейер данных во время предыдущей итерации, и SDF – коэффициент уменьшения шага. Задается применение коэффициента SDF уменьшения шага с помощью формулы
jitter
при этом JtI – отношение измеренного отклонения фазового дрожания σ в сети к воспринимаемому межпакетному интервалу IpIR времени на итерацию.
С помощью такой адаптации коэффициента уменьшения шага можно субъективно уменьшить количество итераций в случае малых изменений значений фазового дрожания без потери точности проверки производительности. В то же время, эта улучшенная проверка производительности предусматривает больше итераций в случае больших изменений значений фазового дрожания, чтобы обеспечить приемлемую точность проверки производительности.
Изобретение также имеет отношение к адаптированным соответствующим образом устройствам для выполнения этапов способа в изобретении либо для устройства-источника, либо для устройства-адресата.
Изобретение также имеет отношение к соответствующим компьютерным программам с командами, которые выполняют этапы способа в изобретении либо для устройства-источника, либо для устройства-адресата при прогоне в вычислительной системе.
Краткое описание чертежей
Ниже изобретение будет описываться посредством преимущественных вариантов осуществления со ссылкой на фигуры чертежей. Здесь:
Фиг. 1 показывает принципиальную структуру сети, в которой две сетевые станции в виде стандартных ПК, или рабочих станций, или компьютеров в общем подключаются к глобальной сети и обмениваются сообщениями в виде пакетов данных;
Фиг. 2 показывает сетевой трафик, вызванный проверкой пропускной способности в соответствии с изобретением между отправляющей станцией и принимающей станцией, пересеченный нормальным сетевым трафиком;
Фиг. 3 показывает структуру пакета данных зондирующей выборки;
Фиг. 4 показывает принципиальный процесс проверки пропускной способности с несколькими итерациями отправки серий пакетов зондирующей выборки из устройства-источника и соответствующими сообщениями обратной связи от стороны-адресата;
Фиг. 5 показывает разные составляющие задержки, которую испытывает пакет во время своего перемещения от устройства-источника к устройству-адресату по сети;
Фиг. 6 показывает процесс отправки серии зондирующих пакетов от устройства-источника к устройству-адресату в первой итерации проверки доступной пропускной способности;
Фиг. 7 показывает процесс отправки серии зондирующих пакетов от устройства-источника к устройству-адресату во второй итерации проверки доступной пропускной способности;
Фиг. 8 показывает процесс отправки серии зондирующих пакетов от устройства-источника к устройству-адресату в третьей итерации проверки доступной пропускной способности;
Фиг. 9 показывает результаты проверки в показателях точности оцененной доступной пропускной способности и соответствующего времени оценки в зависимости от скорости передачи данных в a); соответствующего количества итераций для одних и тех же точек измерения в b); и соответствующей загрузки доступной пропускной способности в конвейере данных вследствие отправки зондирующих пакетов для проверки доступной пропускной способности в c) для проверки, в которой отправляется серия из 50 пакетов зондирующей выборки на каждую итерацию;
Фиг. 10 показывает результаты проверки в показателях точности оцененной доступной пропускной способности и соответствующего времени оценки в зависимости от скорости передачи данных в a); соответствующего количества итераций для одних и тех же точек измерения в b); и соответствующей загрузки доступной пропускной способности в конвейере данных вследствие отправки зондирующих пакетов для проверки доступной пропускной способности в c) для проверки, в которой отправляется серия из 200 пакетов зондирующей выборки на каждую итерацию;
Фиг. 11 показывает зависимость количества пакетов зондирующей выборки для использования при проверке пропускной способности в соответствии с изобретением от скорости передачи битов зондирования;
Фиг. 12 показывает результаты проверки в показателях точности оцененной доступной пропускной способности и соответствующего времени оценки в зависимости от скорости передачи данных в a); соответствующего количества итераций для одних и тех же точек измерения в b); и соответствующей загрузки доступной пропускной способности в конвейере данных вследствие отправки зондирующих пакетов для проверки доступной пропускной способности в c) для проверки, в которой отправляется серия с переменным количеством пакетов зондирующей выборки на каждую итерацию;
Фиг. 13 показывает зависимость предложенного коэффициента уменьшения шага для использования при проверке пропускной способности в соответствии с изобретением от определенного фазового дрожания у пакетов зондирующей выборки;
Фиг. 14 показывает результаты проверки в показателях точности оцененной доступной пропускной способности и соответствующего времени оценки в зависимости от скорости передачи данных в a); соответствующего количества итераций для одних и тех же точек измерения в b); и соответствующей загрузки доступной пропускной способности в конвейере данных вследствие отправки зондирующих пакетов для проверки доступной пропускной способности в c) для проверки, в которой отправляется серия с переменным количеством пакетов зондирующей выборки на каждую итерацию при наличии фазового дрожания, и где фазовое дрожание в сети учитывается классическим способом; и
Фиг. 15 показывает результаты проверки в показателях точности оцененной доступной пропускной способности и соответствующего времени оценки в зависимости от скорости передачи данных в a); соответствующего количества итераций для одних и тех же точек измерения в b); и соответствующей загрузки доступной пропускной способности в конвейере данных вследствие отправки зондирующих пакетов для проверки доступной пропускной способности в c) для проверки, в которой отправляется серия с переменным количеством пакетов зондирующей выборки на каждую итерацию при наличии фазового дрожания, и где фазовое дрожание в сети учитывается в соответствии с изобретением с переменным коэффициентом уменьшения шага.
Подробное описание предпочтительных вариантов осуществления
На фиг. 1 сетевой узел 10 и сетевой узел 11 подключаются к глобальной сети WAN 12 и осуществляют связь посредством пакетов данных, например в среде Интернет с помощью протокола TCP/IP или протокола UDP/IP без установления соединения. TCP здесь означает протокол управления передачей с установлением соединения, а IP является Интернет-протоколом.
Измерение доступной пропускной способности выполняется между узлом-источником 20 и узлом-адресатом 21, которые являются станциями в глобальной сети WAN. Эта принципиальная структура сети иллюстрируется на фиг. 2. Как правило, тракт передачи проходит по некоторому количеству промежуточных станций, которые могут быть коммутаторами или маршрутизаторами. На чертеже изображено только два маршрутизатора R1 и R2, но в действительности на тракте может быть гораздо больше маршрутизаторов. Зондирующий трафик указывается посредством номера 24 ссылки. В сети имеется перекрестный трафик 25, который образуется из передач от сетевой станции 22 к станции 23. Перекрестный трафик 25 имеет такое же направление, как зондирующий трафик на линии L2 связи.
Зондирующий трафик состоит из множества пакетов зондирующей выборки в виде пакетов UDP. Структура пакета зондирующей выборки изображается на фиг. 3. Пакет зондирующей выборки является обыкновенным пакетом 30 UDP с несколькими участками 31 – 33 заголовка и участком 34 полезной нагрузки. Фиг. 3 также показывает вложение пакета UDP в пакет Ethernet. Заголовок Ethernet находится в участке 31, заголовок IP – в участке 32, а заголовок UDP – в участке 33. В участке 34 полезной нагрузки пакеты зондирующей выборки содержат отметку 35 времени и, при желании, порядковый номер 36. Отметка 35 времени указывает момент времени, когда станция-источник 20 отправила пакет по каналу связи. Внутри станции-источника 20 есть тактовый генератор, с помощью которого формируется эта отметка 35 времени. Номера сегментов помогают отличать разные зондирующие выборки и легко сортировать их в приемнике 21 в порядке передачи. Полезная нагрузка дейтаграммы содержит 64 бита для порядкового номера 36 и 128 битов для отметки 35 времени (64 бита для секунд и 64 бита для наносекунд), все остальное в участке 34 полезной нагрузки является фиктивными битами, которые не содержат никакой значимой информации. Отметим, что размер SS сегмента соответствует участку 34 полезной нагрузки в пакете 30 UDP. Пакет зондирующей выборки, который соблюдает размер максимального блока передачи MTU в 1500 байт, содержит 1472 байта в участке 34 полезной нагрузки, если используется заголовок 32 IPv4.
Фиг. 4 иллюстрирует разные итерации проверки доступной пропускной способности. Проверка начинается с отправки первой серии пакетов зондирующей выборки от станции-источника 20 к станции-адресату 21 по сети 12. Скорость зондирующей выборки высокая, как видно в небольших промежутках между последовательными пакетами зондирующей выборки в первой серии пакетов зондирующей выборки. Станция-адресат 21 получает свои отметки времени при приеме пакетов зондирующей выборки и оценивает отметки 34 времени в принятых пакетах зондирующей выборки, вычисляет межпакетный интервал IpIS с помощью принятых отметок времени и межпакетный интервал IpIR с помощью своих сформированных отметок времени и сравнивает их. Она отправляет обратно станции-источнику 20 рекомендацию нового времени IpIS в сообщении обратной связи. В предпочтительном варианте осуществления для отправки сообщений обратной связи используется протокол SOAP (простой протокол доступа к объектам). Сообщение обратной связи также содержит информацию о коэффициенте потери пакетов PLR, оцененном на стороне приема. Станция-источник 20 во второй итерации отправляет вторую серию пакетов зондирующей выборки со скоростью зондирующей выборки, соответствующей рекомендованному времени IpIS, принятому в сообщении обратной связи. Поскольку из-за некоторого перекрестного трафика скорость зондирующей выборки в первой итерации, скорее всего, будет очень высокой, рекомендованное время IpIS больше времени IpIS, примененном в первой итерации. В таком виде время IpIS будет последовательно увеличиваться в количестве итераций, которое изображено на фиг. 4. Как только станция-адресат 21 распознает, что измеренное время IpIR равно или почти равно рекомендованному времени IpIS в показателях заданного допуска, проверка доступной пропускной способности завершается, и станция-источник будет использовать последнее время IpIS для последующей связи со станцией-адресатом 21 до следующей проверки доступной пропускной способности.
В соответствии с алгоритмом измерения источник 20 отправляет адресату 21 зондирующие выборки с некоторой постоянной скоростью выборок (постоянным IpIS). Отметим, что скорость выборок в дальнейшем будет измеряться в виртуальной скорости передачи битов, которая соответствует реальной скорости передачи битов на физическом уровне сети, только если по сети отправляются исключительно пакеты зондирующей выборки один за другим без промежутков. Если зондирующие пакеты отправляются с промежутками, то это означает, что такие промежутки могут быть заполнены другим сетевым трафиком. Однако промежутки не могут оставаться постоянными от одной линии связи к другой, поскольку в маршрутизатор также может поступать другой сетевой трафик, и обычно алгоритм маршрутизации гарантирует, что весь сетевой трафик справедливо перенаправляется своему адресату. Это означает, что другие пакеты связи будут вставляться перед направлением следующего пакета зондирующей выборки. Поэтому при взаимодействии с перекрестным трафиком изменяется межпакетный интервал времени, который воспринимается в устройстве-адресате 21. Это проиллюстрировано на фиг. 5.
Отправку каждого пакета зондирующей выборки можно представить, как показано на фиг. 5. На изображении показаны периоды времени IpIS, OWD и IpIR. Составляющие наблюдаемого значения OWD также изображены на изображении следующим образом: d – задержка распространения (время для прохождения физической среды - соответствует скорости света в той среде), s – задержка при обслуживании (служебное действие маршрутизатора типа копирования пакета данных из буфера в буфер и т.п.), q – задержка в очереди – время, которое пакет проводит в очереди маршрутизатора из-за перекрестного трафика, который также нужно обрабатывать справедливо.
Чтобы разобраться во взаимодействии между зондирующим трафиком и перекрестным трафиком, рассмотрим фиг. 6.
1
2
2
На фиг. 6 T является межпакетным интервалом времени, τ – время передаваемого пакета. Последнее значение зависит от пропускной способности линии связи. Полагаем, что все три линии связи обладают одинаковой пропускной способностью, и это значение не изменяется во время передачи. Тогда межпакетное время на линии L1 связи - T, в идеальном случае равно IpIS – интервалу времени от конечной части одного пакета до конечной части следующего пакета. В маршрутизаторе между L1 и L2 зондирующий трафик взаимодействует с перекрестным трафиком. Как следствие, межпакетный интервал времени увеличивается до T на линии L2 связи. К адресату трафик приходит с воспринимаемым межпакетным интервалом T времени, который в том случае будет равен IpIR.
Теперь рассмотрим, как межпакетные интервалы времени изменяются между последовательными итерациями.
Поскольку ситуация на фиг. 6 представляет первую итерацию, то вторую итерацию можно представить, как показано на фиг. 7.
1
2
Межпакетный интервал IpIS времени (T) увеличивается в устройстве-источнике из-за сообщения SOAP, с помощью которого сообщается рекомендованное следующее время IpIS. Однако взаимодействие с перекрестным трафиком все же изменяет межпакетный интервал во второй итерации. Поэтому IpIR опять равен T, что по-прежнему отличается от IpIS. Тогда устройство-адресат опять рекомендует увеличенное время IpIS.
1
2
1
После нескольких итераций IpIS становится ближе к IpIR, как это представляется на фиг. 8. Здесь значение T не изменяется, когда пакет проходит маршрутизатор R1, и поэтому не переименовано в T. В идеальном случае (что почти никогда не происходит в действительности) значение IpIR равно IpIS в том случае, и доступная пропускная способность тогда равна последней скорости, которая была использована устройством-источником 20. В результате имеем только τ, которое неизменно на всем тракте в течение всех итераций.
Влияние количества зондирующих выборок на точность измерения доступной пропускной способности можно отчетливо наблюдать на высокоскоростных соединениях вплоть до 10 Гбит/с.
Графики результатов измерений на фиг. 9 и 10 показывают оценку пропускной способности с помощью следующих параметров сети:
- Постоянная односторонняя задержка OWD в 40 мс
- Потери пакетов 0,01%.
На фиг. 9a легко наблюдать, что ошибка оценки, нанесенная на левой оси ординат, растет наряду с увеличением пропускной способности канала передачи данных. В одиночной итерации проверки пропускной способности используется постоянное значение зондирующих выборок, здесь в количестве 50 дейтаграмм. Для всех графиков ось абсцисс предназначена для максимальной пропускной способности тракта между отправителем данных и приемником данных. Измерения выполнены для максимальной пропускной способности тракта в диапазоне от 10 до 10000 Мбит/с. Логарифмическая шкала используется с пояснительной целью на оси абсцисс на всех графиках, кроме фиг. 13. Во время проверки для каждого оцененного значения пропускной способности соединения это соединение загружалось на 40% от дополнительно сформированного фонового трафика UDP. Первый график на фиг. 9a показывает ошибку оценки пропускной способности в процентном отношении доступной пропускной способности на левой оси ординат и времени оценки в секундах на правой оси ординат. График «Итерации» на фиг. 9b показывает количество итераций, выполненных для приближения к соответствующим точкам измерения на фиг. 9a и 9c. График «Загрузка доступной пропускной способности» на фиг. 9c показывает виртуальное время занятости всей доступной пропускной способности всеми отправленными зондирующими выборками в течение периода проверки в секундах. Поскольку пропускная способность резко увеличивается слева направо, виртуальное время занятости также уменьшается резко, как предполагалось. Фактически пропускная способность используется этим зондирующим трафиком в течение всего времени измерения, а не только часть времени в фазе проверки. Поэтому виртуальное время означает время, которое нужно для отправки всех зондирующих пакетов при проверке один за другим без промежутков. Здесь для ясности отметим, что пропускная способность конвейера данных задается как произведение пропускной способности в битах в секунду и времени кругового обращения RTT в секундах.
На фиг. 9a видно, что приблизительно до пропускной способности в 100 Мбит/с достаточно 50 выборок, чтобы измерить доступную пропускную способность с ошибкой оценки менее 5%. Однако, если канал связи имеет исходную пропускную способность выше 100 Мбит/с, то абсолютная ошибка оценки становится выше – вплоть до 9 процентов на этом графике при 800 Мбит/с. До 1 Гбит/с использован размер MTU в 1500 байт, а выше 1 Гбит/с использован размер MTU в 9000 байт. Значение MTU является максимальным блоком передачи, который может использоваться на канальном уровне (уровень 2 в модели взаимодействия ISO/OSI) без необходимости фрагментации пакетов данных на сетевом уровне (уровень 3 в модели взаимодействия ISO/OSI). Необходимо работать с пакетами большего размера (Jumbo-кадры), чтобы достичь точных скоростей передачи данных выше 1 Гбит/с. Вот почему имеется резкое изменение с пакетов 1500 байт до 9000 байт, что также видно на фиг. 9.
На фиг. 10 показан эксперимент при тех же условиях, что и раньше, но с увеличенным количеством выборок до 200. Поведение ошибки оценки улучшается – ошибка не показывает никаких значений выше 1% или ниже 3% даже при оценке вплоть до 6 Гбит/с. Однако ценой такого улучшения является существенное увеличение времени оценки, количества итераций и соответствующего ему количества байт, которые введены в сеть с целью проверки.
Одна идея изобретения состоит в использовании переменного количества зондирующих выборок в соответствии со скоростью отправки, с которой пакеты зондирующей выборки доставляются на канальный уровень при проверке пропускной способности. Программное обеспечение проверки вычисляет количество выборок в соответствии с описанной ниже формулой. Эта формула проверена серией экспериментов, которые показали, что распределение количества выборок должно удовлетворять формуле 2:
где R – скорость передачи битов у зондирующего пакета в Мбит/с, используемая для итерации, и
N – количество выборок, которое нужно отправить в следующей итерации.
Зависимость выборок от скорости зондирования показана на фиг. 11. Скорость зондирования здесь означает псевдоскорость передачи битов, с которой отправляются все зондирующие пакеты на одном шаге итерации. При этом поведении меньше выборок будет отправлено на низких скоростях зондирования, что помогает обеспечить высокую точность измерений наряду с тем, что потребляется немного пропускной способности данных в том канале передачи данных. Также это сэкономит время для проверки сети, поскольку каждому пакету зондирующей выборки нужно некоторое время для отправки, и на более низких скоростях передачи данных это время значительно. На более высоких скоростях будет отправлено больше выборок, чтобы обеспечить высокую точность измерения, но время измерения заметно не увеличится, поскольку системе нужно меньше времени на каждый пакет зондирующей выборки. Если скорость зондирования меньше 100 Мбит/с, то в большинстве случаев достаточно 50 выборок на итерацию для хорошей оценки доступной пропускной способности с ошибкой оценки менее 5%. С увеличением скорости зондирования количество выборок проверки на итерацию увеличивается логарифмически и возрастает до 200 выборок на скорости передачи битов в 10 Гбит/с. Опять ось абсцисс представлена логарифмической шкалой, чтобы на фиг. 11 логарифмическая характеристика появилась в виде прямой линии.
Вообще, количество выборок, удерживаемое на определенном в формуле (2) или в диапазоне +/- 20% от него, дало бы хорошую точность на высоких скоростях и сэкономило время на низких скоростях передачи данных. Таким образом, это отличный компромисс между двумя критериями, хорошей точностью и величиной времени проверки.
Характеристики оценки показаны на фиг. 12. Все 3 чертежа иллюстрируют, что предложенный способ использования переменного количества пакетов зондирующих выборок позволяет достичь достаточно высокой точности на высоких скоростях зондирования при уменьшенном времени оценки и объеме служебного трафика. Это также обеспечивает высокоточные измерения на более низких скоростях передачи данных.
Другим важным фактором влияния на точности оценки пропускной способности является дрожание задержки пакетов. Существует высокая вероятность того, что оценка скорости зондирования для следующей итерации будет неверной, если дрожание задержки пакетов является сильным. Фазовое дрожание обычно задается как изменение в моментах поступления пакетов. Это соответствует стандартному отклонению моментов поступления.
Чтобы решить эту проблему, необходимо оценить фазовое дрожание и то, насколько большое смещение оно вносит в измерения. С этой целью в соответствии с другим вариантом осуществления изобретения измеряется стандартное отклонение фазового дрожания, и в качестве метрики предлагается использовать отношение стандартного отклонения дрожания задержки пакетов к среднему межпакетному интервалу на стороне приема, JtI, в соответствии с формулой 3:
jitter
где σ – стандартное отклонение фазового дрожания, и
IpIR – средний межпакетный интервал, воспринимаемый на стороне приема во время последней итерации.
Лучший способ выполнить точные измерения при сильном разбросе фазового дрожания – выполнить больше итераций измерения с меньшими шагами. В классическом способе, который описан в литературе, объясняющей модель PRM, см. раздел «Уровень техники» в изобретении, межпакетный интервал для скорости зондирования следующей итерации вычисляется в соответствии с формулой 4:
next
curr
где IpIS – межпакетный интервал времени отправки для следующей скорости зондирования, IpIS – межпакетный интервал времени отправки для текущей скорости зондирования, и IpIR – межпакетный интервал времени при приеме.
Отклонение фазового дрожания влияет только на IpIR в упомянутой формуле, потому что другие операнды не взаимодействуют с сетью. Следовательно, если бы отклонение дрожания задержки пакетов было большим, то полученное значение IpIR могло быть гораздо больше реального значения. В том случае следующий IpIS мог бы быть значительно меньше оптимального IpIS. При оптимальных условиях предполагаемый межпакетный интервал IpIS используется для формирования постоянной скорости, которая приблизительно равна доступной пропускной способности соединения. Если отправитель отправляет со скоростью зондирования, которая меньше доступной пропускной способности, то не будет обнаружена тенденция к увеличению, и эта скорость зондирования будет сообщена как доступная пропускная способность.
В формуле 4 IpIS увеличивается на абсолютную разность между IpIR и IpIS, деленную на 2. В одном варианте осуществления изобретения предлагается увеличивать значение IpIS в зависимости от метрики JtI, которая задана в (3). Предлагается выражать эту зависимость в виде коэффициента уменьшения шага - SDF(JtI), как сформулировано в (5):
Посредством этого предлагается задать SDF следующим образом:
Функция, которая задана в формуле (6), графически представляется на фиг. 13.
next
В соответствии с функцией, если отклонение фазового дрожания является значительным по сравнению с межпакетным интервалом, IpIS, то оно быстрее стремится к IpIR, если нет – то медленнее. Такой способ предоставляет возможность уменьшить количество итераций в случае слабого фазового дрожания без потери точности измерений. В противном случае способу понадобиться больше итераций, чтобы добиться приемлемой точности.
Для экспериментов, осуществленных для проверки коэффициента уменьшения шага, использовалась сеть, в которой значение OWD равно 40 мс, и значения OWD распределяются в соответствии с нормальным законом со стандартным отклонением 0,3 мс.
Прежде всего результаты измерений изображаются при наличии фазового дрожания без использования коэффициента SDF уменьшения шага. Отметим, что в этой проверке также применяется переменное количество пакетов зондирующей выборки на итерацию. Это показано на фиг. 14.
Относительная ошибка в том случае показывает значение -18 % от реальной доступной пропускной способности при максимальной скорости передачи битов в 10 Гбит/с, которая является довольно большой.
Поскольку OWD для всех проверок распределяются в соответствии с нормальным законом при относительно высоком стандартном отклонении, параметр JtI также будет большим – например, ближе к 6 Гбит/с значение JtI составит около 2,5-3. Поведение измерений с примененным коэффициентом уменьшения шага, как в формуле (5), представляется на фиг. 15.
Фиг. 15a показывает, что ошибка оценки среди всех проверок не превышает 10%. Также достойно внимания, что для низких пропускных способностей вплоть до 100 Мбит/с количество итераций обычно меньше, чем представлено на фиг. 14, и в соответствии с этим время оценки на таких пропускных способностях также меньше. Например, при скорости в 20 Мбит/с на фиг. 15 измерение содержит около 12 итераций; при скорости 80 на фиг. 12 измерение содержит около 18 итераций. Для пропускных способностей выше 100 Мбит/с картина противоположна: количество итераций увеличивается, и время измерения увеличивается, однако значительно уменьшается абсолютное значение ошибки оценки. Это поведение легко объяснить. Среди всех проверок имеем одинаковое значение OWD и его стандартное отклонение в соответствии с нормальным законом. Это означает, что при более низких пропускных способностях отклонение меньше, чем межпакетный интервал, а при более высоких пропускных способностях отклонение соразмерно межпакетному интервалу или больше. В соответствии с этим JtI (формула 3) будет больше, и таким образом, SDF также больше. Это уменьшает шаги итерации, и для создания точного измерения необходимо больше итераций. Однако большее количество итераций при более высоких пропускных способностях не представляет очень большой проблемы, поскольку каждая итерация занимает меньше времени.
ую
Изобретение будет использоваться в устройстве мониторинга/проверки сети для измерения производительности сети. Такое устройство помогает оптимизировать пропускную способность в сети путем регулирования задержек между двумя пакетными передачами и скорости передачи данных. Цель – использовать доступную пропускную способность сети оптимальным образом, избегая при этом перегрузки. Этот процесс регулировки может повторяться периодически, например каждую минуту или каждую 2 минуту. Так как управление QoS в Интернете становится все более развитым, описанный способ также мог бы использоваться в сложных администраторах качества обслуживания (QoS). Такие устройства мониторинга или проверки сети могут основываться на обычном ПК или рабочей станции, на который (которую) устанавливается соответствующее программное обеспечение проверки производительности сети. Предпочтительно, чтобы программное обеспечение проектировалось для возможностей a) выполнения этапов способа в соответствии с изобретением по отношению к устройству-источнику 20 в проверке производительности и b) выполнения этапов способа в соответствии с изобретением по отношению к устройству-адресату 21 в проверке производительности. Во время проверки программное обеспечение в устройстве-источнике конфигурируется для выполнения этапов устройства-источника 20, а программное обеспечение в устройстве-адресате конфигурируется для выполнения этапов устройства-адресата 21. Примерами такого программного средства мониторинга/проверки сети, в котором можно реализовать изобретение, являются серийно выпускаемые программные средства типа Wireshark и т.п.
Изобретение также может использоваться применительно к протоколу UDP или UDT или применительно к измененной версии протокола TCP. UDT означает основанный на UDP протокол передачи данных и предназначен в основном для реализации в транспортных протоколах, которые подходят для использования в высокоскоростных сетях со скоростями передачи данных в диапазоне 10 Гбит/с. Протокол UDT допускает 10-гигабитную двухточечную или многоточечную передачу данных по линиям связи Интернет и характеризуется методиками управления потоком/перегрузками.
В случае реализации в UDT изобретение будет предпочтительно использоваться следующим образом: Сервер, у которого запрашивают отправку файла/веб-страницы клиенту, передает первую серию пакетов зондирующей выборки. Клиент выполнит вычисление рекомендованного времени IpIS и отправит его обратно серверу, например, в сообщении SOAP. Затем сервер регулирует время IpIS и отправляет вторую серию пакетов зондирующей выборки UDT, соответствующую заданному новому времени IpIS. Клиент снова отправит сообщение обратной связи с рекомендованным временем IpIS. Эта процедура проверки продолжается до тех пор, пока рекомендованное время IpIS не приблизится к вычисленному времени IpIR относительно заданного допуска. Затем сервер отправляет исключительно пакеты данных UDP без перерыва, посредством чего межпакетный интервал времени для отправки пакетов UDT соответствует последнему рекомендованному времени IpIS.
В случае возможного использования в TCP изобретение будет предпочтительно использоваться следующим образом: Сервер, у которого запрашивают отправку файла/веб-страницы клиенту, передает первую серию пакетов зондирующей выборки посредством TCP и отправляет, например, 20 сегментов обычным способом – непрерывно. Термин «непрерывно» здесь означает, что пакеты будут отправлены один за другим немедленно, без соблюдения какого-либо дополнительного межпакетного интервала времени. Вычисление межпакетного интервала времени для каждого сегмента и создание среднего значения приведет к значению IpIS для следующей итерации. На основе принятого сообщения обратной связи (например, посредством измененного сообщения ACK TCP, которое содержит также значение IpIR) клиент TCP может отрегулировать размер окна перегрузки и отправить следующую часть фрагментов в сеть с рекомендованным значением IpIS. Это будет повторяться до тех пор, пока скорость отправки у TCP не будет соответствовать скорости приема.
Как упоминалось выше, вся проверка пропускной способности может длиться несколько секунд, и обычно это неприемлемо для пользователя, который путешествует в Интернете. Конечно, это может зависеть от применения. Для обновлений/загрузок программного обеспечения или некоторого потокового контента аудио/видео выполнение полной проверки пропускной способности до начала доставки запрошенного контента клиенту может быть приемлемым. В частности, изобретение можно реализовать в программных средствах для ускорения пропускной способности в глобальных сетях.
В дополнение к описанным выше предпочтительным вариантам осуществления изобретение также может использоваться как часть нового транспортного протокола помимо TCP или RTP, будь то транспортный протокол без установления соединения либо транспортный протокол с установлением соединения.
Нужно понимать, что предложенный способ и устройство можно реализовать в различных видах аппаратных средств, программного обеспечения, микропрограммного обеспечения, специализированных процессоров или их сочетания. Специализированные процессоры могут включать в себя специализированные интегральные схемы (ASIC), компьютеры с сокращенным набором команд (RISC) и/или программируемые пользователем вентильные матрицы (FPGA). Предпочтительно, чтобы предложенный способ и устройство были реализованы как сочетание аппаратных средств и программного обеспечения. Кроме того, программное обеспечение предпочтительно реализуется как прикладная программа, материально воплощенная в запоминающем устройстве для программ. Прикладная программа может быть загружена в машину, содержащую любую подходящую архитектуру, и исполнена этой машиной. Предпочтительно, чтобы машина была реализована на компьютерной платформе, имеющей аппаратные средства, например один или несколько центральных процессоров (CPU), оперативное запоминающее устройство (RAM) и интерфейс (интерфейсы) ввода/вывода (I/O). Компьютерная платформа также включает в себя операционную систему и код из микрокоманд. Различные процессы и функции, описанные в этом документе, могут быть либо частью кода из микрокоманд, либо частью прикладной программы (или их сочетанием), которая исполняется операционной системой. К тому же к компьютерной платформе могут быть подключены различные другие периферийные устройства, например дополнительное запоминающее устройство и печатающее устройство.
Следует понимать, что показанные на фигурах элементы можно реализовать в различных видах аппаратных средств, программного обеспечения или их сочетаний. Предпочтительно, чтобы эти элементы были реализованы в сочетании аппаратных средств и программного обеспечения на одном или нескольких подходящим образом запрограммированных универсальных устройствах, которые могут включать в себя процессор, запоминающее устройство и интерфейсы ввода/вывода. В этом документе фраза «соединенный» задается как подключенный напрямую или подключенный косвенно через один или несколько промежуточных компонентов. Такие промежуточные компоненты могут включать в себя компоненты на основе как аппаратных средств, так и программного обеспечения.
Нужно понимать, что поскольку некоторые из составляющих компонентов системы и этапов способов, изображенных на прилагаемых фигурах, реализуются предпочтительно в программном обеспечении, фактические связи между компонентами системы (или этапами процессов) могут отличаться в зависимости от способа, которым программируется предложенный способ и устройство. Принимая во внимание идеи в этом документе, средний специалист в родственной области техники сможет предположить эти и аналогичные реализации или конфигурации предложенного способа и устройства.