Учебнометодический комплекс для заочного обучения с применением дистанционных технологий для студентов специальности 190702 Организация и безопасность дорожного движения
Скачать 5.75 Mb.
|
2.2.Сигналы для передачи информацииЕсли рассматривать сигнал как функцию времени, то он может быть, либо аналоговым, либо цифровым. Аналоговым называется сигнал, интенсивность которого во времени изменяется постепенно. Другими словами, в сигнале не бывает пауз или разрывов. Цифровым называется сигнал, интенсивность которого в течение некоторого периода поддерживается на постоянном уровне, а затем также изменяется на постоянную величину (это определение идеализировано). На рис. 2.3 приведены примеры сигналов обоих типов. Аналоговый сигнал может представлять речь, а цифровой - набор двоичных единиц и нулей. В общем случае любой цифровой сигнал имеет бесконечную ширину полосы. Если мы попытаемся передать этот сигнал через какую-то среду, передающая система наложит ограничения на ширину полосы, которую можно передать. Более того, для каждой конкретной среды справедливо следующее: чем больше передаваемая полоса, тем больше стоимость передачи. Поэтому, с одной стороны, по экономическим и практическим соображениям следует аппроксимировать цифровую информацию сигналом с ограниченной шириной полосы. С другой стороны, при ограничении ширины полосы возникают искажения, затрудняющие интерпретацию принимаемого сигнала. Чем больше ограничена полоса, тем сильнее искажение сигнала и тем больше потенциальная возможность возникновения ошибок при приеме. 2.3. Передача данныхОпределим данные как объекты, передающие смысл, или информацию. Сигналы - это электромагнитное представление данных. Передача - процесс перемещения данных путем распространения сигналов по передающей среде и их обработки. Рис. 2.3. Аналоговый и цифровой сигналы Понятия "аналоговые данные" и "цифровые данные" достаточно просты. Аналоговые данные принимают непрерывные значения из некоторого диапазона. Например, звуковые сигналы и видеосигналы представляют собой непрерывно изменяющиеся величины. Цифровые данные, напротив, принимают только дискретные значения; примеры - текст и целые числа. В системе связи информация распространяется от одной точки к другой посредством электрических сигналов. Аналоговый сигнал представляет собой непрерывно изменяющуюся электромагнитную волну, которая может распространяться через множество сред, в зависимости от частоты; в качестве примеров таких сред можно назвать проводные линии, такие как витая пара и коаксиальный кабель, оптоволокно; этот сигнал также может распространяться через атмосферу или космическое пространство. Цифровой сигнал представляет собой последовательность импульсов напряжения, которые могут передаваться по проводной линии; при этом постоянный положительный уровень напряжения может использоваться для представления двоичного нуля, а постоянный отрицательный уровень - для представления двоичной единицы. В беспроводной технологии используются цифровые данные и аналоговые сигналы, так как цифровые сигналы затухают сильнее, чем аналоговые. Цифровые данные можно представить аналоговыми сигналами, применив с этой целью модем (модулятор/демодулятор). Модем или беспроводный адаптер преобразует последовательность двоичных (принимающих два значения) импульсов напряжения в аналоговый сигнал, модулируя их несущей частотой. Получившийся в результате сигнал занимает определенный спектр частот с центром на несущей частоте и может распространяться в окружающую среду. На другом конце линии другой модем или беспроводный адаптер демодулирует сигнал и восстанавливает исходные данные. Одна из основных проблем построения беспроводных систем - это решение задачи доступа многих пользователей к ограниченному ресурсу среды передачи. Существует несколько базовых методов доступа (их еще называют методами уплотнения или мультиплексирования), основанных на разделении между станциями таких параметров, как пространство, время, частота и код. Задача уплотнения - выделить каждому каналу связи пространство, время, частоту и/или код с минимумом взаимных помех и максимальным использованием характеристик передающей среды. 2.4.Кодирование и защита от ошибокСуществует три наиболее распространенных орудия борьбы с ошибками в процессе передачи данных: - коды обнаружения ошибок; - коды с коррекцией ошибок, называемые также схемами прямой коррекции ошибок (Forward Error Correction - FEC); - протоколы с автоматическим запросом повторной передачи (Automatic Repeat Request - ARQ). Код обнаружения ошибок позволяет довольно легко установить наличие ошибки. Как правило, подобные коды используются совместно с определенными протоколами канального или транспортного уровней, имеющими схему ARQ. В схеме ARQ приемник попросту отклоняет блок данных, в котором была обнаружена ошибка, после чего передатчик передает этот блок повторно. Коды с прямой коррекцией ошибок позволяют не только обнаружить ошибки, но и исправить их, не прибегая к повторной передаче. Схемы FEC часто используются в беспроводной передаче, где повторная передача крайне неэффективна, а уровень ошибок довольно высок. Методы обнаружения ошибокМетоды обнаружения ошибок основаны на передаче в составе блока данных избыточной служебной информации, по которой можно судить с некоторой степенью вероятности о достоверности принятых данных. Избыточную служебную информацию принято называть контрольной суммой, или контрольной последовательностью кадра (Frame Check Sequence, FCS). Контрольная сумма вычисляется как функция от основной информации, причем не обязательно путем суммирования. Принимающая сторона повторно вычисляет контрольную сумму кадра по известному алгоритму и в случае ее совпадения с контрольной суммой, вычисленной передающей стороной, делает вывод о том, что данные были переданы через сеть корректно. Рассмотрим несколько распространенных алгоритмов вычисления контрольной суммы, отличающихся вычислительной сложностью и способностью обнаруживать ошибки в данных. Контроль по паритету представляет собой наиболее простой метод контроля данных. В то же время это наименее мощный алгоритм контроля, так как с его помощью можно обнаружить только одиночные ошибки в проверяемых данных. Метод заключается в суммировании по модулю 2 всех битов контролируемой информации. Нетрудно заметить, что для информации, состоящей из нечетного числа единиц, контрольная сумма всегда равна 1, а при четном числе единиц - 0. Например, для данных 100101011 результатом контрольного суммирования будет значение 1. Результат суммирования также представляет собой один дополнительный бит данных, который пересылается вместе с контролируемой информацией. При искажении в процессе пересылки любого бита исходных данных (или контрольного разряда) результат суммирования будет отличаться от принятого контрольного разряда, что говорит об ошибке. Однако двойная ошибка, например 110101010, будет неверно принята за корректные данные. Поэтому контроль по паритету применяется к небольшим порциям данных, как правило, к каждому байту, что дает коэффициент избыточности для этого метода 1/8. Метод редко применяется в компьютерных сетях из-за значительной избыточности и невысоких диагностических способностей. Вертикальный и горизонтальный контроль по паритету представляет собой модификацию описанного выше метода. Его отличие состоит в том, что исходные данные рассматриваются в виде матрицы, строки которой составляют байты данных. Контрольный разряд подсчитывается отдельно для каждой строки и для каждого столбца матрицы. Этот метод обнаруживает значительную часть двойных ошибок, однако обладает еще большей избыточностью. Он сейчас также почти не применяется при передаче информации по сети. Циклический избыточный контроль (Cyclic Redundancy Check - CRC) является в настоящее время наиболее популярным методом контроля в вычислительных сетях (и не только в сетях; в частности, этот метод широко применяется при записи данных на гибкие и жесткие диски). Метод основан на рассмотрении исходных данных в виде одного многоразрядного двоичного числа. Например, кадр стандарта Ethernet, состоящий из 1024 байт, будет рассматриваться, как одно число, состоящее, из 8192 бит. Контрольной информацией считается остаток от деления этого числа на известный делитель R. Обычно в качестве делителя выбирается семнадцати или тридцатитрехразрядное число, чтобы остаток от деления имел длину 16 разрядов (2 байт) или 32 разряда (4 байт). При получении кадра данных снова вычисляется остаток от деления на тот же делитель R, но при этом к данным кадра добавляется и содержащаяся в нем контрольная сумма. Если остаток от деления на R равен нулю, то делается вывод об отсутствии ошибок в полученном кадре, в противном случае кадр считается искаженным. Этот метод обладает более высокой вычислительной сложностью, но его диагностические возможности гораздо шире, чем у методов контроля по паритету. Метод CRC обнаруживает все одиночные ошибки, двойные ошибки и ошибки в нечетном числе битов. Метод также обладает невысокой степенью избыточности. Например, для кадра Ethernet размером 1024 байта контрольная информация длиной 4 байта составляет только 0,4 %. Методы коррекции ошибокТехника кодирования, которая позволяет приемнику не только понять, что присланные данные содержат ошибки, но и исправить их, называется прямой коррекцией ошибок (Forward Error Correction - FEC). Коды, обеспечивающие прямую коррекцию ошибок, требуют введения большей избыточности в передаваемые данные, чем коды, которые только обнаруживают ошибки. При применении любого избыточного кода не все комбинации кодов являются разрешенными. Например, контроль по паритету делает разрешенными только половину кодов. Если мы контролируем три информационных бита, то разрешенными 4-битными кодами с дополнением до нечетного количества единиц будут: 000 1, 001 0, 010 0, 011 1, 100 0, 101 1, 110 1, 111 0, то есть всего 8 кодов из 16 возможных. Для того чтобы оценить количество дополнительных битов, необходимых для исправления ошибок, нужно знать так называемое расстояние Хемминга между разрешенными комбинациями кода. Расстоянием Хемминга называется минимальное число битовых разрядов, в которых отличается любая пара разрешенных кодов. Для схем контроля по паритету расстояние Хемминга равно 2. Можно доказать, что если мы сконструировали избыточный код с расстоянием Хемминга, равным n, такой код будет в состоянии распознавать (n-1)-кратные ошибки и исправлять (n-1)/2-кратные ошибки. Так как коды с контролем по паритету имеют расстояние Хемминга, равное 2, они могут только обнаруживать однократные ошибки и не могут исправлять ошибки. Коды Хемминга эффективно обнаруживают и исправляют изолированные ошибки, то есть отдельные искаженные биты, которые разделены большим количеством корректных битов. Однако при появлении длинной последовательности искаженных битов (пульсации ошибок) коды Хемминга не работают. Наиболее часто в современных системах связи применяется тип кодирования, реализуемый сверточным кодирующим устройством (Сonvolutional coder), потому что такое кодирование несложно реализовать аппаратно с использованием линий задержки (delay) и сумматоров. В отличие от рассмотренного выше кода, который относится к блочным кодам без памяти, сверточный код относится к кодам с конечной памятью (Finite memory code); это означает, что выходная последовательность кодера является функцией не только текущего входного сигнала, но также нескольких из числа последних предшествующих битов. Длина кодового ограничения (Constraint length of a code) показывает, как много выходных элементов выходит из системы в пересчете на один входной. Коды часто характеризуются их эффективной степенью (или коэффициентом) кодирования (Code rate). Вам может встретиться сверточный код с коэффициентом кодирования 1/2. Этот коэффициент указывает, что на каждый входной бит приходится два выходных. При сравнении кодов обращайте внимание на то, что, хотя коды с более высокой эффективной степенью кодирования позволяют передавать данные с более высокой скоростью, они, соответственно, более чувствительны к шуму. В беспроводных системах с блочными кодами широко используется метод чередования блоков. Преимущество чередования состоит в том, что приемник распределяет пакет ошибок, исказивший некоторую последовательность битов, по большому числу блоков, благодаря чему становится возможным исправление ошибок. Чередование выполняется с помощью чтения и записи данных в различном порядке. Если во время передачи пакет помех воздействует на некоторую последовательность битов, то все эти биты оказываются разнесенными по различным блокам. Следовательно, от любой контрольной последовательности требуется возможность исправить лишь небольшую часть от общего количества инвертированных битов. Рисунок 2.4 Процедура запрос ARQ с остановками Методы автоматического запроса повторной передачиВ простейшем случае защита от ошибок заключается только в их обнаружении. Система должна предупредить передатчик об обнаружении ошибки и необходимости повторной передачи. Такие процедуры защиты от ошибок известны как методы автоматического запроса повторной передачи (Automatic Repeat Request - ARQ). В беспроводных локальных сетях применяется процедура "запрос ARQ с остановками" (stop-and-wait ARQ). В этом случае источник, пославший кадр, ожидает получения подтверждения (Acknowledgement - ACK), или, как еще его называют, квитанции, от приемника и только после этого посылает следующий кадр. Если же подтверждение не приходит в течение тайм-аута, то кадр (или подтверждение) считается утерянным и его передача повторяется. На рис. 2.4 видно, что в этом случае производительность обмена данными ниже потенциально возможной; хотя передатчик и мог бы послать следующий кадр сразу же после отправки предыдущего, он обязан ждать прихода подтверждения. |