Используемые средства транспортного уровня
Будем называть задачу на внешней машине, созданную с целью реализации службы ввода заданий в основную машину, задачей ввода внешней машины (ЗВВМ), задачу в основной машине, созданную с той же целью, - задачей ввода основной машины (ЗВОМ). Задачу в основной машине, созданную с целью вывода результатов выполнения задания на основной машине, назовем задачей вывода основной машины (ЗВЫОМ), а аналогичную задачу на внешней машине - задачей вывода внешней машины (ЗВЫВМ). Данные задачи взаимодействуют между собой, используя транспортный уровень сетевого программного обеспечения. Формально ЗВВМ и ЗВЫВМ могут быть и не задачами в смысле ОС ВМ, а, например, процессами, но они будут абонентами транспортной службы, поэтому будем называть их задачами.
Для пересылки пакетов, содержащих файлы задания, в основную машину устанавливается транспортное соединение между портами ЗВВМ и ЗВОМ. Активной стороной этого транспортного соединения является ЗВВМ. Число ЗВВМ на каждой внешней машине протоколом не устанавливается. Число ЗВОМ или число портов у ЗВОМ, через которые будут устанавливаться транспортные соединения для ввода заданий, тоже протоколом не оговаривается. При установлении соединения ЗВВМ не знает, устанавливается соединение с единственным портом ЗВОМ или с одним из многих. Но ЗВВМ должна быть спроектирована таким образом, чтобы она могла самостоятельно решать конфликт при попытке установить соединение с занятым портом. Транспортная служба инициативу на установление транспортного соединения будет не отбрасывать (без сообщения об этом транспортной службе активной стороны), а отвергать специальным служебным сообщением. Поэтому ЗВВМ должна при неудаче в установлении соединения повторять свои попытки, устанавливая тайм-аут.
ЗВОМ будет образовываться при попытке установить соединение с ее портом.
Для вывода результатов выполнения задания на основной машине устанавливается транспортное соединение между ЗВЫОМ и ЗВЫВМ.
Активной стороной этого транспортного соединения является ЗВЫОМ. По умолчанию вывод результатов происходит на ту внешнюю машину, откуда поступило задание. Направление вывода можно изменить средствами языка управления заданиями основной машины. Число ЗВЫОМ протоколом не определяется, но их не больше одной для каждой внешней машины. Распараллеливать поток вывода на одну внешнюю машину не имеет смысла, так как узким местом этого вывода будет оперативная и внешняя память внешней машины, которые должны будут делить свою производительность между потоками вывода. Поэтому в основной машине будет организована очередь вывода на каждую внешнюю машину.
По установленному транспортному соединению пакеты с заданиями (или результатами) передаются как фрагменты сообщения-вопроса, сообщения-ответы используются для подтверждения приема пакета или извещения о сбое.
Инициатором терминации транспортного соединения в случае отсутствия сбоев является активная сторона. При обнаружении сбоя соединение может терминировать пассивная сторона.