Если вы сидите на диалапе, то не можете не сетовать на медленный Интернет. Пожелание высоких скоростей для диалапщика — это как семь футов под килем для моряка. Можно ли что-то сделать в плане ускорения доступа в Сеть и в плане обеспечения более надежного соединения? Многое, очень многое зависит от многочисленного «железа» и проводов, через которые проходит пользовательский запрос на информацию. С этим ничего не поделать.
Но есть еще протокол TCP/IP, по которому передаются данные. Может, с ним можно что-то сделать? Можно и нужно. (Впрочем, если быть точным, то надо заметить, что можно еще и оптимизировать работу модема, но это вне темы статьи.)
Параметры протокола
Для начала надо получить представление о параметрах протокола, изменение которых может дать результат. Их немного, и понятие о них будет дано довольно условное. Если изменить параметры протокола TCP/IP, то можно добиться более высоких реальных скоростей соединения
MTU (maximum transmission unit) — максимальный размер пакета данных, который может быть передан за один раз по протоколу TCP/IP. Так как провайдеры могут использовать разное значение этого параметра, то это несогласование существенно снижает скорость прохождения пакетов в сети. Если кадр большой, то он однозначно будет разбиваться на части встречающимися ему промежуточными серверами и маршрутизаторами, фрагментироваться и заполняться балластом. Так, если ваш провайдер имеет установки MTU = 576, а у вас в Windows задано MTU = 1500, то каждый ваш пакет будет им разбиваться на три по 576 байт: 576 + 576 + 576 = 1728 — то есть 228 байт (13,2% от веса пакета) балласта будут добавляться к каждому вашему пакету. Рекомендуется использовать значение MTU, равное значению вашего провайдера. Это не спасет ваши пакеты от фрагментации в принципе (пакету вполне может попасться маршрутизатор с меньшим значением MTU), но по крайней мере вы избежите этого на первом этапе. Уменьшение параметра MTU помогает и при потере пакетов: меньше данных надо «переспрашивать». Но плохо также, когда пакет слишком мал, так как в каждом пакете присутствует 40 байт служебной информации, то есть вам приходится принимать лишние байты.
RWIN (receive window, окно приема) — размер буфера, в котором накапливается содержимое области данных нескольких полученных пакетов, прежде чем передается в браузер или менеджер закачки. Этот параметр содержит то количество байт, которое сервер может послать вам, не дожидаясь подтверждения об удачном приеме. При малом размере буфера происходит его переполнение (вновь поступающие пакеты теряются, и их надо перезапрашивать). За большим размером буфера также гнаться на диалапе не надо — при потере всего одного пакета (например, в случае сбоя на линии) будут повторно затребованы все пакеты из этого буфера. Считается, что размер RWIN обязательно должен быть кратен MTU минус 40 байт, и обычно для лучшей эффективности модемного соединения кратность рекомендуется устанавливать равной 4-8.
TTL (time to live) — количество промежуточных серверов, через которые может пройти пакет в поисках своего места назначения. Каждый такой сервер добавляет единицу к специальному счетчику в заголовке вашего пакета. Когда счетчик достигает максимально разрешенного значения, пакет считается заблудившимся и прекращает свое существование. По умолчанию в настройках Windows TTL = 32, что явно недостаточно для современного Интернета.
SACK (selective acknowledgement) позволяет при утере пакета(ов) сообщать отправителю точно, какие данные были получены, а какие нет, то есть где находится «дыра» в данных. Тогда отправитель может выборочно повторить передачу только недостающих данных.
Это не все параметры протокола, а только те, изменение которых имеет смысл и может дать результат. Вопрос: зачем менять? Дело в том, что по умолчанию в Windows установлены некоторые усредненные параметры этого протокола. И усредненные не для российских сетей. Операционная система имеет лейбл «Made in USA», значит, и параметры усредненные для американских сетей, которые давно уже на порядок (если не больше) обогнали средние российские сети с их типовым для провинции типом соединения — диалапом. Вот под этот диалап и надо подстроить параметры протокола.
Как их менять? Параметры протокола можно изменять вручную в реестре Windows
Параметры протокола можно изменять вручную в реестре Windows. Но лазить в реестре — дело неудобное и опасное, вдруг что-то случайно не то изменишь и не заметишь этого. Беды не оберешься. Лучше воспользоваться специальным программным обеспечением, скажем, программой Booster от компании RealSofts. Это не единственная программа для оптимизации протокола. И мы не утверждаем, что она — лучшая. Просто надо же на каком-то примере показать результат коррекции этих параметров.
Настройка параметров с помощью Booster
Прежде всего заметим, что программа не производит изменений в реестре Windows, а изменяет их на лету, во время работы программы. Booster от RealSofts имеет три режима работы ускорителя: ручные настройки, автоматические настройки и настройки Windows. Настройки Windows — это когда программа фактически не работает, восстановив в настройках параметры протокола TCP/IP согласно данным операционной системы. Автоматический режим рекомендуется тем пользователям, которые не уверены в своих способностях разобраться в работе программы или не желают тратить время на ручную настройку. Автоматический режим — для обычных пользователей, ручной — для профессионалов
Автоматическая настройка — это когда программа в определенный интервал (5 минут) проводит замер и расчет параметров и выставляет оптимальные, по ее мнению, параметры протокола. В демоверсии программы предусмотрено ограничение на работу программы после запуска: 5 минут. Фактически это лишает пользователя возможности автоматической коррекции. В полной версии все ограничения снимаются. В авторежиме значения MTU и RWIN при первом запуске читаются из реестра и затем рассчитываются по стандартным формулам.
Окно настроек ускорения программы |
Ручная настройка — это когда все настройки выставляются опытным путем. Доступно всего шесть параметров: MTU, автоопределение MTU, TTL, SACK, RWIN, поддержка больших окон. Автоопределение MTU, SACK, поддержка больших окон не имеют параметров настройки, а только включаются и выключаются.
По умолчанию в параметрах ручных настроек выставлены значения, которые могут удивить опытного пользователя. Но на то это и ручные настройки. При выборе ручного режима значения MTU выставляются равными 576, а RWIN — 8760 только потому, что такие данные получены в результате экспериментов автором программы и поставлены в ручных настройках по умолчанию в первой версии. После чего была получена целая куча писем от пользователей, подтверждающих, что эти нестандартные значения вызывают значительное ускорение. Объяснить эти результаты автор так и не смог. Это просто результаты экспериментов, хотя и имеющие нестандартные значения.
Программа позволяет вести статистику как по трафику, так и по времени |
Кроме изменения параметров протокола, Booster может вести статистику работы в Сети по времени и трафику. Если ввести денежные тарифы, то можно одновременно отслеживать и финансовый аспект пребывания в Интернете.
Кроме этого есть возможность произвести настройки дозвона до провайдера, в том числе и используя внешние программы-дозвонщики.
Тест
После настройки параметров сети переходим к оценке результатов. Официально признанной методики тестирования нет. Поэтому мы провели эксперимент, а вам предоставляем его описание и результаты. Выводы сделаете сами. Тесты показали прирост скорости на 16%
С сайта vdrive.ru скачивался файл объемом 6025 Кб. Первоначально файл качался с автоматическими настройками, выставленными в Booster. Вторично — с типовыми настройками Windows. Попутно выполнялся серфинг в Интернете (одно окно IE), работала ICQ и периодически проверялась почта. Обе загрузки проводились без разрыва связи в промежутке между ними, при одном соединении. То есть зависимость от «железа» сведена к минимуму. Так как общее время загрузки файлов не очень большое, в пределах часа, то можно сказать, что зависимость от смены нагрузки на общий канал со стороны сторонних пользователей тоже минимальна. Загрузка производилась штатным загрузчиком файлов MSIE, чтобы избежать каких-либо нюансов, вносимых менеджерами закачки.
Результаты: первая закачка показала среднюю скорость 3,7, вторая показала среднюю скорость 3,08. Разница в скорости — 16%. Вроде не много, хотя при и без того медленном диалапе этой прибавкой пренебрегать не стоит. Интересным показался другой факт: при настройках Windows присходило существенно большее снижение скорости загрузки при открытии сайта в окне браузера, чем при ручных настройках. Кроме того, при настройках Windows существенно медленнее происходило восстановление скорости, после того как страница открылась, чем при автоматических настройках. Можно предположить, что ручные настройки, выставленные в результате экспериментов с конкретной местной связью, дадут больший эффект.
В качестве резюме можно сказать, что при высокой стоимости альтернативных диалапу соединений, при низкой потребности в Интернете или при вообще отсутствии других, кроме диалапа, способов выхода в Сеть Booster и программы, аналогичные ей, могут рассматриваться как реальный способ повышения эффективности работы в Интернете.
Ссылки по теме
Статья получена: hostinfo.ru