Главная  Радио и связь 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [ 79 ] 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

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

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

Управление потоком кадров может основываться также на идее определения максимально допустимого диапазона порядковых номеров кадров, для которых не получено подтверждение приема. Этот допустимый диапазон, называемый окном, и определяет необходимую емкость модуля F, упоминавшуюся ранее. В тот момент, когда число отправленных, но не квитированных, или принятых, но не обработанных кадров превышает размер окна, осуществляется регулирование исходящего или входящего потока соответственно. Оно выполняется без использования управляющих кадров: при передаче исходящий поток просто блокируется на время, пока окно буфера ТХ остается заполненным (это правило не касается кадров, передаваемых повторно); при приеме поступающие кадры данных просто отвергаются до тех пор, пока остается заполненным окно буфера RX. При таком подходе с точки зрения отправителя регулирование информационного потока дистанционным получателем не отличается от регулирования в случае отказа линии связи или узла сети; до тех пор пока оно продолжается, отправитель не получит подтверждений приема кадров данных, и его действия, связанные с повторной передачей, будут бесполезны.



Использование получателем управляющих кадров для уведомления отправителей информации о начале регулирования потока данных {RECEIVE-NOT-READY, К-ПРИЕМУ-НЕ-ГО-ТОВ) или о его завершении (RECEIVE-READY, К-ПРИЕМУ ГОТОВ) повышает эффективность работы системы, поскольку предупреждает бесполезные повторные передачи информации и возможные ошибочные заключения о неисправности линии связи, возникающие в противном случае. Для упрощения изложения существа рассматриваемого проекта мы не будем останавливаться на анализе структуры управляющих кадров.

Таким образом, управляющие кадры в нашем примере используются только для первоначального установления связи, а поскольку их последовательная нумерация не требуется, необходимо индивидуальное квитирование каждого из них. При этом используются кадры двух типов: блок START (ЗАПУСК) и блок START-ACK (ПОДТВЕРЖДЕНИЕ-ЗАПУСКА).

С учетом вышеизложенного требования к нужному нам протоколу обмена можно резюмировать следующим образом:

• Кадры должны иметь фиксированный размер и в добавление к фрагменту сообщения содержать два порядковых номера (исходящий и входящий).

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

• Локальное регулирование информационного потока должно осуществляться либо при передаче, либо при приеме данных в тех случаях, когда окно заполнено.

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

» Для первоначального установления связи необходимо два ненумеруемых управляющих кадра (START и START-ACK).

> Предполагается, что работа системы состоит из двух этапов: начального запуска и передачи данных. На этапе начального запуска до передачи данных производится обмен управляющими кадрами START и START-ACK с целью подтверждения того, что оба оконечных устройства готовы к работе и линия связи исправна. На этапе передачи производится только обмен кадрами данных.

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



Анализ протоколов обмена в подсистеме COMM. Далее мы можем двигаться в двух направлениях: либо сначала разработать протоколы обмена данными (форматы ПБД, правила упорядочения, перечень состояний и т. п.), не приступая к непосредственному проектированию системы, либо сразу же начать с ее проектирования, а обращаться к деталям протоколов по мере появления вопросов, требующих разрешения. Мы остановимся здесь на втором подходе-методе пошаговой детализации, но попутно отметим, что в большинстве практических ситуаций при проектировании системы протокол обмена (если он нужен) чаще всего бывает задан и система должна конструироваться в точном соответствии с ним. Однако у нас уже достаточно информации для того, чтобы приступить к проектированию системы, не особенно вдаваясь пока в детали построения Протокола.

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

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

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

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

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



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 [ 79 ] 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104


0.0114