Компьютерные сети

Компьютерные сети

Н. Олифер

(или более обобщенно — звука) неравномерность интервалов между пакетами, несущими замеры голоса, приводит к существенным искажениям речи.

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

Пакеты могут теряться в сети или же приходить в узел назначения с искаженными данными, что равносильно потере пакета, так как большинство протоколов не способно восстанавливать искаженные данные, а только определяет этот факт по значению контрольной последовательности кадра (Frame Check Sequence, FCS).
Пакеты также могут дублироваться по разным причинам, например из-за ошибочных повторных передач протоколов, обеспечивающих надежный обмен данными.

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

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

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

Статистические методы служат для оценки характеристик случайных процессов, а именно такой характер имеют процессы передачи пакетов сетью. Сами характеристики производительности сети, такие как, например, задержка пакета, являются случайными величинами.

Статистические характеристики выявляют закономерности в поведении сети, которые устойчиво проявляются только на длительных периодах времени. Когда мы говорим о длительном периоде времени, то мы понимаем под этим интервал, в миллионы раз больший, чем время передачи одного пакета, которое в современной сети измеряется микросекундами. Так, время передачи пакета Fast Ethernet составляет около 100 мкс, Gigabit Ethernet — около 10 мкс, ячейки АТМ — от долей микросекунды до 3 мкс (в зависимости от скорости передачи). Поэтому для получения устойчивых результатов нужно наблюдать поведение сети, по крайней мере, в течение минут, а лучше — нескольких часов.

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

Для того чтобы получить гистограмму распределения, мы должны разбить весь диапазон измеренных значений задержек на несколько интервалов и подсчитать, сколько пакетов из нашей выборки попало в каждый интервал. Пусть все значения задержек укладываются в диапазон 20-90 мс. Разобьем его на семь интервалов по 10 мс. В каждый из этих интервалов, начиная с интервала 20-30 мс и т. д., попало 100 (я1), 200 (и2), 300 (иЗ), 300 (я4), 400 (я5), 800 (яб) и 500 (и7) пакетов соответственно. Отобразив эти числа в виде горизонтальных уровней для каждого интервала, мы получим гистограмму, показанную на рис. 6.3, которая, основываясь всего на семи числах я1, я2,..., я7, дает нам компактную статистическую характеристику задержек 2600 пакетов.

Рис. 6.3. Гистограмма распределения задержек

Гистограмма задержек дает хорошее представление о производительности сети. По ней можно судить, какие уровни задержек более вероятны, а какие — менее. Чем больше период времени, в течение которого собираются данные для построения гистограммы, тем с более высокой степенью достоверности можно предсказать поведение сети в будущем. Например, пользуясь гистограммой на рис. 6.3, можно сказать, что и в будущем при измерениях задержек пакетов у 65 % пакетов задержка не превысит 60 мс. Для получения такой оценки мы сложили общее количество пакетов, задержки которых попали во все интервалы, большие 60 мс (1700 замеров), и разделили эту величину на общее количество пакетов (2600 замеров). Другими словами, мы нашли долю пакетов, задержки которых в выборке превышают 60 мс, и считаем, что наша выборка позволяет судить о поведении сети в будущем.

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

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

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

□ Среднее значение (D) вычисляется как сумма всех значений оцениваемой величины деленная на количество всех измерений N:
D = Y^..
Для примера, приведенного на рис. 6.3, среднее значение равно: (100 х 25 + 200 х 35 + + 300 х 45 + 300 х55 + 400 х 65 + 800 х 75 + 500 х 85)/2600 - 64,6 мс (для вычисления использованы средние значения интервалов).

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

□ Стандартное отклонение (J) представляет собой среднее отклонение каждого отдельного замера от среднего значения оцениваемой величины:
Очевидно, что если все задержки dj равны между собой, то вариация отсутствует, что подтверждают приведенные формулы — в этом случае D - dj и / = 0.
□ Коэффициент вариации — это безразмерная величина, которая равна отношению стандартного отклонения к среднему значению оцениваемой величины:
CV = J-.
D

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

□ Квантиль (процентиль) — это такое значение оцениваемой величины, которое делит ранжированную выборку на две части так, что процент замеров, значения которых меньше или равно значению квантиля, равен некоторому заданному уровню. В этом определении фигурируют два числа: заранее заданный процент и найденное по нему и замерам выборки значение квантиля. Рассмотрим для примера выборку задержек пакетов, показанную на рис. 6.3, и найдем для нее значение 80-процентного квантиля. Ответом будет 80 мс, так как ровно 80 % замеров выборки (то есть 2100 замеров из всех интервалов кроме последнего) имеют значения, меньшие или равные 80 мс. Медиана является частным случаем квантиля — это 50-процентный квантиль. Для оценки характеристик сети обычно используют квантили с достаточно большим значением процента, например 90-, 95- или 99-процентные квантили. Это понятно, так как если пользователю скажут, что сеть будет обеспечивать уровень задержек в 100 мс с вероятностью 0,5, то это его не очень обрадует, так как он ничего не будет знать об уровне задержек половины своих пакетов.

Мы рассмотрели применение статистических методов для оценки характеристик производительности сети на примере такой характеристики, как задержка. Естественно, эти методы применяются ко всем характеристикам производительности сети, так как все они являются случайными величинами.
Активные и пассивные измерения в сети

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

Активные измерения основаны на генерации в узле-источнике специальных «измерительных» пакетов. Эти пакеты должны пройти через сеть тот же путь, что и пакеты, характеристики которых мы собираемся оценивать. Измерения в узле назначения проводятся на последовательности «измерительных» пакетов.

Рисунок 6.4 иллюстрирует идею активных измерений. Пусть мы хотим измерить задержки пакетов некоторого приложения А, которые передаются от компьютера-клиента приложения А компьютеру-серверу приложения А через сеть. Вместо того чтобы пытаться измерить задержки пакетов, генерируемых клиентским компьютером, мы устанавливаем в сети два дополнительных компьютера: сервер-генератор и сервер-измеритель. Сервер-генератор генерирует измерительные пакеты (показанные на рисунке серым цветом), а сервер-измеритель измеряет задержки этих пакетов. Для того чтобы измеряемые значения были близки к значениям задержки пакетов приложения А, нужно, чтобы измерительные пакеты проходили через сеть по тому же пути, что и пакеты приложения А, то есть нужно постараться подключить сервер-генератор и сервер-измеритель по возможности ближе к оригинальным узлам. В нашем примере такое приближение достигнуто за счет подключения дополнительных узлов к портам тех же коммутаторов 51 и 52, к которым подключены оригинальные узлы. Кроме того, нужно, чтобы измерительные пакеты как можно больше «походили» на оригинальные пакеты — размерами, признаками, помещенными в заголовки пакетов. Это требуется для того, чтобы сеть обслуживала их так же, как оригинальные пакеты.

Клиент Сервер
Рис. 6.4. Схема активных измерений

Однако измерительные пакеты не должны генерироваться слишком часто, иначе нагрузка сети может существенно измениться, и результаты замеров будут отличаться от тех, которые были бы получены в отсутствии измерительных пакетов. Другими словами, измерения не должны менять условий работы сети. Обычно интенсивность генерации измерительных пакетов не превосходит 20-50 пакетов в секунду. Существует специальное программное обеспечение, которое генерирует измерительные пакеты и измеряет их характеристики по прибытию на сервер-измеритель.

Возникает естественный вопрос: зачем нужно решать столько проблем: размещать дополнительное оборудование, создавать условия для измерительных пакетов, близкие к условиям обработки оригинальных пакетов, и в то же время стараться не изменить нагрузку сети? Не проще ли измерять параметры реальных пакетов? Ответ заключается в том, что активная схема упрощает процесс проведения измерений и позволяет добиться их высокой точности. Так как сервер-генератор создает измерительные пакеты, то он легко может использовать специальный формат пакетов для того, чтобы поместить в них необходимую для измерения информацию, например временную отметку (time-stamp) отправки пакета. Затем сервер-измеритель использует эту временную отметку для вычисления времени задержки. Очевидно, что для того чтобы измерения задержки были точными, нужна хорошая синхронизация сервера-генератора и сервера-измерителя. Так как в схеме активных измерений они представляют собой выделенные узлы, такой синхронизации добиться проще, чем в случае синхронизации клиента и сервера приложения А, которые чаще всего представляют собой обычные компьютеры. Кроме того, иногда у инженеров, проводящих измерения, просто нет доступа к компьютерам, на которых работают приложения, чтобы установить там программное обеспечение для требуемых измерений поступающих пакетов. А если такой доступ и существует, то операционные системы клиента и сервера и их аппаратная платформа, скорее всего, не оптимизированы для точных измерений временных интерва

Однако преимущества активной схемы измерений не являются абсолютными. В некоторых ситуациях более предпочтительной является схема пассивных измерений.
Пассивные измерения основаны на измерениях характеристик реального трафика. Эту схему иллюстрирует рис. 6.5.
Сервер приложения А
S2
*•«
]
а
Ж
1
Сервер-измеритель
Клиентприложения А
Пакеты приложения АРис. 6.5. Схема пассивных измерений

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

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

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

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

Возможным вариантом пассивной схемы измерений является отсутствие выделенного сервера-измерителя. Некоторые приложения сами выполняют измерения задержек поступающих пакетов, например такими функциями обладают многие приложения IP-телефонии и видеоконференций, так как информация о задержках пакетов помогает определить возможную причину неудовлетворительного качества работы приложения.
СТАНДАРТЫ ИЗМЕРЕНИЙ -«-

Как и в любой области, в сфере измерений имеются стандарты, создающие основу для одинаковой трактовки наиболее важных характеристик производительности сети. Разработкой таких стандартов занимается рабочая группа IETF под названием IPPM (IP Performance Metrics — метрики производительности IP-сетей). И хотя из названия группы видно, что ее стандарты ориентированы на характеристики именно IP-пакетов, эти стандарты носят достаточно общий характер, так что за исключением некоторых деталей могут применяться как основа для описания характеристик любых других протоколов (что и происходит на практике). Каждый стандарт имеет однотипную структуру. Сначала характеристика описывается как случайная величина, то есть дается определение ее единичного значения, которое является также значением ее единичного измерения. Затем дается описание того, что понимается под последовательностью замеров, то есть дается описание того, как правильно получить выборку значений характеристики. И наконец, приводятся рекомендуемые статистические оценки, которыми следует пользоваться при обработке полученной выборки значений. Обычно стандарты группы IPPM оставляют значительную свободу в выборе той или иной статистической оценки, рекомендуя несколько возможных оценок, например среднее значение, квантиль и максимальное значение.

Характеристики задержек пакетов
В этом разделе мы более формально рассмотрим характеристики производительности сети, относящиеся к задержкам и потерям пакетов.
Односторонняя задержка пакетов (One-Way Delay Metric, OWD) входит в число стандартов IPPM и описана в RFC 2679 (
http://www.ietf.org/rfc/rfc2679.txt
).

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

Единичное значение односторонней задержки пакетов определяется как интервал времени между моментом помещения в исходящую линию связи первого бита пакета уалом^отправителем и моментом приема последнего бита пакета с вход ящей линии связи узла-получателя.

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

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

Последовательность замеров рекомендуется выполнять в случайные моменты времени, подчиняющиеся распределению Пуассона. Такой порядок выбора времени замеров позволяет избежать возможной синхронизации измерений с любыми периодическими флюктуациями в поведении сети, так как такая синхронизации может существенно исказить наблюдаемую картину.
И, наконец, RFC 2679 рекомендует использовать следующие статистические оценки для одностороннего времени задержки:


Все материалы, размещенные в боте и канале, получены из открытых источников сети Интернет, либо присланы пользователями  бота. 
Все права на тексты книг принадлежат их авторам и владельцам. Тексты книг предоставлены исключительно для ознакомления. Администрация бота не несет ответственности за материалы, расположенные здесь

Report Page