УКНЦ Micronet
Данный материал защищён авторскими правами!
Использование материала заявлено как добросовестное, исключительно для образовательных некоммерческих целей. |
Московский ордена Трудового Красного Знамени Институт электронной техники Отраслевая научно-исследовательская лаборатория "ЭЛЕКТРОНИКА" Кольцевая локальная вычислительная сеть (КЛВС) для ПЭВМ ряда "Электроника" Москва - 1988 � ОНИЛ "Электроника" Московского Института электронной техники предлагает вам кольцевую локальноую вычислительноую сеть с маркерным доступом "Micronet". Сеть предназначена для учебных вычислительных комплексов на базе УКНЦ с использованием в качестве головной машины ДВК-3М2. Программное обеспечение сети позволяет вам обмениваться кадрами данных между станциями или, при использованиии системы доступа к удаленным фаилам разделять разделять ресурсы между станциями подключенными к сети. Вы можете также использовать подсистему удаленной загрузки операционной системы в бездисковой рабочей станции, кроме того обеспечивается автономная работа программ написанных на языках FORTRAN-4 и PASCAL без операционной системы. Основные параметры сети: Топология кольцевая Метод доступа с передачей маркера Число станций в сети до 63 Физическая среда передачи витая пара Расстояние между станциями до 50 м Скорость передачи данных 57000 бит/с Оборудование контроллер СА-1,СА-2 ПЭВМ ДВК,МС0511 Операционная система RT-11 Для получения более подробной информации просим Вас обращаться по адресу: 103498 Москва, МИЭТ ОНИЛ "Электроника". Телефоны 532-98-40, 532-99-69 Начальник лаборатории доцент,к.т.н Волков Ю. И. Начальник сектора математического обеспечения инженер Панкратов А. В. Краткое описание ПО ЛВС "Micronet". ------------------------------- 1. Введение ПО ЛВС "Micronet" рассчитано на работу с сетевым адаптером, выполняющим достаточно мало функций. (прием-передачу байта, управление коммутационным реле). Такое построение ЛВС позволило значительно упростить СА. Недостающие фунции СА выполняет специальная программа, которая постоянно находится в памяти микро-ЭВМ. Эта программа оформлена в виде драйвера MC.SYS (MC сокращение от "MaC level" семиуровневой модели открытых систем). Эта программа организует прием и передачу пакетов (групп) данных между узлами ЛВС, для обеспечения возможности работы в сети машин двух типов (УКНЦ и ДВК), оснащенных различными адаптерами используется два варианта драйвера канального протокола MC.SYS для работы в ДВК и MC.LDA для работы в УКНЦ, причем сетевой драйвер загружается в УКНЦ из головной машины. Для доступа из ЛВС к ресурсам центральной ЭВМ предназначена программа FTSUK.SAV, оформленная в виде пользовательской программы ОС RT11. Из сети в программу FTSUK.SAV могут поступать три типа запросов: запрос начальной загрузки, запрос на загрузку файла в абсолютном двоичном формате и запрос доступа к дискам. Драйвер удаленного доступа VК.SYS позволяет загружать ОС RT11 в удаленные микро-ЭВМ через ЛВС. Возможна одновременная работа нескольких (до 60) пользователей. � Загрузчик файлов в абсолютном двоичном формате (BOTUK.SAV) - это служебная программа загружаемая в периферийные машины по запросу начальной загрузки. Загрузчик ОС RT-11 (RTBOOT.SAV) предназначен для загрузки операционной системы в периферийные машины. 2. Проверка работоспособности ЛВС. Для проверки работоспособности ЛВС рекомендуется пользоваться встроенным тестом локальной сети. Для его вызова необходимо перевести УКНЦ в режим отладки и нажать клавишу "Т". Это необходимо сделать на всех станциях, подключенных к сети. Затем переводят одну из машин УКНЦ, для чего нажимают одновременно клавиши "СУ" и "С" и в ответ на знак вопроса нажимают клавишу "А", после чего любая последовательность символов, набираемая на клавиатуре активной машины отображается на всех подлюченных к сети машинах включая центральную. Кроме того можно пользоваться тестовой программой М2 (если периферийные машины оснащены дисками). Для чего необходимо загрузить операционную систему, загрузить драйвер канального протокола МС.SYS командой LOAD MC и запустить программу тестирования командой R M2. Программа тестирования имеет ряд команд для управления режимом ее работы, команды выполняются при нажатии на соответствующие клавиши терминала: W - разрешить передачу кадра R - разрешить прием кадра V - запретить передачу P - запретить прием Е - завершить работу Нормальная работа теста обеспечивается при работе в сети не менее двух станции с программой тестирования. При разрешенных приеме и передаче признаком нормального функционирования сети является появление на терминале ЭВМ картины состоящей из точек и тире ...-...-...-, причем данная картина должна быть регулярной и период повторения должен быть равен числу проверяемых станций. 3. Сетевой адрес Каждая стнция ЛВС имеет свой адрес, выставляемый на переключателях СА или задаваемый программно командой "SET MC ADDR=XX", где XX адрес в восьмеричном представлении. Адрес, установленный на переключателях СА, печатается в момент входа в тестовый режим(см. выше). Если командой "SET MC .." установлен адрес 00, то реальный адрес будет взят с переключателей СА. Если адрес, заданный командой "SET MC ..." не равен 00, то он и будет реальным адресом, а состояние переключателей будет игнорироваться. При этом следует учитывать что установка "SET MC ..." производится на диске, а не в оперативной памяти. Поэтому после установки нового адреса надо выгрузить (UNLOAD MC) и снова загрузить (LOAD MC) драйвер MC.SYS. Для нормальной работы MC.SYS требуется чтобы ВСЕ машины имели бы разные адреса. 4. Драйвер удаленного доступа VК.SYS. Драйвер VК.SYS осуществляет доступ к дискам центральной машины (или любой другой, на которой запущена программа FTSUK.SAV). Драйвер VК.SYS передает запрос программе MC.SYS, оторая связывается через сетевой адаптер и линии связи с MC.SYS центральной машины и через программу FTSUK.SAV - с диском этой машины. Естественно, что в VК.SYS должна содержаться информация о том, на какой из машин запущена программа FTSUK.SAV. Адрес соответствующей станции сети задается командой "SET VК HOST=XX", где XX - восьмеричный м адрес. Этот адрес должен совпадать с адресом, установленным на переключателях СА центральной машины. Если такого соответствия нет, необходимо использовать команду "SET MC ..." на центральной машине. Неправильная установка HOST-параметра драйвера VК.SYS приводит зависанию на этапе загрузки. � 5. Процесс загрузки файла в абсолютном двоичном формате. Для загрузки файла XXXXXX.SAV на системном диске должны содержаться программы: FTSUK.SAV, MC.SYS, MC.LDA, BOTUK.SAV. Необходимо произвести следующие действия. 1. Установить нулевой адрес. (Допускается устанавливать любой другой адрес, но только не совпадающий с адресом периферийной машины.) (SET MC ADDR=00) 2. Загрузить драйвер MC.SYS (LOAD MC) 3. Установить системное устройство устройством по умолчанию (ASS SY: SYS:). 4. Запустить программу FTSUK.SAV и в ответ на запрос имени файла (SAV FILE NAME>) набрать имя XXXXXX. Расширение .SAV указывать не обязательно т.к. оно берется "по умолчанию". Файл должен находиться на устроустве с логическим именем SYS: (в данном случае оно совпадает с системным устройством). 5. На периферийной машине установить режим загрузки из сети. При этом начальный загрузчик периферийной машины будет переписан в ОЗУ и запущен. Он выдаст запрос начальной загрузки, который воспримет программа FTSUK.SAV на центральной машине. При этом в ОЗУ центральной машины считываются BOTUK.SAV и MC.LDA, которые передаются в периферийную машину и размещается с адреса 50000: сначала BOTUK, затем MC. Управление получает программа BOTDVK. Она перемещает себя и MC в адреса 150000 и настраивает вектор прерывания в MC. После этого через драйвер MC выдается запрос на загрузку файла. Программма FTSUK.SAV воспринимает этот запрос и передает содержимое файла программе BOTUK в периферийную машину. BOTUK размащает файл с адреса 000000, сохраняя ыектор прерывания MC драйвера. После настройки стека по содержимому 42 ячейки управление передается по адресу, указанному в ячейке 40. Программа БОТUK кроме функции загрузки также обеспечивает нормальную работу исполняющих систем FORTRAN-4 и PASCAL, что позволяет выполнять программы написанные на этих языках и не требующие операций ввода/вывода ( кроме работы с терминалом ) без загрузки ОС на периферийные машины. 6. Процесс загрузки ОС RT-11. Для загрузки ОС на периферийные машины необходимо: 1. Наличие на диске монитора операционной системы RT11JJ.SYS и драйвера удаленного доступа VK.SYS. 2. Установить адрес станции главной машины командой SET VM HOST=XX. Назначить лоагические имена устройствам (ASS SY SYS, ASS SY SY0, ASS DK SY1). При этом следует иметь в виду, что операционная система будет загружаться с устройства с именем SY0, следовательно необходимо наличие на этом устройстве программ, необходимых для работы ОС RT-11. 3. Запустить программу FTSUK.SAV на главной машине. В ответ на запрос SAV FILE NAME> ввести имя файла загрузчика ОС RTBOOT.SAV (предполагается, что файл загрузчика находится на устройстве с именем SYS:). 4. Перевести периферийные ЭВМ в режим загрузки. Абсолютный загрузчик определит, что начинается процесс загрузки ОС и выдает сообщение ?BOOT-I-RT-11 bootstrap process. Файл монитора операционной системы должен находиться на устройстве SY0: под именем RT11JJ.SYS. Следует отметить, что этот монитор отличается от обычного � SJ монитора тем, что в нем установлена новая граница поиска конца памяти (150000 вместо 160000) и в карте защиты памяти запрещена запись в ячейки 360...366. После загрузки монитора на периферийной машине запускается командный фаил STARTS.COM, который ДОЛЖЕН СОДЕРЖАТЬ КАК МИНИМУМ СЛЕДУЮЩИЕ КОМАНДЫ: SET USR NOSWAP SET EXIT NOSWAP SET TT SCOPE Этот файл должен находиться на устройстве SY0:. После завершения процесса загрузки с периферийной машины доступны диски главной машины. Именам устройств VКn: на периферийной машине соответствуют имена SYn: на главной машине. Программная реализация доступа к среде передачи в ЛВС Micronet (МАС-уровень). 1. Введение. Ниже описан метод доступа к сетевому драйверу из программ пользователя, если он не хочет использовать средства файлового обмена, предоставляемые сетевым програмным обеспечением ЛВС Micronet. На программы МАС-уровня в ЛВС Micronet возлагаются функции безошибочного приема и передачи кадров и восстановление целостности сети при сбоях в среде передачи и реконфигурации. На станции, подключенной к кольцу, программы МАС-уровня должны постоянно находиться в памяти. Поскольку они могут использоваться различными программами их целесообразно оформить в виде драйвера МС в операционной системе RT-11 (или совместимой с ней ОС). Для использования программ МАС-уровня драйвер должен быть загружен с помощью команды монитора LOAD MC , при работе в режиме удаленной загрузки нет необходимости явно загружать драйвер канального протокола, так-как он является системным. Для осуществления доступа к среде передачи необходимо обращаться к подпрограммам входящим в состав этого драйвера. Поскольку драйвер может быть загружен в произвольную область оперативной памяти, то адреса подпрограмм также не фиксированы. Однако после загрузки драйвера ОС устанавливает связанный с ним вектор прерывания. Непосредственно перед началом программы обработки прерывания распологаются смещения от начала программы обработки прерывания до начала соответствующей подпрограммы. 2. Интерфейс сетевого драйвера. Схема построения интерфейсной части МС драйвера: . . . .WORD SUBR.N - INTRPT . . . .WORD SUBR.2 - INTRPT .WORD SUBR.1 - INTRPT �INTRPT: . . . RTI SUBR.1: . . . RTS PC . . . SUBR.N: . . . RTS PC . . . Для вызова подпрограммы с номером N можно воспользоваться макрокомандой CALLMC: .MACRO CALLMC N MOV @#360, R1 ADD -2*N(R1), R1 JSR PC, (R1) .ENDM CALLMC Здесь 360 - адрес вектора прерывания связанный с сетевым адаптером, а N - номер попрограммы. Примеры обращения к макрокоманде CALLMC: CALLMC 1 CALLMC 3 Можно также зараниее вычислить адреса подпрограмм: MOV @#360, R0 MOV R0, R1 MOV #S.1, R2 MOV #K, R3 1$: MOV R0, (R2) ADD -(R1), (R2)+ SOB R3, 1$ . . . S.1: .WORD 0 S.2: .WORD 0 . . . S.K: .WORD 0 И обращаться к ним таким образом: JSR PC, @S.1 JSR PC, @S.4 Здесь К - общее число подпрограмм (в нашем случае 6). � 3. Описание подпрограмм. Для передачи информации в подпрограммы используется R0. В случае неправильного обращения к ним устанавливается бит С и в R0 возвращается код ошибки. Подпрограмма: NETON Номер: 1 Функция: Подключение станции к сети. Вход: нет Выход: R0 - сетевой адрес станции. Ошибки: нет Подпрограмма: NETOFF Номер: 2 Функция: Отключение станции от сети. Вход: нет Выход: нет Ошибки: нет Подпрограмма: RFRAME Номер: 3 Функция: Запрос на прием кадра. Вход: R0 - адрес управляющего блока запроса. Выход: нет Ошибки: бит С установлен, R0=0 - такой запрос уже есть. R0=1 - ошибка в параметрах. Подпрограмма: WFRAME Номер: 4 Функция: Запрос на передачу кадра. Вход: R0 - адрес управляющего блока запроса. Выход: нет Ошибки: бит С установлен, R0=0 - такой запрос уже есть. R0=1 - ошибка в параметрах. Подпрограмма: RCANCL Номер: 5 Функция: Запрос на отмену приема кадра. Вход: нет Выход: нет Ошибки: бит С установлен, R0=0 - нет соответствующего запроса. Подпрограмма: WCANCL Номер: 6 Функция: Запрос на отмену передачи кадра. Вход: нет Выход: нет Ошибки: бит С установлен, R0=0 - нет соответствующего запроса. МАС-уровень может одновременно обрабатывать не более одного запроса на передачу и на прием кадров. � При выдаче запроса на передачу или на прием через R0 передается адрес управляющего блока. Управляющий блок при Управляющий блок при приеме кадра: передаче кадра: --------------------- -------------------- ! FSB 1! FCB 0! ! FSB 1! FCB 0! --------------------- -------------------- ! FADR 3! RADR 2! ! RETRY 3! RADR 2! --------------------- -------------------- ! BUFFER . 4! ! BUFFER . 4! --------------------- -------------------- ! RSIZE . 6! ! RSIZE . 6! --------------------- -------------------- ! FSIZE . 10! --------------------- Назначение отдельных полей управляющих блоков: 7 6 5 4 3 2 1 0 F C B - --------------------------------- Frame Control Byte - ! Р Е З Е Р В ! байт управления. ! . . . . . . . ! --------------------------------- 7 6 5 4 3 2 1 0 F S B - --------------------------------- Frame Status Byte - !RDY! Б И Т Ы О Ш И Б О К ! байт состояния ! ! . . . . . . ! --------------------------------- RDY - бит готовности, который устанавливается после отработки запроса. Если запрос не может быть выполнен, то кроме бита RDY, устанавливаются биты ошибок. R A D R - при приеме кадра - адрес станции-отправителя, или 377 при приеме "ото всех". - при передаче кадра - адрес станции-получателя, или 0 при передаче "всем". F A D R - при приеме кадра - адрес станции-отправителя принятого кадра (фактический). R E T R Y -при передаче кадра - число повторов при неудачной передаче. При RETRY=0 берется число повторов определенное в МАС-уровне. B U F F E R - адрес области памяти с передаваемой/принимаемой информацией. � R S I Z E -при приеме кадра - максимальный размер принимаемого кадра. -при передаче кадра - размер передаваемого кадра. F S I Z E -при приеме кадра - фактический размер принятого кадра. Для того, чтобы передаваемый кадр был принят, должны быть выполнены следующие условия: - станция-получатель присутствует в сети и подключена к ней. - станция-получатель имеет запрос на прием кадра от станции- отправителя или "ото всех". - размер передаваемого кадра не превосходит максимального размера кадра указанного в запросе. - при приеме кадра не обнаруженно ошибок в контрольной сумме. При нарушении хотя бы одного из этих условий передача считается неудачной. Запрос на прием или передачу кадров может быть отвергнут, если за заданное число попыток не удалось восстановить целостность кольца. После выдачи запроса на прием или передачу кадра, необходимо дождаться появления бита RDY в байте FSB управляющего блока запроса и проверить биты ошибок в байте FSB. Если хотя бы один из них отличен от 0, то запрос выполнен с ошибкой. Запрос на отмену приема или передачи отрабатывается не сразу, поэтому после него также необходимо дождаться появления бита RDY в байте FSB управляющего блока запроса.