Рис.5. Сетевая архитектура нового матобеспечения УВК БТА.
Программа-сервер (главная управляющая программа) всегда располагается на главном управляющем компьютере телескопа acs1, включенном в IP-сеть САО (локальный сегмент Интернета). Интерфейсные программы-клиенты могут располагаться на других компьютерах, включенных в эту сеть. Для этого необходимо распространение межпрограммного интерфейса по сети из acs1 в другие компьютеры. То есть необходимо, с одной стороны, передать блок общей памяти из acs1 в другие компьютеры, а с другой - передавать в acs1 команды, генерируемые программами-клиентами.
Для этой цели разработана специальная программа, организующая все сетевое взаимодействие. Она назывется bta_control_net. Для организации передачи программа использует UDP - протокол, т.е. передача пакетов-дейтаграмм, без организации связей. На главном управляющем компьютере acs1 она запускается как программа-клиент. При этом она передает в сеть пакеты с информацией из блока общей памяти, т.е. информацию о состоянии телескопа и ожидает пакеты с командами, которые она передает в соответствующий канал команд главной управляющей программы. На всех остальных компьютерах программа запускается в режиме сервера, т.е. заменяет собой, для программ-клиентов, главную управляющую программу. При этом она запаковывает полученные команды вместе с номером канала в пакеты, которые отправляет по адресу acs1 и ждет пакеты с информацией от acs1, которые записывает в блок общей памяти. Варианты ее запуска:
IP- адрес формируется как broadcast - адрес текущей сети типа С (например: 192.168.3.255);
IP-адрес (номер группы) формируется как 239.0.Nсети.Nкомпьютера. Например, для acs1 (IP=193.168.3.56) это 239.0.3.56.
ttl (time-to-live) - это "глубина'' распространения по сети (1,2,3...).
Необязательный параметр McastAddr позволяет задать адрес multicast-группы явно. Например, bta_control_net multicast:239.0.8.7;
Необязательный параметр sync заставляет программу посылать sync-пакеты по адресу hostname, т.е. это для удаленной связи с вариантом bta_control_net remote.
Программа принимает как broadcast так и unicast пакеты. Для приема multicast-пакетов адрес группы формируется автоматически из hostname как описано выше;
Примечание: В настоящее время, после организации удаленного рабочего места оператора в ком. 204, общая архитектура выглядит несколько сложнее. Компьютер рабочего места оператора acs5 является ретранслятором сетевых пакетов для главного управляющего компьютера acs1. Он имеет два сетевых интерфейса. Одним он связан с общей сетью САО, а другим - с acs1. На нем загружены две программы bta_control_net. Одна в режиме сервера для объмена с acs1, а другая в режиме клиента для связи с компьютерами наблюдателей. Таким образом для компьютеров наблюдателей acs5 выглядит как главный управляющий компьютер.