Мы продолжаем цикл статей, посвященных модемам и модемным соединениям. В предыдущей статье нашего журнала мы рассмотрели общие снедения, основные понятия и работу модема. В данной статье и последующих мы остановымся на возможностях оптимизации его работы, увеличения производительности с помощью программных средств, а также при использовании АТ- команд.
Процесс передачи данных модемом осуществляется при непосредственной помощи операционной системы и программного обеспечения (драйвера). Данные, поступи bi ime в операционную систему, обрабатываются ею и передаются программе. которая уже непосредственно представляет нам их в виде полезной информации. При работе п Интернете нам чаще всего как его пользователям приходится открывать множество \М“Ь-страниц. При этом можно всегда заметить. что страницы, которые открывались раньше, открываются гараздо быстрее, чем те. которые открываются впервые. В большинстве случаев это обусловлено тем. что информация, передаваемая на вагп ПК из Интернета, кэшируется. Большинство программных продуктов, которые увеличивают скорость открытия страниц, делают эго путем изменения настроек TCP/IP. к примеру в реестре Windows.
Процедура кэширования данных предельно проста. В процессе просмотра какой-либо Web-странички в броузере, ее содержимое сохраняется в памяти броузере! – кэше, а при следующем посещении этой странички, тс элементы, которые нс претерпели никаких изменений, загружаются не из Сети, а из кэша, что дает немалую экономию времени загрузки этих элементов. Но. к большому сожалению, механизм кэширования данных во всех без исключения броузерах далек от совершенства. да и размеры его не беспредельны. Поэтому на помощь обычным броузерам приходят специальные утилиты, которые кроме того, что имеют улучшенные алгоритмы кэширования просмотренных ХМ^Ь-страничек, позволяют в процессе просмотра одной странички автоматически подгружать в кэш элементы еще и следующих страничек, на которые имеются ссылки. А эго. при переходе по ссылке, дает еще больпшй выигрыш во времени, хотя и ценой значительного разбухания кэша. Практически все программы, работающие на таком уровне увеличения скорости позволяют изменять основном параметр протокола TCP/IP – MTU.
Что же это за параметр, да и какие вообще параметры TCP/IP влияют на производительность соединения?
MTU (Maximum Transmission Unit) – максима/1Ь-ное количество информации, или размер пакета, который может быть передан в одном физическом
кадре. Такой пакет, кроме собственно полезной информации, содержит заголовок и сопроводительные данные, используемые маршрутизаторами для его адресации. Для протокола РРР (модемный доступ) MTU чаще всего имеет значение 576 байт, по умолчанию в Windows установлено значение 1500 байт оптима.тыюе для локальной сети. Так же по умолчанию включена в Windows и MTU Auto Discovery (иногда – Path MTU. путевое значение MTU) – функция автоматического определения значения MTU самой системой. Однако процедура вычисления MTU для каждого соединения требует немало времени, что ощутимо притормаживает работу при прокачке небольших файлов или при Web -серфинге. Да и в случае несогласования параметров локального компьютера с параметрами сервера провайдера эта функция вряд ли Вам поможет. Если заданное значение превышает стандарт. установленный провайдером, производится дополнительная процедура разбивки и последующей интеграции информации, если же заданное значение ниже стандарта, то модем клиента не использует до конца возможностей, предоставляемых оборудованием провайдера. Непосредственно с ним связан другой параметр – MSS (Maximum Segment Size), представляющий собой суммарный размер сегментов в пакете, содержащих данные. Так как размер адресного сегмента чаще всего фиксирован – 40 байт, то легко определить взаимосвязь параметров MTU и MSS: MSS = MTU – 40.
PMTUBIackHole Detect – обнаружение “черных дыр”. Установка этого параметра разрешает протоколу TCP пытаться обнаружить те серверы, которые не возвращают ICMP сообщений о необходимости фрагментации при определении наи-лучшего MTU. Это. как и любая другая дополнительная процедура, может, пусть и незначительно. но замедлять работу в Интернете.
RWIN (Receive Window’) – определяет так называемое “окно приема”, т.е. то количество информации. которое клиент может принять в единицу времени. Если значение RWIN занижено, то. происходит переполнение окна, и поступающие пакеты теряются: а если завышено, то. в случае повреждения пакета возникнет дополнительное ожидание повторной передачи информации. Размер RW1N обязательно должен быть кратен MSS и обычно, для лучшей эффективности модемного соединения, кратность рекомендуется устанавливать в пределах 4 – 8.
TTL (lime ‘1Ъ Live) – “время жизни” пакета, т.е. то количество промежуточных ссрвсдов (хонов). через которые может пройти пакет в поисках своего места назначения. Каждый такой сервер добавляет единицу к специальному счетчику в заголовке пакета, и. когда счетчик достигает максимального значения, пакет прекращает свое существование. Сегодня, когда Интернет разросся неимоверно. величина TTL должна быть не менее 64. хотя по умолчанию Windows считает. что хватит и 32.
NDI Cache (Network Device Interface Cache) -кэш. в котором хранятся данные о маршрутах движения пакетов. По умолчанию его размер равен нулю. Чтобы при модемном соединении задействовать его оптимальным образом, хорошо было бы установить размер этого кэша равным 16.
ScssionKccpAllve (поддержание соединения) – при отсутствии какой-либо активности со стороны клиента в течение некоторого времени, сервер провайдера может просто разорвать соединение. Для предотвращения такого печального исхода система посылает провайдеру специальные небольшие пакеты информации с периодич ностью. по умолчанию, один раз в час в Windows 9х/Ме и в два часа в Windows 2000, хотя лучше это делать нс реже раза в 10 минут.
Среди программ, осуществляющих кэшщюва-нис данных, наибольшую известность имеет NetSonic 3.0. INTERNET Turbo 99 . Internet ‘IXwak 2000. IntemetBOOST99. MTUSpeed.
Стоит отметить, что ждать слишком многого от применения этих, да и любых других аналогичных прог()а.мм нс приходится. Дело в том. что Интернет достаточно большая информационная сеть, и многострадальные информационные пакг-ты проходят по нуги к Вашему компьютеру десят ки самых различных серверов. Поэтому невозможно заранее предугадать такой путь для каждого из промежуточных серверов. Все это означает, что оптимизацией параметра MTU можно добиться некоторого повышения скорости приема информации лишь на последнем участке линии связи – между сервером провайдера и Вашим компьютером. Тем не менее, оптимизация основных параметров П|х>токола TCP/IP. является одним из немногих способов хоть в какой-то мере добиться от своего модема приемлемоЙ скорости и устойчивости соединения, на уровне рядового пользователя. Использование таких программ-мониторов позволш в реальном масштабе времени оценивать состояния канала передает или приема данных.
более сложную процедуру оптимизации модемного соединения и скорости передачи данных можно провести с помощью использования А’1 -команд. а также путем перезаписи микрокода, прошитого в флэш-памяти модема.
АТ-команды
АТ-команды служат для получения сведений о состоянии модема, изменения режимов его работы. набора номера, установки/завершения связи, тестирования модема и линии. Для изменения основных параметров имеются отдельные команды, прочие параметры хранятся в так называемых S-рсгистрах. принимающих значения от 0 до 255. Значения S-регистров могут использоваться как полностью, так и раздельно по полям и отдельным битам. На самом деле все или большая часть параметров хранятся в S-регистрах, а отдельные команды управления ими введены исключительно дтя удобства.
Технически модем представляет собой своего рода компьютер, содержащий микропроцессор, постоянное запоминающее устройство и т n. 11адо заметить, что по “вычислительной мощности” современные модемы сравнимы с компьютерами десятилетней давности, например, в модемах ZyXEL используется микропроцессор Motorola 68000, тот самый, который служил “сердцем” первых компьютеров Apple Macintosh. Amiga и даже рабочих станций фирмы Sun Microsystems первого поколения. Сегодняшние технические новинки также нашли свое место в модемах: так. например, приобретающие все большую популярность модемы USRobot les Сои rier содержат ПЗУ на основе флэш-памяти. что позволяет “на лету” модернизировать управляющие микропрограммы. Но все-таки для пользователя важно нс то. какие микросхемы установлены в модеме, а то, как он работает: скорость и надежность обмена данными, а также совместимость с модемами других производителей. Чтобы узнать эти параметры, как правило, нс нужно разбирать устройство – достаточно взглянуть на поддерживаемые им стандарты.
К стандартам высокого уровня относятся так называемые Haycs-команды. или АТ-команды. Они позволяют управлять модемом практически напрямую: изменить значение регистров, набрать телефонный номер и многое другое. Впервые такая система команд появилась в модеме Smart modem. выпущенном фирмой Hayes и быстро стала действующим ст андартом в отрасли. Через некоторое время она была значительно расширена. однако базовое ядро, выполняющее необходимые функции, сохранилось.
Команды модема
Модем поддерживает стандартный и расширенный наборы Hayes-команд. После префикса АТ (Attention Code) может следовать одна или несколько команд. Эти команды пишутся на языке промышленного стандарта и позволяют связаться с модемом. Ваш модем всегда находится либо в командном режиме, либо в режиме непосредственного управления (online-режим). Как только вы включаете модем, он переходит в командный режим работ ы. Это означает, ’гго АТ-команды могут быть посланы в модем только в том случае, когда он находится в командном режиме. Ввод команд в режиме непосредственной работы модема распознается самим модемом как ввод данных. Впрочем, АТ-команды могут быть загружены в модем и в терминальном режиме, с помощью соответствующего программного обеспечения.
Любая команда АТ. введенная в модем автоматически, остается в нем до тех пор, пока не будет из него выгружена или модем не будет выключен. Все АТ-команды. за исключением двух, должны начинаться с символов. Исключение составляют escape-последовательность +++ и команда повтора /. Префикс командной строки (символы АТ) не чувствителен к регистру. На одной строке вы можете ввести одну или несколько команд. В последнем случае, все команды могут разделяться пробелами. которые игнорируются модемом через его интерпретатор АТ-команд.
Большинство АТ-команд. набранных в командной строке модем немедленно подтверждает. Как только вы введете последний символ команды и нажмете возврат каретки, модем ответит на это выводом краткою сообщения: ОК .
Также АТ- команды можно набирать в строке инициализации. Строкой инициализации называют последовательность команд, приводящую модем в заранее известное состояние. Обычно такая строка начинается с одной из команд &Fn, устанавливающей заводские установки, следом за которой идут команды установки нужных режимов.
Подтверждение принятых модемом команд сигнализируется выдачей ответов. В табл. 1 приведен основной набор ответов используемых в модемах.
Сообщение CONNECT без параметров выдастся либо в том случае. когда запрещены расширенные сообщения (ХО). либо установлено соединение на скорости 300 бит/с.
Сообщение RING выдаетс я модемом после завершения каждого вызывного сшнала (интервал около 5 сек). Сообщения RINGING/RINGBACK выдаются не всеми типами модемов.
Сообщение VOICE поддерживается только некоторыми модемами и выдастся в том случае. когда в линии обнаружен сигнал, который нельзя отнести к какому-либо известному классу линейных или модемных сигналов. В этом случае считается, что абонент ответил голосом, и после выдачи сообщения модем отключается от линии.
Сервисный центр 2001-10