Реферат по теме:
"Модемы (модемные протоколы коррекции ошибок)"
MNP-КОРРЕКЦИЯ
Для повышения скорости и надежности обмена информацией используются так называемые MNP-модемы - модемы с аппаратным сжатием и коррекцией информации. Многие модемы (практически все) со скоростью 2400 бод являются MNP-модемами. Так как протоколы коррекции ошибок в MNP-модемах реализованы аппаратно, скорость обмена заметно возрастает ( в некоторых случаях в 2 раза).Следует отметить,что в отечественной телефонной сети без MNP-коррекции на скоростях выше 300 бод практически невозможно работать из-за высокого уровня шума в линии. И в то же время работая с MNP-коррекцией вы можете передавать данные даже тогда, когда за шумом и треском не слышно собеседника. Если ваш модем не является MNP-модемом, не следует огорчаться - существует ряд коммуникационных пакетов, реализующих MNP-коррекцию на программном уровне. Одним из таких пакетов (который распространяется по сети BBS) является МТЕ v.2.10g (MNP Terminal Emulator) фирмы MagiSoft. Этот пакет обладает всеми основными качествами коммуникационной программы и при обмене данными с модемом может осуществлять (по желанию пользователя) MNP-коррекцию. Существуют также резидентные эмуляторы MNP, перехватывающие прерывание 14h BIOS.
Что же такое MNP? Стандарт Microcom Networking Protocol (MNP) вобрал в себя многие разработки в области протоколов передачи данных. Протокол аппартно реализует коррекцию ошибок и сжатие передаваемой информации. Принцип работы MNP-модема заключается в использовании при передаче информации блоков переменной длины. Модем принимает от компьютера подлежащие передаче данные и собирает их в пакет, который затем передается по линии другому MNP-модему. При сборке этого пакета информации вычисляется контрольная сумма, которая передается в конце пакета. Размер блока можно изменять от 64 до 265 байт с шагом в 64 байта, причем, на высококачественных телефонных линиях можно использовать блоки большей длины, что увеличиват скорость передачи. Еще большей производительности можно добиться, применяя сжатие передаваемых данных.При этом скорость передачи повышается вдвое - т.е.модем, работающий в режиме MNP5 со скоростью предачи 2400 бод,работает так же производительно, как обычный можем со скоростью 4800 бод (а MNP7 даже втрое быстрее). При сжатии используются математические методы, аналогичные применяемым в утилитах архиваторов. Приняв сжатое сообщение в буфер,MNP-модем распаковывает его и в обычном виде передает в компьютер. MNP-модемы различаются по классам. Каждый класс отличается от предыдущего более высокой производительностью и расширенными возможностями. Для более совершенных классов требуется более совершенное аппаратное обеспечение, более мощный процессор для микроконтролера модема.Однако в связи с тем, что все классы протокола MNP совместимы друг с другом, модем всегда будет стремиться использовать максимум своих возможностей. Ниже приводится краткое описание основных характеристик каждого из классов MNP.
Класс 1 использует асинхронный полудуплексный метод передачи данных с побайтной организацией. Он имеет наименьшую среди MNP-протоколов производительность, но не требует больших объемов памяти и высокой скорости процессора. Сравнительная эффективность составляет 70 %, т.е. MNP-модем класса 1, работающий со скоростью 2400 бод, передает полезную информцию со скоростью 1680 бод.
Класс 2 использует асинхронный дуплексный метод передачи данных с побайтной организацией. Сравнительная эффективность - 84%.
Класс 3 использует синхронный дуплексный метод передачи данных с побитной организацией. Используемый в нем формат значительно эффективнее, чем асинхронные побайтные форматы.Дело в том, что при асинхронной передаче требуется передавать дополнительный старт-бит в начале байта и стоп-бит в его конце. Отказ от их использования заметно повышает производительность протокола. Эффективность класса 3 составляет 108%.
Класс 4 отличается тем, что в нем реализованы два новых метода работы с информацией: адаптивная сборка передаваемых блоков и оптимизация фазы. В процессе передачи данных монитор модема следит за средней скоростью передачи, и в зависимости от количества ошибок изменяет длину блока. Использование метода оптимизации фазы позволяет избавиться от повторной передачи части служебной информации. Относительная эффективность - 120%.
Класс 5 использует в дополнение к возможностям класса 4 сжатие данных в реальном масштабе времени. Применяется адаптивный алгоритм, позволяющий одинаково хорошо работать как в режиме передачи файлов, так и в интерактивном режиме. Коэффициент сжатия может достигать 99% для некоторых видов информации. Графические файлы могут сжиматься до 10 % исходного размера, текстовые файлы - до 45-55%, программы -до 60-90%. Средний коэффициент сжатия 63%. Относительная эффективность 200%.
Класс 6 в дополнение к возможностям MNP5 обеспечивает совместимость высокоскоростного протокола v.29 с низкоскоростными стандартами и автоматически переключается между полудуплексным и дуплексным режимами в зависимости от типа передаваемых данных.
Класс 7 использует более совершенный алгоритм сжатия данных. Относительная эффективность 300%.
Класс 9 применяет протокол v.32 и соответствующий метод работы, обеспечивающий совместимость с низкоскоростнвми модемами. Наиболее употребимым классом для сравнительно недорогих модемов на сегодняшний день является класс 5.
МОДЕМНЫЕ ПРОТОКОЛЫ КОРРЕКЦИИ ОШИБОК:
V.42 ПРОТИВ MNP2-4
Оснащение стандартных среднескоростных модемов аппаратно реализованными протоколами коррекции ошибок и сжатия данных стало в последнее время стандартом де-факто в модемостроении. Если для западного рынка, где качество телефонных каналов весьма высоко, наличие этих протоколов
- небесполезная подробность в рекламе предлагаемого изделия, которая к тому же повышает цену товара не более, чем на 15-20%, то в условиях отечественного (в широком смысле) телекоммуникационного пространства реализация тем или иным способом коррекции ошибок становится по понятным причинам совершенно необходимой.
В настоящее время приближается к концу затянувшийся спор о том, какие протоколы коррекции ошибок - MNP2-4 или V.42 CCITT - перспективнее, и разрешается он в пользу CCITT. Попытка аргументировать справедливость этого вывода и предпринята здесь.
1. Принципы коррекции ошибок
Не вдаваясь глубоко в теорию кодирования и помехозащищенности передачи информации, можно лишь констатировать, что бесплатных ужинов не бывает: избыточность - единственный реальный базис обнаружения и коррекции ошибок. Избыточность в широком смысле. Она может быть "последовательной", в случаях применения любого из методов кодирования, т.е. передача дополнительной по отношению к "полезной" информации. Либо "параллельной", в случаях как использования параллельных каналов связи (возможно, различной физической природы), так и применения информационной обратной связи, т.е. возврата, используя дуплексный канал, принятой информации для анализа передатчиком ее правильности. Применение кодирования с решающей обратной связью - это пример комбинированной, "последовательно-параллельной" избыточности.
Степень избыточности определяет глубину и надежность обнаружения ошибок. Представляется очевидным, что чем больше дополнительной информации будет передано, тем большее количество ошибок и с большей достоверностью может быть обнаружено и даже, возможно, исправлено. Но, в то же время, тем меньше доля полезной информации в общем потоке данных и - тем меньше эффективная скорость приема/передачи и, в конечном счете, пропускная способность канала. Выбор процедуры коррекции ошибок, таким образом, можно рассматривать как оптимизационную задачу, критерием которой является минимизация накладных расходов при заданной надежности приема/передачи информации.
Физическая природа канала передачи информации - коммутируемая телефонная сеть - определяет те факторы, вес которых оказывается наиболее значим при решении поставленной оптимизационной задачи. Отсутствие дублирования канала (по крайней мере на абонентском участке линии) исключает из рассмотрения физическое параллельное дублирование. В то же время, применение обратной связи вполне допустимо вследствие того, что канал дуплексный.
Фактор "стоимость трафика" заставляет с большой осторожностью относиться к таким методам коррекции ошибок, как многократное дублирование передаваемой информации с мажоритарным выбором или применение информационной обратной связи. Объем передаваемой информации в первом случае возрастает как минимум втрое, а то и более. Во втором случае, гонять одну и ту же информацию в полном объеме в обе стороны только для обнаружения факта наличия ошибки с последующим повтором представляется также излишне расточительным.
Третьим фактором, оказывающим огромное влияние на выбор методов коррекции ошибок, является помеховая обстановка в канале передачи данных. А она такова (особенно в "отчих пределах"), что ограничиться простым контролем четности, чего бывает достаточно для локальных сетей, - не кажется удачным решением. Представляется на первый взгляд, что применение симплексного корректирующего кодирования - неплохое решение поставленной задачи. Это кодирование позволяет не только обнаруживать ошибки, но и указывать на их местоположение, т.е. исправлять их, что позволяет отказаться от обратной связи. Однако, степень избыточности при этом весьма высока: объем дополнительной информации сравним с объемом "полезной". Для исправления только одиночной ошибки необходимы по крайней мере три дополнительных бита на байт. И этот объем стремительно возростает с ростом глубины коррекции ошибок, что в конечном счете может свести выигрыш от высокой надежности и отсутствия повторов к глобальному и стабильному проигрышу в стоимости "излишнего" трафика, который, к тому же, будет совершенно индифферентен к помеховой обстановке (возможно, неплохой).