Чем определяется время задержки в сети ethernet

Обновлено: 06.07.2024

Термин "пропускная способность" в области знаний о компьютерах и сетях соотносится с объемами данных, которые могут передаваться при имеющейся сетевой связи или интерфейсе. Самая распространенная оценка пропускной способности - в единицах "бит в секунду" (бит/сек.). Само понятие пришло из электроинженерной отрасли, где пропускная способность /* bandwidth – дословно переводится как ширина полосы частот (диапазона) или полоса пропускания */ представляет собой общее расстояние или область между самым высоким и самым низким сигналами коммуникационного канала (частоты). Сетевая пропускная способность не является единственным определяющим фактором при оценке "скорости" сети, как зачастую думают конечные пользователи. Среди других ключевых элементов - производительность сети, задержки, а также выполняемые сетевые приложения могут оказывать свое влияние.

что такое пропускная способность?

Производители сетевого оборудования проделали большую работу, развивая и углубляя само понятие пропускной способности. Практически каждый знает пропускную способность своего модема, или своего широкополосного интернет-соединения. В сущности, пропускная способность представляет собой качество соединения, и очевиден факт, что чем лучше качество соединения, тем более высокая будет производительность. Пропускная способность может соотноситься как с практической, так и с теоретической производительностью, и в данном случае весьма важно отличать одно от другого. К примеру, модем V.90 поддерживает пиковую пропускную способность 56 Кбит/сек., но по причине ограничений, которыми наделена телефонная линия, и по некоторым другим факторам, для домашней dial-up-сети совершенно невозможно достичь указанного уровня. Также как сети Fast Ethernet теоретически поддерживают пропускную способность в 100 Мбит/сек., но данный уровень не может быть достигнут на практике, благодаря ныне существующему оборудованию и операционным системам.

высокая пропускная способность и широкополосная связь

Применительно к Интернет, сетевики часто используют термин высокая пропускная способность для определения высокопроизводительного интернет-соединения на традиционных скоростях dial-up доступа. Определения могут варьироваться, но соединения с высокой пропускной способностью поддерживают передачу данных как минимум от 64 Кбит/сек. и, обычно, 200 или 300 Кбит/сек. и выше. Определение высокой пропускной способности отличается от определения широкополосной связи. Технически, термин широкополосная связь относится к методу соединения, а пропускная способность в свою очередь, к объему данных, которые проходят через соединение за определенный период времени.

измерение пропускной способности сети

Существует множество инструментов, которые призваны помчь сетевому персоналу в измерении пропускной способности сетевого соединения. В пределах LAN, в число этих инструментов входят netperf и ttcp. В масштабах Интернет, существует несколько программных "тестов пропускной способности" или "тестов скорости", и многие из них доступны для интерактивного использования на некоторых общедоступных Интернет-сайтах. Каждый, кто воспользуется этими программами, в конце концов поймет, что пропускная способность постоянно варьируется и измерить ее точно очень сложно. Причиной этому то, что обычная сетевая архитектура включает множество уровней оборудования и программного обеспечения, равно как и обладает своими временными характеристиками прохождения информации через них.

пропускная способность против задержки

Пропускная способность — всего лишь единичный элемент в целом комплексе факторов, оказывающих влияние на скоростные характеристики сети. Еще один из элементов этого комплекса, очень близко связанный с пропускной способностью — задержка. Задержка в общем ее понимании может быть соотнесена с задержками в процессе передачи данных по сети, которых может быть несколько разных видов. В общем-то справедливым будет утверждение, что задержка суть скорость прохождения одного конкретного пакета через канал передачи данных – от пункта А к пункту Б. Пропускная способность же указывает на количество данных (можем тоже для наглядности представить количество пакетов), которые могут пройти через некоторый интерфейс, скажем, А (или Б :) за единицу времени (обычно берутся секунды). Однако задержка и пропускная способность взаимосвязаны. Если теоретическая величина пропускной способности фиксирована, практическая, или эффективная пропускная способность изменяется и на нее воздействуют долгие задержки. Слишком большая задержка в слишком короткий промежуток времени может создать своеобразный затор, который будет препятствовать полному заполнению канала данными, таким образом значительно снижая эффективность пропускной способности канала. Справедливо и обратное: если реальная загрузка (утилизация) канала приближается к 100%, а пользователи все продолжают слать потоки данных (такое случается, когда суммарная теоретическая пропускная способность каналов от всех пользователей превышает пропускную способность общего канала, по которому их трафик идет, скажем, к серверу или ISP) – пользователи замечают резкое увеличение задержки пакетов при прохождении через общий канал. Это происходит в результате того, что пакет, вместо того, чтобы попасть в канал передачи, стоит в очереди – собственно, задерживается.

задержка и спутниковые интернет-сервисы

измерение сетевой задержки

Сетевые инструменты, такие как ping и traceroute измеряют задержку посредством определения времени, которое требуется для того, чтобы определенный сетевой пакет прошел путь от начальной точки до места назначения и обратно, замеряется так называемое время "туда-обратно" (Round-Trip Time, RTT). Это, тем не менее, не единственный способ измерить задержку, но наиболее общеупотребительный.

Брэдли Митчел, перевод Дениса Матвеева, дополнения и примечания Alice D. Saemon.

Сетевые решения. Статья была опубликована в номере 01 за 2002 год в рубрике технологии


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

Для чего это надо

Я работаю в российской компании НТЦ-Метротек, которая разрабатывает и выпускает кучу всякой аппаратуры (свичи, тестеры, балансировщики и т.д.) для систем связи, в том числе и тестеры для ethernet-сетей. Например, вот такой. Одним из параметров, измеряемых этим прибором, является задержка прохождения пакета в тестируемой сети. Ха, скажет читатель Хабрахабра — задержку можно и ping'ом померить. Так-то оно и есть, но при разной загруженности сети может быть разная задержка. Наш прибор может измерять задержку с точностью до нескольких наносекунд и при этом создавать нагрузку до 10 Гб/с.

Для измерения задержки в каждый пакет, генерируемый анализатором, вставляется метка времени, а при приёме этого пакета определяется разность между текущим временем и данными из метки. Эта разность и есть задержка. Но так как обычно трафик от анализатора идет до специального устройства (шлейф), которое заворачивает этот трафик обратно к тестеру, то измеренная задержка является суммой времени прохождения пакетов от тестера к шлейфу (upstream) и от шлейфа к тестеру (downstream). Если канал симметричный, то есть его параметры равны в обоих направлениях, то задержку в одном направлении можно получить просто поделив измеренное значение на два.


В случае, когда канал не симметричный, надо измерять задержку отдельно в каждом из направлений. При этом используются два анализатора. Один генерирует тестовый трафик, второй его принимает и анализирует.


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

Как реализовано у нас

Упрощенную схему нашего прибора можно представить в следующем виде:


За отсчет времени отвечает FPGA, на ней реализован счетчик времени, работающий от частоты 125 МГц (отсюда и точность 8 нс). Счетчик времени может отличаться от эталонных часом смещением т.е. либо отставать, либо спешить на какое-то константное значение. Также может отличаться скорость изменения, то есть за секунду идеальный счетчик отсчитает 1*10^9 наносекунд, а реальный может насчитать либо больше, либо меньше, в результате чего смещение постоянно или увеличивается, или уменьшается. Для корректировки этих ошибок в FPGA реализована следующая схема:


Текущее значение счетчика можно изменить на заданную величину при помощи регистра offset. Для плавной подстройки используется дополнительный счетчик, при достижении им заданного значения (drift) счетчик времени либо пропускает один такт, либо вместо 1 увеличивается на 2. Т.е. если задать 10, то за десять тактов счетчик времени изменится на 11, за 20 тактов на 22 и т.д. Если задано отрицательное число, например -10 то за 10 тактов счетчик времени изменится на 9, за 20 тактов на 18 и т.д.

Если посмотреть на диаграмму обмена, то видно, что при реализации PTPv2 клиента (Slave) надо точно знать время, когда приходит пакет от сервера (t2) и время, когда был отправлен ему ответ(t3).


Для этих целей мы модифицировали в FPGA MAC-ядро. При приеме сетевых пакетов к каждому из них добавляется метка времени (t2). А при отправлении пакетов текущее значение счетчика времени (t3) помещается в специальный регистр. На основании этих значений микроконтроллер и рассчитывает текущее рассогласование времени между эталонным источником и прибором.

Для проверки нашей реализации в качестве сервера PTPv2 мы сначала использовали обычный компьютер, на котором был запущен демон ptpd. Чтобы демон мог работать с PTP поверх ethernet (по умолчанию от работает только поверх UDP), надо надо разрешить работу с libpcap. Для этого при конфигурировании надо задать ключ -with-pcap-config.

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

ptpengine:interface = eth0
ptpengine:preset = masteronly
ptpengine:transport = ethernet
ptpengine:use_libpcap = Y
ptpengine:delay_mechanism = E2E

Для начала решили посмотреть, как будут расходиться счетчики времени на компьютере и приборе, если не делать подстройку частоты.


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

Затем вычисленное значение рассогласования стали записывать в регистр корректировки смещения (offset):


По этому графику также видно, что в среднем за секунду набегает ошибка около 22 микросекунд. Использовать подстройку при помощи смещения не очень хорошо, так как при этом происходит скачкообразное изменение счетчика, а так как это изменение происходит асинхронно на двух приборах, то это может приводить к большим ошибкам при измерении задержки. Лучше воспользоваться плавной подстройкой частоты, записать в регистр drift, такое значение, что бы счетчик в FPGA корректировался на 22 микросекунды за одну секунду.

Для автоматической подстройки реализовали ПИ регулятор. Для интегральной составляющей установили коэффициент равный 0.01 а для пропорциональной 0.05.

С ним зависимость рассогласования от времени выглядит так:


Видно, что рассогласование «шумит» и достигает 20 и более микросекунд. Это не удивительно, ведь в качестве PTP сервера используется обычный компьютер.

Когда мы проверили нашу реализацию с сервером точного времени Метроном-50, в котором реализована аппаратная поддержка PTP, то получили рассогласование величиной в десятки наносекунд, что вполне достаточно для корректного измерения задержки в асимметричном канале.

Офисный работник в клубок кабелей.

Задержка сетевого соединения представляет собой количество времени , необходимое для передачи данных для поездок между отправителем и получателем. Хотя все компьютерные сети по своей природе обладают некоторой формой задержки, их количество варьируется и может внезапно увеличиться по разным причинам. Люди воспринимают эти неожиданные задержки как «отставание».

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

Офисный работник в клубок кабелей.

Задержка и пропускная способность

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

Если ваше интернет-соединение было показано как канал, по которому передаются данные, пропускная способность будет указывать на физический размер канала. Действительно маленький канал (с низкой пропускной способностью) не может одновременно хранить много данных, тогда как толстый канал (с высокой пропускной способностью) может передавать гораздо больше данных за раз. Пропускная способность часто измеряется в Мбит / с.

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

Скорость света в компьютерной сети

Сетевой трафик не может двигаться быстрее скорости света. В домашней или локальной сети расстояние между устройствами настолько мало, что скорость света не имеет значения. Для интернет-соединения, однако, это становится фактором.

В идеальных условиях свету требуется примерно 5 мс, чтобы проехать 1000 миль (около 1600 километров). Кроме того, большая часть интернет-трафика на большие расстояния проходит по кабелям, которые не могут передавать сигналы так быстро, как свет, из-за принципа физики, называемого «преломление». Например, для передачи данных по оптоволоконному кабелю требуется, по крайней мере, 7,5 мс для прохождения 1000 миль.

Типичные задержки интернет-соединения

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

В исследовании « Измерение широкополосной связи в Америке» (опубликовано в конце 2018 года) сообщалось о следующих типичных задержках интернет-соединения для распространенных форм широкополосного обслуживания в США:

    : 12-20 мс
  • Кабельный интернет: 15-34 мс : 25-80 мс
  • Спутниковый интернет: 594-612 мс

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

Замените или добавьте роутер. Любой маршрутизатор в конечном итоге выйдет из строя, если слишком много клиентов используют его одновременно. «Конкуренция» в сети между несколькими клиентами означает, что они иногда ждут обработки запросов друг друга, что приводит к задержке.

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

Избегайте одновременных загрузок. В зависимости от скорости вашего соединения , старайтесь избегать слишком большого количества одновременных загрузок и онлайн-сессий, чтобы минимизировать эту задержку.

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

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

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

Используйте проводное соединение вместо беспроводного. Например, онлайновые геймеры часто предпочитают запускать свои устройства через проводной Ethernet вместо Wi-Fi, потому что Ethernet поддерживает меньшие задержки. Хотя на практике экономия обычно составляет всего несколько миллисекунд, проводные соединения также исключают риск помех, которые могут привести к значительной задержке.

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

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

Другие причины проблем с задержкой

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

Транспортная нагрузка

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

Загрузка онлайн-приложения

Многопользовательские онлайн-игры , веб-сайты и другие клиент-серверные сетевые приложения используют общие интернет-серверы. Если эти серверы перегружены активностью, клиенты испытывают отставание.

Беспроводные помехи

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

Lag Switches

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

Сколько задержек слишком много?

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

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

В целом, онлайн-приложения работают лучше всего, когда задержка в сети остается ниже 100 мс; Любая дополнительная задержка будет заметна для пользователей.

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

Хотя данные в Интернете распространяются со скоростью света, последствия расстояний и задержек, вызванных оборудованием инфраструктуры интернета, означают, что задержки никогда не могут быть полностью устранены. Однако их можно и нужно свести к минимуму. Большое количество задержек приводит к низкой производительности веб-сайта, негативно влияет на SEO и может побудить пользователей покинуть сайт или приложение в целом.

Что вызывает задержку интернета?

Одной из основных причин задержки сети является расстояние, в частности расстояние между клиентскими устройствами, выполняющими запросы, и серверами, отвечающими на эти запросы. Если веб-сайт размещен в центре обработки данных в Колумбусе, штат Огайо, он будет довольно быстро реагировать на запросы пользователей в Цинциннати (около 100 миль), вероятно, в течение 10-15 миллисекунд. Пользователи в Лос-Анджелесе (около 2200 миль), с другой стороны, столкнутся с более длительными задержками, ближе к 50 миллисекундам.

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

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

Задержка, bandwidth, throughput

Задержка, throughput (характеристика процесса передачи информации) и bandwidth (ширина полосы) взаимосвязаны, и они измеряют разные вещи. Bandwidth — это максимальный объем данных, который может пройти через сеть в любой момент времени. Throughput — это средний объем данных, который фактически проходит через определенный период времени. Throughput не обязательно эквивалентна bandwidth, поскольку на нее влияет задержка. Задержка — это измерение времени, а не объема данных, загружаемых с течением времени.

Как можно уменьшить задержку?

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

Использование CDN

Веб-разработчики также могут минимизировать количество ресурсов, блокирующих рендеринг (например, загрузка JavaScript), оптимизировать изображения для более быстрой загрузки и уменьшить размеры файлов, где это возможно. Минификация кода — это один из способов уменьшения размера файлов JavaScript и CSS.

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

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

На видео: Устройство интернет сети за 15 минут.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Бойченко М. К., Иванов И. П., Лохтуров В. А.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Бойченко М. К., Иванов И. П., Лохтуров В. А.

Обеспечение потребных нагрузок сетевых интерфейсов утилитой ping программного обеспечения протокола ICMP Модернизация процесса измерений интервалов времени в операционных системах современных компьютеров Определение характеристик сетевого трафика компьютера Функциональная модель ненагруженных Ethernet-коммутаторов Интегральная оценка состояния ресурсов пользовательского маршрута в корпоративной сети i Не можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

EVALUATION OF FRAME TRANSMISSION DELAY IN NETWORK INTERFACE CARDS

The method is proposed for evaluating a delay of information transmission by network adapters in the computer networks, built according to Ethernet technology, as one of components of the network response time. The evaluation was conducted as measurement of the round trip time of the frame passage in forward and reverse directions between the source computer and the destination computer connected with a crossover cable. In this case, the time of the similar frame passage using the IP address 127.0.0.1 has been taken into account, which excludes the frame transmission using the network adapter into the segment of the network. This method requires no special equipment and is based on the modified software of network operating systems, due to which it is accessible for using by a system administrator on any hardware platform and with any operating system in corporate networks of different size

Текст научной работы на тему «Оценка задержки передачи кадров в сетевых адаптерах»

УДК 004.724; 004.728

ОЦЕНКА ЗАДЕРЖКИ ПЕРЕДАЧИ КАДРОВ В СЕТЕВЫХ АДАПТЕРАХ

М.К. Бойченко, И.П. Иванов, В.А. Лохтуров

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

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

EVALUATION OF FRAME TRANSMISSION DELAY IN NETWORK INTERFACE CARDS

M.K. Boichenko, I.P. Ivanov, V.A. Lokhturov

The method is proposedfor evaluating a delay of information transmission by network adapters in the computer networks, built according to Ethernet technology, as one of components of the network response time. The evaluation was conducted as measurement of the round trip time of the frame passage in forward and reverse directions between the source computer and the destination computer connected with a crossover cable. In this case, the time of the similar frame passage using the IP address 127.0.0.1 has been taken into account, which excludes the frame transmission using the network adapter into the segment of the network. This method requires no special equipment and is based on the modified software of network operating systems, due to which it is accessible for using by a system administrator on any hardware platform and with any operating system in corporate networks of different size.

Keywords: computer network, computer technologies, utility, modification, operating system, network interface.

К основным характеристикам производительности компьютерных сетей кроме прочих показателей относят задержку передачи и вариацию задержки передачи [1, 2]. Задержка передачи определяется как интервал времени между моментом поступления информации на вход какого-либо сетевого устройства и моментом ее появления на его выходе [3]. Задержка передачи — составляющая времени реакции сети, знание задержки передачи позволяет оценить производительность

точностью до наносекунды усложняется еще и проблемой синхронизации, поскольку следует четко фиксировать байты какого-либо поля кадра [7]. Сложность синхронизации двух компьютеров препятствует применению прямых измерений временных интервалов при передаче информации между ними. В связи с этим управляющие процедуры и методы измерений основаны на определении времени двойного прохождения информации от компьютера-источника до компьютера-приемника и обратно (Round Trip Time, RTT) [2]. Так, широко распространенная утилита ping дает возможность вычислить значение RTT при прохождении пакета ICMP (Internet Control Message Protocol) между двумя хостами в сети. При этом могут варьироваться размер посылаемого пакета ICMP (размер эхо-запроса), число посылаемых эхо-запросов, интенсивность их посылки [8]. В ответ на каждый эхо-запрос запрашивающий компьютер получает эхо-ответ от запрашиваемого хоста. Содержимое полезной информации в эхо-ответе идентично содержимому в эхо-запросе. Сравнением информации в эхо-запросе и эхо-ответе устанавливается факт отсутствия потерь информации при передаче. В результате проведения серии измерений значения RTT утилита ping позволяет определить его минимальное (min), среднее (avg), максимальное (max) значения, среднеквадратичное отклонение (mdev), время выполнения серии посылок (time) и процент пакетов в серии, искаженных при пересылке. Точность измерений в утилите ping составляет миллисекунды, что достаточно для ее назначения [8]. Вместе с тем в работе [9] предложено существенное повышение точности измерений в утилите ping путем замены функции gettimeofday( ) функцией clock_gettime( ) в надлежащих программных модулях утилиты. С помощью такой модернизированной утилиты nanoping можно измерять значение RTT в наносекундах, что существенно расширяет диапазон возможных экспериментальных исследований в узлах и сегментах компьютерных сетей [10].

Предлагаемая методика оценки задержки передачи информации сетевыми адаптерами основана на известном соглашении о специализированном IP-адресе 127.0.0.1, именуемом loopback [1, 2, 4]. При таком адресе получателем информации является хост-источник. Особенность пересылки пакетов заключается в прямой передаче IP-пакета из одного буфера оперативной памяти в другой, минуя сетевой адаптер компьютера. Если измерить значение RTT при выполнении утилиты nanoping по адресу 127.0.0.1, то можно узнать задержку обработки отсылаемого и принимаемого пакета собственно в компьютере. Далее, осуществив кроссовую коммутацию двух сетевых адаптеров идентичных компьютеров, можно определить значение RTT при реализации утилиты nanoping с пересылкой пакета от компьютера-источника

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

Читайте также: