----------------------------------------------------------------------
- Отчего модем может зависнуть, и как с этим бороться?
Как и любой компьютер, внутренний микрокомпьютер модема может зависать
по нескольким причинам:
- ошибки в микропрограмме
- нестандартные входные сигналы или элементы данных, против которых в
модеме не предусмотрено защиты
- некачественная фильтрация питающих напряжений
- электростатические разряды или мощные магнитные поля
Наиболее частыми причинами зависания являются первые две. В частности,
в большинстве современных модемов протоколы реализуются методом
конечных автоматов, предусматривающих большое количество состояний и
правил перехода между ними. При таком подходе крайне трудно проверить
все возможные переходы и исключить появление "запрещенных" состояний,
в которые модем может попасть по ошибке, а также некорректных цепочек
таких состояний. В результате, при определенном сочетании входных
условий (типы модемов в паре, протоколы связи, виды передаваемых
данных и т.п.) один или оба модема могут попасть в запрещенные
состояния. В зависимости от тяжести зависания модем может быть выведен
из него либо срабатыванием внутреннего таймера (если таковой имеется),
либо снятием сигнала DTR, либо полным аппаратным сбросом.
Если модем регулярно зависает и нет возможности сменить его или хотя
бы микропрограмму - можно принять компромиссные меры:
- Установить режим &D3 для сброса по падению сигнала DTR. Однако на
большинстве модемов сигнал DTR наравне с другими анализируется
процессором модема, и зависший процессор часто оказывается неспособным
отреагировать на его изменение. Модемы повышенной надежности могут
иметь специальный режим, в котором сигнал DTR напрямую подключается к
цепи аппаратного сброса.
- Установить в модем схему аппаратного сброса, формирующую импульс
сигнала Reset, который автоматически формируется при включении
питания. Сигнал сброса можно сформировать из падения сигнала DTR, либо
взять отдельный сигнал с какого-либо другого порта (COM или LPT). В
первом случае потребуется только доработка самого модема, так как
практически все программы умеют сбрасывать DTR для разрыва соединения.
Во втором случае потребуется запуск специальной программы, которая
будет выдавать в нужный порт сигнал, от которого сработает схема
аппаратного сброса.
- Для внешнего модема можно сделать схему кратковременного отключения
питания, работающую на тех же принципах. Метод хорош тем, что не
требует вмешательства в схему самого модема.
Вариант с формированием сигнала внутреннего сброса имеет ограниченное
применение в случае внутреннего модема. Дело в том, что внутренний
модем всегда содержит еще и контроллер COM-порта, настройку которого
большинство программ выполняет только в начале работы. Таким образом,
если сигнал сброса формируется от падения DTR, то порт также окажется
приведенным в стандартное состояние, и программа не сможет с ним
работать до повторной инициализации. В этом случае нужно, чтобы
программа, обнаружив зависание модема, аварийно перезапускалась.
----------------------------------------------------------------------
- Какой максимальный CPS достижим на данной битовой скорости?
При условии, что в тракте нет узких мест (в частности, скорость
асинхронных последовательных портов с обеих сторон превышает скорость
соединения) и данные везде передаются с максимальной скоростью,
предельный CPS без эффективного сжатия (например, при передаче
архивов) примерно равен 90..95% от битовой скорости, деленной на
восемь. Например, для скорости 14400 бит/с предел CPS около 1650, а
для 28800 - около 3400. При эффективной работе протоколов сжатия
реальная скорость может возрастать в два и более раз (наиболее
эффективно сжимаются длинные серии повторяющихся символов).
Различные программы по-разному измеряют CPS при обмене: одни
отображают только мгновенное значение, вычисленное при передаче
текущего пакета, другие - результат деления общего количества
переданных/принятых байтов на время с начала обмена. В первом случае
значение сильно изменяется от влияния кратковременных факторов, а во
втором оно неоправданно занижается. Наиболее корректным является
отображение среднего CPS за небольшой промежуток времени (несколько
секунд) с одновременным подсчетом среднего CPS за все время передачи.
----------------------------------------------------------------------
- Чем различается работа по коммутируемой и выделенной линии?
Стандартная коммутируемая линия отличается наличием питающего
напряжения (около 60 вольт в российских телефонных сетях) и
способностью выдавать и принимать сигналы состояния линии и набора
номера. Соответственно, при работе по коммутируемой линии вызывающий
модем в общем случае дожидается непрерывного гудка, затем набирает
номер, и только после этого ожидает ответа от удаленного модема.
Отвечающий модем, в свою очередь, воспринимает сигнал вызова (звонок),
после чего подключается к линии ("берет трубку") и переходит в режим
ответа.
Выделенная линия представляет собой постоянное двухточечное соединение
между двумя абонентами. Обычно это - двух- или четырехпроводная линию
связи, напрямую соединяющая два модема и никак не соединенная со
станционной аппаратурой. В простейшем случае это может быть обычный
телефонный кабель, входящий в комплект модема, в наиболее сложном -
участок многоканального проводного, оптоволоконного или радиотракта,
который при помощи канальной аппаратуры имитирует простое проводное
соединение.
Модемы, поддерживающие работу по выделенной линии (команда &L1) в этом
режиме автоматически отключают проверку наличия непрерывного гудка, а
также автоматически пытаются восстановить соединение при его разрыве.
Для начальной установки соединения один модем должен быть
активизирован как вызывающий (команда D), а другой - как отвечающий
(команда A). После этого восстановление связи при обрыве модемы
выполняют сами в тех же ролях.
Кроме этого, модемы с поддержкой выделенных линий имеют запоминаемые
режимы, в которых установление связи в выбранной роли выполняется
автоматически при включении питания (либо после появления сигнала
DTR). Таким образом, пара таких модемов сразу после включения питания
или появления DTR создает автоматически поддерживаемое соединение без
вмешательства управляющих программ, которым в этом случае остается
лишь слежение за сигналом DCD и/или сообщениями CONNECT/NO CARRIER. В
идеальном случае такая пара модемов позволяет организовать полностью
прозрачное соединение, аналогичное нуль-модемному кабелю, при котором
программам совершенно неизвестно о существовании в каких-либо
дополнительных устройств в тракте.
По выделенной линии могут работать практически все модемы - даже не
поддерживающие команду &L1. Достаточно, чтобы модем не обращал
внимания на наличие напряжения в линии (некоторые модемы имеют датчик
напряжения) и не пытался ожидать гудка при переходе в режим вызова
(это обеспечивает команда X3). Для установления связи на вызывающем
модеме вводятся команды X3D, после чего на отвечающем вводится команда
A. Единственное неудобство в этом случае - обычные модемы не умеют
автоматически восстанавливать оборванное соединение.
Описанная технология может использоваться и при работе по
коммутируемой линии - для установления модемной связи по каналу, уже
соединенному для голосового разговора. При этом модемы должны быть
подключены параллельно каждому телефонному аппарату, их операторы
выбирают для себя роли вызывающего/отвечающего, после чего вызывающий
вводит команду D и после подключения его модема к линии кладет трубку.
Отвечающий оператор, услышав щелчок подключившегося к линии удаленного
модема, вводит команду A и тоже кладет трубку, после чего модемы
переходят к обмену сигналами установки соединения.
----------------------------------------------------------------------
- Как подключить модем через блокиратор или АВУ?
Блокиратор используется для разделения спаренных абонентских линий,
когда к одной телефонной паре подключаются две абонентские линии,
каждая из которых использует свою полярность питающего и вызывного
напряжения, и одновременная работа обеих линий невозможна. Типовой
блокиратор представляет собой диодный однополярный выпрямитель,
пропускающий в абонентскую линию только напряжение "своей" полярности,
и также содержит транзисторный ключ, замыкающий обратный ток вызывного
сигнала (звонка). Такой блокиратор рассчитан на телефонные аппараты с
индуктивным звонком; после завершения действия очередного полупериода
однополярного вызывного сигнала в катушке звонка возникает ток того же
направления, замыкающийся через транзисторный ключ. Телефонные
аппараты с электронным звонком и модемы содержат разделительный
конденсатор, в котором возникает ток противоположной направленности, а
для этого в блокираторе нет разрядной цепи. В результате аппарат или
модем нормально работает во всех режимах, кроме опознания звонка.
Для нормальной работы на спаренных линиях выпускаются блокираторы,
поддерживающие аппараты с электронным звонком. Можно также
самостоятельно собрать схему, обеспечивающую замыкание возвратного
тока и разряд разделительного конденсатора.
При помощи АВУ (аппаратура высокочастотного уплотнения) к
двухпроводной телефонной линии может подключаться несколько (обычно
две) абонентские линии, могущие работать одновременно. При этом одна
из линий работает в обычном режиме - на низкой частоте, а остальные -
на высоких частотах. Для передачи сигналов вызова по линии,
уплотненной АВУ, используются специальные сигналы, принимаемые блоком
АВУ и преобразуемые в стандартный вызывной сигнал напряжением 110 В и
частотой 100 Гц. Типовой блок АВУ также рассчитан на аппараты с
индуктивным звонком и имеет три точки подключения: два - низковольтная
линия, и третий - выход вызывного сигнала. Для подключения аппаратов с
электронным звонком или модемов нужен либо блок АВУ с двумя точками
подключения, либо специальный адаптер.
Если через блокиратор модем в общем случае работает практически без
потери качества, то на высокочастотной линии АВУ часто наблюдается
значительное снижение скорости и надежности связи.
----------------------------------------------------------------------
- Что такое FOSSIL?
Fido/Opus/SeaDog Standard Interface Layer - стандартный уровень
интерфейса, совместно разработанный Fido, Opus и SeaDog. Служит для
унификации интерфейса с последовательными портами в DOS, заменяя и
дополняя функции BIOS. В дополнение к стандартным для BIOS функциям
ввода/вывода символа с ожиданием предоставляет функции ввода/вывода
без ожидания, работы по прерываниям, буферизованного ввода/вывода и
т.д. В FOSSIL может быть также включен интерфейс с видеоадаптером.
Наиболее известные версии FOSSIL для DOS - BNU и X00.
FOSSIL полезен и под многозадачными системами типа OS/2 и Windows.
Стандартные средства виртуализации портов этих систем эмулируют только
поведение порта на аппаратном уровне - байтовый ввод/вывод по
прерываниям, при этом эмуляция побайтного обмена с прерыванием на
каждые несколько байтов создает заметные накладные расходы и приводит
к периодической потере байтов. Версии FOSSIL для этих систем создают
DOS-программам оптимальный интерфейс с портами. Наиболее известная
версии FOSSIL для Windows - WinFossil, для OS/2 - SIO (Serial I/O).
SIO является развитием версии X00 и, помимо поддержки функций FOSSIL,
эмулирует соединение двух последовательных портов посредством сетевых
протоколов.
----------------------------------------------------------------------
- Где взять драйверы под Win95/98 для модема <...>?
Для большинства модемов, как и для мониторов, каких-либо специальных
драйверов не существует - Windows использует стандартные драйверы
последовательных портов. Исключение составляют модемы с нестандартным
интерфейсом - Soft-модемы, модемы с RPI, некоторые голосовые модемы.
Тем не менее, для корректного опознания модема в Windows требуется
INF-файл, содержащий характеристики модема, команды установки режимов,
строки сообщений и т.п. Для большинства модемов эти файлы прилагаются
в комплекте поставки.
Если Windows не в состоянии опознать модем даже при наличии INF-файла
от производителся - это означает, что либо полное название типа модема
в INF-файле не соответствует выдаваемому самим модемом по командам In,
либо INF-файл предназначен для другой версии Windows. Если не удается
найти корректный INF-файл на сайте или BBS производителя, можно
попробовать задать подходящий по скорости тип стандартного модема. На
качестве связи это не скажется - не будут поддерживаться только
расширенные возможности (голос, факс, АОН и т.п.).
----------------------------------------------------------------------
- Как уменьшить шум от реле набора номера?
- Минимальное решение: обклеить реле кусочками поролона, подобрав их
размеры и конфигурацию для оптимального поглощения звука. Этот способ,
однако, редко дает заметный эффект, так как вибрация реле передается
всей плате, которая излучает сильнее, чем сам корпус реле.
- Оптимальное решение: выпаять реле и присоединить его отрезками
тонкого гибкого провода, а само реле так же обклеить поролоном. При
этом вибрация практически не будет передаваться печатной плате.
- Кардинальное решение: заменить реле на герконовое. Хорошо подходят
5-вольтовые РЭС-55А (модель 0201). Если реле имеет две пары контактов,
вторая из которых отключает параллельный телефон - можно поставить два
реле, или же замкнуть выключатель телефона накоротко. Реле также можно
заменить на электронный ключ, которые продаются на радиорынках, однако
в этом случае может ухудшиться соотношение сигнал/шум из-за
паразитного влияния электронных компонент ключа.
----------------------------------------------------------------------
- Можно ли добавить в модем поддержку новых возможностей?
Проще всего это сделать, если модем имеет электрически
перепрограммируемое ПЗУ (Flash EEPROM). Тогда при появлении новых
микропрограмм ("прошивок") любая из них может быть записана в EEPROM
при помощи специальной программы загрузки. Прошивки микропрограмм
обычно выпускаются самими производителями модемов, однако для
некоторых модемов (USR, ZyXEL) имеются и "самодельные" прошивки, в
которых нередко исправлены ошибки и добавлены новые возможности.
Перед записью прошивки в EEPROM происходит полное стирание его
прежнего содержимого, поэтому прерывание процесса записи (сброс
программы, зависание или отключение компьютера, отключение питания
модема, сбой процедуры записи) чаще всего приводит к полной
неработоспособности модема. Процесс восстановления EEPROM довольно
сложен, особенно в модемах со впаянной микросхемой, поэтому операция
смены прошивки является потенциально опасной.
Если модем содержит только обычное ПЗУ, то при наличии более новой
версии прошивки ее можно записать в ПЗУ при помощи программатора, или
заменить саму микросхему на уже записанный экземпляр.
После замены прошивки рекомендуется выполнить команды установки
заводских параметров (&Fn и ей подобные), после чего записать текущие
параметры в NVRAM. Это нужно для того, чтобы новая версия
микропрограммы могла корректно установить по умолчанию новые
параметры, или скорректировать старые, смысл которых изменился. После
этого можно заново настраивать модем, как при его первоначальной
установке.
----------------------------------------------------------------------
- Где найти программы, драйверы и информацию по модемам?
ACorp - acorp.com.tw
Boca Research - bocaresearch.com
Cardinal Tech - cardtech.com
GVC Canada - gvc.ca
Hayes - hayes.com
Inpro - inpro.us.com
ITU - itu.org
Lucent - lucent.com
Microcom - microcom.com
Motorola - mot.com
Multitech - multitech.com
Rockwell - rockwell.com, conexant.com
USR/3COM - usr.com, 3com.com, www.usr.spb.ru
Zoltrix - zoltrix.com
Zoom - zoomtel.com
ZyXEL - zyxel.com, zyxel.ru
www.56k.com, www.v90.com - страницы технологии 56k
www.faqs.org - большое собрание FAQ
www.chat.ru/~pirogoff - FAQ Игоря Пирогова по модемам на микросхемах
Rockwell
www.geocities.com/CapeCanaveral/5997/signal_and_circuit_conditions.htm
- параметры телефонных линий и сигналов в них.
----------------------------------------------------------------------
Большое спасибо всем приславшим ответы, рекомендации, замечания и
советы для этого FAQ.
Текст FAQ в альтернативной кодировке доступен для FReq на
2:5000/14@FidoNet по имени MODEMFAQ. Полный пакет FAQ и описаний
доступен на ftp://spider.nrcde.ru/pub/text/tech/emtcfaqs.zip и через
страницу FAQ на http://spider.nrcde.ru.
======================================================================
Страница 1 2 3 4 <<< Предыдущая
|