точностью до наносекунды усложняется еще и проблемой синхрони-
зации, поскольку следует четко фиксировать байты какого-либо поля
кадра [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
с пересылкой пакета от компьютера-источника
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2014. № 1 113