Опубликован: 21.11.2006 | Уровень: специалист | Доступ: платный
Лекция 9:

Протокол UUCP

Передача данных

Как уже упоминалось ранее, ведущий компьютер управляет потоком данных, которые передаются через UUCP-соединение. После завершения фазы подтверждения открытия соединения ведущий компьютер берет управление сеансом на себя и выдает ведомому команды. Для управления работой ведомого компьютера имеется пять команд. Они показаны на рис. 9.2 с направлением действия.

Команды передачи данных в UUCP

Рис. 9.2. Команды передачи данных в UUCP
Команда для передачи файла

Для передачи файла с ведущего компьютера на ведомый используется команда S. Ведомый компьютер может либо принять запрос на передачу файла, либо отклонить его. Формат команды S следующий:

S fileout filein user -options temp mode notify size

fileout - имя файла, который ведущий компьютер собирается передать. Перед файлами, которые находятся в рабочем каталоге пользователя, ставится ~USER/, а перед файлами, которые находятся в общей области UUCP, - ~/.

filein - имя файла, под которым ведомый компьютер должен сохранить принятый файл. Если имя файла начинается с X., то это означает выполняемый файл, который будет запущен на ведомом компьютере с помощью команды uux. Если же перед именем файла стоит D., то это значит, что файл данных будет использоваться выполняемым файлом.

Имя пользователя, запросившего передачу файла, указывается в параметре user.

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

Таблица 9.3. Параметры команды S
Параметр Описание
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.

Таблица 9.4. Коды ответов на команду S
Код ответа Описание
SY Все параметры опознаны; начать передачу файла
SN2 Передача файла не будет успешно закончена
SN4 Ведомый компьютер не может создать временный файл для данного сеанса
SN6 Используется в Taylor UUCP; ведомый компьютер сообщает о том, что файл слишком большой и он не может его сохранить на данный момент
SN7 Используется в Taylor UUCP; ведомый компьютер сообщает о том, что файл слишком большой и он не сможет его передать

Если на команду S получен ответ SY, то ведущий компьютер начинает передачу данных по протоколу, определенному в фазе подтверждения открытия соединения. Затем, после передачи файла, ведомый компьютер должен выдать код, сообщающий о состоянии передачи. В табл. 9.5 указаны возможные коды завершения передачи данных по команде S.

Таблица 9.5. Коды завершения передачи файла
Код Описание
CY Передача файла завершена успешно
CN5 Временный файл не может быть удален из каталога, указанного в filein

После того как ведущий компьютер получил код завершения от ведомого, передача данных заканчивается и ведущий компьютер готов к передаче другого блока данных или к прекращению сеанса UUCP.

Команда на прием файла

Команда R используется ведущим компьютером для приема файлов от ведомого компьютера. Формат этой команды следующий:

R fileout filein user -option size

Здесь fileout - имя файла на ведомом компьютере. Этот файл не обязательно должен находиться в общей области UUCP - каталоге spool. Кроме того, для обозначения всех файлов из каталога разрешено использовать обобщающий символ ( * ).

Соответственно, filein - это имя файла, под которым ведущий компьютер должен сохранить принятый файл.

Имя пользователя, запросившего прием файла, указывается в параметре user.

Дополнительные параметры для приема файла можно задать с помощью параметра -options. Значения этого параметра приведены в табл. 9.6.

Таблица 9.6. Параметры команды R
Параметр Описание
d Ведущий компьютер должен создать каталоги согласно filein
f Ведущий компьютер не должен создавать каталоги согласно filein и прием должен быть прерван
m Ведущий компьютер должен выслать по электронной почте уведомление после окончания приема файла

Параметр size показывает наибольший размер файла, который ведущий компьютер сможет принять от ведомого.

На команду R ведомый компьютер должен ответить специальным кодом, который отображает состояние передачи файла. Коды ответов ведомого компьютера на команду R представлены в табл. 9.7.

Таблица 9.7. Коды ответов на команду R
Код ответа Описание
RY mode Ведомым компьютером файл передан успешно. Параметр mode указывает, что права доступа к файлу fileout должны быть перенесены на filein
RN2 Ведомый компьютер не смог передать файл. Возможные причины: файл не существует или не соответствуют права доступа к файлу
RN6 Используется в Taylor UUCP. Сигнализирует о том, что размер файла превысил отведенный ему лимит

Если получен код ответа RY, то ведомый компьютер начинает передачу файла ведущему по оговоренному UUCP-протоколу. По окончании передачи ведущий компьютер посылает ведомому код завершения. В табл. 9.8 приведены возможные коды завершения.

Таблица 9.8. Коды завершения приема файла
Код Описание
CY Файл принят успешно
CN5 Временный файл не может быть удален из каталога, указанного в filein

После того как ведущий компьютер выдал код завершения, передача файла считается законченной. Далее ведущий компьютер может осуществлять передачу других файлов или прекратить сеанс.

Valentin Diduk
Valentin Diduk
Украина, одесса, кпи, 2010
Евгений Олабин
Евгений Олабин
Беларусь, Гродно