Обмен данными на канальном уровне
Обмен данными между станциями, состоящими из совокупности ООД и АПД, происходит на канальном (2) уровне. Совокупность двух станций данных и объединяющего их канала называется звеном данных. Основной задачей канального уровня является передача некоторых массивов сообщений, называемых кадрами. На канальный уровень возлагаются следующие функции:
- инициализация – обмен между взаимодействующими станциями служебными сообщениями, подтверждающими готовность к передаче данных;
- идентификация – обмен между взаимодействующими станциями служебными сообщениями, подтверждающими правильность соединения между ними;
- синхронизация – выделение в последовательности передаваемых битов границ знаков;
- сегментация – формирование кадров для их передачи по каналу;
- обеспечение прозрачности – предоставление возможности вышерасположенному уровню производить передачу произвольной последовательности битов;
- контроль ошибок и управление последовательностью передачи – обнаружение ошибок в передаваемых кадрах и запросы повторной передачи искаженных кадров, обеспечение соответствия последовательности кадров на входе и выходе канала;
- выход из сбойных ситуаций – обнаружение нарушений нормальной передачи кадров и реализация процедур выхода из таких ситуаций;
- завершение работы канала – ликвидация логического соединения, образованного при инициализации канала.
Рассмотрим набор правил и реализующих их алгоритмов, т.е. протокол уровня звена данных, предназначенный для выполнения указанных функций на примере стандартного протокола HDLC.
Хотя HDLC был разработан в 1970-х годах, он используется в несколько модифицированной форме до настоящего времени. Он применяется в качестве:
- протокола для ISDN под названием LAP-D;
- протокола канального уровня передачи пакетов, соответствующих стандарту X.25, под названием LAP-B;
- протокола канального уровня передачи данных, ориентированного на использование модемов, под названием LAP-M.
Функционально эквивалентным протоколу HDLC является протокол ADCCP (Advanced Data Communications Control Procedures), поддерживаемый Национальным институтом стандартизации США, описание которого содержится в документах ISO 3309-79, ISO 4335-79, ISO 6256-81.
Также функционально эквивалентным HDLC является стандартный протокол управления дуплексным синхронным каналом данных, используемый в продуктах IBM и называемый SDLC (Synchronous Data Link Control).
Этот протокол обеспечивает дуплексный, полудуплексный и симплексный режимы работы виртуальных каналов между двумя объектами коммуникационной сети. В качестве технических средств на этом уровне используются память, устройства защиты от ошибок, устройства, реализующие интерфейс, и устройства управления. Такая структура второго уровня соответствует типовой структуре уровня, приведенной в первой главе.
Протокольной единицей протокола HDLC является кадр. Формат кадра, установленный стандартом ISO 3309, выглядит следующим образом.
1 8 | 1 8(16) | 1 8 | 1 16 | 1 8 | |
Флаг | Адрес | Управление | Данные | Контрольные разряды | Флаг |
Кадр рассматривается как последовательность байтов, начало и конец которой отмечается флагами – двоичными кодовыми комбинациями 01111110. Один флаг может быть использован как завершающий для одного кадра и начальный для следующего кадра. Все станции, относящиеся к звену данных, должны непрерывно осуществлять поиск флаговой комбинации, поскольку путем распознавания флагов осуществляется синхронизация кадров. Для обеспечения синхронизации необходимо предотвратить возможность появления последовательностей символов, аналогичных флагу, между начальным и завершающим флагами кадра. Для этого передающая станция после завершения формирования всех областей кадра осуществляет побитовый просмотр его содержимого и, обнаружив последовательность из пяти подряд следующих единиц, вставляет после нее нуль. Эта операция называется бит-стаффингом. Приемная станция анализирует кадр побитно, за исключением флагов, и изымает нули после пяти смежных единиц. При обнаружении шести смежных единиц кадр квалифицируется как недействительный. За счет использования бит-стаффинга обеспечивается прозрачность уровня.
Кадр несет в себе адресную и управляющую информацию, данные и контрольные разряды, используемые для контроля передаваемой в кадре информации. Контрольные разряды получаются в результате кодирования циклическим кодом содержимого остальных областей кадра, исключая флаги. Размер области контрольных разрядов равен степени образующего полинома циклического кода, в качестве которого по ГОСТ 17422 – 82 установлен полином x16+x12+x5+1. При приеме кадра из его содержимого вновь вычисляются контрольные разряды и сравниваются с принятыми. В случае совпадения кадр считается корректным, в противном случае фиксируется искажение кадра.
В поле адреса указывается адрес станции, с которой данная станция ведет обмен. Поле адреса может быть расширено на целое число байтов. Признаком того, что следующий байт входит в адресное поле, является наличие 0 в первом бите предыдущего байта адресного поля.
Полный цикл функционирования звена данных регламентируется ГОСТ 26113 – 84 и состоит из следующих последовательных фаз:
- логическое разъединение;
- инициализация;
- установление соединения;
- перенос информации;
- завершение соединения;
- логическое разъединение.
Смена фаз может происходить последовательно или в обход отдельных фаз.
Логическое разъединение является исходной и конечной фазой процедуры управления звеном данных. В этой фазе станции звена находятся непосредственно перед их включением и выключением.
Фаза инициализации предназначена для обмена между станциями звена параметрами, необходимыми для их работы в других фазах. При отсутствии такой необходимости допускается обход этой фазы.
Фаза установления соединения предназначена для подготовки всех условий, необходимых для передачи данных, и предшествует фазе переноса информации. При отказе одной из станций участвовать в обмене допускается переход из фазы установления соединения в фазу логического разъединения.
Фаза переноса информации является основной, в которой осуществляется перенос сообщения от источника к получателю, после чего происходит переход к фазе завершения соединения, в которой подготавливаются условия для полного логического разъединения станций звена в фазе логического разъединения.
Для переноса различной информации в процедурах управления звеном используются три типа кадров:
- информационный или I-кадр, используемый только в фазе переноса информации;
- супервизорный или S-кадр, обеспечивающий реализацию функций решающей обратной связи, т.е. подтверждения I-кадров, запроса повторения I-кадров, прекращения передачи I-кадров;
- ненумерованный или U-кадр, используемый для выполнения функций установления и завершения соединений, тестирования и идентификации в фазах логического разъединения, инициализации, установления соединения, переноса информации, завершения соединения.
С учетом этого поле управления кадра имеет три различных формата.
Управление | ||||||||
I | N(S) | P/F | N(R) | |||||
S | Команда | P/F | N(R) | |||||
U | Команда | P/F | Команда |
Первый разряд поля управления служит идентификатором информационного (0) или служебного (1) кадра. Второй разряд поля управления служебного кадра служит идентификатором супервизорного (0) или ненумерованного (1) кадра.
В поле управления I-кадра передается информация о номере N(S) передаваемого кадра и о следующем за ним номере N(R) кадра, который должна ожидать приемная сторона. Этим обеспечивается целостность передаваемого через звено потока информации, которая может нарушаться из-за ошибок в прямом и обратном каналах. Обратный канал необходим, поскольку в основу этого протокола положены алгоритмы передачи данных с обратной связью.
Если в пятом разряде поля управления I-кадра передается Р=1, то передающая станция вынуждает приемную станцию дать ответ. В рассматриваемом протоколе в звене данных одна станция является первичной или ведущей, а другая вторичной или ведомой. Служебный кадр, передаваемый от первичной станции, является командой, а служебный кадр, передаваемый от вторичной станции – ответом или откликом.
Два разряда (3 и 4) S-кадра и пять разрядов (3,4,6,7,8) U-кадра порождают большое количество возможных управлений, на базе которых могут быть реализованы конкретные алгоритмы управления звеном.
Супервизорные кадры (всего их четыре типа – т.к. два идентифицирующих разряда) содержат информацию о номере N(R) информационного кадра, который будет следовать за данным супервизорным. S-кадр с идентификатором 00 означает готовность к приему, а, будучи использованным в качестве ответа, может быть истолкован как положительная квитанция АСК, т.е. извещение о правильном приеме информационного кадра. S-кадр с идентификатором 10 означает неготовность к приему, а, будучи использованным в качестве ответа, может быть истолкован как отрицательная квитанция NАСК, т.е. извещение о неправильном приеме информационного кадра. Кроме того, передающая сторона, не получившая ни ACK, ни NACK в течение заданного промежутка времени, называемого тайм-аутом, после передачи, повторяет соответствующий кадр.
Существуют три основных метода обработки ответов на ACK и NACK.
1. При использовании S-кадра с командой/ответом 01 реализуется метод часто называемый поточным или потоковым методом передачи или алгоритмом с решающей обратной связью и непрерывной передачей (РОС-НП). При использовании этой процедуры определенное количество кадров передается непрерывно без ожидания подтверждения каждого кадра. При получении NACK или превышении тайм-аута неподтвержденный и все последующие кадры передаются повторно.
2. При использовании S-кадра с командой/ответом 11 реализуется метод часто называемый методом селективного повтора. В этом методе повторная передача, в отличие от предыдущего, осуществляется только для кадра, на который поступил NACK или истек тайм-аут. Эта процедура по сравнению с предыдущей существенно увеличивает пропускную способность системы передачи данных. Однако для передачи и приема кадров не по порядку их номеров на приемной стороне должен находиться буферный накопитель с произвольным доступом, емкость которого увеличивается с увеличением времени распространения сигнала в канале. Таким образом, реализация этой процедуры является более сложной и дорогостоящей.
3. Часто называемый блочным методом передачи. Согласно этой процедуре без подтверждения может быть передан только один кадр. После передачи очередного кадра передающая сторона ждет подтверждения. Если получен NACK или превышен тайм-аут, кадр передается повторно. После получения ACK кадр сбрасывается из накопителя передатчика. Данную процедуру удобно использовать при полудуплексной связи, когда передачи сторон чередуются. Однако она не эффективна при дуплексной связи, особенно, если время распространения сигнала по каналу значительно больше времени передачи кадра.
Сравнивая три рассмотренных метода по производительности, можно заметить, что при условии короткого расстояния и низкой скорости передачи эффективность всех методов примерно одинакова и зависит лишь от качества канала, т.е. вероятности безошибочной передачи. При увеличении расстояния и возрастании скорости передачи наиболее эффективным является метод селективного повтора.
Ненумерованные кадры называются так, поскольку они не несут никакой информации о порядковых номерах кадров. I-кадры и S-кадры используются для организации фазы переноса информации. U-кадры реализуют функции всех остальных фаз. Существует большое количество различных типов U-кадров (5 разрядов в поле управления для идентификации типа). В дальнейшем будут упомянуты лишь некоторые из них. Управление связью с их помощью организуется следующим образом. Первичная станция посылкой U-кадра типа «Установить режим . . .» устанавливает режим работы канала, которых существует несколько. Среди наиболее распространенных можно назвать:
- режим нормальных ответов, в котором вторичные станции могут посылать сообщения, только получив специальное указание от первичной станции;
- асинхронный сбалансированный режим, в котором все станции имеют равные права и каждая реализует функции как первичной, так и вторичной станции.
После посылки этого кадра, в адресном поле которого указан адрес требуемой вторичной станции, первичная станция запускает тайм-аут, по истечении которого передача кадра будет повторена, если не поступит какого-либо ответа от вторичной станции. Вторичная станция при неготовности к работе отвечает кадром «Режим разъединения», а при готовности – кадром «Подтверждение». Прием первичной станцией кадра «Подтверждение» завершает процедуру установки режима и инициализации канала. Инициализация канала может быть произведена повторно передачей кадра «Установить режим инициализации», который запускает специальные процедуры, реализованные в конкретных вариантах станций. Вторичная станция может запросить инициализацию, послав в первичную станцию кадр «Запрос режима инициализации». Кадр «Обмен идентификаторами» используется для обмена между станциями информацией о реализованных в них технических возможностях. Для разъединения связи первичная станция использует кадр «Разъединить», на который вторичная станция отвечает кадром подтверждения. Если инициатором разъединения выступает вторичная станция, то она посылает кадр «Запрос разъединения», реагируя на который первичная станция действует описанным выше образом. Станция, находящаяся в режиме разъединения не может устанавливать соединения, принимать и передавать информацию и отвечает на поступающие кадры кадром «Режим разъединения».
Протокол HDLC и подобные ему протоколы называются бит-ориентированными протоколами, поскольку передаваемые данные бит за битом анализируются для выявления возможной подмены флага. Кроме бит-ориентированных протоколов существуют байт-ориентированные протоколы, в которых содержимое кадра всегда кратно целому числу байтов, т.е не является последовательной цепочкой битов произвольной длины, как в бит-ориентированных протоколах. В байт-ориентированных протоколах для обеспечения прозрачности кадра начало кадра обозначается уникальной парой символов (байтов)-DLE – выход из звена данных и STX – начало кадра, а конец кадра обозначается уникальной парой символов (байтов)-DLE – выход из звена данных и ETX – конец кадра. Во избежание преждевременного окончания приема кадра из-за символа конца кадра, который может встретиться в поле данных, передатчик вводит следом за ним второй символ, а приемник, обнаружив такую пару, удаляет один из них. Такая процедура называется байт-стаффингом. Примером байт-ориентированного протокола является протокол DDCMP (Digital Data Communications Message Protocol).
Контрольные вопросы к лекции 12
12-1. Что называется звеном данных на канальном уровне?
12-2. Как называется протокольная единица канального уровня?
12-3. В чем состоит функция канального уровня, называемая инициализацией?
12-4. В чем состоит функция канального уровня, называемая идентификацией?
12-5. В чем состоит функция канального уровня, называемая синхронизацией?
12-6. В чем состоит функция канального уровня, называемая сегментацией?
12-7. В чем состоит функция канального уровня, называемая обеспечением прозрачности?
12-8. В чем состоит функция канального уровня, называемая контролем ошибок и управлением последовательностью передачи?
12-9. В чем состоит функция канального уровня, называемая обеспечением выхода из сбойных ситуаций?
12-10. В чем состоит функция канального уровня, называемая завершением работы канала?
12-11. Какие режимы работы канала обеспечивает протокол HDLC?
12-12. Из каких полей состоит формат кадра в протоколе HDLC?
12-13. Что называется флагом в формате кадра протокола HDLC?
12-14. Для чего используется флаг в формате кадра протокола HDLC?
12-15. Какая операция называется бит-стаффингом?
12-16. Для чего используется бит-стаффинг?
12-17. Как заполняется поле контрольных разрядов в формате кадра протокола HDLC?
12-18. Что указывается в поле адреса в формате кадра протокола HDLC?
12-19. Перечислите фазы полного цикла функционирования звена данных.
12-20. Какие типы кадров используются в протоколе HDLC?
12-21. Какой тип кадра используется только в фазе переноса информации?
12-22. Какую функцию реализует супервизорный кадр?
12-23. Какие функции реализует ненумерованный кадр?
12-24. Почему ненумерованный кадр называется ненумерованным?
12-25. Что служит идентификатором информационного или служебного кадра?
12-26. Что служит идентификатором супервизорного или ненумерованного кадра?
12-27. Какая информация содержится в поле управления информационного кадра?
12-28. Какая информация содержится в поле управления супервизорного кадра?
12-29. Какая информация содержится в поле управления ненумерованного кадра?
12-30. Чем функционально отличаются служебные кадры, передаваемые от ведущей станции звена данных к ведомой и наоборот?
12-31. Как осуществляется передача положительных и отрицательных квитанций?
12-32. Что называется положительной или отрицательной квитанцией?
12-33. Что называется тайм-аутом?
12-34. Как реагирует передающая сторона на отсутствие положительной или отрицательной квитанции по истечении тайм-аута?
12-35. Перечислите основные методы обработки ответов на ACK и NACK.
12-36. Как реализуется алгоритм с решающей обратной связью и непрерывной передачей?
12-37. Как реализуется алгоритм селективного повтора?
12-38. Как реализуется алгоритм с решающей обратной связью и ожиданием?
12-39. Какой из алгоритмов с решающей обратной связью является наиболее эффективным?
12-40. В чем состоит различие режима нормальных ответов и асинхронного сбалансированного режима?
Дата добавления: 2015-07-30; просмотров: 729;