Для этого больше всего подойдет Traceroute — одна из программ-«старейшин», работающих с протоколом TCP/IP (см. врезку). С ее помощью можно узнать время прохождения пакетов по маршруту до заданного пункта назначения и все промежуточные значения, а также исследовать отрезок времени, в течение которого пакеты перемещаются до некоторых Web-серверов.
Для демонстрации работы этой программы была проанализирована скорость доступа к десяти серверам: сняты результаты и усреднено время прохождения пакета по Сети до Internet-провайдера. Попутно удалось собрать некоторые сведения и о структуре Internet в России. Оказалось, что связь со всеми десятью серверами проходила через площадку М9 — «точка» обмена информацией основных российских провайдеров. Это позволило разбить полное время прохождения пакета на четыре этапа: связь с провайдером, связь вашего провайдера с М9, связь провайдера сервера с М9 и связь сервера со своим провайдером. Были сделаны три измерения через «Совам Телепорт» (днем и ночью в выходные дни и днем в рабочий день) и одно через Zenon (днем в рабочий день). Причем если программа Traceroute выдавала на каком-либо отрезке символ «*» (это происходит тогда, когда тестовый пакет не вернулся или превысилось время его ожидания), то я принимал время передачи пакета на этом участке равным 5 с. Усредненные результаты приведены в таблице.
На основе полученных результатов можно сделать некоторые выводы о топологии сетей Internet-провайдеров. Например, большая разница между временем передачи данных по сети «Совам Телепорт» и Zenon объясняется тем, что у первого пакет передается от сервера доступа к точке M9 через три маршрутизатора, а у второго — через один или два. Поскольку скорость обработки пакетов одним маршрутизатором примерно одинакова (около 160 мс), то у «Совам Телепорт» суммарное время передачи пакетов будет больше. Большее среднее время передачи пакетов по сети «МТУ-Информ» объясняется тем, что пакет Traceroute не доходил до сервера www.list.ru (именно поэтому его нет в нижнем разделе), теряясь где-то на маршрутизаторе «МТУ-Информ». Теоретически это вовсе не свидетельствует о недоступности самого сервера www.list.ru по протоколу HTTP, а, видимо, просто связано с межсетевым экраном, блокирующим пакеты Traceroute. Кроме того, столь продолжительное время доступа к серверу www.gazeta.ru связано с тем, что теряется большое количество пакетов между провайдером и сервером. Также определялось среднее время задержек на разных этапах и рассчитывался их процент от полного времени прохождения пакета. Оказалось, что путь, проделанный пакетом по сети провайдера, занимает лишь пятую часть времени, а все остальное тратится на его блуждание по Internet.
Изучение Сети с помощью Traceroute позволяет получить точную информацию о состоянии связи с конкретным провайдером Internet и доступности определенных ресурсов. Однако нужно помнить, что если не удается добраться до сервера с помощью команды traceroute, то это не означает, будто он полностью недоступен. Межсетевые экраны могут блокировать передачу информации на заведомо неиспользуемый порт UDP, который использует для своих целей программа Traceroute.
Валерий Коржов
Как работает программа Traceroute
Работа Traceroute основана на двух протоколах TCP/IP: UDP и ICMP. Первый используется для возбуждения в Сети псевдоошибок, второй — для передачи на компьютер-отправитель реакции Сети на ошибку. Программа Traceroute передает в Сеть последовательность UDP-пакетов по заведомо неиспользуемому порту со временем жизни от 1 до 30 передач. Каждый маршрутизатор при обработке таких пакетов уменьшает время его жизни на единицу, а когда это значение для пакета равно нулю, то посылает отправителю ICMP-предупреждение о его потере, содержащее адрес маршрутизатора и время уничтожения пакета. Когда пакет поступает на компьютер-адресат, генерируется сообщение об ошибке: «Нет программы обработчика для заданного порта», что служит сигналом к завершению работы.
Программа Traceroute реализована практически во всех ОС, где есть поддержка TCP/IP. В ОС Windows она называется tracert.exe. За один сеанс Traceroute обычно посылает три серии тестовых UDP-пакетов, каждый из которых имеет длину 40 байт. В общей сложности это составляет около 3,5 Кбайт информации. Такой небольшой поток пакетов незначительно перегружает Сеть, но содержит много полезной информации о ее работе.
Линия связи | Среднее время | Процент |
Связь с «Совам Телепорт» | 158,7733 | |
Связь с Zenon | 160,8361 | |
Связь с провайдером (среднее время, мс) | 159,8047 | 5% |
Сеть «Совам Телепорт» | 758,453 | |
Сеть Zenon | 230,2787 | |
Сеть телефонного провайдера (среднее время, мс) | 494,3659 | 14% |
Сеть «Ростелеком» | 294,82 | |
Сеть AG Telecom | 326,5837 | |
Сеть Zenon | 1165,164 | |
Сеть «Релком» | 1481,421 | |
Сеть «Демос» | 1659,18 | |
Сеть «МТУ-Информ» | 7631,819 | |
Сети провайдеров сервера (среднее время, мс) | 2093,165 | 60% |
www.rbc.ru | 162,8525 | |
www.lib.ru | 169,4528 | |
yandex.ru | 178,7905 | |
www.chat.ru | 439,5753 | |
www.rambler.ru | 489,6013 | |
www.aport.ru | 582,1306 | |
www.atrus.ru | 944,5653 | |
www.infoart.ru | 1328,046 | |
www.gazeta.ru | 2191,418 | |
Связь с сервером (среднее время, мс) | 720,7147 | 21% |
Сумма средних значений времени | 3468,05 |