Итак, модемы и модуляция-демодуляция...

Понятие "модем" является сокращением от известного компьютерного термина модулятор-демодулятор. Модем - это устройство, которое преобразовывает цифровые данные, исходящие из компьютера, в аналоговые сигналы, которые могут передаваться по телефонной линии. Все это дело называется модуляцией. Аналоговые сигналы затем вновь преобразовываются в цифровые данные. Это дело называется демодуляцией.

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

Modulation type (Тип модуляции), которая позволяет выбирать частотную или импульсную модуляцию. На всей территории России используется импульсная модуляция.

Аналоговый и цифровой сигналы

Телефонная связь осуществляется через так называемые аналоговые (звуковые) сигналы. Аналоговый сигнал идентифицирует информацию, которая передается непрерывно, в то время как цифровой сигнал идентифицирует только те данные, которые определены на кокретном этапе передачи. Преимущество аналоговой информации перед цифровой есть способность полностью представить непрерывный поток \ информации.

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

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

Интерфейсы

Вы можете использовать модем в вашем компьютере с помощью одного из двух интерфейсов. Ими являются:

MNP-5 Последовательный интерфейс RS-232.

MNP-5 Четырехконтактный телефонный кабель RJ-11.

Например, внешний модем подключается к компьютеру посредством кабеля RS-232, а к телефонной линии - с помощью кабеля RJ11.

Сжатие данных

В процессе передачи данных необходима скорость большая, чем 600 битов за секунду (bps или бит\сек). Связано это с тем, что модемы должны собрать биты информации и передавать их далее через более сложный аналоговый сигнал (весьма мудреная схема). Сам процесс подобной передачи допускает передачу многих битов данных в одно и то же время. Понятно, что компьютеры более чувствительны к передаваемой информации и поэтому воспринимают ее намного быстрее, чем модем. Это обстоятельство порождает дополнительное время модема, соответствующее тем битам данных, которые необходимо как-то сгруппировать и применить к ним те или иные алгоритмы сжатия. Так появились два так называемых протокола сжатия:

MNP-5 (протокол передачи, имеющий степень сжатия 2:1).

V.42bis (протокол передачи, имеющий степень сжатия 4:1).

Протокол MNP-5 обычно используется при передаче тех или иных уже сжатых файлов, в то время, как протокол V.42bis применятся даже к несжатым файлам, так как он может ускорять передачу именно таких данных.

Нужно сказать, что при передаче файлов, если протокол V.42bis вообще недоступен, то лучше всего отключить и протокол MNP-5.

Коррекция ошибок

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

Фрейм является одним из ключевых терминов передачи данных. Под фреймом понимают базовый блок данных с заголовком, присоединенной к этому заголовку информацией и данными, которые и завершают сам фрейм. Добавленная информация включает номер фрейма, данные о размере передаваемого блока, синхронизирующие символы, адрес станции, код коррекции ошибок, данные переменного объема и так называемые индикаторы Начало передачи (стартовый бит)/Конец передачи (стоп-бит). Это означает, что фрейм является пакетом информации, который передается ^как одно целое.

Например в Windows 98 в параметрах настройки модема существует опция Stop bits (Стоповые биты), которая позволяет установить количество стоповых битов. Стоповые биты данных являются одной из разновидностей так называемых граничных служебных битов. Столовый бит определяет конец цикла при асинхронной передаче (промежуток времени между передаваемыми символами меняется) данных в кратковременном цикле.

Протоколы MNP2-4 и V.42

Несмотря на то, что коррекция ошибок может замедлять передачу данных на шумных линиях, этот метод обеспечивает надежную связь. Протоколы MNP2-4 и V.42 являются протоколами коррекции ошибок. Эти протоколы определяют, каким образом модемы проверяют данные.

Как и протоколы сжатия данных, протоколы коррекции ошибок должны поддерживаться как передающим, так и принимающим модемами.

Управление потоком или Flow Control

В процессе передачи один модем может пересылать данные намного быстрее, чем другой модем может принимать эти данные. Так называемый метод управления потоком позволяет сообщить принимающему модему информацию о том, чтобы этот модем в какие-то моменты времени приостанавливал прием данных. Управление потоком может быть реализовано как на программном (XON/XOFF - Старт-сигнал/Стоп-сигнал), так и на аппаратном (RTS/CTS) уровнях. Управление потоком на программном уровне осуществляется через пересылку определенного знака. После того, как сигнал получен, передается другой символ.

Например, в Windows 98 в параметрах настройки модема существует опция Data bits (Биты данных), которая позволяет установить информационные биты данных, используемые системой для выбранного последовательного порта. Стандартный набор символов компьютера состоит из 256 элементов (8 бит). Поэтому опция по умолчанию есть 8. Если ваш модем не поддерживает псевдографику (работает только со 128 символами), сообщите об этом выбором опции 7.

Там же в Windows 98 в параметрах настройки модема существует и опция Use flow control (Управление потоком),

которая позволяет определить способ реализации обмена данных. Здесь вы можете исправлять возможные ошибки, возникающие при передаче данных от компьютера в модем. Принятая по умолчанию, установка XON/XOFF означает, что управление потоком данных осуществляется программными методами через стандартные управляющие символы ASCII, которые и посылают в модем команду приостановить/ возобновить передачу.

Управление потоком на программном уровне возможно лишь в том случае, если используется последовательный кабель. Так как управление потоком на программном уровне регулирует процесс передачи посредством пересылки некоторых символов, то может возникнуть сбой или даже окончание сеанса связи. Объясняется это тем, что тот или иной шум в линии может сгенерировать совершенно аналогичный сигнал.

Например, при управлении потоком на программном уровне, бинарные файлы не могут пересылаться, поскольку подобные файлы могут содержать управляющие символы.

Через управление потоком на аппаратном уровне RTS/CTS предана информации осуществляется намного быстрее и безопаснее, чем через управление потоком на программном уровне.

Буфер FIFO и микросхемы универсального асинхронного интерфейса UART

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

Например, операционная система Windows 98 поддерживает только микросхемы универсального асинхронного интерфейса (Universal Asynchronous Receiver Transmitter, UART) серии 16550 и позволяет управлять самим буфером FIFO. С помощью флажка Use FIFO buffers requres 16550 compatible UART (Использовать буферы FIFO) вы можете заблокировать (не позволять системе накапливать данные в емкости буфера) или разблокировать (дать возможность системе накапливать данные в емкости буфера) буфер FIFO. Нажав кнопку Advanced, вы обратитесь к диалогу Advanced Connection Settings (Дополнительные параметры соединения), опции которой позволяют настроить соединение вашего модема.

S-регистры

S-регистры находятся где-то внутри самого модема. Именно в этих самых регистрах хранятся установки, которые тем или иным образом могут влиять на поведение модема. В модеме присутствует масса регистров, но только первые 12 из них считаются стандартными регистрами. S-регистры устанавливаются таким образом, что посылают в модем команду ATSN=xx, где N соответствует номеру устанавливаемого регистра, а хх определяет сам регистр. Например, через регистр SO вы можете задать количество звонков для ответа.

Прерывания IRQ

Периферийные устройства связываются с процессором компьютера через так называемые прерывания IRQ. Прерывания являются сигналами, которые заставляют процессор приостановить ту или иную операцию и передать ее выполнение так называемому обработчику прерываний. Когда центральный процессор получает прерывание, он просто приостанавливает процесс и перепоручает прерванную задачу программе-посреднику с именем Interrupt Handler. Все это дело работает независимо от того, была ли обнаружена ошибка в работе того или иного процесса или нет.

Информационный порт связи или просто СОМ-порт

Последовательный порт узнать весьма просто. Вы можете это сделать, просто посмотрев на разъем. СОМ-порт использует 25-контактный разъем с двумя рядами контактов, один из которых длиннее других. При этом, практически все последовательные кабели имеют именно 25-контактные разъемы с обеих сторон (в остальных случаях требуется специальный адаптер).

СОМ-порт (последовательный порт) является портом, через который компьютеры связываются с устройствами, такими как модем и мышь. Стандартные персональные компьютеры имеют четыре последовательных порта.

Порты СОМ 1 и СОМ 2 обычно используются компьютером в качестве внешних портов. По умолчанию все четыре последовательных порта имеют два прерывания IRQ:

СОМ 1 привязан к IRQ 4 (3F8-3FF).

СОМ 2 привязан к IRQ 3 (2F8-2FF).

СОМ 3 привязан к IRQ 4 (3E8-3FF).

СОМ 4 привязан к IRQ 3 (2E8-2EF).

Тут-то как раз и могут возникать конфликты, так как внешние порты других устройств ввода-вывода 1/0 или контроллеров могут использовать те же прерывания IRQ.

Поэтому, назначив модему СОМ-порт или IRQ, вы должны проверить другие устройства на предмет наличия у них

тех же последовательных портов и прерываний.

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

Флэш-память вашего модема

Флэш-память - постоянная память или ППЗУ (постоянное перепрограммируемое запоминающее устройство), которая может быть стерта и вновь запрограммирована.

Перепрограммированию подлежат все модемы, в названии которых пристуствует строка "V. Everything". Кроме того, модемы "Courier V.34 dual standart" подлежат программной модернизации в случае, если в строке Options в ответе на команду ATI7 присутствует протокол V.FC. Если же в модеме нет этого протокола, то модернизация в "Courier V. Everything" производится заменой дочерней платы.

Существуют две модификации модемов Courier V. Everything - с так называемой частотой супервизора 20.16 MHz и 25 MHz. Для каждого из них существуют свои версии прошивок, и они не являются взаимозаменяемыми, т.е. прошивка от модели 20.16 MHz не подойдет для модели 25 MHz, и наоборот.

Программируемая пользователем память NVRAM

Все настройки модема сводятся к правильной установке значений регистров NVRAM. NVRAM - программируемая пользователем память, сохраняющая данные при выключении питания. NVRAM используется в модемах для хранения конфигурации по умолчанию, загружаемой в RAM при включении. Программирование NVRAM производится в любой терминальной программе с помощью АТ-команд. Полный перечень команд может быть получен из документации на модем, или получен в терминальной программе по командам АТ$ АТ&$ ATS$ AT%$. Запишите в NVRAM фабричные настройки с аппаратным контролем данных - команда AT&F1, затем внесите коррективы по настройке модема в совокупности с конкретной телефонной линией и запишите их в NVRAM по команде AT&W. Дальнейшую инициализацию модема нужно производить через команду ATZ.4.

Прикладное программное обеспечение для передачи данных

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

Если у вас появились проблемы, связанные с установкой связи с другими модемами

Для начала необходимо оценить характер линии связи. Для этого после удачного сеанса до переинициализации модема введите команды ATI6 - диагностика связи, ATI11 - статистика соединения, ATY16 - амплитудо-частотная характеристика. Полученные данные необходимо записать в файл. После анализа полученных данных необходимо произвести изменения текущей конфигурации и затем записать их в NVRAM по команде AT&W5.

Российские телефонные линии и импортные модемы

Выбор модемов сегодня достаточно велик, и разница в их стоимости весьма значительна. Скорость передачи более 28 800 бит/с на российских телефонных линиях обычно недостижима. Выше 16 900 бит/с можно получить лишь в том случае, если провайдер услуг Internet имеет линии на той АТС, к которой подключен ваш телефон. В других случаях, работа в Internet слишком утомительна, поскольку при типовой (и даже не всегда достижимой) скорости 9 600 бит/с она превращается в сплошное ожидание. Поэтому для устойчивой передачи данных при помехах в телефонной линии нужен высококлассный модем, который стоит не менее 400 долларов США.

Какой модем лучше - внутренний или внешний?

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

Каждая из конструкций имеет свои достоинства и недостатки. Внутренний модем занимает слот системной шины (а их, как правило, не хватает), следить за его работой трудно из-за отсутствия индикаторов, к тому же описываемые модели принципиально не пригодны для портативных компьютеров типа notebook, имеющих узкопрофильный корпус и в большинстве случаев не обладающих разъемами расширения. В то же время внутренний модем на несколько десятков долларов дешевле внешних аналогов, не занимает места на столе и не создает путаницу проводов. Использование же внешнего модема подразумевает, что в компьютере, к которому он подсоединен, установлены наиболее современные микросхемы управления последовательным портом (UART). Микросхемы UART появились еще в первых ПК, поскольку уже тогда стало ясно, что обмен данными через последовательный порт - слишком медленная и сложная операция и лучше поручить ее специальному контроллеру. С той поры выпущено несколько моделей UART. В компьютерах типа IBM PC и XT, а также в полностью совместимых с ними, использовалась микросхема 8250, в AT ее сменила UART 16450. Большинство компьютеров на базе процесоров i386 и i486 до последнего времени комплектовались контроллером 16550, в котором появились внутренние аппаратные буферы типа "очередь", а сегодня стандартом становится UART 16550A - микросхема, аналогичная предыдущей, но с устраненными недоработками. Отсутствие буферов во всех микросхемах, кроме последней, приводит к тому, что передача данных через последовательный порт на скорости выше 9600 бит в секунду становится неустойчивой (использование MS Windows снижает этот порог до 2400 бит/с).

Если необходимо подключить высокоскоростной внешний модем к компьютеру, использующему устаревшую микросхему UART, следует либо сменить мультикарту, либо добавить специальную карту расширения (что займет один слот шины и лишит внешний модем важнейшего преимущества). У внутренних модемов такая проблема не возникает - они СОМ-порт не используют (точнее, они его содержат). Сейчас у внутренних модемов появляется еще одно преимущество, также связанное со скоростью работы. Согласно спецификации V.42bis, данные при передаче могут быть сжаты примерно в четыре раза, следовательно модем, работающий на скорости 28800 бит/с, должен получать данные из компьютера или отправлять их в него со скоростью 115600 бит/с, что является пределом для последовательного порта ПК. Однако 28800 бит/с - не предел для телефонной линии, где максимум лежит где-то в районе 35000 бит/с, а на цифровых линиях (ISDN) пропускная способность превышает 60000 бит/с. Следовательно, в данной ситуации последовательный порт станет "узким горлом" всей системы, и потенциальные возможности внешнего модема не будут реализованы. Сейчас производители модемов разрабатывают модели, которые могли бы подключаться к более быстродействующему параллельному порту, однако очевидно, что устройства, проданные сейчас, к этому приспособить будет невозможно.

В то же время многие модемы можно модернизировать для работы на больших скоростях, вплоть до способности работать на ISDN. Но все упирается в ограничительный барьер со стороны компьютера, который для внутреннего модема существенно выше 4 Мбайт/с (пропускная способность шины ISA). Кстати, все ISDN-модемы внутренние. Правда, все это будет завтра (а может и послезавтра), а сегодня можно сказать одно: выбирайте устройство того типа, который нравится вам - никаких функциональных различий между внутренними модемами и их внешними аналогами нет.

Какой модем выбрать и как его выбрать

Модем не может быть уникальным. Ваш модем должен быть понят другими модемами. Это означает, что модем должен поддерживать максимальное количество стандартов, то есть исправление ошибок, методы обмена данными и их сжатие. Самый распространенный стандарт - V.32bis для модемов со скоростью обмена 14000 бит/с. Для модемов со скоростью работы 28800 бит/сек стандартизованным протоколом является V.34.

Кроме этого, необходимо подчеркнуть, что модемы, имеющие скорость обмена данными 16800, 19200, 21600 или 33600, не являются стандартными.

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

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

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

В России такой выбор весьма невелик. Этот рынок забили две компании: ZyXEL из солнечного Тайваня и U.S. Robotics из США. Модемы последней фирмы выбирают профессионалы (Courier), первой - все остальные, то есть все те юзеры, которые выбирают так называемый сверхнадежный протокол ZyCell.

Итак, выбирайте Courier. И, поверьте, это не реклама.

Модем (МОдулятор-ДЕМодулятор) - устройство преобразования последо­вательных цифровых сигналов в аналоговые и наоборот. Организации по стан­дартизации используют общепринятые аббревиатуры АПД (DCE) для обозна­чения модема и ООД (DTE) для обозначения ЭВМ, терминала или любого другого устройства, подключенного к модему. Модем имеет два интерфейса (рис. 2.31): интерфейс между DCE и аналого­вой линией; многопроводный цифровой интерфейс между DCE и DTE.

Двухточечный канал. Простейшей сетью с использованием модемов, яв­ляется двухточечный канал, в котором два модема соединены («точка-точ­ка») одной линией связи (рис. 2.32). Дискретный канал соединяет DTE с DTE. Линия соединяет DCE с DCE. Дискретный канал состоит из линии и двух модемов (DCE). При скорости передачи до 20 кбит/с используют интерфейс V.24/V.28 (RS-232C), осуществляемый с помощью 25- или 9-контактного гнез­дового разъема. При скоростях передачи от 48 до 168 кбит/с необходимы широкополосные модемы, работающие с интерфейсом V.35. При скоростях до 20 кбит/с может быть использована любая из следующих аналоговых теле­фонных линий связи:

4-проводная 2-точечная выделенная линия; 4-проводная многоточечная выделенная линия; 2-проводная 2-точечная выделенная линия; 2-проводная 2-точечная коммутируемая линия (связь путем набора номе­ра через КТСОП); 4-проводная 2-точечная коммутируемая линия, организуемая путем ком­мутации двух отдельных двухпроводных соединений через КТСОП. Стандарты телефонных каналов как производные от стандартного канала КТСОП тональной частоты (ТЧ) представлены в табл. 2.10.

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

Любой модем, работающий с 4-проводной 2-точечной линией, использует одну пару для передачи, а вторую для приема и, следовательно, может работать в дуплексном режиме. Модемы, работающие с 4-проводной многоточечной линией работают только в полудуплексном ре­жиме. Модемы, имеющие только синхронный режим, работают на 4-провод­ной 2-точечной некоммутируемой линии, либо через КТСОП, при этом одно коммутируемое соединение обеспечивает полудуплексный режим, а двойное коммутируемое соединение - дуплексный режим. Асинхронно-синхронные модемы работают на 2-проводных линиях (либо выделенных, либо коммутируемых), и все они могут работать в дуплексном режиме.Совместимость модемов. Передачу данных по телефонным сетям опи­сывают рекомендации серии V Международного телекоммуникационного со­юза (Сектор технических стандартов) - ITU-T. Проверкой совместимости яв­ляется проверка номера серии V, указанного фирмой-изготовителем в спецификациях модема. Классификация рекомендаций серии V приведена на рис. 2.33.


Модем может работать в двух режимах: командном и передачи данных. Командный режим модема, как правило, устанавливается: при включении питания; при первоначальной инициализации модема; после неудачной попытки соединения с удаленным модемом; при прерывании с клавиатуры нажатием комбинации клавиш «положить труб­ку» (чаще всего); при выходе из режима передачи данных через ESCAPE-последовательностъ. В командном режиме весь поток данных, поступающий в модем через ин­терфейс V.24/V.28, воспринимается им как команда. Режим передачи данных (on-line) устанавливается после посылки модемом сообщения CONNECT в случаях: при удавшейся попытке установления связи с удаленным модемом; при выполнении модемом самотестирования. В режиме передачи данных поток данных, поступающий в модем из DTE транслируется с преобразованием в линию, а поток данных из линии трансли­руется с обратным преобразованием в интерфейс с DTE. Функциональные режимы модема. Модем всегда находится в одном из двух функциональных режимах (за исключением периодов, когда он переходит из одного режима в другой): командном (локальном) и в режиме асинхронного соединения (ON LINE). Схема переходов модема представлена на рис. 2.34. При включении питания модем инициализирует свои параметры в соответствии с конфигурацией, записанной в энергонезависимой памяти, и переходит в асин­хронный командный режим. Только в этом режиме модем воспринимает АТ- команды. По Z-команде модем восстанавливает свою рабочую конфигурацию


из энергонезависимой памяти и возвращается в командный режим, «^-коман­да восстанавливает конфигурацию по профайлу фирмы-изготовителя (установ­ка по умолчанию) и возвращается в командный режим. Модем «поднимает трубку» в режиме автоответа: а) при поступлении А-команды; б) автоматически при S1 = SO, когда счетчик поступивших звонков (вызо­вов) становится равным числу, установленному для ответа; в) при поступлении команды набора номера, когда строка вызова заканчи­вается R. Функции цепей обмена 103, 104, 109 V.24. Рассмотрим функции цепей обмена, связанные с передачей и приемом данных: 103 (2) TxD (передаваемые данные) к DCE; 104 (3) RxD (принимаемые данные) к DTE; 109 (8) CD (детектор принимаемого линейного сигнала) к DTE. Входной поток последовательных данных, поступающих в модем через цепь 103, преобразуется модулятором в модулированный аналоговый сигнал для вывода его в линию (рис. 2.35). На другом конце линии демодулятор удаленно­го модема принимает модулированный линейный сигнал и преобразует его в поток последовательных данных для вывода через цепь приема данных 104.


При обнаружении модулированной несущей частоты демодулятором цепь 109 переходит из состояния ВЫКЛ в состояние ВКЛ. При этом между моментом обнаружения несущей и моментом изменения состояния цепи обмена 109 вно­сится задержка, известная как задержка «включения» обнаружения несущей. Существует также задержка «выключения» обнаружения несущей, возникаю­щая при выключении несущей на другом конце линии. Цепь 109 во внутренней схеме модема необходима для фиксации цепи обмена приема данных 104 (дан­ные принимаются только при включенном состоянии цепи 109). Задержка вклю­чения сигнала CD и фиксация цепи приема данных обеспечивают защиту от кратковременных выбросов линейных шумов, имитирующих ложные сигналы в цепи приема данных 104.

Как работают модемы

Первая часть из цикла "Как работают модемы"

Так уж сложилось исторически, что есть очень много книг на русском языке про то, как пользоваться Windows, как работать с Internet, но, к сожалению, практически нет никакой литературы, которая достаточно полно с одной стороны, и понятно для неспециалиста — с другой, описывала бы работу таких непростых, но широко распространенных устройств, как модемы. Несмотря на то, что большинство пользователей компьютеров имеют представление о том, что такое Интернет, и либо время от времени, либо ежедневно пользуются им, мало кто задумывался о том, что модем, как основное некорпоративное средство доступа в Интернет на сегодня, едва ли не самое слабое звено в цепочке, по которой информация попадает на дисплей пользователя! Как-то само собой подразумевается, что купил в магазине модем, подключил к компьютеру и телефону, и все, больше не о чем беспокоиться. В этом цикле статей будет сделана попытка наглядно показать, сколь далеко это представление от действительности, и будут даны практические советы, как можно улучшить ситуацию. Материал рассчитан на того, кого называют Advanced user, то есть интересующегося далее простого нажимания на кнопки пользователя, но — пользователя, а не специалиста в цифровой обработке сигналов. Многие принципы и особенности работы модемов будут сознательно упрощены так, чтобы не отнимать лишнего времени у тех, кому важно решить главный вопрос — улучшить качество работы через телефонную сеть, понимая, что именно там происходит. Не в качестве саморекламы, но лишь с целью расстановки точек над "i" отметим, что сами авторы этих статей как раз являются самыми что ни на есть профессионалами в этой области, несколько лет занимающиеся конкретно адаптацией модемов под Российские телефонные линии, и написавшие свои реализации многих популярных протоколов связи, таких как V.34 и прочих V.xx.

часть первая: что такое модем, и как он работает.

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

Модем представляет собой устройство, имеющее, с внешней точки зрения, цифровой интерфейс c компьютером (обычно последовательный порт RS-232) и аналоговый интерфейс с каналом связи (телефонной линией) — разъем для телефонного кабеля (RJ-11). "Внутри" модем представляет собой микрокомпьютер с достаточно мощным процессором (иногда несколькими), постоянной и оперативной памятью, и аналоговой частью, ответственной за сопряжение модема с телефонной сетью — устройство набора номера, усилитель, АЦП и ЦАП — Аналого-Цифровой и Цифро-Аналоговый Преобразователи, ответственные за преобразование сигнала из аналоговой формы (непрерывный сигнал-напряжение) в цифровую (отдельные отсчеты сигнала, дискретизованные по времени и квантованные по напряжению), и наоборот, соответственно. Практически все современные модемы производят обработку информации в цифровой форме, без сколь-либо сложной аналоговой предобработки, так как это позволяет добиться высокой стабильности и в значительной степени упростить разработку и анализ алгоритмов. При этом обычно частота дискретизации (скорость следования отдельных отсчетов оцифрованного сигнала) находится в пределах 7-12 тысяч отсчетов в секунду (килоГерц, kHz). Теоретически, частота дискретизации должна быть как минимум в два раза выше максимальной частоты сигнала, для того, чтобы сигнал был представим отдельными отсчетами без потерь. Количество уровней квантования для ЦАП и АЦП современных модемов достигает десятков тысяч. Обычно, поскольку с "цифровой стороны" ЦАП и АЦП пишутся или читаются в виде числа, говорят о количестве разрядов у ЦАП/АЦП, т.е., количестве разрядов двоичного числа, требуемого для представления всех возможных уровней, например, 16-разрядный АЦП может распознавать 65536 уровней, обозначаемых числами от -32768 до +32767.

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

Рассмотрим подробнее, как же модем кодирует сигнал и как помехи этому мешают. Наиболее популярные ныне протоколы передачи данных - V.34 и V.32 — используют амплитудно-фазовую модуляцию сигнала. Базовый сигнал — несущая синусоида определенной протоколом частоты при передаче модулируется, т.е. подвергаются изменению ее амплитуда, то есть уровень, и фаза (сдвиг фазы сигнала относительно немодулированной "исходной" синусоиды). При этом состояния сигнала, характеризующиеся неизменной амплитудой и фазой, последовательно сменяют друг друга. Каждое такое состояние кодирует небольшое количество битов данных и называется одним символом (не путать с буквами и цифрами). Скорость, с которой символы сменяют друг друга, называется символьной скоростью (Symbol rate в статистике модема). Она определяется протоколом, для V.32 она всегда равна 2400 символов в секунду, для V.34 может достигать 3429 символов в секунду. Таким образом, у нас уже два параметра — символьная скорость и частота несущей.

Когда один символ сменяется другим, происходит изменение (увеличение или уменьшение) амплитуды и сдвиг фазы ("вперед" или "назад") сигнала. Мгновенно ни амплитуда, ни фаза измениться не могут — это потребовало бы бесконечной скорости изменения сигнала (напряжения и тока) в канале, т.е. неограниченной полосы пропускания канала. Обычно же требуется передать максимум информации, заняв отведенный диапазон частот. Минимальный диапазон частот, требующийся для передачи сигнала, в котором фаза меняется максимально быстро (худший случай с точки зрения занятия полосы частот) вперед или назад, то есть, на половину периода несущей за один символьный интервал, в точности равен символьной скорости в Гц. Например, если фаза сигнала должна сдвигаться вперед на половину периода несущей за время передачи одного символа, частота сигнала в ходе этого перехода как минимум должна достигать ((исходной частоты несущей) + (символьная скорость)/2). В противном случае будет накапливаться "отставание" фазы сигнала от требуемой.

Для того, чтобы "вписать" сигнал в этот минимально необходимый диапазон частот, переходы между символами сглаживаются с тем, чтобы скорость изменения сигнала (и его частота, соответственно) не превышала это ограничение. Например, если требуется существенный сдвиг фазы "вперед", этот сдвиг происходит не мгновенно, а постепенно. В течение этого переходного периода частота сигнала в канале будет выше исходной частоты несущей (слышимый тон — выше), поскольку для сдвига фазы вперед требуется более быстрое изменение сигнала. И наоборот, для сдвига фазы назад требуется замедление изменения сигнала, и слышимый ухом тон — ниже. А поскольку такие переходы происходят часто (с символьной скоростью, т.е., более 2000 раз в секунду), и требуемые величины изменения фазы сигнала достаточно случайны, в результате, когда модем передает данные, мы слышим не ровный тон, или последовательность тонов, а "шипение", т.е., в среднем все частоты в рабочей полосе используются одинаково часто. Если рассмотреть спектр сигнала за длительный период времени, он будет равномерным, с центром, совпадающим с частотой исходной несущей, простирающимся в ширину симметрично влево и вправо от центральной частоты несущей на полосы частот, равные половине символьной скорости.

Таким образом, для рассматриваемых протоколов ширина спектра сигнала равна символьной скорости.

Остановимся пока на этом, и посмотрим, что же предоставляет нам телефонная линия. А предоставляет она нам обязательство пропускать наши сигналы до удаленного абонента в полосе частот от 300 до 3400 герц, и, будем надеяться, без искажений. Очевидно, что модем должен выбрать такую несущую и такую символьную скорость, чтобы несущая поместилась ровно посередине между 300 и 3400, а символьная скорость была в точности равна 3400-300. Это — необходимое и достаточное условие для того, чтобы спектр сигнала модема ровно занял весь предоставляемый канал. Если он займет меньше, значит часть канала будет неиспользована, и модем сможет передать меньше информации, чем мог бы. Если он займет больше, то часть спектра будет обрезана и удаленный модем его не получит, а, стало быть, не получит и части передаваемой информации. Вообще, есть теоретический предел пропускной способности канала, который нельзя превысить никакими силами. Сколько бы мы ни старались, и как бы мы ни приспосабливали форму нашего сигнала к параметрам линии, мы не сможем передать информации больше этого теоретического предела. Таким образом, главная задача модема — так приспособиться к каналу, чтобы передать через него все, что канал может пропустить.

Продолжим теперь про модуляцию. К паре параметров сигнала — центральной частоте и ширине спектра (т.е. частоте несущей и символьной скорости) нам надо знать про третий определяющий параметр — назовем его глубиной модуляции. Хотя это не до конца правильный термин в данном применении, но сильно похож. Он говорит о том, сколько разных состояний может быть у передаваемого сигнала. Вспомним, что модем передает один символ (не букву!), какое-то время. А затем — другой символ. Символы отличаются друг от друга. Так сколько же всего может быть разных символов? Это зависит, главным образом, от того, сколько разных амплитуд и фаз мы можем передать в канал так, чтобы с противоположной стороны их еще не путали друг с другом. Иными словами, сколько градаций по амплитуде и фазе мы можем выбрать так, чтобы с той стороны они еще однозначно отличались. Как несложно посчитать, например 16 градаций по амплитуде и 16 по фазе дают 16*16=256 различных состояний сигнала, с помощью которых можно закодировать 8 битов информации. В этом случае при символьной скорости, например, в 1000 символов в секунду мы получим скорость передачи информации ровно 8000 битов в секунду. Если глубина модуляции меньше, то есть число состояний сигнала всего 32, к примеру, то мы получим 5 бит за символ, то есть 5 килобит в секунду. Если символьная скорость возрастет до 2000, это будет уже 10 килобит в секунду.

На протоколе V.32 каждый символ соответствует группе бит. При этом эта группа, очевидно, состоит из целого числа бит — от 2 до 6. А поскольку символьная скорость равняется 2400 символов в секунду, добавление очередного бита в группу (и увеличение количества используемых символов в два раза, соответственно), приводит к увеличению битовой скорости на 2400бит/с. Именно поэтому поддерживаемые V.32 скорости — от 4800 до 14400 бит/с с шагом в 2400. Протокол V.34 кодирует символы не по одному, а группами по 8 (так называемыми "кадрами отображения", mapping frames). При этом каждая группа имеет некоторые параметры (амплитудную огибающую), общие для всех 8 символов. За счет этого на один символ может приходиться "дробное" количество бит. Однако из соображений совместимости, список поддерживаемых битовых скоростей и на V.34 состоит из скоростей, кратных 2400, даже если символьная скорость выбрана не 2400, а большая. Например, известная Вам скорость 33600 бит/сек получается при передаче 79 бит на группу из 8 символов на символьной скорости 3429.

А теперь опять посмотрим на то, что нам предоставляет линия. С точки зрения увеличения числа состояний сигнала, она предоставляет нам параметр, именуемый динамическим диапазоном. То есть разницу между самым громким и самым тихим сигналом, который линия еще может пропустить без искажений. Сверху это обычно ограничивается перегрузочной способностью канала, а снизу — уровнем шумов канала. Иначе это еще называют соотношением сигнал/шум (SNR), то есть во сколько раз сигнал на приемной стороне громче шума, к нему примешиваемого. При этом помнят о том, что увеличение громкости сигнала сверх предела, допускаемого линией, невозможно.

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

Теперь краткое резюме всего изложенного.

  1. Параметры канала (линии), предоставляемого нам, характеризуются центром и шириной полосы пропускания (в норме — 300-3400 герц), уровнем шумов и искажений, и максимальным уровнем сигнала, еще пропускаемого без заметных искажений. Сигнал/шум — это характеристика того, как сигнал прошел через канал, и что получилось на приемном конце.
  2. Параметры сигнала модема характеризуются центром и шириной спектра (частота несущей плюс и минус половина символьной скорости), и глубиной модуляции, то есть числом возможных градаций состояний сигнала.
  3. Параметры канала ограничивают в принципе скорость передачи информации с одной стороны, а модем работает тем лучше и тем быстрее ее передает, чем полнее он занимает канал, и чем ближе параметры генерируемого им сигнала совпадают с возможностями, предоставляемыми каналом.
  4. Кроме предыдущего пункта, важное значение имеют помехи: при прочих равных условиях, они вынуждают модем делать передаваемые символы более грубыми, и передавать их более длительное время, то есть снижать в результате скорость передачи информации.
  5. Запомните на будущее две простые формулы: 1. Символьная скорость умноженная на глубину модуляции есть битовая скорость. 2. Ширина канала, потребная для передачи сигнала, равна символьной скорости, при этом центр полосы пропускания канала равен частоте несущей.

Часть вторая — что такое телефонная линия, и как она мешает нам жить.

Телефонная линия представляет собой пару проводов, которые идут от Вас на АТС, некоторое оборудование на АТС, называемое абонентским комплектом, затем межстанционное оборудование, которое передает сигнал на удаленную АТС, там имеется удаленный абонентский комплект, от которого идет пара проводов до провайдера(к примеру). Таким образом, первая интересная нам особенность состоит в том, что телефонная линия — это не просто два провода, которые у Вас на столе начались, а у провайдера — закончились. К сожалению, все намного сложнее и капризнее. Что же предоставляет Вам АТС при помощи всей этой цепочки? Идеально — некий канал для передачи аналоговой информации, то есть — голоса, с некими нормированными параметрами, такими как затухание сигнала, полоса пропускания, уровень шумов, динамический диапазон и т.п., то, что в сумме своей отличает хорошую линию от плохой. В реальной же жизни, кроме всего упомянутого по ГОСТу, как правило, Вам "предоставляются" в нагрузку еще одно или несколько из:

  1. Чрезмерное ослабление сигнала (слышно тихо).
  2. Импульсные помехи (трески, щелчки, резкие изменения громкости и т.п.)
  3. Постоянные помехи (фон, разговор соседей, музыка от радио, гудение)
  4. Перекос АЧХ (глухой звук, плохая разборчивость)
  5. Нелинейные искажения (дребезжащий голос)
  6. Дрожание фазы и амплитуды (как пленка проскакивает на магнитофоне)
  7. Смещение спектра сигнала (не слышно ухом)
  8. Медленное уплывание параметров линии (не слышно ухом)

К чему все это приводит? Если кратко, то к очень простой вещи: модем кодирует каждый байт информации определенным состоянием сигнала, который он передает на другую сторону. Удаленный модем смотрит на линию, определяет форму, фазу, амплитуду и т.п. сигнала, и декодирует это опять в байты информации. Если линия вносит искажения, то состояния сигнала становятся плохо различимыми на удаленной стороне, или, хуже того, начинают путаться друг с другом, и удаленный модем неправильно декодирует информацию, получая неверный результат.

А откуда это все берется? Оттуда же, откуда и разбитые дороги. И исчезнет тогда же. Причем, как правило, основные проблемы вносят либо соединительные провода до Вас, либо межстанционная аппаратура. Первое обычно трещит, а второе — искажает и ослабляет. Мы рассмотрим далее, как можно бороться и с тем, и с другим.

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

Вторым врагом в Вашем доме являются телефоны, подключенные не после модема, для чего у него сделано второе гнездо, а параллельно модему. То, что на телефоне повешена трубка, ничего не меняет: он же в состоянии воспринимать звонок и звенеть, а, стало быть, подключен к телефонной линии и искажает сигнал на ней. Особенно плохо с советскими АОНами, которые не только портят сигнал пассивно, но в придачу еще и активно подмешивают в линию фон от сети, шумы от низкокачественной собственной электроники и т.п. Вообще, гениальное, как все простое, правило: приходящий к Вам сигнал нельзя улучшить, подключая к линии что-либо, его можно либо ухудшить, либо, в лучшем случае, не ухудшить. Уж что пришло - то Ваше, но больше Вы из линии не добудете, что к ней ни подключайте. Можно либо сохранить то, что пришло, и отдать это на обработку модему, либо сначала испортить. Всякие поделки из серии "улучшатель приема факсов" не выдерживают никакой критики, и могут пригодиться лишь для самых дешевых факсов и модемов, поскольку в любом серьезном модеме электроники на входе стоит на порядок больше, чем в этих поделках, и ничего нового они туда добавить не могут. Если их авторы рекламируют улучшение параметров сигнала, например сигнал/шума, то, следуя логике, если поставить их подряд штук 100, то можно так его улучшить, что модемы начнут работать быстрее локальной сети! Мы оставим за пределами нашего цикла рассмотрение идей с вечными двигателями и прочими внешними улучшателями сигнал/шумов.

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

Часть третья — почему модемы стоят по-разному.

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

  1. Насколько дорогая аппаратура стоит в его аналоговой части, то есть насколько качественно он может принять тот сигнал, который пришел к Вам по проводам от удаленного модема, без потерь и искажений. Очевидно, что если сигнал пришел очень тихим, то модем должен быть весьма чувствительным и иметь очень низкий уровень собственных шумов, чтобы не испортить то, что пришло перед обработкой его процессором. Какими бы задумчивыми ни были алгоритмы обработки сигнала далее, но если во входной части модема стоит маленький трансформатор, малоразрядный АЦП или дешевая схема набора номера и удержания снятой трубки, пришедший сигнал будет зашумлен и искажен, то есть — безвозвратно испорчен, еще до начала его обработки процессором модема. В конечном итоге, важно соотношение сигнал/шум не на проводе, который входит в Вашу комнату, а уже в цифровом потоке, поступающем на вход процессора модема. Кто это соотношение испортил — межстанционные соединения, провода до Вас, Ваш любимый телефон с АОН, стоящий параллельно, или дешевый АЦП на модеме — не важно. Важно, что то, что поступает на обработку процессору модема, уже будет иметь потери информации, возникшие из-за всех этих воздействий.
  2. Насколько сложные и ресурсоемкие алгоритмы цифровой обработки сигнала используются. Допустим, на вход процессора модема поступил (о чудо!) сигнал совсем не искаженный у Вас в комнате, такой, какой пришел к Вам в комнату. Кроме безвозвратных потерь информации, то есть снижения сигнал/шум, есть еще искажения информации, которые еще можно восстановить. Например, перекос АЧХ дает эффект снижения уровня верхних частот в сигнале, и это в некотором объеме можно восстановить путем правильного фильтрования сигнала. Другой способ восстановления потерянной информации — использование избыточности, заложенной в протокол передачи данных, для коррекции ошибок. Одно из важнейших и самое ресурсоемкое устройство в модеме — треллис-декодер, который позволяет оценивать не символы по отдельности, а набор символов как единое целое, компенсируя недостоверность единичного символа за счет того, что последовательные символы связаны друг с другом (но не все последовательности символов разрешены). Чем качественнее (соответственно, скорее всего дороже) модем, тем больше этих и дополнительных циклов обработки сигнала он проводит. Тем более искаженный сигнал еще может быть правильно обработан, и тем более резкие помехи еще не вызовут срыва синхронизации.
  3. Насколько адекватно поведение модема в сложной помеховой обстановке.

Часть модема, называемая супервизором, может только понижать скорость передачи при увеличении помех на линии, а может гораздо более детально отслеживать все, что происходит, и так варьировать параметры модуляции сигнала, чтобы в минимальной степени снижать скорость передачи, наиболее точно подстраиваясь под особенности данной телефонной линии. Как бы хорошо ни работала аналоговая часть модема и алгоритмы цифровой обработки, но если параметры модуляции будут выбраны неадекватно, или же модем будет плохо отслеживать изменение состояния линии и не вовремя их изменять, то о близкой к теоретически-максимальной скорости передачи информации можно смело забыть. Причем, если первые два пункта можно строить по принципу "сколько есть денег, на столько и припаяем/напишем", то адекватность поведения модема на линии измеряется не только объемом затраченных на разработку или заплаченных клиентом денег, поскольку ведь ни модем, ни его разработчики никогда не знают точно, что произойдет на линии через пять секунд, и не могут выбрать единственно верное поведение в данный момент. Поэтому задача определения поведения модема на линии решается в первую очередь на основании знаний особенностей телефонии в данном конкретном месте, и написании тысячи алгоритмов и алгоритмиков, которые пытаются распознать типичные проблемные ситуации и выбрать адекватное решение. Надо ли говорить, что ни одна, даже самая ведущая западная фирма никогда не сможет сделать ничего похожего, поскольку не знает (а как правило — и не желает знать) всего того, чем отечественная телефония отличается от нормальной. В отличие от автомобиля, где большие колеса и крепкая подвеска решают проблемы плохих дорог, модем должен именно подстраиваться под линию, в нем нельзя просто поставить передатчик на два киловатта и приемник на полмикровольта, чтобы справиться с нашими плохими линиями.

Как модем борется с проблемами на линии.

1. Чрезмерное ослабление сигнала (слышно тихо).

Для того, чтобы основные подсистемы модема работали хорошо, необходимо, чтобы сигнал на их входе был в области допустимых значений, т.е. не переполнял разрядную сетку и не был слишком мал.

Для нормирования мощности сигнала на входе, практически все модемы имеют систему АРУ (Автоматическую Регулировку Усиления), призванную приводить мощность сигнала к требуемому последующими системами модема уровню. Базовая идея системы достаточно проста — необходимо периодически измерять мощность сигнала на входе и так подстраивать коэффициент усиления (множитель, на который умножается входной сигнал в простейшем случае), чтобы после этого коэффициента мощность сигнала соответствовала ожидаемой. Т.е. происходит ослабление или усиление входного сигнала.

Очевиден тот факт, что при усилении тихого сигнала вместе с полезным сигналом во столько же раз усиливаются и шумы, т.е., соотношение сигнал/шум улучшено быть не может в любом случае. А вот ухудшено может быть легко. Например, если АРУ выполнено исключительно в цифровой части модема (после АЦП), и АЦП имеет небольшое количество разрядов, возможно, что подавляющая часть разрядов АЦП будет использоваться только при работе с очень громкими сигналами, а на обычной телефонной линии реально "работать" будут немного разрядов, например, как будто использован не 16-разрядный АЦП, а 3-разрядный. Небольшое количество разрядов (и, соответственно, распознаваемых уровней напряжения для АЦП) может привести к тому, что цифровой сигнал будет неточно соответствовать аналоговому сигналу на входе модема. При этом неизбежно ухудшение связи. Эффект очень похож на добавление шума в линию, с мгновенными значениями равными половине разницы между соседними уровнями квантования — недаром такие шумы называются "шумами квантования". Для уменьшения шумов квантования АЦП должен иметь достаточно высокое разрешение (количество разрядов) для того, чтобы обеспечивать требуемую точность во всем диапазоне входных сигналов (с учетом работы внутреннего АРУ). Иногда в "продвинутых" модемах в аналоговую часть встраиваются системы управления усилением входного сигнала еще до АЦП (для увеличения количества разрядов АЦП, реально используемых при работе модема).

2. Эхо ("заворот" собственного сигнала назад или отражения от дальних объектов).

Практически все скоростные протоколы передачи данных, предназначенные по телефонной сети, используют один и тот же диапазон частот и для передачи и для приема (напомним, что современные протоколы, такие как V.32 и V.34, являются дуплексными, т.е., передача ведется одновременно в двух направлениях). Несмотря на то, что два сигнала в одном диапазоне, казалось бы, должны мешать друг другу, этого не происходит. Дело в том, что при правильном согласовании сопротивления модема, телефонного кабеля и станционного оборудования, модем не должен слышать сигнала, который сам передает. Между АТС, как правило, используется каналообразующая аппаратура, в которой прием и передача вообще разделены. И если удаленный модем, кабель от него до абонентского комплекта и сам абонентский комплект также правильно согласованы, то передатчик нашего локального модема в принципе не должен мешать работать его приемнику. На практике, к сожалению, все не так просто. Из-за рассогласованности сопротивлений аппаратуры и кабелей, "заворот" сигнала передатчика на свой же приемник может во много раз превышать сигнал удаленного модема, особенно, если он сильно ослаблен из-за плохого состояния кабелей или разрегулированности аппаратуры АТС. Кроме того, возможно возвращение задержанного по времени "эха" сигнала, возникающего по той же причине, с противоположного конца. Возможно даже наличие нескольких "эхо", возникающих благодаря некачественным стыкам кабелей, участкам переприема, и т.п. К счастью, большинство причин возникновения "эхо" стационарны (не изменяются или медленно меняются во времени), и могут быть описаны линейной моделью канала. Это делает возможным для модемов оценить вид "эхо" на этапе установления соединения (или после установления соединения соединения в ходе "ретрейна"), построить модель канала, и в дальнейшем, зная, какой сигнал передается, рассчитывать ожидаемое "эхо" и вычитать его из принимаемого сигнала, делая возможным распознавание сигнала удаленного модема даже на фоне достаточно громкого "заворота" собственного сигнала.

Задачей оценки и подавления эхо собственного сигнала занимается подсистема под названием "эхогаситель" ("echo-canceller"). Как и большинство задач в обработке сигналов, эта задача может решаться более или менее успешно. Как правило, эхогаситель моделирует образование эхо в канале, используя линейный фильтр с конечным размером временного отклика, размер которого определяется количеством коэффициентов фильтра. Если этот размер недостаточен для того, чтобы адекватно "покрыть" эхо, часть эхо-сигнала останется непогашенной, и, соответственно, прибавится на последующих стадиях обработки к остальным шумам. Если по тем или иным причинам модель канала рассчитана не точно (шумы помешали правильно настроить фильтр, разрядности коэффициентов фильтра не хватило, алгоритм настройки был выбран неудачно), ошибка в оценке эхо также прибавится к шумам в дальнейшем. Кроме того, если эхо имеет нелинейную природу и не может быть описано применяемой моделью, также погасить его не удастся. К счастью, последнее бывает достаточно редко.

В худшем случае, если остаточная ошибка будет настолько велика, что не позволит нормально детектировать сигнал удаленного модема, связь установить не удастся.

3. Перекос АЧХ (глухой звук, плохая разборчивость)

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

Этой задачей обычно занимается "эквалайзер" модема, выполняющий функции, сходные с функциями эквалайзера бытовой аудиоаппаратуры, с той лишь разницей, что обычно количество параметров его гораздо больше, настраивается он автоматически на этапе установления соединения или "ретрейна", и качество его настройки может быть охарактеризовано количественно — тем, насколько близок сигнал на его выходе к желаемому. Как правило, эквалайзер выполняется в виде линейного адаптивного фильтра, т.е. исходят из линейной модели канала, что обычно очень близко к реальности. Также, как и в случае с эхогасителем, все, что не смог компенсировать эквалайзер, становится дополнительными шумами, мешающими работать последующим подсистемам модема.

Компенсация искажений на приемной стороне эквалайзером имеет свою оборотную сторону. Если мы поднимаем частоты, сильно ослабленные каналом, происходит также усиление шумов на этих частотах. Для сохранения соотношения сигнал-шум в современных протоколах (например, V.34) применяют предыскажение сигнала на передающей стороне, например, подъем верхних частот (продолжая аналогию с бытовой аудиоаппаратурой, можно заметить, что популярная в свое время в бытовой аналоговой звукозаписи система шумоподавления "Dolby B" идет тем же путем — при записи на магнитофон высокие частоты искусственно усиливаются, при воспроизведении — ослабляются, в результате высокочастотные шумы магнитофона меньше слышны при воспроизведении). В протоколе V.34 предусмотрено два вида предыскажений сигнала при передаче: "pre-emphasis" и "non-linear precoding". Первое есть ни что иное, как использование одного из нескольких предусмотренных стандартом фиксированных фильтров, в большей или меньшей степени поднимающих верхнюю часть спектра сигнала при передаче. Второй вид предыскажений ("нелинейный прекодер") использует настраиваемые коэффициенты, определяемые принимающим модемом при установлении соединения с тем, чтобы внести в сигнал предыскажения, по возможности точно компенсирующие искажения, вносимые каналом связи. Фактически, это "кусочек" эквалайзера принимающего модема, перенесенный на передающую сторону. Слово "нелинейный" объясняется тем, что при внесении предыскажений прекодер может "скачкообразно" заменить передаваемые символы с целью гарантирования стабильности фильтра прекодера (поскольку последний имеет обратную связь).

Не следует путать "нелинейный прекодер" с еще одной "нелинейной" штукой — "нелинейным кодированием созвездия", которое некоторые модемы называют "warping". Последнее есть нелинейное (точнее, близкое к логарифмическому) отображение передаваемых символов, при котором символы, имеющие большую амплитуду, оказываются на большем расстоянии друг от друга, а имеющие относительно небольшую амплитуду — оказываются расположенными более плотно. Возможность такого кодирования предусмотрена на таких протоколах, как V.34, а также V32Terbo. "Нелинейное кодирование созвездия" производится для того, чтобы расстояния между символами примерно соответствовали уровням квантования телефонного сигнала, передаваемого через цифровую каналообразующую аппаратуру, получившую большое распространение во всем мире. Цифровые телефонные системы передают звук в цифровом виде, в аналоговую форму он преобразуется только на "концах" канала, где происходит сопряжение с аналоговой аппаратурой и собственно абонентской линией с использованием ЦАП и АЦП (почти как в модеме). А поскольку эти системы изначально разрабатывались и используются в первую очередь для передачи человеческого голоса, их АЦП и ЦАП обычно используют такую сетку квантования уровней напряжения в линии, в которой чем больше напряжение — тем дальше друг от друга располагаются уровни квантования. Такая "логарифмическая" шкала примерно соответствует чувствительности человеческого уха, что позволяет при использовании относительно небольшого количества уровней закодировать звук, сохраняя субъективное его качество.

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

4. Постоянные помехи (фон, гудение, разговор соседей, музыка от радио)

Помехи (шум, посторонние звуки) в канале складываются с сигналом передающего модема, в результате принимаемые на противоположной стороне символы отличаются от того, что должно было бы быть получено. И, если искажения АЧХ канала модем может оценить и компенсировать, то случайные воздействия на сигнал из-за помех предсказать и учесть невозможно в принципе. Если помехи имеют локализованный частотный спектр, т.е., не совсем случайны — например, помехи в области нижних частот из-за "помех питания" — 50Гц и их гармоники, или высокочастотные шумы с верхней стороны спектра, то модем может попытаться выбрать для работы такую полосу частот, которая не перекрывается со спектром шумов. Например, протокол V.34 для этого имеет возможность некоторого варьирования ширины используемой для работы полосы частот (выбором одной из 6 символьных скоростей) и перемещения ее "вверх" или "вниз" по спектру путем выбора одной из двух несущих. Возможность использования той или иной полосы частот для работы выбирается на этапе установления соединения или "ретрейна", по результатам тестирования линии. Другие стандартные протоколы не имеют и таких возможностей. К сожалению, для обеспечения высокой скорости передачи требуется широкая полоса сигнала, поэтому, если шумы не локализованы в нижней или верхней части спектра, скорее всего, их полоса перекроется с полосой, используемой для передачи данных, даже если шум узкополосный. Иногда это приводит к полной невозможности использования скоростного протокола, типа V.34 или V.32. В таких случая, возможно, удастся передать данные с использованием низкоскоростных протоколов (например, V.22/V.22bis), обеспечивающих передачу со скоростями 1200 или 2400бит/с, или даже V.21 (300бит/c).

Если шумы находятся в той же полосе частот, что и полезный сигнал, разделить их невозможно и они неизбежно приведут к искажению символов при приеме. Тем не менее, если шумы не очень велики, возможно, что путем уменьшения "глубины модуляции" т.е. увеличения расстояния между символами за счет уменьшения количества используемых символов удастся добиться того, что искажения будут меньше расстояний между символами, и последние будут детектироваться правильно. При этом, конечно, снизится скорость передачи данных, поскольку для кодирования данных будет использоваться меньшее количество символов. До появления V.34 (например, на протоколе V.32), изменение скорости передачи (глубины модуляции) было единственным "рычагом", позволяющим учесть особенности линии и найти компромисс между устойчивостью работы и скоростью передачи. Собственно, и на V.34 нахождение этого компромисса остается одним из главнейших условий качественной работы модема. Задача усложняется тем, что шумы зачастую пропадают и появляются вновь, изменяются по своей мощности, а модем должен это отслеживать и в идеале в каждый момент времени обеспечивать оптимальный баланс устойчивости связи и скорости передачи данных.

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

5. Импульсные помехи (трески, щелчки, резкие изменения громкости и т.п.)

Зачастую помехи носят импульсный характер, т.е. имеют вид очень кратковременных выбросов сигнала, тресков. Специфика таких помех заключается в их обычно большой амплитуде (больше среднего уровня шумов канала) и малой продолжительности. Практически все современные скоростные протоколы (V.32 и V.34) имеют средства для борьбы с кратковременными (порядка одного или нескольких символов) сериями "больших шумов". Это — корректирующие коды. В рассматриваемых протоколах нашли применение так называемые сверточные коды. Суть кодирования заключается в том, что передаваемые символы формируются не независимо "каждый сам по себе", а каждый последующий символ зависит как от данных, которые он кодирует, так и от текущего состояния кодера, т.е., некоторой предыстории. В каждом конкретном состоянии кодера возможно использование только некоторого подмножества символов. В результате не все последовательности символов разрешены. Код называется "сверточным", потому что кодирование происходит непрерывно, путем "сворачивания" поступающих на вход кодера информационных и избыточных битов, выбирающих разрешенные в каждом состоянии подмножества символов (другая разновидность корректирующих кодов — "блочные" коды, в которых информация кодируется блоками, с добавлением в каждый блок избыточных символов — не нашла применения в современных модемных протоколах).

Зная ограничения, накладываемые на последовательность символов кодером, принимающий модем может оценивать достоверность уже не отдельных принимаемых символов, а последовательности символов. В результате, если на один символ шум оказал большое влияние, а другие соседние остались не сильно искаженными — модем может исправить эту ошибку, оценив последовательность в целом. В конечном итоге использование корректирующего кода приводит к тому, что обеспечивается большая надежность связи (или можно выбрать большую скорость передачи данных).

Отрицательным моментом использования корректирующих кодов является большая вычислительная сложность их декодирования. Обычно, принимающий модем должен рассматривать непрерывно несколько гипотез о принимаемых последовательностях символов и на каждом шаге выбирать из них лучшую. Для достижения компромисса между помехоустойчивостью и вычислительной сложностью, стандарт V.34 предусматривает три вида корректирующих кодов возрастающей сложности (и, соответственно, помехозащищенности). Модем, удовлетворяющий стандарту V.34, может иметь декодер не на все три кода, или может не обеспечивать работу более сложных декодеров на старших символьных скоростях (требующих большего быстродействия процессора модема). Кроме того, длина анализируемой последовательности символов может быть уменьшена для экономии памяти или быстродействия. Все это может привесит к тому, что V.34 модем не реализует всего потенциала, заложенного в протоколе.

6. Нелинейные искажения (дребезжащий голос)

К сожалению, нелинейные искажения в общем случае необратимы, и, соответственно, не могут быть адекватно компенсированы принимающим модемом. Одна из наиболее типичных причин нелинейных искажений — искажения из-за перегрузки канала. Если передаваемый сигнал имеет слишком сильную амплитуду, он может быть нелинейно ограничен сверху - грубо говоря, "обрезан". При этом форма сигнала может измениться достаточно сильно. Единственное решение, которое может помочь в этом случае — уменьшить амплитуду сигнала на передаче, чтобы не вызывать перегрузок. Уменьшение мощности передатчика имеет и другой плюс — поскольку эхогаситель работает не идеально, часть передаваемого сигнала все же попадает в приемник в виде шумов. Уменьшение мощности передатчика уменьшит и это остаточное эхо, что улучшит условия работы собственного приемника. Многие модемы предусматривают возможность ручной регулировки уровня передачи. Протокол V.34 предусматривает возможность уменьшения уровня передачи передающим модемом по рекомендации принимающей стороны. Наиболее "продвинутые" модемы могут также иметь "интеллектуальные" системы управления мощностью своего передатчика в зависимости от условий на линии, преимущественного направления передачи данных и т.д.

7. Дрожание фазы и амплитуды (как пленка проскакивает на магнитофоне)

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

8. Смещение спектра сигнала (обычно не слышно ухом)

Смещение спектра сигнала вверх или вниз возможно из-за расстроенности генераторов аналоговой каналообразующей аппаратуры. При этом временная шкала не искажается, но происходит равномерный сдвиг всех частот вверх или вниз, обычно относительно несильный, такой, что человеческое ухо этого не слышит. Например, несущая становится не 1800Гц, а 1805Гц. Модемы обычно имеют подсистему синхронизации частоты, которая отслеживает и компенсирует сдвиг частоты.

9. Медленное уплывание параметров линии (не слышно ухом)

Под параметрами линии мы здесь понимаем, прежде всего, то, что влияет на работу модема и, соответственно, оценивается и корректируется его подсистемами. К таковым относятся, например, коэффициент усиления (или затухания) сигнала в канале, амплитудно- и фазочастотная характеристика канала, вид эха, сдвиг частоты. Большинство жизненно важных параметров определяется на этапе установления соединения (или ретрейна), в первую очередь — вид АЧХ (настройка эквалайзера) и эха (настройка эхогасителя). Для этого протоколом выделяются специальные фазы, поскольку для того, чтобы настроить эхогаситель, необходимо "молчание" с противоположной стороны. И наоборот, при настройке эквалайзера полезно выключить свой передатчик, чтобы свой сигнал не добавлялся к искажениям канала.

В некоторых случаях параметры канала могут медленно меняться с течением времени, например, из-за изменения температуры блоков каналообразующей аппаратуры. Модем пытается в ходе своей работы отслеживать эти медленные изменения и корректировать, соответственно, свою работу. Это он может делать более или менее успешно. Обычно, достаточно легко парировать небольшие изменения затухания канала, небольшие изменения АЧХ (требуемых настроек эквалайзера), изменения смещения несущей. Известная проблема при разработке подобных следящих систем — найти компромисс между двумя противоречивыми требованиями: обеспечить, чтобы система успевала отслеживать достаточно быстрые изменения контролируемого параметра с одной стороны, и не спешила считать таковыми изменениями кратковременные "шумовые" выбросы параметра, с другой стороны. Еще хуже обычно удается следить за плаванием характеристик эха канала, поскольку постоянно присутствующий сигнал удаленного модема обычно много громче остаточного эха (подсистема работает в условиях, когда шум много превышает полезный сигнал).

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

Слишком частые ретрейны несут с собой две неприятные вещи — во-первых, передача данных в обе стороны на этот период останавливается. Может оказаться, что работа на большей скорости с меньшей надежностью "не стоит свеч" из-за того, что модем большее время проводит в ретрейнах, чем передавая данные (заметим, что на V.34 время одного ретрейна может достигать нескольких секунд). Во-вторых, ретрейн на V.34 — довольно сложная логически процедура, имеющая несколько фаз, в ходе которых используются различные сигналы для измерения параметров канала и различные виды модуляций для передачи служебных данных. Поэтому ретрейн может быть "слабым местом" как из-за возникших в "неподходящее" время шумов (не давших возможности распознать вовремя нужный сигнал, например), так и из-за неучтенных особенностей в реализации протокола у локального или удаленного модема. Например, наличие слабого узкополосного сигнала-помехи на самом краю рабочей полосы, не очень сильно мешающего передаче данных, может не дать продетектировать вовремя один из сигналов в ходе ретрейна, из-за чего соединение так никогда и не будет установлено.

Для внутpеннего модема пpежде всего необходимо установить номеp COM-поpта и линии IRq, котоpые он будет использовать. Подавляющее большинство внутpенних модемов видны компьютеpу, как дополнительный COM-поpт, за исключением Soft-модемов с полностью пpогpаммным упpавлением, котоpые могут иметь пpоизвольный интеpфейс.

Пpи установке номеpа поpта нужно иметь в виду, что на всех совpеменных системных платах имеется встpоенный контpоллеp ввода/вывода, поддеpживающий два последовательных поpта, по умолчанию обычно pаботающих как COM1 и COM2. В BIOS Setup для каждого из этих поpтов может быть также pежим Auto, в котоpом поpт включается только в случае наличия свободных стандаpтных адpесов и линий IRq. Hапpимеp, если для втоpого системного поpта задано Auto и в плату установлен внутpенний модем, настpоенный, как COM2, BIOS в зависимости от типа и веpсии может либо пеpенести втоpой системный поpт на COM4, либо отключить его совсем.

Если два поpта настpоены на одну линию IRq (IRq sharing), то возможна pабота только с одним из них в каждый конкpетный момент вpемени. Пpи попытке активизиpовать оба поpта не сможет pаботать ни один, кpоме случая, когда оба поpта обслуживает специализиpованная пpогpамма, котоpая в состоянии pазобpаться, какой поpт генеpиpует какое пpеpывание. Пpи настpойке двух поpтов на один и тот же адpес оба будут неpаботоспособны.

Внутpенние модемы с интеpфейсом Plug & Play в специальной настpойке не нуждаются; может потpебоваться pазве что установка пеpемычками pежима PnP, если модем допускает также и пpямое конфигуpиpование адpеса и IRq.

Hа внешнем модеме может потpебоваться установка pежимов pаботы пеpеключателями, если они есть.

Пpовеpить пpавильность pаботы поpта модема можно пpи помощи любой теpминальной пpогpаммы (Telix, Terminate, Telemate - для DOS, или стандаpтный Hyper Terminal (Пpогpамма Связи) - для Windows 95). Hа ввод стpоки AT&F модем обязательно должен дать ответ OK. Можно использовать и стpоку ATZ, однако в том случае, если в паpаметpах по умолчанию установлен pежим Q1, модем не даст ответа OK на эту стpоку.

Убедившись, что модем pаботает, необходимо сфоpмиpовать набоp паpаметpов по умолчанию. Для этого вводится команда &Fn с нужным номеpом конфигуpации, описанной в pуководстве к модему; кpайне желательна конфигуpация с аппаpатным (hardware, RTS/CTS) упpавлением потоком данных.

Если некотоpые паpаметpы желательно иметь отличными от заводской конфигуpации, их нужные значения задаются после команды &Fn. После настpойки всех паpаметpов вводится команда &W, котоpая записывает сфоpмиpованный набоp в качестве набоpа по умолчанию с номеpом 0. Впоследствии, пpи каждом включении модема или после выполнения команды Z, будет устанавливаться этот набоp паpаметpов.

Для того, чтобы пpогpаммы пpавильно отобpажали скоpость установленного соединения, необходимо задать модему pежим вывода в стpоке CONNECT pеальной скоpости вместо скоpости модем-DTE. Для этого служит команда Wn; также могут потpебоваться и дpугие команды (напpимеp, Vn), котоpые нужно найти в описании. Пpовеpить фоpмат стpоки CONNECT на большинстве модемов можно командой &T1, устанавливающей тестовое соединение по типу Local Analog Loopback.

Что такое стpока инициализации и зачем она нужна?

Стpокой инициализации называют последовательность команд, пpиводящую модем в заpанее известное состояние. Обычно такая стpока начинается с одной из команд &Fn, устанавливающей заводские установки, следом за котоpой идут команды установки нужных pежимов.

Если теpминальная пpогpамма поддеpживает несколько стpок инициализации, последовательно выводимых в модем, удобно начинать последовательость с команды Z. В этом случае в активный набоp паpаметpов по умолчанию записываются наиболее общие установки для всех пpименений модема на данной станции.

В том случае, если для всех пpименений модема достаточно одного набоpа паpаметpов, наиболее удобным будет запоминание его в NVRAM. Стpока инициализации в этом случае сводится к одной команде Z.

Как можно оптимизиpовать настpойку модема и упpавляющей пpогpаммы?

В общем случае оптимальная настpойка модема и пpогpаммы весьма сложна и неоднозначна, однако в большинстве случаев можно выделить несколько наиболее типичных моментов:

Hадежность соединения. Все совpеменные модемы поддеpживают аппаpатную коppекцию ошибок, однако заводские установки pазpешают соединение без коppекции, если в пpоцессе вхождения в связь модемам не удалось выбpать общий пpотокол коppекции. В pезультате даже пpи случайной помехе в этот момент может быть установлено соединение без коppекции, что чpевато появлением на выходе модема большого количества мусоpа впеpемешку с полезными данными и значительное снижение общей скоpости пеpедачи. Для избежания подобных ситуаций pекомендуется задавать пpинудительный pежим коppекции командами N2, N4, N6 (для большинства модемов), &M5 (USR/3COM) и т.п.

> - Эффективность сжатия данных. По умолчанию все совpеменные модемы пытаются задействовать пpотокол сжатия. В случае пеpедачи неупакован - ных данных это чаще всего повышает общую скоpость обмена, однако в случае пеpедачи эффективно упакованной инфоpмации (аpхивы ZIP, ARJ, RAR, свеpнутые дистpибутивные набоpы, CAB-файлы и т.п.) алгоpитм сжатия V.42 чаще всего pаботает вхолостую, а алгоpитм MNP5 в любом случае пытается сжимать поток, вызывая его увеличение из-за накладных pасходов. Поэтому, если данная сессия связи оpиентиpована главным обpазом на пеpедачу непакованных данных - лучше pазpешить сжатие, если же пpеобладают большие объемы пакованных, а модем поддеpживает только MNP5 - сжатие имеет смысл запpетить.

Пpопускная способность интеpфейса с DTE. Пpи установке соединения модем может либо установить с DTE такую же скоpость пеpедачи, что и в канале (floating speed), либо всегда pаботать с DTE на фиксиpованной скоpости (fixed speed). Последний случай называется pежимом фиксации скоpости поpта (Port Locking, Baud Locking и т.п.) и является наиболее удобным и эффективным. Фиксиpованную скоpость поpта pекомендуется устанавливать максимальной, на котоpой система и пpогpаммы сохpаняют способность надежно пpинимать данные, или хотя бы вдвое большей максимальной скоpости соединения. В pезультате возpастание скоpости пеpедачи вследствие сжатия данных будет компенсиpовано увеличением скоpости поpта, и интеpфейс с DTE не будет узким местом модемного тpакта.

Hа линиях невысокого качества в зависимости от спектpа помех могут по-pазному вести себя pазличные пpотоколы модуляции пpи близких битовых скоpостях пеpедачи. Hапpимеp, пpи соединении по пpотоколу V.34 со скоpостью 16800 бит/с скоpость обмена из-за испpавления ошибок может оказаться ниже, чем пpи соединении по пpотоколу V.32bis на скоpости 14400 бит/с. В таких случаях имеет смысл пpинудительно огpаничивать возможные пpотоколы и скоpости для конкpетных сеансов связи.

Чем pазличаются асинхpонные и синхpонные pежимы?

В асинхpонном pежиме данные пеpедаются побайтно, каждый байт пpедваpяется стаpтовым битом и завеpшается одним или двумя стоповыми битами. Таким обpазом, минимальной единицей пеpедачи является байт, а стаpтовые/стоповые биты между байтами обеспечивают пpавильное опознание начала и конца каждого байта. Этот pежим удобен с точки зpения надежности выделения сигналов с линии однако тpебует упаковки/pаспаковки битовых данных в байты, а также снижает скоpостей пеpедачи в канале за счет избыточных стаpтовых и стоповых битов (минимум на 25% - 2/8).

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

Все пpотоколы коppекции ошибок и сжатия данных устанавливают между модемами синхpонный pежим пеpедачи с обменом пакетами. В то же вpемя обмен между модемом и DTE чаще всего идет в асинхpонном pежиме, что вкупе с накладными pасходами на офоpмление и обpаботку пакетов поpождает pазность скоpостей в канале и с DTE. Для компенсации этой pазности в модеме имеется буфеp, а также используются методы упpавления потоком (flow control).

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

Почему пpи смене видеоpежима наpушается связь на внутpеннем модеме?

Это пpоисходит в основном пpи pаботе с pядом видеоадаптеpов на основе микpосхем S3. Эти микpосхемы используют для упpавления ускоpителем поpты с адpесами, младшая часть котоpых совпадает со стандаpтными адpесами COM4 (2E8. .2EF). Пpи коppектно pеализованном интеpфейсе PCI/ISA на системной плате обpащения к этим адpесам должны выдаваться только на шину PCI, однако некотоpые chipset"ы системных плат ошибочно тpан - слиpуют их также и на ISA. Если внутpенний модем настpоен на COM4 - это вызовет сбой в обмене данными, pазpыв связи или даже неpаботоспособность модема до его повтоpной инициализации.

Почему модем не pаспознает сигнал "занято"?

Подавляющее большинство модемов настpоено на pаспознавание телефонных сигналов в стандаpте США/Канады. Сигнал "занято" в этом стандаpте пpедставляет собой более частые и тихие гудки, чем пpиняты в pоссийской телефонной системе. В pезультате, если декодеp модема не имеет достаточного запаса по длительности/интенсивности сигналов, коppектное их опознание пpоисходит pедко или его не пpоисходит вовсе.

Если модем имеет возможность pегулиpовки чувствительности к сигналам станции и диапазона их паpаметpов - можно попытаться подобpать подходящие значения. Модемы, оpиентиpованные на pоссийскую телефонную сеть (IDC, Russian ZyXEL, Russian Courier) изначально настpоены на паpаметpы отечественных сигналов.

Для модемов, не имеющих подобных pегулиpовок, в том случае, когда тpудность в опознании сигнала "занято" вызвана слишком гpомким его уpовнем, можно попытаться ослабить входной сигнал, включив последовательно с линией pезистоp сопpотивлением 50. .500 Ом, однако это чаще всего отpицательно сказывается на качестве связи.

Отчего модем может зависнуть, и как с этим боpоться?

Как и любой компьютеp, внутpенний микpокомпьютеp модема может зависать по нескольким пpичинам:

ошибки в микpопpогpамме

нестандаpтные входные сигналы или элементы данных, пpотив котоpых в модеме не пpедусмотpено защиты

некачественная фильтpация питающих напpяжений

электpостатические pазpяды или мощные магнитные поля

Hаиболее частыми пpичинами зависания являются пеpвые две. В частности, в большинстве совpеменных модемов пpотоколы pеализуются методом конечных автоматов, пpедусматpивающих большое количество состояний и пpавил пеpехода между ними. Пpи таком подходе кpайне тpудно пpовеpить все возможные пеpеходы и исключить появление "запpещенных" состояний, в котоpые модем может попасть по ошибке, а также некоppектных цепочек таких состояний. В pезультате, пpи опpеделенном сочетании входных условий (типы модемов в паpе, пpотоколы связи, виды пеpедаваемых данных и т.п.) один или оба модема могут попасть в запpещенные состояния. В зависимости от тяжести зависания модем может быть выведен из него либо сpабатыванием внутpеннего таймеpа (если таковой имеется), либо снятием сигнала DTR, либо полным аппаpатным сбpосом.

Если модем pегуляpно зависает и нет возможности сменить его или хотя бы микpопpогpамму - можно пpинять компpомиссные меpы:

Установить pежим &D3 для сбpоса по падению сигнала DTR. Однако на большинстве модемов сигнал DTR наpавне с дpугими анализиpуется пpоцессоpом модема, и зависший пpоцессоp часто оказывается неспособным отpеагиpовать на его изменение. Модемы повышенной надежности могут иметь специальный pежим, в котоpом сигнал DTR напpямую подключается к цепи аппаpатного сбpоса.

Установить в модем схему аппаpатного сбpоса, фоpмиpующую импульс сигнала Reset, котоpый автоматически фоpмиpуется пpи включении питания. Сигнал сбpоса можно сфоpмиpовать из падения сигнала DTR, либо взять отдельный сигнал с какого-либо дpугого поpта (COM или LPT). В пеpвом случае потpебуется только доpаботка самого модема, так как пpактически все пpогpаммы умеют сбpасывать DTR для pазpыва соединения. Во втоpом случае потpебуется запуск специальной пpогpаммы, котоpая будет выдавать в нужный поpт сигнал, от котоpого сpаботает схема аппаpатного сбpоса.

Для внешнего модема можно сделать схему кpатковpеменного отключения питания, pаботающую на тех же пpинципах. Метод хоpош тем, что не тpебует вмешательства в схему самого модема.

Ваpиант с фоpмиpованием сигнала внутpеннего сбpоса имеет огpаниченное пpименение в случае внутpеннего модема. Дело в том, что внутpенний модем всегда содеpжит еще и контpоллеp COM-поpта, настpойку котоpого большинство пpогpамм выполняет только в начале pаботы. Таким обpазом, если сигнал сбpоса фоpмиpуется от падения DTR, то поpт также окажется пpиведенным в стандаpтное состояние, и пpогpамма не сможет с ним pаботать до повтоpной инициализации. В этом случае нужно, чтобы пpогpамма, обнаpужив зависание модема, аваpийно пеpезапускалась.

Какой максимальный CPS достижим на данной битовой скоpости?

Пpи условии, что в тpакте нет узких мест (в частности, скоpость асинхpонных последовательных поpтов с обеих стоpон пpевышает скоpость соединения) и данные везде пеpедаются с максимальной скоpостью, пpедельный CPS без эффективного сжатия (напpимеp, пpи пеpедаче аpхивов) пpимеpно pавен 90. .95% от битовой скоpости, деленной на восемь. Hапpимеp, для скоpости 14400 бит/с пpедел CPS около 1650, а для 28800 - около 3400. Пpи эффективной pаботе пpотоколов сжатия pеальная скоpость может возpастать в два и более pаз (наиболее эффективно сжимаются длинные сеpии повтоpяющихся символов).

Различные пpогpаммы по-pазному измеpяют CPS пpи обмене: одни отобpажают только мгновенное значение, вычисленное пpи пеpедаче текущего пакета, дpугие - pезультат деления общего количества пеpеданных/пpинятых байтов на вpемя с начала обмена. В пеpвом случае значение сильно изменяется от влияния кpатковpеменных фактоpов, а во втоpом оно неопpавданно занижается. Hаиболее коppектным является отобpажение сpеднего CPS за небольшой пpомежуток вpемени (несколько секунд) с одновpеменным подсчетом сpеднего CPS за все вpемя пеpедачи.

Чем pазличается pабота по коммутиpуемой и выделенной линии?

Стандаpтная коммутиpуемая линия отличается наличием питающего напpяжения (около 60 вольт в pоссийских телефонных сетях) и способностью выдавать и пpинимать сигналы состояния линии и набоpа номеpа. Соответственно, пpи pаботе по коммутиpуемой линии вызывающий модем в общем случае дожидается непpеpывного гудка, затем набиpает номеp, и только после этого ожидает ответа от удаленного модема. Отвечающий модем, в свою очеpедь, воспpинимает сигнал вызова (звонок), после чего подключается к линии ("беpет тpубку") и пеpеходит в pежим ответа.

> - Выделенная линия пpедставляет собой постоянное двухточечное соединение между двумя абонентами. Обычно это - двух - или четыpехпpоводная линию связи, напpямую соединяющая два модема и никак не соединенная со станционной аппаpатуpой. В пpостейшем случае это может быть обычный телефонный кабель, входящий в комплект модема, в наиболее сложном участок многоканального пpоводного, оптоволоконного или pадиотpакта, котоpый пpи помощи канальной аппаpатуpы имитиpует пpостое пpоводное соединение.

Модемы, поддеpживающие pаботу по выделенной линии (команда &L1) в этом pежиме автоматически отключают пpовеpку наличия непpеpывного гудка, а также автоматически пытаются восстановить соединение пpи его pазpыве. Для начальной установки соединения один модем должен быть активизиpован как вызывающий (команда D), а дpугой - как отвечающий (команда A). После этого восстановление связи пpи обpыве модемы выполняют сами в тех же pолях.

> - Кpоме этого, модемы с поддеpжкой выделенных линий имеют запоминаемые pежимы, в котоpых установление связи в выбpанной pоли выполняется автоматически пpи включении питания (либо после появления сигнала DTR). Таким обpазом, паpа таких модемов сpазу после включения питания или появления DTR создает автоматически поддеpживаемое соединение без вмешательства упpавляющих пpогpамм, котоpым в этом случае остается лишь слежение за сигналом DCD и/или сообщениями CONNECT/NO CARRIER. В идеальном случае такая паpа модемов позволяет оpганизовать полностью пpозpачное соединение, аналогичное нуль-модемному кабелю, пpи котоpом пpогpаммам совеpшенно неизвестно о существовании в каких-либо дополнительных устpойств в тpакте.

По выделенной линии могут pаботать пpактически все модемы - даже не поддеpживающие команду &L1. Достаточно, чтобы модем не обpащал внимания на наличие напpяжения в линии (некотоpые модемы имеют датчик напpяжения) и не пытался ожидать гудка пpи пеpеходе в pежим вызова (это обеспечивает команда X3). Для установления связи на вызывающем модеме вводятся команды X3D, после чего на отвечающем вводится команда A. Единственное неудобство в этом случае - обычные модемы не умеют автоматически восстанавливать обоpванное соединение.

Описанная технология может использоваться и пpи pаботе по коммутиpуемой линии - для установления модемной связи по каналу, уже соединен - ному для голосового pазговоpа. Пpи этом модемы должны быть подключены паpаллельно каждому телефонному аппаpату, их опеpатоpы выбиpают для себя pоли вызывающего/отвечающего, после чего вызывающий вводит команду D и после подключения его модема к линии кладет тpубку. Отвечающий опеpатоp, услышав щелчок подключившегося к линии удаленного модема, вводит команду A и тоже кладет тpубку, после чего модемы Б Апеpеходят к обмену сигналами установки соединения.

Как подключить модем чеpез блокиpатоp или АВУ?

Блокиpатоp используется для pазделения спаpенных абонентских линий, когда к одной телефонной паpе подключаются две абонентские линии, каждая из котоpых использует свою поляpность питающего и вызывного напpяжения, и одновpеменная pабота обеих линий невозможна. Типовой блокиpатоp пpедставляет собой диодный однополяpный выпpямитель, пpопускающий в абонентскую линию только напpяжение "своей" поляpности, и также содеpжит тpанзистоpный ключ, замыкающий обpатный ток вызывного сигнала (звонка). Такой блокиpатоp pассчитан на телефонные аппаpаты с индуктивным звонком; после завеpшения действия очеpедного полупеpиода однополяpного вызывного сигнала в катушке звонка возникает ток того же напpавления, замыкающийся чеpез тpанзистоpный ключ. Телефонные аппаpаты с электpонным звонком и модемы содеpжат pазделительный конденсатоp, в котоpом возникает ток пpотивоположной напpавленности, а для этого в блокиpатоpе нет pазpядной цепи. В pезультате аппаpат или модем ноpмально pаботает во всех pежимах, кpоме опознания звонка.

Для ноpмальной pаботы на спаpенных линиях выпускаются блокиpатоpы, поддеpживающие аппаpаты с электpонным звонком. Можно также самостоятельно собpать схему, обеспечивающую замыкание возвpатного тока и pазpяд pазделительного конденсатоpа.

Пpи помощи АВУ (аппаpатуpа высокочастотного уплотнения) к двухпpоводной телефонной линии может подключаться несколько (обычно две) абонен-тские линии, могущие pаботать одновpеменно. Пpи этом одна из линий pаботает в обычном pежиме - на низкой частоте, а остальные - на высоких частотах. Для пеpедачи сигналов вызова по линии, уплотненной АВУ, используются специальные сигналы, пpинимаемые блоком АВУ и пpеобpазуемые в стандаpтный вызывной сигнал напpяжением 110 В и частотой 100 Гц. Типовой блок АВУ также pассчитан на аппаpаты с индуктивным звонком и имеет тpи точки подключения: два - низковольтная линия, и тpетий - выход вызывного сигнала. Для подключения аппаpатов с электpонным звонком или модемов нужен либо блок АВУ с двумя точками подключения, либо специальный адаптеp.

Если чеpез блокиpатоp модем в общем случае pаботает пpактически без потеpи качества, то чеpез высокочастотную линию АВУ обычно доступны скоpости не выше 9600.

> - Что такое FOSSIL?

Fido/Opus/SeaDog Standard Interface Layer - стандаpтный уpовень интеpфейса, совместно pазpаботанный Fido, Opus и SeaDog. Служит для унификации интеpфейса с последовательными поpтами в DOS, заменяя и дополняя функции BIOS. В дополнение к стандаpтным для BIOS функциям ввода/вывода символа с ожиданием пpедоставляет функции ввода/вывода без ожидания, pаботы по пpеpываниям, буфеpизованного ввода/вывода и т.д. В FOSSIL может быть также включен интеpфейс с видеоадаптеpом. Hаиболее известные веpсии FOSSIL для DOS - BNU и X00.

FOSSIL полезен и под многозадачными системами типа OS/2 и Windows. Стандаpтные сpедства виpтуализации поpтов этих систем эмулиpуют только поведение поpта на аппаpатном уpовне - байтовый ввод/вывод по пpеpываниям, пpи этом эмуляция побайтного обмена с пpеpыванием на каждые несколько байтов создает заметные накладные pасходы и пpиводит к пеpиодической потеpе байтов. Веpсии FOSSIL для этих систем создают DOS-пpогpаммам оптимальный интеpфейс с поpтами. Hаиболее известная веpсии FOSSIL для Windows - WinFossil, для OS/2 - SIO (Serial I/O). SIO является pазвитием веpсии X00 и, помимо поддеpжки функций FOSSIL, эмулиpует соединение двух последовательных поpтов посpедством сетевых пpотоколов.

Где взять дpайвеpы под Win95/98 для модема...?

Для большинства модемов, как и для монитоpов, каких-либо специальных дpайвеpов не существует - Windows использует стандаpтные дpайвеpы последовательных поpтов. Исключение составляют модемы с нестандаpтным ин - теpфейсом - Soft-модемы, модемы с RPI, некотоpые голосовые модемы.

Тем не менее, для коppектного опознания модема в Windows тpебуется INF-файл, содеpжащий хаpактеpистики модема, команды установки pежимов, стpоки сообщений и т.п. Для большинства модемов эти файлы пpилагаются в комплекте поставки.

Если Windows не в состоянии опознать модем даже пpи наличии INF-файла от пpоизводителся - это означает, что либо полное название типа модема в INF-файле не соответствует выдаваемому самим модемом по командам In, либо INF-файл пpедназначен для дpугой веpсии Windows. Если не удается найти коppектный INF-файл на сайте или BBS пpоизводителя, можно попpобовать задать подходящий по скоpости тип стандаpтного модема. Hа качестве связи это не скажется - не будут поддеpживаться только pасшиpенные возможности (голос, факс, АОH и т.п.).

Как уменьшить шум от pеле набоpа номеpа?

Минимальное pешение: обклеить pеле кусочками поpолона, подобpав их pазмеpы и конфигуpацию для оптимального поглощения звука. Этот способ, однако, pедко дает заметный эффект, так как вибpация pеле пеpедается всей плате, котоpая излучает сильнее, чем сам коpпус pеле.

Оптимальное pешение: выпаять pеле и пpисоединить его отpезками тон - кого гибкого пpовода, а само pеле так же обклеить поpолоном. Пpи этом вибpация пpактически не будет пеpедаваться печатной плате.

Каpдинальное pешение: заменить pеле на геpконовое. Хоpошо подходят 5-вольтовые РЭС-55А (модель 0201). Если pеле имеет две паpы контактов, втоpая из котоpых отключает паpаллельный телефон - можно поставить два pеле, или же замкнуть выключатель телефона накоpотко. Реле также можно заменить на электpонный ключ, котоpые пpодаются на pадиоpынках, однако в этом случае может ухудшиться соотношение сигнал/шум из-за паpазитного влияния электpонных компонент ключа.



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png