Как известно, развитие идет по спирали. Поэтому неудивительно, что зачастую к неким новым условиям неожиданно удачно подходят решения старых задач.

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

Решений несколько, известны они еще по коммутируемым соединениям. Например, можно отключить загрузку графики или блокировать рекламные баннеры и всплывающие окна. Но я предлагаю вашему вниманию методику, ускоряющую загрузку данных уплотнением трафика по каналам независимо от типа последних, будь то GPRS/EDGE (EGPRS), Wi-Fi, WiMAX, коммутируемый доступ, широкополосное или иное подключение. Пожалуй, тема окажется интересна не только обладателям «узких» каналов, но и тем, кто оплачивает трафик по мегабайтовым тарифам. При уплотнении трафика его объем заметно уменьшается; как следствие, весьма ощутимо сокращаются и отчисления провайдеру.

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

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

Проект TrafficCompressor предлагает две формы сотрудничества: платную и бесплатную. Различия заключаются в форме предоставляемого сервиса. Число клиентов бесплатного доступа, одновременно подключенных к серверам проекта, ограниченно, ввиду чего таким клиентам приходится ожидать подключения в очереди. Следующее ограничение связано с трафиком. При получении более 5 Мбайт сервер прерывает сеанс связи бесплатного пользователя и тому приходится вновь становиться в очередь на соединение. Различия также касаются и степени компрессии данных. При бесплатном подключении сжатие примерно на 20—25% ниже, чем при платной подписке на услуги проекта.

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

Следует также отметить, что работа пользователя в Интернете не зависит от состояния подключения TrafficCompressor. Есть подключение к проекту — трафик пользователя идет через серверы TrafficCompressor. Нет подключения — обмен трафиком идет напрямую с интернет-серверами. Как в том, так и в другом случае менять сетевые настройки программ пользователю не придется.

Для определенных хостов трафик уплотнять не следует
Программа–клиент Traffic Com-pressor ведет статистику своей работы: сколько трафика было передано, сколько сэкономлено и каков коэффициент сжатия. В данном отчете учитывается лишь «полезный» трафик, переданный через серверы TrafficCompressor. Если пользователь загружает веб-страницу, помимо текста содержащую еще и видеофайл, TrafficCompressor обработает и учтет только текст. Видео будет передано без сжатия, и размер такого файла не найдет отражения в статистике.

В общей сложности данный сервис не обрабатывает файлы более шести десятков форматов. Уточнить, что входит в список исключений, и при необходимости дополнить его можно, вызвав меню настройки параметров работы программы. Там же среди прочего указываются программы, трафик которых следует уплотнять (например, браузеры, «качалки», различные проигрыватели) и поддерживаемые сетевые протоколы. Пока же, согласно документации проекта, TrafficCompressor способен на 25—80% уменьшить трафик:

  • Web: веб-страницы, скрипты (JavaScript/VBScript), CSS-файлы (cascading style sheets), текстовые файлы;
  • e-mail: любые почтовые сообщения, поступающие по протоколам POP3 или IMAP4, как с вложенными файлами, так и без них;
  • систем мгновенного обмена сообщениями: ICQ, Windows Messenger, AIM, Yahoo! Messenger, Jabber, Gadu-Gadu, Mail.Ru Agent;
  • IRC при использовании портов 6667—6670;
  • онлайн-игр: World of Warcraft, Warcraft III, Diablo, Diablo II, Ragnarok Online, EVE online, Ultima Online, Lineage II, Gambler и ряда иных.

При этом без уплотнения останутся следующие виды трафика:

Web: картинки, флэш-ролики, ActiveX, Java-аплеты, ZIP, EXE, MP3 и другие сжатые файлы, страницы, сжатые самими веб-сайтами с помощью gzip (более подробно о сжатии документов веб-сайтами перед отправкой их пользователю можно прочитать в статье Алексея Мощевикина «Компрессия на лету», опубликованной в журнале «Мир ПК», №3/02);

  • ряда сетевых протоколов, например FTP, HTTPS, SMTP, UDP;
  • IRC при использовании портов, отличных от диапазона 6667—6670;
  • онлайн-игр при использовании серверов с нестандартными портами;
  • потоковой трансляции видео и аудио;
  • IP-телефонии.

Чем ниже качество рисунка, тем быстрее он загружаетсяПри работе с программой необходимо учитывать также следующие нюансы. Например, TrafficCompressor не поддерживает работу через прокси-серверы. А при подключении к сервису компьютер пользователя для сторонних интернет-серверов будет виден под IP-адресом сервера TrafficCompressor. Последнее обстоятельство требует особого внимания, поскольку способно привести к осложнениям. Например, если провайдер разрешает доступ к поддер-живаемому им почтовому серверу только с определенного ряда сетевых адресов, то для пользователя, включившего сжатие e-mail-трафика с помощью TrafficCompressor, доступ к почтовому серверу будет закрыт. Такой вариант развития событий был предусмотрен разработчиками проекта. В настройках программы можно отключить сжатие данных, передаваемых по определенным протоколам (в описанном примере это POP3 или IMAP4). Либо отключить сжатие данных при соединении с определенными хостами (в настройках программы на вкладке «Адреса» включить опцию «Сжимать трафик для любых адресов Интернета, кроме перечисленных» и внести сетевой адрес почтового сервера в список исключений). В этом случае запросы пользователя не транслируются через серверы проекта, а передаются напрямую почтовому серверу. Последнее решение также пригодится в случаях, когда провайдер подразделяет трафик пользователя по категориям оплаты. Например, передача информации внутри городской сети бесплатна, а интернет-трафик оплачивается. В этом случае в список исключений следует внести адреса городских сетей. Иначе весь «городской» трафик провайдер вполне обоснованно сосчитает по интернет-расценкам.

Свободно распространяемая утилита toonel.net помимо компрессии трафика способна уменьшать объем картинок формата GIF и JPEG, понижая качество изображений. Также утилита поддерживает соединения со сторонним прокси–сервером, но в ней отсутствует возможность выделить группу сетевых адресов, для которых компрессия данных не будет осуществляться.

Для работы с toonel.net соответствующие настройки в пользовательских программах выполняются вручную. Например, браузерам следует дать указание работать через прокси-сервер с адресом 127.0.0.1 порт 8080.

Утилита написана на Java, что обеспечивает ее выполнение на многих платформах, поддерживающих пакет Java 2 Runtime Environment Standard Edition версии 1.3 или старше. Среди прочего toonel.net работает на мобильных телефонах Sony Ericsson P-серии и Pocket PC.

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

Регистрация в проекте бесплатна и не накладывает никаких обязательств по использованию системы CPROXY. В течение трех дней зарегистрированный пользователь может оплатить месячный взнос за пользование системой, иначе характеристики доступного ему сервиса будут ограничены и он уравняется в правах с незарегистрированными пользователями проекта, для которых установлены пределы по скорости от 32 до 256 кбит/с (зарегистрированные пользователи получают скорость до 756 кбит/с). В деморежиме программы, доступном для незарегистрированных пользователей, не осуществляется сжатие исходящей почты, не гарантируется круглосуточная доступность сервиса и периодически появляется сообщение о нулевом балансе, на 30 с прерывающее загрузку веб-страниц.

При установке программа автоматически вносит изменения в настройки Microsoft Internet Explorer. При работе с иным браузером его придется настраивать самостоятельно, указав, что следует работать через прокси-сервер 127.0.0.1 порт 3128.

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

Среди своих коллег MyProxy обращает на себя внимание поддержкой корпоративной работы. Версии программы PRO и BUSINESS разрешают объединить компьютеры, связанные локальной сетью, для общего пользования сервисами MyProxy, к которым помимо уже знакомых по описаниям предыдущих программ добавилась фильтрация интернет-документов по наличию в них определенных терминов и выражений (так называемый «родительский контроль»). Среди прочих особенностей программы имеются следующие:

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

В отличие от описанных ранее проектов в MyProxy стоимость работы по уплотнению трафика оценивается не по времени, а по объему несжатого трафика, запрошенного клиентом. По данным проекта, трафик уплотняется в среднем в 3 раза. Цена колеблется от 8 долл. за 3 Гбайт до 22 долл. за 10 Гбайт. При этом оценить данную услугу в тестовом режиме не удастся. Она доступна лишь зарегистрированным (и оплатившим стоимость программы) пользователям, каждый из которых после регистрации в качестве бонуса получает абонемент на 50 Мбайт несжатого трафика.

Компрессии подвергаются не все файлы
Проект Traffic Optimizer ко времени написания статьи находился на стадии бета-версии. Коммерческие условия эксплуатации ресурса еще не объявлены, а к тестовому использованию были предъявлены следующие ограничения: при регистрации дается 10 Мбайт несжатого входящего трафика (в дальнейшем — не более 4 Мбайт) в день. После превышения дневного лимита доступ к сервису будет заблокирован до следующего дня.
Фильтрация по ссылкам
Обратите внимание, что все упомянутые программы, ведя статистику своей работы, учитывают только обработанные ими данные, составляющие лишь часть от общего объема трафика. Для полноценного представления об объемах потребления следует прибегнуть к специализированному программному обеспечению: TMeter, BWMeter, Traffic Counter и им подобным.
Фильтрация по содержимому документов среди прочего
Выбор для быстрых каналов
И напоследок — о сервисе Google Web Accelerator, который не подходит для ускорения «узких» каналов. Данный проект ориентирован на оптимизацию работы скоростных подключений. В коллекции используемых им методов — предварительная (до запроса пользователя) загрузка часто посещаемых страниц.
Свободно распространяемый счетчик и тарификатор трафика
В заключение отмечу, что выбор программ данного класса достаточно широк, чтобы каждый смог подобрать инструмент «по руке». Начать же работать с ними я рекомендовал бы с toonel.net и TrafficCompressor. Первый дает широкие возможности для эксперимента, а второй, даже
с учетом ограничений тестовой версии, весьма удобен для работы.

Список упоминаемых проектов и ресурсов

BWMeter http://www.desksoft.com/
CPROXY http://www.cproxy.com/
Google Web Accelerator http://webaccelerator.google.com/
Java Runtime Environment http://www.java.com/ru/
MyProxy http://desofto.com/myproxy/
OnSpeed http://www.onspeedrussia.ru/
TMeter http://www.tmeter.ru/
toonel.net http://www.toonel.net/
TrafficCompressor http://www.tcompressor.ru/
Traffic Counter http://kain.bov.com.ru/
Traffic Optimizer http://www.toptimizer.net.ru/


Таблица.