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

Критерии качества Интернет-канала

Когда вам нужно оценить качество Интернет-канала, то сперва выберите соответствующие критерии. Обычно о нем судят на основании его доступности (availability) и быстродействия (response time). Первый критерий определяется тем, какую часть времени канал открыт для использования, т.е. работоспособен, а второй показывает, насколько оперативно передаются по нему данные. Если измерение доступности Интернет-канала, как правило, не вызывает особых проблем, то оценка быстродействия — задача не из простых.

Сейчас наиболее распространенным инструментом для определения быстродействия Интернет-канала является команда ping, имеющаяся в большинстве сетевых ОС. Она позволяет измерять «время пинга», или время от посылки ICMP-запроса до получения ICMP-ответа, которое принято называть ICMP-эхом (ICMP-echo). Если ответ приходит быстро, то, значит, и канал работает быстро, а если с большой задержкой, то, следовательно, канал работает медленно. Казалось бы, все просто и незачем еще что-то придумывать.

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

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

Второе обстоятельство обусловлено тем, что при загрузке Web-страниц передача данных производится по протоколу HTTP, работающему, в свою очередь, над протоколом TCP, который ориентирован на установление соединения и гарантирует правильность доставки данных. Значит, любая ошибка в процессе передачи данных вызывает срабатывание механизма тайм-аутов и повторную передачу данных, что способно сильно сказываться на времени загрузки Web-cтраниц. Протокол ICMP, в отличие от HTTP, работает над IP, не гарантирующим правильности доставки данных. При возникновении ошибок передачи данных ICMP-пакеты будут просто теряться.

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

Из сказанного выше можно сделать три вывода:

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

Три метода измерения времени реакции и доступности Интернет-канала

Давайте рассмотрим, как можно измерить критерии качества Интернет-канала. Существуют три основных метода для определения доступности и времени реакции Интернет-канала на уровне HTTP: анализ сетевого трафика (network sniffing), анализ данных на стороне клиента (client capture) и симуляция транзакций (transaction simulation).

Первый из методов основан на извлечении информации о времени реакции и доступности Интернет-канала из сетевого трафика, проходящего по данному каналу. Для этого на краю сети (перед точкой выхода в Интернет) устанавливаются специальные зонды, которые в реальном времени захватывают весь проходящий мимо них Интернет-трафик и извлекают из него информацию о времени реакции и доступности Интернет-канала. Основное достоинство такого метода — универсальность, главный недостаток — высокая стоимость реализации. Дело в том, что зонды, извлекающие информацию о времени реакции и доступности Интернет-канала, должны иметь очень высокую производительность, и потому они являются, как правило, специализированными аппаратными устройствами, например прибор NetScout WAN Probes компании NetScout (http://www.netscout.com).

Метод анализа данных на стороне клиента базируется на извлечении данных о работе Интернет-канала из ОС компьютера, где установлен Web-браузер. Для этого на ПК пользователя устанавливается специальный агент, отслеживающий взаимодействие браузера и ОС и получающий информацию о доступности и времени реакции Интернет-канала. Плюс — универсальность, минус — сложность реализации и дополнительные накладные расходы. Он используется, например, в программном пакете VitalSuite компании Lucent (www.lucent.com).

Метод симуляции транзакций (TS) заключается в применении программных роботов, т.е. специальных программ, которые эмулируют работу пользователя Интернета, выполняя http-транзакции и измеряя время этих операций. Основное достоинство метода TS состоит в его доступности, а также в том, что он позволяет измерять производительность Интернет-канала с точки зрения пользователя. Этот метод применяется в большом количестве различных продуктов, например в пакете AppManager ResponseTime for Web компании NetIQ (www.netiq.com) и в свободной программе PageLoad Robot компании ProLAN для измерения качества Интернет-каналов в рамках проекта, о котором и будет рассказано ниже.

Открытый проект «Проверь свой Интернет»

Сейчас большинство российских ISP (Internet Service Provider — сервис-провайдеров) при заключении контрактов с клиентами на предоставление постоянного Интернет-канала оговаривают лишь технологию (DSL, Frame Relay/ATM, RadioEthernet, спутниковый канал) и физическую скорость (64 кбит/c, 128 кбит/c и т.д.). При этом они очень редко затрагивают вопрос о качестве. Однако различные сетевые технологии имеют и различные потребительские свойства, в частности эффективную пропускную способность. Не секрет, что каналы, обладающие одинаковой физической скоростью (шириной) и выполненные по одной и той же сетевой технологии, порой сильно различаются по качеству.

Отсутствие информации о потребительских свойствах различных Интернет-каналов, а также сложность и дороговизна решений, позволяющих эти свойства определить, затрудняют развитие в России рынка профессиональных услуг в области Интернет-технологий. Причем страдают не только конечные пользователи, зачастую вынужденные покупать «кота в мешке шириной 128 кбит/c», но и ISP, поскольку им приходится доказывать клиентам, что низкая скорость доступа в Интернет обусловлена не плохим качеством их услуг, а дефектами локальной сети самого клиента. Все это и побудило нас организовать открытый проект «Проверь свой Интернет», в котором могут участвовать все желающие.

Цель проекта — донести до российского Интернет-сообщества мысль о том, что качество Интернет-канала можно измерить. Кроме этого, данный проект должен способствовать развитию в нашей стране рынка профессиональных услуг по диагностике и тестированию информационных систем. Более подробная информация о проекте находится на сайте www.prolan.ru/testyourlink.

Если использовать метод симуляции транзакций, то для проверки качества Интернет-канала необходимы измерительный инструмент и набор тестовых Web-страниц, размещенных на различных Интернет-площадках. В качестве измерительного инструмента была предложена свободная программа PageLoad Robot компании ProLAN. Тестовая Web-страница — это статическая страница с фиксированным размером — 100 Кбайт. Несколько таких страниц уже размещены на Интернет-площадках московских HSP (Hosting Server Provider — сервис-провайдеров, предоставляющих услуги хостинга), в частности в «МТУ-Информ», Zenon N.S.P., ORC, «Демосе».

Особенность программы PageLoad Robot заключается в том, что она позволяет в автоматическом режиме загружать любые Web-страницы, измерять время их загрузки и одновременно время ICMP-эха до этих страниц. Теперь, чтобы оценить качество Интернет-канала, нужно лишь просто пройтись по тестовым Web-страницам, и тогда программа автоматически запомнит ссылки на них. Затем достаточно нажать кнопку Play, и программа начнет последовательно в автоматическом режиме загружать Web-страницы по всем предварительно зафиксированным ссылкам, а также измерять время реакции Интернет-канала. Интенсивность загрузки Web-страниц можно настроить в параметрах программы. После загрузки каждой из них производится очистка локальной кэш-памяти компьютера. Кроме этого, в программе реализовано автоматическое оповещение администратора сети в тех случаях, когда значения измеряемых характеристик превышают установленное пороговое. Загрузить программу PageLoad Robot можно с сайта: http://www.prolan.ru/ netconsulting/download/ plrobot/download.html.

Давайте рассмотрим, как с помощью этой программы можно тестировать Интернет-канал.

Алгоритм тестирования Интернет-канала

Установите PageLoad Robot на компьютер, где уже есть система MS Windows, сконфигурированная для доступа в Интернет. Это должен быть Интернет-канал, в котором не используется прокси-сервер, так как он кэширует передаваемые данные. После запуска PageLoad Robot автоматически откроет специальную страницу, где содержится самая свежая информация о проекте, в частности ссылки на доступные тестовые страницы.

Для запуска сеанса тестирования Интернет-канала просто нажмите кнопку Play. Если не изменять четыре заданные по умолчанию тестовые страницы, которые размещены на площадках «МТУ-Информ», Zenon N.S.P., ORC, «Демоса», то программа PageLoad Robot начнет автоматически загружать их. Другими словами, по умолчанию будет тестироваться Интернет-канал от той точки, где запускается программа PageLoad Robot, до указанных выше тестовых страниц. Если нужно провести тестирование другого Интернет-канала, то следует изменить набор тестовых страниц. В качестве тестовой можно использовать любую статическую Web-страницу, однако чтобы время загрузки различных страниц можно было сравнивать друг с другом, все они должны быть одного размера — 100 Кбайт. Тестирование будет происходить непрерывно до тех пор, пока вы не нажмете кнопку Stop.

Программа PageLoad Robot позволяет контролировать текущие значения измеряемых характеристик. В ней реализованы два способа отображения измеряемых значений: таблица и «светофор». Пример таблицы текущих значений показан на рис. 1.

Рис.1. Таблица текущих значений измеряемых характеристик, отображаемая программой PageLoad Robot

В ней дается среднее время загрузки тестовых страниц, число сделанных загрузок, время выполнения ICMP-транзакций с серверами, где размещены тестовые страницы, число проведенных транзакций и число тайм-аутов, возникших во время этих операций. В примере, представленном на рис.1, за последнюю минуту было выполнено по одному обращению к тестовым страницам, причем среднее время открытия страницы www.testit-mtu.com.ru/bp.html составило 2090,861 мс (или 2,09 с), было послано 55 ICMP-запросов к серверу www.testit-mtu.com.ru и среднее время отклика составило 112,468 мс.

Программа PageLoad Robot — бесплатная, но с ее помощью можно свободно контролировать только текущие значения измеряемых характеристик, а тренды этих параметров будут сохраняться на жестком диске компьютера в закодированном виде. Чтобы их декодировать, нужно воспользоваться другой услугой —TestAtelier. Этот сервис — платный, но участники проекта «Проверь свой Интернет» получают возможность бесплатно декодировать данные, измеренные в течение 48 ч работы программы PageLoad Robot. Этого времени вполне достаточно, чтобы объективно оценить качество работы Интернет-канала.

Услуга TestAtelier на базе технологии MSP (Management Service Providing — управление сетевыми ресурсами) заключается в следующем. Файлы с закодированными результатами тестирования пользователь прикрепляет к письму, которое отсылает на сервер компании ProLAN, где установлена специальная программа, принимающая письмо, автоматически декодирующая результаты и размещающая их в базе данных. Зарегистрированные пользователи получают доступ к этой БД и могут просматривать там тренды измеренных характеристик (рис. 2), статистические оценки (минимальное, максимальное, среднее значение и т.п.), интегральные оценки, а также загружать декодированные результаты на свой компьютер для последующего анализа. Но главное, — пользователям услуги TestAtelier выдается формальный отчет о качестве Интернет-канала, автоматически формируемый на сервере компании ProLAN. Подробнее об услуге TestAtelier можно прочесть на сайте http://www.prolan.ru/netconsulting/ description/methods/testatelier.html.

Рис. 2. Тренды измеренных характеристик, отображаемые в рамках услуги TestAtelier

Формальный отчет о тестировании Интернет-канала

Как уже было сказано, один из важнейших результатов тестирования — формальный отчет о качестве работы Интернет-канала. Его можно использовать для аргументированного предъявления претензий сервис-провайдерам, выбора сетевой технологии для Интернет-соединения (xDSL, Radio Ethernet, Frame Relay и т.п.), ширины канала и т.п. Пример такого отчета приведен на рис. 3.

Рис. 3. Формальный отчет о качестве работы Интернет-канала, автоматически формируемый на сервере компании ProLAN

Отчет содержит результаты Web-теста и ping-теста. Результаты Web-теста включают данные о времени загрузки всех Web-страниц, участвующих в тестировании. Для каждой из них приводятся несколько значений: минимальное, максимальное, среднее, перцентиль 75, перцентиль 90, а также доступность. Перцентиль 75 (90) — это пороговое значение времени загрузки, для которого справедливо следующее: 75% (90%) измеренной характеристики меньше или равно этому значению. Доступность — это процент операций, завершившихся за время, меньшее времени тайм-аута, устанавливаемого в программе PageLoad Robot и по умолчанию составляющего 1 мин.

Результаты ping-теста содержат данные о времени выполнения ICMP-транзакций с теми серверами, где размещены тестовые страницы. Для каждого времени выполнения ICMP-транзакции также приводятся несколько значений: минимальное, максимальное, среднее, перцентиль 75, перцентиль 90 и доступность.

Чтобы оценить качество Интернет-канала, необходимо проанализировать, как минимум, две характеристики: доступность Интернет-канала на уровне IP и время его реакции на уровне HTTP.

Доступность Интернет-канала на уровне IP

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

Таким образом, значение доступности Интернет-канала на уровне IP — это процент успешно завершенных ICMP-транзакций, выполняемых по нему. Значит, чтобы определить значение доступности Интернет-канала, следует знать значения доступности всех тестовых страниц. Доступность Интернет-канала всегда больше или равна доступности любой тестовой страницы. Так, если одновременно «пингуются» пять тестовых страниц и доступность одной из них составила 99%, а доступность остальных — 98%, то доступность Интернет-канала будет не меньше 99%. Если же доступность хотя бы одной тестовой страницы будет равна 100%, то, значит, доступность Интернет-канала также составит 100%.

Доступность тестовых страниц измеряется в ходе проведения ping-теста. Измеренные значения приводятся в блоке результатов ping-теста в колонке «Доступность» (рис. 3). Чем больше тестовых страниц будет протестировано, тем более точное значение доступности Интернет-канала будет получено. Чем выше значение доступности, тем выше качество Интернет-канала. По нашим наблюдениям, доступность выше 98% в России можно считать хорошей.

Время реакции Интернет-канала на уровне HTTP

Для оценки времени реакции Интернет-канала на уровне HTTP в отчете введена специальная характеристика — ProLAN-index. Это измеряемое в микросекундах наименьшее время загрузки тестовой страницы размером 100 Кбайт, которое рассчитывается на основе измеренных значений времени загрузки тестовых страниц. Чтобы подчеркнуть, насколько она важна, строчка, содержащая ее значение, в отчете выделена синим цветом (рис. 3).

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

Характеристика ProLAN-index — объективный критерий времени реакции Интернет-канала, поскольку при ее определении «компенсируется» влияние на результаты измерений высокой загруженности Web-серверов, где физически расположены тестовые страницы. Правда, маловероятно, что все Web-серверы одновременно сильно загружены. Достоинство характеристики ProLAN-index заключается еще и в том, что чем больше тестовых страниц будет протестировано, тем более точное значение времени реакции будет получено.

В отчете наряду с минимальным, максимальным и средним значениями каждой характеристики приводятся еще два: перцентиль 75 и перцентиль 90. Так, если в отчете указано, что значение перцентиль 90 характеристики ProLAN-index равно 316 230 мкс (примерно 0,3 с), то это означает, что в 90% измерений минимальное время загрузки тестовых страниц размером 100 Кбайт было меньше 0,3 с.

Значение характеристики ProLAN-index очень просто перевести в значение эффективной скорости, т.е. скорости на уровне HTTP. Например, если значение перцентиль 90 составляет 0,3 с, то эффективная скорость Интернет-канала на уровне HTTP составляет 100 Кбайт/0,3 с, что равно 333 Кбайт/с, или примерно 2,7 Мбит/с.

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

Настройка «градусника-светофора»

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

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

В зависимости от результатов сравнения на «светофоре» загораются различные сигналы: красный, красный мигающий, желтый, желтый мигающий или зеленый. Профайл представляет собой обычный текстовый файл, который можно редактировать. Таким образом, можно настраивать «светофор» для оценки Интернет-каналов, имеющих различную потенциальную производительность. Настроить «светофор» — это значит поставить в соответствие каждому его сигналу конкретное время загрузки тестовых страниц (время реакции канала на уровне HTTP). По умолчанию программа PageLoad Robot настроена следующим образом: зеленый сигнал «светофора» загорается тогда, когда среднее время загрузки хотя бы одной тестовой страницы не превышает 6 с; желтый — когда это время не превышает 8 с; красный — когда время загрузки всех тестовых страниц больше 8 с.

Чтобы правильно настроить «светофор», нужно знать, как Интернет-канал, выполненный по данной технологии и имеющей данную физическую скорость, должен работать. Решить эту задачу можно двумя способами. Первый предполагает анализ большого количества результатов измерений Интернет-каналов, выполненных по одинаковой технологии и имеющих одинаковую физическую скорость. На его основании для каждого случая можно определить наиболее вероятное значение времени реакции канала на уровне HTTP. Данному времени будет соответствовать зеленый сигнал «светофора». Если уменьшить его, например на 15%, можно определить время реакции, соответствующее желтому сигналу и т. д. Второй способ основан на выборе «лучшего» случая, т.е. на определении времени реакции Интернет-канала в часы наименьшей загрузки опорной сети провайдера Интернета. На базе этих результатов и задается время реакции, соответствующее зеленому сигналу «светофора».

* * *

Здесь было рассказано о том, как с помощью метода симуляции транзакций пользователи Интернета смогут оценить качество своего канала. Хотя предложенный метод и не является единственно возможным, у него есть два важных достоинства — он бесплатный и в то же время профессиональный. Однако у него есть и ограничения: сложность проверки тех Интернет-каналов, где используются прокси-серверы, а также зависимость точности измерений от числа и расположения тестовых Web-страниц. Поэтому мы решили обратиться с предложением ко всем тем, кому не безразличны вопросы качества Интернет-каналов.

Коллеги, создавайте на своих Web-сайтах тестовые страницы. Тем самым вы внесете свой вклад в построение распределенной тестовой инфраструктуры. Чем больше тестовых страниц будет создано, тем более точную и достоверную информацию о качестве Интернет-каналов можно будет получать. Тестовой страницей может cтать обычная статическая, содержащая, например, рекламную информацию о вашей компании. Единственное требование — ее размер должен быть равен 100 Кбайт. О созданных тестовых страницах просьба сообщать по адресу expert@prolan.ru.

ОБ АВТОРАХ

Сергей Юдицкий — генеральный директор компании ProLAN;

Станислав Кузубов— эксперт этой компании. C ними можно связаться по e-mail: expert@prolan.ru.