главная / все о модемах / Математика связи

Математика связи

 

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

Для того чтобы понять, чего же не хватает вашему модему, а точнее, вашей линии для полного счастья, лучше всего начать со сбора статистики. Можно это сделать и с помощью программы HyperTerminal, по умолчанию инсталлируемой вместе с Windows. После того, как вы вдоволь пошатались по Сети, разрываем связь, залезаем в эту программу, создаем соединение, вместо кнопки Dial жмем Cancel, тем самым автоматически переходя в терминальный режим. Главное, чтобы модем после разрыва связи или при входе в терминальный режим не инициализировался, иначе вся статистика обнулится. Команды, заведующие статистикой, следует искать в документации, так как для модемов разных производителей они различаются. Практически все команды начинаются с пары символов “AT" (ATtention - внимание) – стандарт, созданный компанией Hayes Microcomputer Products. Итак, более или менее типичная статистика модема USR Courier V.Everything.


ATI6
USRobotics Courier V.Everything Link Diagnostics...

Chars sent                  351      Chars Received              466
Chars lost                    0
Octets sent                 253      Octets Received             399
Blocks sent                  31      Blocks Received              26
Blocks resent                 0

Retrains Requested            0      Retrains Granted              0
Line Reversals                0      Blers                         0
Link Timeouts                 0      Link Naks                     0

Data Compression       V42BIS 2048/32
Equalization           Long
Fallback               Enabled
Protocol               LAPM SREJ 244/15
Speed                  28800/26400
Last Call              00:00:17

- - - - - - - - - - - - - - - - - - - - - - - - - -

ATI11
USRobotics Courier V.Everything Link Diagnostics...

Modulation               V.34+
Carrier Freq    ( Hz )   1959/1959
Symbol Rate              3429/3429
Trellis Code             64S-4D/64S-4D
Nonlinear Encoding       ON/ON
Precoding                ON/ON
Shaping                  ON/OFF
Preemphasis Index        2/2
Recv/Xmit Level (-dBm)   29.7/11.7
SNR             ( dB )   35.6
Near Echo Loss  ( dB )   15.4
Far Echo Loss   ( dB )   54.6
Roundtrip Delay (msec)   1
Timing Offset   ( ppm)   -512
Carrier Offset  ( ppm)   3
RX Upshifts              1
RX Downshifts            0
TX Speedshifts           1
V.90 Status              0007

- - - - - - - - - - - -- - - - - - -

Modulation               V.34+
Carrier Freq    ( Hz )   1959/1959
Symbol Rate              3429/3429
Trellis Code             64S-4D/64S-4D
Nonlinear Encoding       ON/ON
Precoding                ON/ON
Shaping                  ON/OFF
Preemphasis Index        2/2
Recv/Xmit Level (-dBm)   29.7/11.7
SNR             ( dB )   30.4
Near Echo Loss  ( dB )   15.4
Far Echo Loss   ( dB )   48.0
Roundtrip Delay (msec)   1
Timing Offset   ( ppm)   1952
Carrier Offset  ( ppm)   31
RX Upshifts              24
RX Downshifts            26
TX Speedshifts           8

Перейдем к расшифровке количественной статистики.

Speed (иногда TX / RX Speed) - скорость приема и передачи данных. Так как исходящий трафик в Сеть намного меньше, чем входящий, наибольшее значение имеет скорость приема. Если разница в скоростях значительна, то один из модемов трудно справляется с линией (например, низок уровень входного сигнала, невысокое отношение сигнал/шум и т.д.).

Retrains Requested / Retrains Granted - количество пересогласований параметров связи (ретрейнов). Requested - те ретрейны, которые запросил ваш модем, а Granted - количество ретрейнов, которые локальный модем согласился сделать по просьбе удаленного. Важным для нас является соотношение количества ретрейнов по отношению к времени соединения. Чем выше этот показатель, тем ниже стабильность линии. Чаще всего это означает, что в линии идут постоянные помехи или модемы плохо слышат друг друга.

Blers (Block errors) - блоковые ошибки. Ошибки в блоках данных и протокола. Если имеет место большое количество блоковых ошибок, то проблемы наверняка в телефонной линии. Если у вас ДШ АТС, то можно не удивляться.

Link Naks - отсутствие подтверждения. Удаленный модем не смог подтвердить прием одного или нескольких блоков.

Disconnect Reason – причина разрыва связи. Здесь вы можете увидеть массу странных значений, но нормальным является выход с сообщением: DTR droррed. На некоторых моделях от USR можно увидеть “Unable to retrain”, что может означать наличие ошибки в микропрограмме.

Noise bursts - количество скачков шума на линии, вызвавших сбои синхронизации низкого уровня. Чем больше таких скачков было зарегистрировано за единицу времени, тем ниже качество связи и, соответственно, нестабильнее соединение.

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

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

Импульсные помехи (щелчки, трески) имеют небольшую продолжительность, поэтому справиться с ними куда легче, чем с постоянными помехами и шумами. Для этого современными протоколами используются корректирующие коды. На данный момент самым эффективными были признаны “сверточные” коды, где каждый следующий символ зависит не только от данных, который он кодирует, но и от состояния блока кодирования. То есть учитывается некоторая предыстория, благодаря которой декодер способен найти потерянные символы. Отрицательным фактором использования корректировочных кодов является высокая нагрузка на DSP при декодировании. В итоге, далеко не все модемы способны декодировать все три уровня сложности таких кодов.

Одно из слабых мест в модеме – система автоматической регулировки уровня (АРУ) входного сигнала. Блок АРУ служит для того, чтобы сигнал не был слишком силен или слишком слаб при декодировании его АЦП. Естественно, при усилении вместе с сигналом усиливаются и шумы, так что улучшения соотношения сигнал/шум не будет, зато если АРУ работает после АЦП, то некоторые разряды при слабом сигнале вообще не будут задействованы, то есть качество оцифровки будет плохим.

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

Практически каждое устройство на своем пути оставляет след в АЧХ, в результате чего какие-то частоты ослабляются, а какие-то усиливаются. Специально для таких случаев у модемов есть подсистема вроде эквалайзера, которая это все пытается компенсировать на этапе хендшейка или ретрейна. Естественно все, с чем не смог справиться “эквалайзер”, становится дополнительными шумами, мешающими работать на высоких скоростях. Кроме этой подсистемы модемы используют еще два ухищрения, позволяющие поднять соотношение сигнал/шум. Первое – “pre-emphasis” - использование стандартного фильтра перед передачей сигнала удаленному модему. Как правило, фильтр поднимает высокие частоты в надежде на то, что аппаратура между модемами ее испохабит до нужного уровня. Второе ухищрение – "non-linear precoding". Это уже более интеллектуальный механизм, который на основе коэффициентов удаленного модема вносит в сигнал искажения, в дальнейшем компенсирующиеся каналом связи.

Для улучшения работы удаленного модема на прием в протоколах V.32T и V.34 есть еще один хитрый механизм, называемый “warping”. Не вдаваясь в подробности, его можно описать как специальную обработку сигнала, после которого АЦП удаленного модема сможет более точно декодировать сигнал. Каким путем он это делает, простым смертным лучше не знать, но там, где сигнал между модемами не проходит цифровых участков пути, этот режим лучше отключить.

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

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

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

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

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

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

Самое главное значение, исходя их которого модем выбирает скорость, это SNR - отношение сигнал/шум. Чем выше это значение, тем большая скорость связи может быть достигнута при соединении. Каждый модем по-своему определяет это соотношение, а также имеет свои собственные таблицы соответствия SNR и выбираемой скорости, но на практике коннекту на 33600 соответствует SNR= 35 Дб и выше, а для 16800 достаточно 24 Дб. Значение меняется динамически в процессе соединения, и каждый раз, анализируя SNR, модем решает - поднимать или снижать ему скорость.

Следующий параметр, который необходимо настроить – это уровень мощности выходного сигнала (Xmit Level), то есть сигнала, поступающего в линию. Имеет смысл варьировать этот параметр в пределах от –8 до –13 дБм. Идеальный вариант подбора нужного значения – использование статистики удаленного модема. Оптимальное значение уровня сигнала, принимаемого удаленным модемом -25...-30 Дб. Неуверенная связь наблюдается в диапазоне -35...-40 Дб, а серьезные проблемы с ушами у удаленного модема начнутся при значении “Recv Level” ниже -40 Дб. При высоком уровне принимаемого сигнала модему приходится бороться с усилившимся эхом. Уровнями дальнего и ближнего эха заведуют два параметра – Far Echo Loss и Near Echo Loss. Главное, чтобы уровень принимаемого сигнала был выше уровня ближнего “эха”.

Но как бы вы не настраивали уровни сигналов для приема или передачи, это будет действовать только на то время, пока модемы “снюхиваются”. Во время работы каждый из аппаратов способен попросить второй модем повысить или понизить уровень выходного сигнала. Некоторые модемы делают это не совсем корректно – запрашивают такой уровень, что сами не могут сигнал обработать, или происходит перегрузка канала. Если вы уверены, что проблема плохой связи в некорректной автоматической подстройке выходного сигнала, то его следует запретить. Иногда в настройках можно встретить запрещение изменения уровня сигнала удаленного модема, что также иногда помогает решить ряд проблем.

Некоторые модемы позволяют изменять чувствительность приемника. Но не следует слишком сильно задирать уровень приема – вместе с ним увеличиваются шумы, так что соотношение сигнал/шум лучше не будет. Полезным действием станет понижение уровня принимаемого сигнала в тех случаях, когда входящий сигнал слишком громкий – тогда ваш модем сможет наиболее точно использовать все биты АЦП при декодировании сигнала, что, в свою очередь, приведет к более высоким скоростям и более стабильной связи.

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

Символьная скорость Возможная скорость передачи данных
2400 2400…21600
2400 4800…21600
2400,2800 4800…24000
2400,2800,3000 4800…26400
2400,2800,3000,3200 4800…31200
2400,2800,3000,3200,3429 4800…33600

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

:: назад