Научная статья на тему 'Применение пакета файлового обмена kermit для взаимодействия традиционных систем автоматизации на базе разнородной вычислительной техники'

Применение пакета файлового обмена kermit для взаимодействия традиционных систем автоматизации на базе разнородной вычислительной техники Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
180
52
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Брусиловский Л. И., Отливанчик Е. А., Отливанчик М. А., Равдин В. В., Сагателян Д. М.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Брусиловский Л. И., Отливанчик Е. А., Отливанчик М. А., Равдин В. В., Сагателян Д. М.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Применение пакета файлового обмена kermit для взаимодействия традиционных систем автоматизации на базе разнородной вычислительной техники»

Jl.И. Брусиловский, Е.А. Отливаичик, М.А. Отливанчик, В. В. Равдин, Д.М. Сагателян, С. А. Самойлова, В. В. Скляров, В. В. Твердое

ПРИМЕНЕНИЕ ПАКЕТА ФАЙЛОВОГО ОБМЕНА КЕЯМ1Т ДЛЯ ВЗАИМОДЕЙСТВИЯ ТРАДИЦИОННЫХ СИСТЕМ АВТОМАТИЗАЦИИ НА БАЗЕ РАЗНОРОДНОЙ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

ТРАДИЦИОННЫЕ СИСТЕМЫ АВТОМАТИЗАЦИИ ИНСТИТУТА

Современный уровень научных учреждений во многом характеризуется степенью автоматизации их научной, административной и хозяйственной деятельности, освобождающей персонал от рутинной работы. В настоящее время номенклатура серийно выпускаемых средств вычислительной техники (СВТ) позволяет выбрать наиболее подходящие ЭВМ с точки зрения специфики решаемых задач и с учетом их стоимости [1]. Однако объединение СВТ в единый вычислительный центр (ВЦ) для большинства научных учреждений нерационально или невозможно, и потому парк СВТ институтов зачастую состоит из разнородной техники, распределенной на территории в 1-2 км.

Так, в отделе обработки сигналов ИОФАН, традиционно занимающемся задачами автоматизации на уровне института, в настоящее время сложились следующие функционально независимые системы автоматизации:

— система автоматизации общих служб института (отдел снабжения, плановый отдел, отдел кадров и т.п.) на базе ЭВМ Eclipse S/200 и Nova 3 фирмы Data General Corp.;

— многотерминальные системы общего пользования на базе ЭВМ Eclipse М/600 и СМ-1600;

— система автоматизации физического эксперимента на базе ЭВМ Nova 4 и MicroNova и персональных измерительно-вычислительных комплексов (ПИВК);

— инструментальная система автоматизации и графическая станция на базе ЭВМ LSI-11/23 Plus;

— инструментальные системы на базе персональных компьютеров;

— распределенная система персональных рабочих мест на базе ЭВМ типа "Правец-82".

В этих условиях важной становится задача организации взаимодействия перечисленных систем для надежного хранения данных и прикладных программ, коллективного использования дефицитной периферии, коллективного сбора и обработки информации. Традиционно для решения подобных задач используются разнородные локальные сети. Однако известные в настоящее время сетевые пакеты (например, сети DECnet, Ethernet, Internet [2, 3]) характеризуются хотя бы одним из недостатков:

— избыточностью;

— часто неудобным для пользователя интерфейсом;

— необходимостью использовать специальную аппаратуру;

— ограниченными возможностями при работе с разнородной техникой.

Поэтому большой интерес вызвало появление пакета KERMIT [4], обеспечивающего простыми средствами обмен файлами между разнородными ЭВМ. Применение этого пакета в ИОФАН позволило организовать хранение данных, подготовленных на ПИВК, ЭВМ Eclipse М/600. и решить проблему подготовки текстов и документации в рамках существующих систем автоматизации.

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

ОСНОВНЫЕ ХАРАКТЕРИСТИКИ ПАКЕТА

Протокол KERMIT разработали и реализовали в Columbia University Center for Computing Activities (CUCCA) в 1981-1982 гг. Bill Catching и Frank da Cruz [4]. Идея протокола заключается в том, что две машины связываются через свои терминальные порты, причем одна из них (или обе) эмулирует терминал другой. Это легко осуществить, так как практически для любой ЭВМ связь с терминалом реализована стандартным образом как аппаратно (разъем и сигналы по стандарту EIA RS-232), так и программно (обмен ASCII кодами). В этом случае на обоих концах линии могут быть запущены программы KERMIT, поддерживающие протокол обмена.

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

Для передачи файлов требуется запустить программу KERMIT с обеих сторон и выполнить с одной стороны команду SEND, а с другой - RECEIVE (или наоборот).

Для того чтобы в любой момент идентифицировать режим работы, в KERMIT принята система подсказок — строк символов, указывающих, в какой операционной системе идет работа. Так, например, для PC DOS подсказка KERMIT-86), а для RSX-11 подсказка KERMIT-11>.

РЕЖИМ SERVER

ПРОТОКОЛ ОБМЕНА

Протокол обмена обеспечивает:

— взаимную конфигурацию системы, согласующую параметры линии с обеих сторон;

— передачу пакетов данных с подтверждениями;

— обнаружение ошибок и помех в линии связи.

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

РЕЖИМЫ РАБОТЫ

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

В настоящее время для различных ЭВМ и операционных систем существует ряд реализаций протокола KERMIT. Помимо базовых возможностей удобным расширением является понятие SERVER. Это программа, которая взаимодействует не с удаленным пользователем, а с другой программой KERMIT. В данном случае весь диалог с удаленным компьютером можно вести со своего локального узла в локальном режиме, один раз запустив SERVER на удаленном компьютере. С помощью SERVER можно неоднократно передавать и принимать файлы без процедуры перехода в режим виртуального терминала и возвращения обратно. Кроме этого, он позволяет получать каталог диска удаленной машины, стирать файлы, определять наличие свободного места на диске и т.п. Вместо команд SEND/RECEIVE при работе в режиме SERVER используются команды GET и RECEIVE.

СТАНДАРТНЫЕ ТИПЫ СВЯЗИ

Протокол КЕ11М1Т обеспечивает двухточечное соединение компьютеров. В то же время можно выделить три типа связи, характеризующихся рядом особенностей (как это принято, многотерминальную систему мы будем называть хост-системой [2]).

Хост - ПК. Это традиционный тип связи, поддерживаемый протоколом. Со стороны многотерминальной хост-системы один из портов выделяется для связи с ПК, причем номер терминальной линии

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

Хост — хост. В этом случае для каждой из систем нужно определить связные терминальные линии. Причем организовать файловый обмен можно двумя способами:

1. Через промежуточный ПК, сведя этот тип связи к предыдущему.

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

ПК — ПК. ПК характеризуется часто тем, что принимает команды только со своей клавиатуры и не может иметь второго терминала. Тем не менее и в этом случае пакет KERMIT может быть использован для обмена файлами, однако работу приходится вести параллельно на двух машинах, например, выполняя на одной из них команду SEND, а на другой - RECEIVE.

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

ТИПЫ ПЕРЕДАВАЕМЫХ ДАННЫХ

Хотя в базовой реализации протокола KERMIT предусмотрен обмен только символьными файлами, большой интерес представляет возможность передачи двоичных файлов. Однако некоторые терминальные интерфейсы и операционные системы не поддерживают 8-битовую передачу по терминальным линиям связи. Тем не менее для большинства широко распространенных типов машин такая возможность имеется (например, для PDP-11, IBM 370, IBM PC). В ряде случаев (например, для ЭВМ фирмы Data General) двоичный обмен можно получить сравнительно простым изменением в исходном коде программы KERMIT.

СЦЕНАРИЙ СЕАНСА СВЯЗИ

Типичный сценарий сеанса связи мы рассмотрим для соединения типа хост — ПК. Ряд конкретных случаев (соединение компьютеров IBM PC с Eclipse М/600 и микроЭВМ, совместимых с "Элект-роникой-60") рассмотрен в других работах [5, 6].

Прежде всего пользователь ПК должен войти в операционную систему своей машины и запустить у себя программу KERMIT в локальном режиме. Задав, если нужно, с помощью специальных команд параметры линии связи, ПК по команде CONNECT становится виртуальным терминалом хост-машины. После этого пользователь ПК может зарегистрироваться для работы в хост-системе. Естественно, что получаемые в его распоряжение ресурсы лежат в пределах установленных привилегий. Для организации файлового обмена пользователь должен запустить на хост-системе программу KERMIT. Пусть требуется передать файл с хост-машины на ПК. В этом случае пользователь выполняет на хост команду SEND с указанием имени передаваемого файла, например SEND *. FOR. для передачи всех файлов с расширением имени FOR. После этого через последовательность выхода следует вернуться в локальный KERMIT и выполнить команду RECEIVE. Процесс передачи пакетов сопровождается индикацией на терминале с указанием имени передающегося файла, номера передающегося пакета и количества повторов в случае ошибочной передачи пакета. По завершении передачи файла выдается соответствующее сообщение.

Для передачи файла с ПК на хост нужно на хост выполнить команду RECEIVE, вернуться через последовательность выхода в ПК и дать команду SEND <имя файла).

ВВОД В ЭКСПЛУАТАЦИЮ ПАКЕТА

В настоящее время пакет KERMIT реализован практически для всех типов ЭВМ и операционных систем. В дистрибутивный набор входят исходные тексты, что позволяет модифицировать программы и переносить их на новые машины. В состав документации входит руководство пользователя и описание протокола [4, 7]. В таблице приведена информация о дистрибутивном наборе для 5-й редакции.

ЭВМ Операционная система Язык реализации

IBM серии 370, ЕС ЭВМ VM/CMS, MVS/TSO IBM Assembler

IBM серии 370, ЕС ЭВМ MTS Паскаль

CDC Cyber 170 NOS Фортран-77

Sperry/Univac-1100 EXEC EXEC ASSEMBLER

Honeywell Multics PL/1

DEC VAX-11, CM-1700, VMS BLISS-32, MACRO-32

Электроника-82

DEC PDP-11, CM ЭВМ, RT, RSX, RSTS, MUMPS MACRO! 1

Электроника-60

VAX, PDP-11, CM ЭВМ, UNIX С

Электроника

DEC PR0 300 SERIES P/OS BLISS-16, MACRO ! 1

Электроника-85

PRIME PRIMOS PL/P

HP-1000 RTE Фортран

HP-3000, Univac Software Tools Ратфор

Data Genera] AOS Ратфор

Data General RDOS Фортран

8080, 8085, Z80 CP/M-80 DR ASM

8086, 8088 PC-DOS, MS-DOS MS MASM-86

8086, 8088 CP/M-86 DR ASM86

Apple 2 6502 Apple DOS DEC-10/20 CROSS

ATARI Home Computer DOS Разрабатывается

ЛИТЕРАТУРА

1. Номенклатурный справочник к заявке 5-13 на 1987 г. М.: АН СССР, ЦАС, 1986.

2. Бойченко Е.В., Кальфа В., Овчинников В.В. Локальные вычислительные сети. - Радио и связь, 1985.

3. Брусиловский Л. И., Сагателян Д.М. О выборе архитектуры и программного обеспечения для систем автоматизации научных исследований./Тез. докл. 10-й Всесоюзной школы-семинара по вычислительным сетям. Москва-Тбилиси, 1985.

4. Frank da Cruz. Kermit Users Guide. Fifth Edition. CUCCA, New York, 2 March. 1984.

5. Брусиловский Л.И., Гаврючков A.B., Скляров B.B. Особенности применения пакета KERMIT для передачи файлов в операционной среде RT-11. - В сб.: Компьютерная оптика, вып. 2. Автоматизация проектирования и технологии. - М.: МЦНТИ, 1987.

6. Отливанчик М. А., С а м о й л о в а С.А., Твердое В. В. Опыт реализации и использования протокола KERM1T для связи персонального компьютера и мини-ЭВМ. - В сб.: Компьютерная оптика, вып. 2. Автоматизация проектирования и технологии. - М.: МЦНТИ, 1987.

7. Frank da Cruz. Kermit Protocol Manual. Fifth Edition. CUCCA. New York, 3 April, 1984.

i Надоели баннеры? Вы всегда можете отключить рекламу.