Увеличение пропускной способности Dial-Up

  • Тут может быть ваша реклама

Real Root

Турист
20 Апр 2005
216
178
68
38
Ташкент
Credits
0
woow написал(а):
; следующий параметр увеличивает объем памяти буфера TCP/IP, что позволяет за один раз передавать больше данных
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"ForwardBufferMemory"=dword:00024a00
"MaxForwardBufferMemory"=dword:00024a00
"MaxNumForwardPackets"=dword:0000024a
"NumForwardPackets"=dword:0000024a
Вот это только усугубит положение! Вы увеличиваете размер буфера, что приводит к увеличению передаваемой информации за раз! Если в этот момент на линии была помеха, то придется запрашивать заново всю потерянную информацию в рамках данного пакета, а если соединение не очень хорошее, то половина пакетов будет неверных, тем самым вы только сделаете намного хуже, эта рекомендация применительна к ADSL, НО НЕ к DIAL-UP!!! особенно с проблемными линиями. Для проблемных линий это значение лучше уменьшить!
Кстати, на любых линиях (кроме совсем крутых) рискуете получать большие паузы при прослушивании on-line радио.

woow написал(а):
увеличиваем число одновременных подключений до 20 (по умолчанию было 10)
ОБЯЪСНИТЕ мне пожалуйста, для чего на Dial-up 20 одновременных соеденений, может быть вы еще порекомендуете качать в 3-5 потоков? Если это не испортит связь с и-нетом на модеме, то уж никак его не улучшит! Настройка применительна даже не для ADSL, а скорее для сверх скоростных соеденений, выше 512Кб/сек.

woow, без обид, я немного резок был, у меня иногда бывает ;)
А так идея статьи неплохая, только поправь немного шапку.
 
  • Like
Реакции: ReactorUA

humanoid

Турист
Вот честно скажу... когда перестал обильно твикать регистр ручками или с помощью всяких там уродских утилиток-улучшалок... а научился довольствоваться тем что есть в разумной настройке системы... жить стало легче и приятней... паранойя "улучшательства" улетучилась сама собой...

.....

И еще... не в коем случае не твикайте пылесос, холодильник, бритву для бритья... и штопор...
 
A

amk

Гость
Вот тебе на!!

Читал внимательно пока не добрался до:"TTL (время жизни пакета) равного 576 "
Это где ж такое значение TTL сможет работать? По умолчанию винда ставит значение 32, можно представить, что этого мало и поставить 64 - неужели кто-то встречал сайты до которых надо добираться за 64 хопа?
Причем на собственно скорость соединения этот параметр никакого влияния не оказывает.
Судя по цифре 576 товарищ хотел рассказать о действительно важном параметре: MTU, но почему-то пропустил. Короче читаем далее обо всем, что касается того как параметры TCP/IP влияют на производительность соединения:

- MTU (Maximum Transmission Unit) - максимальное количество информации, или размер пакета, который может быть передан в одном физическом кадре. Такой пакет, кроме собственно полезной информации, содержит заголовок и сопроводительные данные, используемые маршрутизаторами для его адресации. Для протокола РРР (модемный доступ) MTU чаще всего имеет значение 576 байт, по умолчанию в Windows установлено значение 1500 байт, оптимальное для локальной сети. Также по умолчанию включена в Windows и MTU Auto Discovery (иногда - Path MTU, путевое значение MTU) - функция автоматического определения значения MTU самой системой, однако процедура вычисления MTU для каждого соединения требует немало времени, что ощутимо притормаживает работу при прокачке небольших файлов или при Web-серфинге. Да и в случае несогласования параметров локального компьютера с параметрами сервера провайдера эта функция вряд ли вам поможет. Если заданное значение превышает стандарт, установленный провайдером, производится дополнительная процедура разбивки и последующей интеграции информации, если же заданное значение ниже стандарта, то модем клиента не использует до конца возможностей, предоставляемых оборудованием провайдера. Непосредственно с ним связан другой параметр - MSS (Maximum Segment Size), представляющий собой суммарный размер сегментов в пакете, содержащих данные. Так как размер адресного сегмента чаще всего фиксирован - 40 байт, то легко определить взаимосвязь параметров MTU и MSS: MSS = MTU - 40.

- PMTUBlackHole Detect - обнаружение "черных дыр", установка этого параметра разрешает протоколу TCP пытаться обнаружить те серверы, которые не возвращают ICMP-сообщений о необходимости фрагментации при определении наилучшего MTU. Это, как и любая другая дополнительная процедура, может, пусть и незначительно, замедлять работу в Интернете.

- RWIN (Receive Window) - определяет так называемое "окно приема", т.е. то количество информации, которое клиент может принять в единицу времени. Если значение RWIN занижено, то происходит переполнение окна, и поступающие пакеты теряются; а если завышено, то, в случае повреждения пакета, возникнет дополнительное ожидание повторной передачи информации. Размер RWIN обязательно должен быть кратен MSS, и обычно, для лучшей эффективности модемного соединения, кратность рекомендуется устанавливать в пределах 4-8.

- TTL (Time To Live) - "время жизни" пакета, т.е. то количество промежуточных серверов (хопов), через которые может пройти пакет в поисках своего места назначения. Каждый такой сервер добавляет единицу к специальному счетчику в заголовке пакета, и, когда счетчик достигает максимального значения, пакет прекращает свое существование. Сегодня, когда Интернет разросся неимоверно, величина TTL должна быть не менее 64, хотя по умолчанию Windows считает, что хватит и 32.

- NDI Cache (Network Device Interface Cache) - кэш, в котором хранятся данные о маршрутах движения пакетов, по умолчанию его размер равен нулю. Чтобы при модемном соединении задействовать его оптимальным образом, хорошо было бы установить размер этого кэша равным 16.

- SessionKeepAlive (поддержание соединения) - при отсутствии какой-либо активности со стороны клиента в течение некоторого времени, сервер провайдера может просто разорвать соединение. Для предотвращения такого печального исхода система посылает провайдеру специальные небольшие пакеты информации с периодичностью, по умолчанию, один раз в час в Windows 9x/Me и в два часа в Windows 2000, хотя лучше это делать не реже, чем раз в 10 минут.

Само собой разумеется, что все эти, как еще и несколько менее значительных, параметры прописаны в Системном реестре Windows и могут изменяться вручную, однако существует большое количество небольших утилит, которые позволяют корректировать эти параметры, используя удобный графический интерфейс.
Например:
iNTERNET Turbo 2003 (http://www.clasys.com/)
в которой возможен выбор автоматического либо ручного режимов конфигурирования системы: устанавливаются значения параметров MTU, RWIN, TTL, PMTU и NDI Cache. Программа оптимизирует не только модемное (dial-up) соединение с Интернетом, но и параметры работы в локальной сети (LAN). В случае отрицательных результатов изменения конфигурации, полезными могут стать инструменты для резервного копирования установок, используемых Windows по умолчанию. Для предотвращения разрыва связи с провайдером в случае продолжительного простоя в состав программы входит утилита Ping, причем параметры "пингования" можно изменять вручную. Программа работает со всеми программными и аппаратными адаптерами, оптимизирована для использования под Windows 9x/NT, полностью поддерживает Microsoft MSN, ICQ, RealPlayer, Outlook, Eudora и все популярные FTP-клиенты.

Подводя итоги всего вышеизложенного, необходимо еще раз подчеркнуть, что не стоит ждать слишком многого от применения этих, да и любых других аналогичных программ, каких бы ни обещала нам сладкоголосая реклама молочных рек с кисельными берегами. Не бывает так. Дело в том, что Интернет, особенно за последние годы, разросся неимоверно, и многострадальные информационные пакеты проходят по пути к вашему компьютеру десятки самых различных серверов, причем, к примеру, тот же самый злосчастный параметр MTU = 576 байт отнюдь не обязателен, а только рекомендован. Поэтому невозможно заранее предугадать его для каждого из промежуточных серверов. А ведь для каждого пакета свой путь, со своими препятствиями: Все это означает, что оптимизацией параметра MTU можно добиться некоторого повышения скорости приема информации лишь на последнем участке линии связи - между сервером провайдера и вашим компьютером.
Тем не менее, оптимизация основных параметров протокола TCP/IP, на мой взгляд, является одним из немногих способов хоть в какой-то мере добиться от своего модема как приемлемой скорости, так и устойчивости соединения. Особенно, если добавить к вышерассмотренным программам, оптимизирующим эти параметры, какой-нибудь монитор.
Ц300 АМК
 

lohness

Профи
26 Мар 2004
720
0
118
Moscow
Credits
0
;)
Самый действенный способ ускорения частенько не програмный
И все почему то об этом забывают
Проводочек хотя бы до распределительной коробки заменить
 

BloodNight

Турист
16 Янв 2005
54
0
11
Credits
0
я тоже заменил лапшу на витую пару до щитка однако скорость увеличилась незначительно! с 37.2 до 38 вывод: скорость увеличится значительно если до этого был плохой(окисленный) контакт в распределительной коробке, а так если контакт хороший то замена стандартных проводов на витую пару бессмысленое расточительство!
 

Real Root

Турист
20 Апр 2005
216
178
68
38
Ташкент
Credits
0
Чтож amk, увожаю! 2 поста, один из которых снимает все вопросы в обсуждении данной темы, ИМХО можно только по апладировать! :apll:

От себя добавлю, ИМХО лучше ничего не оптимизировать в настройке модемного соеденения, максимум чего вы добьетесь, это увеличение скачиваемой информации на 50-100кб за час, и то, если повезет.
Твикать все это стоит, если связь крайне не стабильная и интерне действительно почти не работает, впрочем, врядли бы вы тогда сюда бы зашли.
 

ftpd

Турист
7 Мар 2006
4
0
6
44
dp.ua
Credits
0
еще добавлю
значение TTL в заголовке IP пакета занимает 1 байт, поэтому более 255 быть не может по определению.
 

megademos

Турист
11 Дек 2003
45
1
13
Brovary
Посетить сайт
Credits
0
Для большинства домашних пользователей Интернет связан с модемом. Несмотря на то что различные компании-провайдеры пытаются дотянуть свои провода до жилых домов, пока еще проводной или радиовыход в Интернет — либо роскошь, либо редкий случай. Телефон же есть у подавляющего большинства, так что модем является очевидным решением для выхода в Сеть. Целью этой статьи является выяснение вопроса: всё ли мы используем из того, что предоставляет модем, и как сделать модемную связь быстрее?

Начнем, как обычно, издалека. Прежде чем что-то настраивать, это надо купить. Все дальнейшее изложение будет основываться на модеме USR Courier V.Everything. Почему именно на нем? Ответ весьма банален. На сегодняшний день это один из самых распространенных у нас модемов, причем обладающий лучшим соотношением «цена/качество». Конечно, есть другие модемы фирмы USR, есть другие фирмы, но есть и беспристрастная статистика, которая не раз была представлена в разных журналах и в Интернете. Это уникальный по своим характеристикам модем, отлично работающий на линиях почти любого качества, допускающий круглосуточную работу, совместимый со всеми операционными системами и имеющий ряд других свойств, которые разберем ниже. Но даже эти модемы имеют две модификации: внутренний и внешний. Внутренний модем может хуже работать из-за наводок от платы и устройств, хотя определенной статистики, подтверждающей эту тенденцию, нет. Это, несомненно, в большой степени зависит от материнской платы и используемых плат. В любом случае внешний модем оказывается более гибким. Его, в конце концов, можно в случае необходимости быстро отключить физически или отсоединить от компьютера.
Покупка и установка

Итак, предположим, что вы решились и приобрели внешний Courier. Это не дешевое (порядка 170 долл.), но очень выгодное приобретение. Для его установки нужно подключить питание, соединить модем с последовательным портом компьютера и подключить телефонный провод. Первое и второе очевидно, а вот на последнем, то есть на подключении телефонного провода, нужно остановиться поподробнее. На модеме на задней панели два телефонных разъема (по-научному — RJ-11). В описании сказано, что в первый нужно подключить провод телефонной линии, а во второй — телефон, но не объяснено почему. Ответ прост. Телефонная линия представляет собой электрическую цепь (более точно в радиотехнике это называется двухпроводная линия). Поэтому если между АТС и модемом есть еще и телефон, то он является, даже в выключенном состоянии, неким устройством, подключенным к линии. Это создает дополнительный шум, что не улучшает работу. Наиболее критичным для связи является, во-первых, снятие трубки на таком телефоне, а во-вторых, наличие у этого телефона определителя номера. Если же телефон включен через модем, то при наборе номера на модеме выход на телефон автоматически блокируется, убирая тем самым возможные лишние помехи. Таким образом, совет можно окончательно сформулировать так: модем должен быть первым устройством, подключенным к телефонному проводу, входящему в вашу квартиру. Все остальные телефоны должны быть подключены после модема. Еще один момент — розетка. Если у вас старый дом и телефон проведен давно, то вероятнее всего и телефонная розетка тоже старая. Откройте ее и рассмотрите. В ней вы можете обнаружить конденсаторы. Я, честно говоря, с трудом понимаю их глубинный смысл, но если их убрать, то будет только лучше — как для качества разговора, так и модема. Короче говоря, их нужно убрать или купить новую розетку.

После того как все соединено, модем нужно включить и загрузить компьютер. Windows при запуске опознает модем (если он включен, конечно) и предложит установить драйвер. Это стандартно. Далее, для работы с Сетью у вас должны быть установлены DialUp Networking и DialUp Scripting Tool, а для настройки модема должен быть HyperTerminal. Предположим, что вы все сделали для подключения к Сети, то есть выполнили Internet connection Wizard, и указали правильно все параметры. Тогда в окне DialUp Networking кроме значка Make New Connection (который также можно использовать для создания модемного подключения) появляется новый значок, олицетворяющий только что созданное соединение. Теперь для соединения вам нужно просто выполнить connect, ввести имя и пароль, после чего модем начнет звонить и устанавливать связь. Это стандартное описание из книги типа Getting started. При этом предполагается, что все проходит идеально, то есть не только нет ошибок в параметрах, но и линия хорошая, и провайдер качественный, и т.д.

На самом деле все, как правило, гораздо печальнее: связь есть и она держится (ведь мы имеем дело с Courier!), но не быстрая. Случается даже, что она разрывается. А иногда наоборот: связь отличная, 33 600, но соседи говорят, что у них все 42 666. В чем причина?

Давайте разбираться. Начнем с драйвера. Что значит установить драйвер модема? Это значит (для системы) скопировать с дискеты .inf-файл, в котором будут описаны команды модема для различных ситуаций, то есть что делать при звонке, перед звонком, после звонка и т.д. Это не какой-то птичий язык, а вполне понятные команды, которые мы будем описывать ниже. Если же вы осуществляете соединение с провайдером, выполняется некоторая вполне определенная последовательность команд модема. Некоторые вещи можно изменить. Для этого нужно в DialUp Netwroking на любом соединении (настройки модема идентичны для всех соединений, что неудобно) выбрать свойства, а в панели свойств под названием модема нажать кнопку Configure. Это уже будет конфигурация модема. Параметры связи устанавливаются в панели Connection. Там также есть кнопка Advanced — это еще некоторые дополнительные настройки. Если их все пересчитать, то окажется, что из Windows можно поправить не более 20 параметров, а их у Courier (да и у любого другого модема) порядка сотни. Однако в дополнительных параметрах есть поле Extra Settings, куда можно вписать все что угодно. Давайте посмотрим, как этой возможностью можно воспользоваться. Для этого придется разобраться, собственно говоря, почти со всем нижеследующим.
Подготовка к эксперименту

Модем (в нашем случае Courier, так как некоторые вещи для него специфичны) является вполне самостоятельным устройством. Он имеет процессор и память, а также средства общения с миром, причем как с компьютером, так и с телефонной линией. Более того, память есть постоянная, а есть перезаписываемая. У модема имеется свой язык, в котором более 100 команд и их вариаций, а также регистры, то есть ячейки памяти, в которых хранится служебная информация. Всем этим можно пользоваться, если у вас есть программа Terminal. В Windows это HyperTerminal. Она предназначена для общения с модемом. Давайте ее запустим, так как в ней можно будет испробовать все описанные ниже команды. Описывать будем не полный набор, а только то, что нам реально понадобится для настройки и разгона модема. Но вначале поговорим о том, откуда этот набор команд берется.

В памяти модема находится программа, или, говоря техническом языком, код прошивки, или просто прошивка, которая управляет работой модема. В этой самой прошивке и зашит набор команд и регистров. Более того, это перезаписываемая память типа flash, то есть она не уничтожается при отключении питания, но ее содержимое может быть изменено. Таким образом, в зависимости от наших потребностей мы можем использовать разные прошивки, лишь бы они были. Выбор невелик, но все же это не только стандартная прошивка от USR. Начнем с того, что многие модемы Courier продаются со старой фирменной прошивкой, которая поддерживает скорости только до 33 600. Сейчас есть более свежие фирменные прошивки, которые поддерживают скорости до 57 333. Но, самое главное, существуют прошивки, сделанные российскими программистами, которые постарались учесть наше телефонное «бездорожье». Одна из наиболее популярных — прошивка Игоря Дягилева. (Найти прошивки и вообще всё о модемах USR можно на русскоязычном сайте http://www.usrsupport.ru.) Чем различаются прошивки? Естественно, качеством и набором пользовательских команд. Однако если качество почти везде одинаково хорошее, то вот наборы команд могут быть разными. Российские прошивки хороши тем, что они дают доступ к большему количеству функций, которые в фирменной прошивке скрыты. К сожалению, это результат не только того, что мы умные и хотим все знать. Основная причина — качество наших телефонных линий и АТС. У них, на Западе, таких проблем просто нет. Например, у меня один дешевый модем никогда не мог опознать сигнал «Занято» и честно пытался соединиться. Но даже недешевый Sportser, и тот иногда «Занято» пытался распознать как сигнал carrier. Поэтому если вы понимаете, что линия плохая и хотите большего контроля над системой, то вам нужна российская прошивка. Далее я буду говорить уже конкретно о том, что можно сделать с помощью настроек модема, и опираться буду на прошивку Дягилева, отмечая, где нужно, что какая-то функция специфична именно для нее и не имеет аналогов в фирменной прошивке.

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

* V.90 — протокол, обеспечивающий скорости до 57 333;
* X2 — протокол, обеспечивающий скорости до 57 333 на прием и скорости из диапазона V.34 для передачи;
* V.34 — протокол, обеспечивающий скорости от 4800 до 33 600 (использует TCM, trellis code modulation);
* V.FC — протокол, обеспечивающий скорости от 14 400 до 28 800 (использует TCM);
* V.32 — протокол, обеспечивающий скорости 14 400 и 9600 (использует TCM или QAM, quadrature amplitude modulation);
* V.22 — протокол, обеспечивающий скорость 2400 (модуляция типа QAM);
* V.terbo — протокол, обеспечивающий скорости от 4800 до 21 600. На этом протоколе могут соединяться только два модема Courier (использует обе модуляции);
* HST — протокол, обеспечивающий скорости от 7200 до 16 800 (использует обе модуляции, однонаправленный).

Есть и другие протоколы, но они работают с еще меньшими скоростями.

Каждый из этих протоколов сопровождается при работе модема протоколом для контроля ошибок. Из вышеперечисленных только HST содержит внутри себя контроль ошибок. Остальные же протоколы работают совместно с V.42 или MNP, которые как раз и корректируют ошибки. Конечно, не все можно исправить, но многое удается.

Итак, при снятии трубки модемы пытаются установить самый быстрый протокол и наибольшую скорость. Ясно, что чем больше скорость, тем качественнее должна быть линия. Что же касается протоколов V.90 и X2, то с ними еще сложнее. Чтобы они работали, нужно, во-первых, чтобы с одного из концов был серверный модем, который работает в цифровом режиме, во-вторых, с другого конца был модем, поддерживающий V.90 или X2, а в-третьих, поскольку провода у нас медные, а информация не цифровая, должен быть аналого-цифровой преобразователь, но только один. Если их три, пять или более на пути сигнала, то связь на таком протоколе не устанавливается. Наиболее часто используется протокол V.34. Реже бывает, что на плохих линиях модемы соединяются по протоколу V.FC. В совсем безнадежных случаях нужен HST или V.22. После того как связь установлена, модемы будут работать на этом протоколе. В каждом протоколе несколько скоростей, и связь устанавливается на максимально возможной из них. Нужно иметь в виду, что это значение битовой скорости — количество бит, передающихся за секунду. Однако есть еще понятие символьной скорости — количество символов или байт, передающихся за секунду. Чем больше символьная скорость, тем меньше места остается для контрольной информации. Эти понятия не нужно путать, они понадобятся нам в дальнейшем. При работе модема может изменяться как символьная скорость, так и битовая, но не может измениться протокол. Поэтому если связь стала хуже, чем допускает данный протокол, связь обрывается.
Полный вперед!

Итак, вооружившись знаниями о протоколах и о контроле ошибок, пытаемся решить следующую задачу: имеются модем и телефон провайдера и необходимо сделать наиболее быстрое соединение. Сразу первая оговорка. Как бы вы ни старались, Courier всегда будет делать не столько быстрое, сколько надежное соединение, то есть обеспечивать непрерывную работу, хоть на 2400. Теперь забудем о красивых окнах и запустим какой-нибудь терминал. В нем нужно указать, к какому порту подключен модем, и включить программное эхо. Последнее означает, что нужно включить отображение набираемых символов. Просто когда вы работаете с модемом в терминале, то, нажимая кнопку на клавиатуре, вы передаете символ программе терминала, а она передает ее модему. В модеме есть команда ATEn: если n равно 1, то модем принимает сигнал и возвращает символ, который программа терминала неминуемо отобразит на экране; если n равно 0, то символ не возвращается. Устанавливая же программное эхо, вы просите саму программу терминала отображать ваш ввод. Конечно, если включить эхо везде, то символы будут дублироваться, но мне кажется, что лучше потом одно из них выключить, чем мучиться вопросом, почему символов нет вообще. Еще пара замечаний: все команды начинаются на AT и нет различия регистра букв.

Итак, мы в терминальном режиме. Первым делом дадим команду ATZ, которая перезагрузит модем так, как будто его выключили и включили. В ответ модем ответит: OK. Вообще, ответов на команды два: OK или ERROR. Теперь перед нами то состояние модема, в котором он пребывает сразу после включения, без каких-либо дополнительных действий. Заметим, что не нужно слишком уж бояться что-нибудь изменить. Даже если вы что-то серьезно подпортили, то всегда есть команда AT&F, которая загружает заводские установки из неперезаписываемой памяти. Однако предупреждаем сразу, даже не объяснив, как это делать: не нужно изменять значения регистров, если о них ясно сказано, что они служебные, и вы не уверены в том, что делаете. Непоправимого ничего не произойдет, но может получиться так, что обычными средствами модем запустить уже будет невозможно. Чтобы не возвращаться к этому вопросу в дальнейшем, скажем сразу, что регистры изменяются командой ATSn=m, где n — это номер регистра, а m — присваиваемое значение. Все стандартные регистры имеют 8 бит. В прошивке Дягилева есть регистры по 16 бит. Все нестандартные регистры имеют имя +s, то есть дается команда типа AT+S12=4. Также можно установить некий бит в регистре, дав команду ATSn.b=m, где b — номер бита от 0 до 7.

Перед тем как что-то менять, полезно посмотреть, что уже есть. Для этого существуют информационные команды ATIn. Ниже приведен вывод команды ATI3, дающей название модема (в нашем случае вы должны увидеть что это Courier, иначе что-то не так):

ati3

USRobotics Courier V.Everything



OK

Команда ATI4 показывает настройки модема, которые он использует.

ati4

USRobotics Courier V.Everything Settings...



B0 C1 E1 F1 M3 Q0 V1 X7

BAUD=115200 PARITY=N WORDLEN=8

DIAL=PULSE ON HOOK TIMER



&A3 &B1 &C1 &D2 &G0 &H1 &I0 &K1 &L0 &M4 &N0

&P0 &R2 &S0 &T5 &U0 &X0 &Y1 %N6



S00=000 S01=000 S02=043 S03=013 S04=010 S05=008 S06=002 S07=060

S08=002 S09=006 S10=014 S11=070 S12=050 S13=000 S14=000 S15=000

S16=000 S17=000 S18=000 S19=000 S20=000 S21=010 S22=017 S23=019

S24=150 S25=005 S26=001 S27=000 S28=008 S29=020 S30=000 S31=000

S32=020 S33=000 S34=000 S35=000 S36=000 S37=000 S38=000 S39=008

S40=000 S41=000 S42=126 S43=200 S44=015 S45=000 S46=000 S47=000

S48=000 S49=000 S50=000 S51=000 S52=000 S53=000 S54=064 S55=000

S56=000 S57=000 S58=000 S59=000 S60=000 S61=000 S62=000 S63=000

S64=000 S65=000 S66=000 S67=000 S68=000 S69=000



LAST DIALED #:



OK

Давайте попробуем разобраться в приведенном выше тексте. Обозначения типа b0, c1, x7 означают, что по умолчанию используется режим, заданный командой atb0, atc1, atx7 и т.д. Аналогично — для обозначений со значками & и %. Все, что начинается с S, показывает значение соответствующего регистра. Команды без & не имеют отношения к скорости и качеству соединения, поэтому их рассмотрение опустим. Из команд с & нас интересуют &K, &M, &U, &N. Команда &K задает способ компрессии данных, а команда &M — метод обработки ошибок. Приведенные выше значения являются, на мой взгляд, оптимальными и дают модему наибольшую свободу, то есть модем сам в большинстве случаев решает, какой метод оптимален для данной ситуации. А вот команды &U и &N более хитрые: &U задает нижний предел скорости, а &N — верхний. Значения 0 говорят о том, что выбирается оптимальное значение, но здесь есть некоторая тонкость. Если &U равно 0, а &N не равно 0, то соединение производится только на скорости, которой соответствует значение &N, а не от минимальной до &N, как могло бы показаться. Если значение &N окажется меньше, чем &U, то результат непредсказуем. Таким образом, можно пытаться использовать эти команды для того, чтобы принудительно заставить модем использовать более низкие или более высокие скорости, например запретить соединяться, если скорость меньше 28 000, или, наоборот, для улучшения связи запретить превышение установленной скорости (то есть сознательно занизить верхний предел).

Теперь посмотрим на значения регистров. Их много, но опять же нас интересует лишь несколько:

* регистр 6 — время ожидания сигнала в линии перед набором номера (в секундах). Это значение должно быть мало, но не 0, иначе модем просто будет набирать номер даже при отсутствии сигнала;
* регистр 7 — время, в течение которого ожидается появление сигнала carrier (в секундах). Вообще, carrier — это, на техническом языке, несущая, то есть базовый сигнал. Именно его появление на некоторой частоте означает возможность дальнейшего общения модемов. В нашем примере мы даем модему минуту, чтобы договориться с другим модемом о появлении такого сигнала;
* регистр 9 — время, в течение которого сигнал carrier должен быть распознан именно как carrier (в десятых долях секунды). Конечно, можно уменьшить значение этого регистра, и тогда почти любой сигнал будет для модема, что называется, родным, и формально он будет находить связь, но не сможет ее удержать;
* регистр 10 — время отсутствия сигнала carrier, после которого связь будет считаться разорванной. Если поставить 0, то связь вообще не будет разрываться (как понимаем, формально).

Теперь, если эти регистры установлены правильно (то есть разумные, а не их экстремально малые или большие значения), можно начать решение поставленной задачи. Нам необходимо самое быстрое соединение. Пока мы ничего не сделали для его ускорения, а лишь создали нормальные условия, и это уже немало.

Чтобы понять, все ли в порядке, нужно позвонить, куда мы хотим, то есть к провайдеру. Ясно, что выхода в Интернет мы не получим, но наш модем пообщается с модемом провайдера, а мы получим информацию об этом общении. Для звонка набираем ATDP и номер телефона, например так:

atdpxxxxxxx (номер не приводим, чтобы не расстраивать провайдера)

CONNECT 26400/ARQ/V34/LAPM/V42BIS

После этого вариантов может быть несколько (наш показан строчкой выше).

Первый и самый благоприятный: модем соединился, причем скорость больше 33 600 (естественно, мы подразумеваем, что прошивка у нас допускает V.90 или X2). В этом случае нам не о чем беспокоиться. На плохих линиях таких скоростей просто не будет. Конечно, 57 333 вряд ли следует ожидать, но до 48 000 дойти можно. Может быть, что связь будет стабильно устанавливаться на 33 600. Тогда убедитесь, что протоколы V.90 и X2 не запрещены в регистре 58. Установка 0-го бита в 1 запрещает X2, а 5-го бита — V.90. Если протоколы разрешены, то вспомните о трех условиях установления связи на этих протоколах. Если у провайдера модемы тоже аналоговые, то, как мы помним, 33 600 — это максимум. И если у вас скорость больше 28 800, то вы просто обладатель отличной телефонной линии.

Второй вариант более прозаичный, но тоже неплохой. Связь есть, но скорость от раза к разу изменяется, причем редко достигает 28 800. Тут имеет смысл посмотреть на характеристики соединения. Они отображаются командами ATI6, ATI11 и ATY16 (последняя только в прошивке Дягилева). Вот возможный вывод команды ATI6:

ati6

USRobotics Courier V.Everything Link Diagnostics...



Chars sent 17 Chars Received 383

Chars lost 0

Octets sent 17 Octets Received 356

Blocks sent 11 Blocks Received 12

Blocks resent 0



Retrains Requested 0 Retrains Granted 1

Line Reversals 0 Blers 1

Link Timeouts 0 Link Naks 0



Data Compression V42BIS 2048/32

Equalization Long

Fallback Enabled

Protocol LAPM 244/15

Speed 21600/14400

Last Call 00:00:36



Disconnect Reason is DISC Received

OK

Здесь необходимо обратить внимание на поле Blers. Это так называемые блоковые ошибки, которые, правда, удалось исправить. Конечно лучше, если их нет, однако и так ничего. Поля Retrains показывают, сколько раз модем (наш или удаленный) пытался изменить скорость, чтобы не потерять связь. Также интересно поле Speed. Здесь показана скорость на передачу и на прием. Скажем прямо, результат неважный, но такова жизнь.

Теперь посмотрим на вывод команды ati11 (это более полная и технически насыщенная статистика):

ati11

USRobotics Courier V.Everything Link Diagnostics...



Modulation V.34+

Carrier Freq ( Hz ) 1800/1800

Symbol Rate 2400/2400

Trellis Code 64S-4D/16S-4D

Nonlinear Encoding ON/OFF

Precoding OFF/OFF

Shaping ON/OFF

Preemphasis Index 1/1

Recv/Xmit Level (-dBm) 22.0/11.9

SNR ( dB ) 36.8

Near Echo Loss ( dB ) 16.5

Far Echo Loss ( dB ) 34.1

Roundtrip Delay (msec) 3

Timing Offset ( ppm) -960

Carrier Offset ( ppm) 229

RX Upshifts 0

RX Downshifts 0

TX Speedshifts 0

V.90 Status 00EF



OK

Здесь показаны наиболее важные параметры: протокол, символьная скорость, уровень входного и выходного сигнала, SNR (отношение «сигнал/шум»), потери ближнего и дальнего эха.

Команда aty16 дает амплитудно-частотную характеристику сигнала. Ее примерный вид таков:

aty16

-20 . X X X X X X X x x x . . . . . . . . . . . . . . 1

-22 . X X X X X X X X X X X X X x x . . . . . . . . . 3

-24 X X X X X X X X X X X X X X X X X X X x x x . . . 5

-26 X X X X X X X X X X X X X X X X X X X X X X X . . 7

-28 X X X X X X X X X X X X X X X X X X X X X X X X . 9

-30 X X X X X X X X X X X X X X X X X X X X X X X X x 11

Level --------------------Frequency-------------------- Attn

0 0 0 0 0 0 1 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3

1 3 4 6 7 9 0 2 3 5 6 8 9 1 2 4 5 7 8 0 1 3 4 6 7

5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0 5 0 5

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0



OK

От практики к анализу

Теперь давайте проанализируем получаемые данные, но не обязательно эти конкретные, а вообще: что должно получиться, почему получается иначе и как с этим бороться. Можно увидеть, что соединение было на высокой скорости, однако в итоговом отчете скорость на отправку всего 21 600, а на прием вообще только 14 400. Значит, изначально модем переоценил линию. Это часто случается. Беда не в модеме, а в наших линиях. Данная проблема у обладателей Courier известна как синдром 21 600, который может появиться в двух случаях. Прежде всего этот синдром возникает на хороших линиях. Модем пытается соединиться на большой битовой и символьной скорости (3429). В силу наличия шума эта связь не устанавливается. Тогда модем пытается установить соединение на более низкой символьной скорости, попутно снижая битовую. В результате происходит соединение на символьной скорости 2400, а для нее максимальная битовая скорость 21 600. Как этого избежать? Нужно запретить модему использовать высшие символьные скорости. Для этого нужно установить соответствующие значения в регистр 54. Установка 5-го бита запрещает символьную скорость 3429, а 4-го бита — 3200. Если это сделать, то модем не будет пытаться соединиться на этих символьных скоростях и, возможно, будет более стабильно соединяться на скоростях около 24 000 или 26 400, а может, и 28 800. К сожалению, на этом кончаются все известные возможности стандартной прошивки. Этот же синдром возникает и на плохих линиях и связан с тем, что кроме обычных помех очень высок уровень дальнего эха. По-простому — это отраженный сигнал. В прошивке есть алгоритмы эхоподавления, но они не всегда эффективны. В этом случае нужно использовать специфические возможности прошивки Дягилева. Первая — это установка уровня выходного сигнала в 39-м регистре: 1 — максимум, 29 — минимум. Вторая — усиление или ослабление входного сигнала регистром +s18. Всего может быть три значения: 1 — понижение на 6 дБ, 2 — нормальный уровень, 3 — усиление на 6 дБ. Ясно, что чем меньше уровень выходного сигнала, тем меньше эхо. Однако чем сильнее сигнал на входе, тем больше можно получить, но сюда же придет и эхо. Сказать однозначно, что нужно поставить в одном регистре 8, а в другом 2, нельзя, но при этих цифрах модем довольно устойчиво работает на наших линиях. Это тонкая игра, причем все зависит от конкретной линии и оконечных устройств. Предлагаем пользователю перебрать варианты этих значений. Комбинаций не так и много. Отметим лишь, что для чистоты эксперимента нужно поставить 1 в первом бите 56-го регистра. Это запретит модему изменять уровень сигнала, так как вообще модемы типа Courier слышат хорошо и не любят, когда их оглушают. Далее нужно собрать статистику, то есть сделать несколько звонков при наиболее понравившихся вам параметрах. Это исключит случайные факторы и даст более-менее объективный результат. В результате эксперимента можно добиться минимальных значений потерь в результате эха, максимального отношения «сигнал/шум», ну и как следствие, минимума блоковых ошибок.

Возможен еще один вариант: модемы не соединяются. Здесь можно предложить три рецепта. Поставьте скорость 2400 при помощи команды &n3, разрешите только протокол HST, что можно сделать командой +ssh (в прошивке Дягилева), или отремонтируйте свою АТС. К сожалению, такие случаи встречаются, и это нужно предвидеть.

Что еще можно улучшить в модеме, особенно если у вас не фирменная прошивка? Можно ускорить набор номера, задав параметры работы генератора импульсов, можно настроить определитель номера, а также просто отрегулировать заложенные параметры гудков, чтобы всегда правильно распознавался сигнал линии: занято или свободно.
Заключение, или Не забудьте сохранить сделанные изменения

А теперь расскажем, как заставить Windows работать со всем этим многообразием. Для этого настройте все в терминале, как вам нравится, запишите все параметры в память модема командой at&w, а в поле Extra settings в дополнительных настройках соединения модема в Windows поставьте просто z. Тогда, что бы Windows ни делал и как бы ни настраивал модем, последней командой будет его перезагрузка и активация ваших любимых параметров. Вот так!

Собственно, это все, что нужно знать о том, как разогнать модем. Попробуйте — возможно, вы пока используете свой модем не на полную катушку. Не следует мириться с качеством линий и АТС. Кое-что можно исправить, не выходя из дома.
 
  • Like
Реакции: peps

FOXI

Турист
22 Апр 2004
2
0
6
41
Credits
0
Что неправильно я делаю импортировании .reg файла?

===================НАЧАЛО ФАЙЛА=========================
Windows Registry Editor Version 5.00

; этот параметр определяет приоритет в работе с доменными именами

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider]
"DnsPriority"=dword:00000001
"HostsPriority"=dword:00000001
"LocalPriority"=dword:00000001
"NetbtPriority"=dword:00000001

; следующий параметр увеличивает объем памяти буфера TCP/IP, что позволяет за один раз передавать больше данных

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"ForwardBufferMemory"=dword:00024a00
"MaxForwardBufferMemory"=dword:00024a00
"MaxNumForwardPackets"=dword:0000024a
"NumForwardPackets"=dword:0000024a

; эти настройки запрещают кэшировать неудачные результаты поиска DNS, тем самым увеличивается производительность и сокращается время обработки запросов

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters]
"NegativeCacheTime"=dword:00000000
"NegativeSOACacheTime"=dword:00000000
"NetFailureCacheTime"=dword:00000000

; увеличиваем число одновременных подключений до 20 (по умолчанию было 10)

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MaxConnectionsPerServer"=dword:00000020
"MaxConnectionsPer1_0Server"=dword:00000020

; увеличиваем скорость доступа к удаленным сетевым компьютерам

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace\{D6277990-4C6A-11CF-8D87-00AA0060F5BF}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace\{2227A280-3AEA-1069-A2DE-08002B30309D}]


====================КОНЕЦ ФАЙЛА==========================

Скопировал выше напечатанное в блокнот, сохранил с расширением .reg, и при импортировании файла получаю такой ответ:
НЕ УДАЕТСЯ ИМПОРТИРОВАТЬ ИЗ .......reg.:
УКАЗАННЫЙ ФАЙЛ НЕ ЯВЛЯЕТСЯ ФАЙЛОМ ДАННЫХ РЕЕСТРА
ВОЗМОЖЕН ИМПОРТ ТОЛЬКО ДВОИЧНЫХ ФАЙЛОВ ДАННЫХ РЕЕСТРА

:help2:
 

ReactorUA

Турист
30 Июн 2005
120
3
43
Харьков, Украина
Credits
0

КАК ВЕРНУТЬ ТО, ЧТО УСТАНОВЛЕННО СИСТЕМОЙ СТАНДАРТНО, ЕСЛИ Я ВВЕЛ ЭТО -


Windows Registry Editor Version 5.00

; этот параметр определяет приоритет в работе с доменными именами

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider]
"DnsPriority"=dword:00000001
"HostsPriority"=dword:00000001
"LocalPriority"=dword:00000001
"NetbtPriority"=dword:00000001

; следующий параметр увеличивает объем памяти буфера TCP/IP, что позволяет за один раз передавать больше данных

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"ForwardBufferMemory"=dword:00024a00
"MaxForwardBufferMemory"=dword:00024a00
"MaxNumForwardPackets"=dword:0000024a
"NumForwardPackets"=dword:0000024a

; эти настройки запрещают кэшировать неудачные результаты поиска DNS, тем самым увеличивается производительность и сокращается время обработки запросов

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters]
"NegativeCacheTime"=dword:00000000
"NegativeSOACacheTime"=dword:00000000
"NetFailureCacheTime"=dword:00000000

; увеличиваем число одновременных подключений до 20 (по умолчанию было 10)

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MaxConnectionsPerServer"=dword:00000020
"MaxConnectionsPer1_0Server"=dword:00000020

; увеличиваем скорость доступа к удаленным сетевым компьютерам

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace\{D6277990-4C6A-11CF-8D87-00AA0060F5BF}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\NameSpace\{2227A280-3AEA-1069-A2DE-08002B30309D}]
 
  • Like
Реакции: Real Root

Real Root

Турист
20 Апр 2005
216
178
68
38
Ташкент
Credits
0
Max_SoftBoard написал(а):
КАК ВЕРНУТЬ ТО, ЧТО УСТАНОВЛЕННО СИСТЕМОЙ СТАНДАРТНО, ЕСЛИ Я ВВЕЛ ЭТО
С этого надо было тему начинать!
Я даже "плюс" тебе поставил за такой пост! :)
Ответ на твой вопрос врядли кто знает ;)