RJE: распределенные вычисления эпохи мезозоя
Говорят, что современная технология разделения ресурсов в концепции ЦОД берет свое начало с появления RJE — Remote job entry, или удаленной пакетной обработки. Утверждение спорное, однако сам по себе механизм RJE интересен прежде всего с исторической точки зрения, поскольку его можно считать как минимум предтечей различных терминальных систем. Вот об этом механизме, а также об использовавшем его железе мы сегодня и поговорим.
Благословенные шестидесятые — эпоха рок-н-ролла, космических полетов и зарождения культуры хиппи. На мировой эстраде безраздельно царствовали The Beatles, а в вычислительных центрах — огромные мейнфреймы. Если в зарубежных странах что-то и можно было назвать дефицитным, так это — машинное время, которого не хватало на всех желающих. В качестве одного из вариантов решения этой проблемы и появилась технология Remote job entry (или Remote Batch) — с ее помощью к мейнфрейму подключались удаленные терминалы, операторы которых могли отправлять на мейнфрейм задания и получать результат их обработки.
Терминалы могли располагаться как в одном помещении с мейнфреймом, и подключаться к нему с использованием проводного соединения, так и в другом здании, или даже другом городе — в этом случае соединение устанавливалось с помощью модема. Основное отличие технологии RJE от современных способов терминального доступа заключалось в том, что данные отправлялись на мейнфрейм не по одной команде, а целым пакетом. Соответственно, оператор получал результат обработки всего задания, и не имел возможности отслеживать выполнение отдельных команд.
Полная поддержка Remote job entry была впервые реализована в виде отдельного компонента в операционной системе OS/360 (IBM System/360 Operating System), разработанной корпорацией IBM в 1964 году для мейнфрейма System/360.
Компьютеры этого семейства серийно выпускались с 1965 по 1978 годы, и представляли собой довольно разные машины как по архитектуре, так и по своим функциональным возможностям. Самый первый мейнфрейм этой серии, анонсированный в 1964 году — Model 30 — мог выполнять до 34 500 инструкций в секунду и оснащался памятью объемом от 8 до 64 Кбайт. Оператор компьютера имел полный контроль над потоком заданий между рабочей станцией и мейнфреймом, в зависимости от локальной конфигурации и политики, и мог управлять им.
Ранние рабочие станции с поддержкой RJE были непрограммируемыми устройствами, использующими протоколы байт-синхронной связи. Как правило, соединение осуществлялось с использованием разработанного IBM протокола Synchronous transmit-receive (STR), который работал в режиме «точка-точка» и обеспечивал передачу данных со скоростью до 5100 символов в секунду по полудуплексным или полнодуплексным линиям связи. Позже ему на смену пришел более продвинутый символьно-ориентированный полудуплексный протокол BSC или Bisync, представленный IBM в 1967 году. Затем его сменил Houston Automatic Spooling Priority (HASP) — отдельный компонент операционной системы OS/360 и ее преемников, обеспечивавший расширенную поддержку управления заданиями, данными, задачами и удаленный ввод команд. Совместно с этой программой в качестве терминалов стали использоваться программируемые устройства или небольшие компьютеры. Еще позже рабочие станции RJE перешли на бит-ориентированные полнодуплексные протоколы, такие как IBM Synchronous Data Link Control, HDLC или X.25. В настоящее время все эти протоколы считаются устаревшими и уже давно не используются.
Одними из самых известных терминалов с поддержкой RJE считаются IBM RJE 2780 и IBM 3780 с поддержкой протокола BSC. Они использовались для установки соединения с мейнфреймами по телефонной линии.
Модель 2780 впервые была представлена в 1967 году — это довольно большое устройство, включавшее в себя несколько модулей: линейный принтер, способный печатать со скоростью до 240 строк в минуту с использованием чрезвычайно ограниченного набора символов, устройство считывания/перфорирования карт со скоростью чтения 400 перфокарт в минуту, линейный буфер памяти, в котором хранятся данные, полученные или подлежащие передаче по линии связи, и, наконец, двоичный синхронный адаптер, управляющий потоком передаваемых в телефонную линию данных и выполняющий функции модема. К устройству можно было подключить клавиатуру для ввода символов, а также ряд дополнительных периферийных устройств. Среди них — магнитный регистратор данных, устройство для чтения и перфорации бумажной перфоленты, дисплейная станция и другие модули.
Более продвинутый терминал модели 3780 корпорация IBM представила в мае 1972 года. Этот терминал представлял собой улучшенную версию модели 2780, но с более быстрым модулем чтения перфокарт (до 600 карт в минуту) и поддержкой двойной буферизации. Встроенный принтер также был усовершенствован: он достигал скорости печати до 300, 350 или 425 строк в минуту в зависимости от набора символов (63, 52 или 39 символов). В IBM 3780 были встроены усовершенствованные механизмы проверки ошибок, обеспечивающие целостность данных при передаче между терминалами и мейнфреймами. Улучшенные алгоритмы проверки ошибок и более быстрая передача данных сделали IBM 3780 подходящим устройством для критически важных приложений, где точность и скорость обмена информацией имеют первостепенное значение.
Позже, в 1974 году, подразделение IBM Data Processing Division (DPD) представило преемника 3780, получившего название 3770 Data Communications System. Это устройство поддерживало протоколы SDLC, BSC, BSC Multi-leaving и SNA. В отличие от своих предшественников, IBM 3770 представлял собой настольный терминал, состоящий из клавиатуры и принтера, модема, а также модуля для подключения устройств ввода-вывода.
К терминалу можно было подключить устройство для считывания перфокарт, а принтер демонстрировал скорость печати до 40 символов в секунду (позже появились модификации со «скорострельностью» 80 и 120 символов в секунду). Более поздние модели комплектовались монохромным дисплеем на 480 символов и несъемным магнитным диском.
Использовавшие технологию RJE терминалы 2780 и 3780 сыграли важную роль в развитии компьютерных коммуникаций на начальном этапе их эволюции, и широко использовались в различных отраслях промышленности, а также научными организациями для взаимодействия с компьютерами-мейнфреймами. Это было особенно полезно для предприятий, у которых отсутствовала возможность обзавестись собственным компьютером, если при этом им требовалось задействовать ЭВМ в своих рабочих процессах. IBM 2780 и 3780 широко использовались для обмена данными между филиалами и удаленными центрами обработки данных. Банки и финансовые учреждения применяли эти терминалы для обработки транзакций и управления счетами клиентов. Данные устройства сыграли важную роль в развитии электронных банковских систем.
Если IBM 2780 заложил основу для удаленной передачи задач и обмена данными, то IBM 3780 обеспечил более высокую скорость связи, проверку ошибок и расширенную поддержку дополнительных протоколов. Эти терминалы заложили фундамент технологии компьютерных сетей и распределенных вычислений в 60-х и 70-х годах.
RJE появилась в 60-х как ответ на растущую потребность в удаленной обработке данных. Технология Remote job entry была разработана с целью увеличить количество пользователей ЭВМ за счет подключения удаленных рабочих мест с минимальными финансовыми затратами. Предприятия, учебные заведения и правительственные учреждения использовали системы RJE для выполнения пакетных заданий без необходимости присутствия в вычислительном центре, где установлен мейнфрейм. Переданные через терминалы RJE задания помещались в очереди, и центральный компьютер обрабатывал их в соответствии с приоритетами и имеющимися вычислительными ресурсами.
С развитием вычислительной техники пользователям все чаще требовалось взаимодействие с компьютерами в режиме реального времени. Переход к интерактивным вычислениям снизил зависимость от пакетной обработки, и в результате потребность в системах RJE отпала. А эволюция сетевых технологий, в том числе, развитие клиент-серверных архитектур и распределенных вычислений, предоставила альтернативные решения, превосходящие возможности пакетной обработки заданий. Это окончательно поставило крест на RJE, и технология ушла в историю.
Тем не менее, сама концепция удаленной передачи заданий в той или иной форме сохранилась и по сей день, что служит еще одним подтверждением той основополагающей роли, которую она сыграла в формировании современного IT-ландшафта. Сегодняшние распределенные вычислительные системы, используемые в облачных архитектурах и ЦОД, появились на свет не в результате дефицита и дороговизны вычислительных ресурсов, а как инструмент, способный предоставлять доступ к масштабируемым и гибко настраиваемым сервисам через Интернет. Однако удаленное управление с использованием терминального доступа, правда, в режиме реального времени, в подобных архитектурах используется довольно широко. Можно ли считать RJE предком современных терминалов и используемых ими протоколов передачи данных? Ровно в той же степени, в которой шимпанзе считается предком современного homo sapiens.
Статья поддерживается командой Serverspace.Serverspace — провайдер облачных сервисов, предоставляющий в аренду виртуальные серверы с ОС Linux и Windows из любой точки мира менее чем за 1 минуту. Для построения ИТ-инфраструктуры провайдер также предлагает: создание сетей, шлюзов, бэкапы, сервисы CDN, DNS, объектное хранилище S3.
IT-инфраструктура | Кешбэк 17% по коду HABR