Россия, Казань, Казанский Национальный Исследовательский Технический Университет |
Протокол UUCP
Передача данных
Как уже упоминалось ранее, ведущий компьютер управляет потоком данных, которые передаются через UUCP-соединение. После завершения фазы подтверждения открытия соединения ведущий компьютер берет управление сеансом на себя и выдает ведомому команды. Для управления работой ведомого компьютера имеется пять команд. Они показаны на рис. 9.2 с направлением действия.
Команда для передачи файла
Для передачи файла с ведущего компьютера на ведомый используется команда S. Ведомый компьютер может либо принять запрос на передачу файла, либо отклонить его. Формат команды S следующий:
S fileout filein user -options temp mode notify size
fileout - имя файла, который ведущий компьютер собирается передать. Перед файлами, которые находятся в рабочем каталоге пользователя, ставится ~USER/, а перед файлами, которые находятся в общей области UUCP, - ~/.
filein - имя файла, под которым ведомый компьютер должен сохранить принятый файл. Если имя файла начинается с X., то это означает выполняемый файл, который будет запущен на ведомом компьютере с помощью команды uux. Если же перед именем файла стоит D., то это значит, что файл данных будет использоваться выполняемым файлом.
Имя пользователя, запросившего передачу файла, указывается в параметре user.
Дополнительные параметры для передачи файла можно задать с помощью параметра -options. Все значения этого параметра указаны ниже в табл. 9.3.
Параметр | Описание |
---|---|
C | Файл следует сохранить в каталог UUCP spool ведомого компьютера |
c | Файл следует сохранить, как указано в filein |
d | Создать на ведомом компьютере каталог согласно filein |
f | Не создавать на ведомом компьютере каталоги и прервать передачу |
m | Ведущий компьютер после передачи файла передает почту |
n | После передачи файла ведомый компьютер должен послать почтовое сообщение на адрес, указанный в параметре notify |
Параметр temp - это имя временного файла в каталоге UUCP spool, если задан параметр C. В другом случае параметр temp не требуется и удаляется после успешной передачи файла.
Параметр mode представляет собой восьмеричное число, которое отображает режим доступа к файлу согласно системе ограничения доступа в ОС UNIX. Как правило, для файла применяется режим доступа 0666, т.е. чтение/запись для пользователя, группы и всех других пользователей системы. Однако файл в служебной области UUCP (каталог spool ) может иметь режим доступа 0600, чтобы другие пользователи не могли читать файл или записывать в него.
Почтовый адрес, который задается в параметре notify используется для посылки уведомления. Если не указан пользователь для уведомления, но задан параметр size, то параметру notify задается пустое значение "" или dummy.
Параметр size используется в Taylor UUCP для указания размера передаваемого файла (в байтах).
После того как выдана команда S, ведомый компьютер должен ответить на нее для определения дальнейших условий передачи. Все ответы на команду S также начинаются на S. В табл. 9.4 показаны возможные коды ответов на команду S.
Код ответа | Описание |
---|---|
SY | Все параметры опознаны; начать передачу файла |
SN2 | Передача файла не будет успешно закончена |
SN4 | Ведомый компьютер не может создать временный файл для данного сеанса |
SN6 | Используется в Taylor UUCP; ведомый компьютер сообщает о том, что файл слишком большой и он не может его сохранить на данный момент |
SN7 | Используется в Taylor UUCP; ведомый компьютер сообщает о том, что файл слишком большой и он не сможет его передать |
Если на команду S получен ответ SY, то ведущий компьютер начинает передачу данных по протоколу, определенному в фазе подтверждения открытия соединения. Затем, после передачи файла, ведомый компьютер должен выдать код, сообщающий о состоянии передачи. В табл. 9.5 указаны возможные коды завершения передачи данных по команде S.
Код | Описание |
---|---|
CY | Передача файла завершена успешно |
CN5 | Временный файл не может быть удален из каталога, указанного в filein |
После того как ведущий компьютер получил код завершения от ведомого, передача данных заканчивается и ведущий компьютер готов к передаче другого блока данных или к прекращению сеанса UUCP.
Команда на прием файла
Команда R используется ведущим компьютером для приема файлов от ведомого компьютера. Формат этой команды следующий:
R fileout filein user -option size
Здесь fileout - имя файла на ведомом компьютере. Этот файл не обязательно должен находиться в общей области UUCP - каталоге spool. Кроме того, для обозначения всех файлов из каталога разрешено использовать обобщающий символ ( * ).
Соответственно, filein - это имя файла, под которым ведущий компьютер должен сохранить принятый файл.
Имя пользователя, запросившего прием файла, указывается в параметре user.
Дополнительные параметры для приема файла можно задать с помощью параметра -options. Значения этого параметра приведены в табл. 9.6.
Параметр | Описание |
---|---|
d | Ведущий компьютер должен создать каталоги согласно filein |
f | Ведущий компьютер не должен создавать каталоги согласно filein и прием должен быть прерван |
m | Ведущий компьютер должен выслать по электронной почте уведомление после окончания приема файла |
Параметр size показывает наибольший размер файла, который ведущий компьютер сможет принять от ведомого.
На команду R ведомый компьютер должен ответить специальным кодом, который отображает состояние передачи файла. Коды ответов ведомого компьютера на команду R представлены в табл. 9.7.
Код ответа | Описание |
---|---|
RY mode | Ведомым компьютером файл передан успешно. Параметр mode указывает, что права доступа к файлу fileout должны быть перенесены на filein |
RN2 | Ведомый компьютер не смог передать файл. Возможные причины: файл не существует или не соответствуют права доступа к файлу |
RN6 | Используется в Taylor UUCP. Сигнализирует о том, что размер файла превысил отведенный ему лимит |
Если получен код ответа RY, то ведомый компьютер начинает передачу файла ведущему по оговоренному UUCP-протоколу. По окончании передачи ведущий компьютер посылает ведомому код завершения. В табл. 9.8 приведены возможные коды завершения.
Код | Описание |
---|---|
CY | Файл принят успешно |
CN5 | Временный файл не может быть удален из каталога, указанного в filein |
После того как ведущий компьютер выдал код завершения, передача файла считается законченной. Далее ведущий компьютер может осуществлять передачу других файлов или прекратить сеанс.