Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
84
Добавлен:
11.04.2015
Размер:
4.91 Mб
Скачать

Раздел 3 Протоколы канального уровня

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

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

Канальный уровень обеспечивает синхронизацию между приемником и передатчиком на уровне кадров.

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

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

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

Синхронная передача. При синхронном режиме передачи старт-стопные биты между каждой парой байт отсутствуют. Пользовательские данные собираются в кадр, впереди каждого кадра ставят специальные байты синхронизации. Байт синхронизации - это байт, содержащий заранее известный код, например 0111110, который оповещает приемник о приходе кадра данных. При его получении приемник должен войти в байтовый синхронизм с передатчиком, то есть правильно понимать начало очередного байта кадра. Иногда применяется несколько синхробайт для обеспечения более надежной синхронизации приемника и передатчика.

Асинхронные протоколы оперируют не с кадрами, а с отдельными символами, которые представлены байтами со старт - стоповыми символами.

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

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

Синхронные протоколы канального уровня бывают двух типов:

    • Символьно - ориентированные (байт-ориентированные);

    • бит-ориентированные.

Для обоих характерны одни и те же методы синхронизации бит. Главное различие между ними заключается в методе синхронизации символов и кадров.

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

При символьно-ориентированном методе каждый передаваемый кадр состоит из произвольного числа 7- или 8-битных символов, которые передаются как непрерывная последовательность битов без каких-либо задержек между ними. Поэтому приемное устройство, достигнув тактового (битового) синхронизма, должно быть в состоянии:

    • обнаруживать начало и конец каждого символа – посимвольный синхронизм;

    • обнаруживать начало и конец каждого полного кадра – по -кадровый синхронизм.

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

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

Соседние файлы в папке протоколы