ГОСТ Р 34.1980.4-93
(ИСО 8571/4-88)
Группа П85
ГОСУДАРСТВЕННЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология
ВЗАИМОСВЯЗЬ ОТКРЫТЫХ СИСТЕМ.
ПЕРЕДАЧА, ДОСТУП И УПРАВЛЕНИЕ ФАЙЛОМ.
ЧАСТЬ 4. СПЕЦИФИКАЦИЯ ФАЙЛОВЫХ ПРОТОКОЛОВ
Information technology
Open systems interconnection. File transfer, access and management.
Part 4. File protocol specification
ОКСТУ 0034
Дата введения 1994-01-01
Предисловие
1 РАЗРАБОТАН И ВНЕСЕН Техническим комитетом по стандартизации ТК 22 "Информационная технология"
2 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Постановлением Госстандарта России от 25.02.93 N 58
Стандарт подготовлен методом прямого применения международного стандарта ИСО 8571/4-88 "Системы обработки информации. Взаимосвязь открытых систем. Передача, доступ и управление файлом. Часть 4. Спецификация файловых протоколов" и полностью ему соответствует
3 ВВЕДЕН ВПЕРВЫЕ
ВВЕДЕНИЕ
ВВЕДЕНИЕ
Настоящий стандарт входит в комплекс государственных стандартов, обеспечивающих взаимосвязь вычислительных систем. Его отношение к другим стандартам комплекса определено эталонной моделью взаимосвязи открытых систем (ВОС) по ГОСТ 28906. Эталонная модель подразделяет область стандартизации ВОС на ряд уровней спецификаций, каждый из которых предназначен для выполнения определенных функций.
Модель взаимосвязи открытых систем обеспечивает с минимальными техническими соглашениями, выходящими за рамки стандартов ВОС, взаимосвязь вычислительных систем:
а) различных изготовителей;
б) различных систем управления;
в) различных уровней сложности;
г) различных сроков выпуска.
Настоящий стандарт определяет файловую услугу и файловый протокол, доступные в рамках прикладного уровня эталонной модели. Данная услуга имеет категорию сервисного элемента прикладного уровня. Она имеет дело с идентифицируемыми блоками информации, которые можно трактовать как файлы и можно хранить в открытых системах или передавать между прикладными процессами.
Настоящий стандарт не определяет интерфейсы к средствам передачи файла и к средствам доступа внутри локальной системы.
Таблицы состояний протоколов приведены в приложении А, ссылки к определениям блоков данных протокола услуги службы ПДУФ (FТАМ) - в приложении Б, перекрестные ссылки абстрактно-синтаксической нотации версии 1 (АСН.1) - в приложении В.
1 Назначение
Настоящий стандарт определяет следующие протоколы:
а) базисный протокол (разделы 2 и 3), с помощью которого обеспечивается внутренняя файловая услуга;
б) протокол восстановления при ошибках (раздел 4), с помощью которого обеспечивается внешняя файловая услуга.
Для каждого из этих протоколов в данном стандарте содержится формальное предложение сущности модуля, представляющего необходимые действия участвующих логических объектов. Установлены:
1) действия, которые должны быть предприняты при получении примитивов запроса и ответа, вводимых пользователем файловой услуги;
2) действия, которые должны быть предприняты при получении примитивов индикации и подтверждения, вводимых поставщиком услуг уровня представления;
3) действия, которые должны быть предприняты в результате событий, происходящих внутри локальной системы;
в) определение абстрактного синтаксиса (раздел 5), необходимого для передачи управляющей информации файлового протокола;
г) требования согласования, которые должны выполняться системами, реализующими данный протокол (раздел 6).
Область действия файлового протокола ограничена до взаимосвязи систем; файловый протокол не указывает и не ограничивает возможную реализацию интерфейсов в вычислительных системах.
2 Область применения
Цель данного стандарта в рамках модели ВОС заключается в указании требуемых действий, которые должны быть представлены системой для того, чтобы взять на себя часть обеспечения услуги доступа при передаче файлов и услуги административного управления файлами.
Для определения среды, в которой функционирует протокол, спецификация файлового протокола указывает три определения услуги. ГОСТ Р 34.1980.3 определяет цели и назначения, которые должен выполнять этот протокол. Услуга уровня представления (ГОСТ 34.971) и услуга сервисного элемента управления ассоциацией (ГОСТ 34.981) определяют множество предположений об обеспечивающих средствах, которые может использовать этот протокол (рисунок 1).
Рисунок 1 - Взаимосвязь между определениями файлового протокола и определениями файловой услуги
Рисунок 1 - Взаимосвязь между определениями файлового протокола и определениями файловой услуги
3 Нормативные ссылки
ГОСТ 28906-91 (ИСО 7498-84) Системы обработки информации. Взаимосвязь открытых систем. Базовая эталонная модель
ГОСТ Р 34.980.1-92 (ИСО 8571/1-88) Информационная технология. Взаимосвязь открытых систем. Передача, доступ и управление файлом. Часть 1. Общее описание
ГОСТ Р 34.980.2-92 (ИСО 8571/2-88) Информационная технология. Взаимосвязь открытых систем. Передача, доступ и управление файлом. Часть 2. Определение виртуального файлохранилища
ГОСТ Р 34.1980.3-92 (ИСО 8571/3-88) Информационная технология. Взаимосвязь открытых систем. Передача, доступ и управление файлом. Часть 3. Определение услуг виртуального файла
ГОСТ 34.981-91 (ИСО 8649-88) Информационная технология. Взаимосвязь открытых систем. Определение услуг сервисного элемента управления ассоциацией
ГОСТ Р 34.982-92 (ИСО 8650-88) Системы обработки информации. Взаимосвязь открытых систем. Спецификация протоколов для сервисного элемента управления ассоциацией
ГОСТ 34.971-91 (ИСО 8822-88) Информационная технология. Взаимосвязь открытых систем. Определение услуг уровня представления с установлением соединения
ГОСТ 34.973-91 (ИСО 8824-87) Информационная технология. Взаимосвязь открытых систем. Спецификация абстрактно-синтаксической нотации версии 1 (АСН.1)
ГОСТ 34.974-91 (ИСО 8825-87) Информационная технология. Взаимосвязь открытых систем. Описание базовых правил кодирования для абстрактно-синтаксической нотации версии 1 (АСН.1)
4 Определения и сокращения
Термины и сокращения определены в ГОСТ Р 34.980.1. Определения имен сервисных примитивов и названия состояний услуг, данные в ГОСТ Р 34.1980.3, также используются в настоящем стандарте.
РАЗДЕЛ 1 ОБЩЕЕ ОПИСАНИЕ
5 Обзор файлового протокола
5.1 Услуга, обеспечиваемая файловым протоколом
Настоящий стандарт определяет требования к следующим протоколам, которые обеспечивают файловые услуги, определенные в ГОСТ Р 34.1980.3:
а) базисному протоколу (см. разделы 2 и 3), обеспечивающему внутреннюю файловую услугу;
б) протоколу восстановления при ошибках (см. раздел 4), обеспечивающему внешнюю файловую услугу.
5.2 Услуги, предоставляемые базисным файловым протоколом
Файловый протокол, описанный в данном стандарте, предполагает использование услуг, описанных в таблице 1. Это услуги уровня представления, определенные в ГОСТ 34.971, и услуги управления ассоциацией сервисных элементов, определенные в ГОСТ 34.981. Эталонная модель ВОС допускает использование режима службы ПДУФ (FTAM) в качестве одного компонента в распределенной обработке; спецификация такой обработки до и после установления режима службы ПДУФ находится вне сферы действия данного стандарта.
Таблица 1 - Услуги уровня представления и сеансового уровня, требуемые функциональными блоками службы ПДУФ (FTAM)
Функциональный блок службы ПДУФ (FTAM) | Функциональный блок сеансового уровня | Функциональный блок уровня представления |
Основной | Основной | Основной |
Дуплекс | Дуплекс | |
Ресинхронизация (1) | Ресинхронизация (1) | |
Вспомогательная синхронизация (2) | Вспомогательная синхронизация (2) | |
Административное управление контекстом (3) | ||
Восстановление при ошибках | Вспомогательная синхронизация | Вспомогательная синхронизация |
Рестарт | Вспомогательная синхронизация | Вспомогательная синхронизация |
Ресинхронизация | Ресинхронизация |
Примечания
1 Функциональный блок "Ресинхронизация" должен быть использован, если является доступным.
2 Функциональный блок "Вспомогательная синхронизация" требуется всякий раз, если доступен функциональный блок "Ресинхронизация". Наличие подтвержденной точки "Вспомогательная синхронизация" в начале режима "Передача данных большого объема" необходимо для ограничения разрушительного воздействия ресинхронизации до тех пор, пока не будет полностью установлен этот режим.
3 Использование необязательного функционального блока уровня представления "Административное управление контекстом" означает использование функционального блока сеансового уровня "Типовые данные".
4 Другие функциональные блоки, которые являются видимыми на уровне внешней файловой услуги, имеют такие же требования уровня представления и сеансового уровня, как и функциональный блок "Основной".
Предположения, сделанные относительно различных функциональных блоков данных файлового протокола (см. 5.6), перечислены отдельно.
5.3 Выполняемые функции
5.3.1 Функции базисного протокола
Базисный протокол обеспечивает внутреннюю файловую услугу (ГОСТ Р 34.980.1), используя сервисный элемент управления ассоциацией и услуги уровня представления. Он выполняет следующие функции:
а) представление сервисных примитивов для внутренней файловой услуги в виде последовательности блоков данных протокола (БДП) для передачи с помощью сервисных элементов управления ассоциацией и услуг уровня представления;
б) группирование, при необходимости, представлений логически обособленных сервисных примитивов в виде различных значений данных в одном сервисном примитиве запроса P-DATA;
в) обеспечение развития протокола.
5.3.2. Функции протокола восстановления при ошибках
Протокол восстановления при ошибках обеспечивает внешнюю файловую услугу (ГОСТ Р 34.980.1), используя внутреннюю файловую услугу. Этот протокол обеспечивает следующие функции:
а) административное управление информацией восстановления при ошибках в течение нормального процесса выполнения файловой услуги;
б) рестарт передачи данных после прерывания в режиме "Передача данных";
в) восстановление после аварийного завершения режима "Открытие файла" или режима "Выбор файла";
г) восстановление после аварийного завершения режима, при котором был разрушен режим внутренней файловой услуги.
5.4 Используемая модель
В абстрактном виде процесс выполнения протокола моделируется взаимодействием двух модулей файлового протокола (МФП). Два МФП связываются с помощью услуг, доступных в пределах своего нижнего уровня, таким образом, чтобы предоставить услуги, требуемые на его верхнем уровне. Эти концепции иллюстрируют рисунок 2.
Рисунок 2 - Модель модуля файлового протокола
Рисунок 2 - Модель модуля файлового протокола
Файловая услуга определяется асимметричной схемой, где пользователь А является инициирующим логическим объектом файловой услуги, а пользователь В является ответственным логическим объектом.
Функционирование каждого МФП определяется в терминах:
а) действий, которые он выполняет:
1) посылка сервисных примитивов индикации или подтверждения пользователю услуги верхнего уровня;
2) посылка сервисных примитивов запроса или ответа поставщику услуг нижнего уровня;
б) воздействий, которые он получает:
1) получение сервисных примитивов запроса или ответа от пользователя услуги верхнего уровня;
2) получение сервисных примитивов индикации или подтверждения от поставщика услуг нижнего уровня;
3) указания о локальных ошибках;
4) вмешательство административного управления;
в) имеющейся информации:
1) информация, связанная с оконечным пунктом ассоциации услуги нижнего уровня; эта информация теряется, если ассоциация услуги на нижнем уровне перестает существовать;
2) информация, связанная с оконечным пунктом услуги верхнего уровня; в протоколе восстановления при ошибках предусмотрены процедуры восстановления при потере ассоциации услуги нижнего уровня на основе информации, касающейся двух оконечных пунктов ассоциации услуги верхнего уровня.
Примечания
1 Услугой нижней границы для базисного протокола является совокупность сервисного элемента управления ассоциацией и услуги уровня представления, а услугой верхней границы является внутренняя файловая услуга.
2 Услугой нижней границы для протокола восстановления при ошибках является внутренняя файловая услуга, а услугой верхней границы является внешняя файловая услуга.
3 Информация, описывающая ассоциацию услуги на верхнем уровне, в случае внешней файловой услуги сохраняется при системных отказах и, таким образом, является доступной для полноценного восстановления.
5.5 Соответствие между именами сервисных примитивов и именами блоков данных файлового протокола
Блоки данных файлового протокола (БДФП), которые передаются в результате посылки сервисного примитива пользователем обеспечиваемой услуги, имеют имя этого сервисного примитива.
Примеры:
Сервисный примитив | Блок данных файлового протокола |
F-INITIALIZE запрос | F-INITIALIZE запрос БДФП |
F-INITIALIZE ответ | F-INITIALIZE ответ БДФП |
Рисунок 3 - Расширенная модель модулей файлового протокола
Рисунок 3 - Расширенная модель модулей файлового протокола
Примечания
1 Получение этих блоков данных файлового протокола воспринимается пользователем услуги как получение, соответственно, сервисных примитивов индикации F-INITIALIZE и сервисных примитивов подтверждения F-INITIALIZE.
2 В некоторых случаях отдельные блоки данных файлового протокола могут быть сгруппированы в одном блоке данных услуги уровня представления. Поэтому не всегда бывает точное соответствие между сервисными примитивами файловой услуги и сервисными примитивами нижнего уровня.
5.6 Функциональные блоки протокола
Функциональные БДФП эквивалентны функциональным блокам обеспечиваемой услуги:
а) функциональный блок "Основной";
б) функциональный блок "Чтение";
в) функциональный блок "Запись";
г) функциональный блок "Доступ к файлу";
д) функциональный блок "Ограниченное административное управление файлом";
е) функциональный блок "Расширенное административное управление файлом";
ж) функциональный блок "Группирование";
з) функциональный блок "Блокирование блока данных доступа к файлу";
и) функциональный блок "Восстановление при ошибках";
к) функциональный блок "Рестарт".
Примечания
1 Каждый БДФП в функциональном блоке файлового протокола соответствует эквивалентному сервисному примитиву в эквивалентном сервисном функциональном блоке.
2 Согласование сервисного функционального блока означает согласование эквивалентного функционального блока протокола.
РАЗДЕЛ 2 БАЗИСНЫЙ ФАЙЛОВЫЙ ПРОТОКОЛ
6 Состояние, предусматриваемое ассоциацией
Примечание - Логические объекты, указанные в этом разделе, являются логическими объектами базисного протокола.
6.1 Функционирование протокола
Требуемое функционирование логического объекта в соответствии с базисным файловым протоколом описано в 7-10 в виде действий, которые должны быть предприняты в ответ на каждое возможное воздействие. Каждый пункт помечен именем функционального блока, в рамках которого должны быть предприняты указанные действия, и действия, указанные в 7-10, не должны быть выполнены, если этот функциональный блок не был успешно согласован.
При описании сервисных примитивов ответа, которые должны быть посланы пользователем внутренней файловой услуги, предполагается, что каждый тип сервисного примитива может быть принят, если оконечный пункт ассоциации находится в состоянии, которое позволяет получить этот примитив. Контроль за выполнением этого условия возлагается на интерфейс локальной системы.
Для каждого БДП, который может быть получен, в спецификации перечисляют состояния протокола, в которых принимающий логический объект может получить этот БДП. Если действие, указанное при получении инициирующего сигнала, требует посылки сервисного примитива, который не может быть послан в текущем состоянии, то соответствующий логический элемент должен указывать протокольную ошибку (см. 10.2). Если БДП или сервисный примитив уровня представления получен при обстоятельствах, не указанных в протоколе, то имеет место протокольная ошибка. Если принимается БДП или сервисный примитив уровня представления, который содержит параметры со значениями, не соответствующими предварительно согласованным значениям или запрашиваемым во время согласования, то имеет место протокольная ошибка.
6.2 Дополнительная информация о состояниях
В 6.2.1-6.2.5 приведена дальнейшая информация о состояниях, связанных с логическими объектами базисного протокола.
6.2.1 Список ожидаемых ответов
Список ожидаемых ответов содержит значение индикатора "Начальное состояние" и название операций, оставшихся не выполненными во время группового обмена БДП и сервисными примитивами (см. 8.11; 8.12; 9.11 и 9.12). Список ожидаемых ответов представляет собой упорядоченный список, обслуживаемый по принципу "Первый поступил в список - Первый обрабатывается", который содержит имена следующих один за другим ожидающих БДП или примитивов при использовании модуля группирования. Вначале этот список является пустым.
6.2.2 Индикатор "Начальное состояние"
Индикатор "Начальное состояние" указывает состояние логического объекта в момент запуска модуля группирования. Определенными значениями являются названия состояний, указанные в настоящем стандарте, и значение "Сброшено".
6.2.3 Индикатор "Следующее состояние"
Индикатор "Следующее состояние" указывает следующий логический режим, предполагаемый при получении групповых примитивов ответа. Определяемыми значениями являются имена состояний "Инициализировано", "Выбрано", "Ожидание передачи данных" и "Сброшено". Первоначальное состояние этого индикатора - "Сброшено".
6.2.4 Индикатор "Р-изменения"
"Индикатор "Р-изменения" используется для того, чтобы указать необходимость дополнительного изменения определенного набора контекстов. Определенными значениями являются "Сброшено" и "Установлено". Первоначальное значение этого индикатора - "Сброшено".
6 2.5 Номер передачи данных большого объема
Номер передачи данных большого объема указывает передачи данных большого объема в режиме "Открытие файла". Он является целым числом от 0 до 999999. Первоначальное значение 0.
Примечание - Использование части информации о состоянии, относящейся к логическому объекту в качестве средства спецификации, не означает, что в этом логическом объекте требуется какая-либо особая реализация такой информации.
7 Блоки данных файлового протокола
Блоки данных файлового протокола представляют собой составные типы данных, регламентируемые в соответствии с определением абстрактного синтаксиса (см. 20). Это определение включает в себя поименованные параметры, соответствующие тем параметрам в файловой услуге, которые были переданы непосредственно с помощью протокольной управляющей информации (ПУИ) службы ПДУФ, а также параметры, необходимые для обеспечения функционирования протокола.
Для информации, которая требуется постоянно, значения, принимаемые по умолчанию, определяются так, чтобы избежать излишней служебной информации. Синтаксис передачи этих типов данных предварительно согласуется, а кодирование выполняется поставщиком услуг уровня представления.
БДП передаются в виде значений данных либо в примитиве P-DATA, либо в параметре "Информация пользователя" в примитиве сервисного элемента управления ассоциацией, либо в параметре "Данные пользователя" в сервисном примитиве услуг уровня представления. Возможные средства передачи каждого БДП перечислены в таблицах 2 и 3. (Средства передачи БДП для передачи данных большого объема перечислены в таблице 5). БДП, отмеченные в таблицах знаком "*", содержатся в сервисных примитивах ответа и подтверждения. Все другие БДП содержатся в сервисных примитивах запроса и индикации.
Таблица 2 - Блоки данных протокола, установление режима службы ПДУФ
Имя | Содержится в примитиве | Функциональные блоки |
F-INITIALIZE запрос | A-ASSOCIATE | Основной |
F-INITIALIZE ответ* | A-ASSOCIATE | |
F-TERMINATE запрос | A-RELEASE | |
F-TERMINATE ответ* | A-RELEASE | |
F-P-ABORT запрос | A-ABORT |
|
F-U-ABORT запрос | A-ABORT |
|
Таблица 3 - Блоки данных протокола, управление режимом службы ПДУФ
Имя | Содержится в примитиве | Функциональные блоки |
F-SELECT запрос | P-DATA | Основной |
F-SELECT ответ | P-DATA | |
F-DESELECT запрос | P-DATA | |
F-DESELECT ответ | P-DATA | |
F-CREATE запрос | P-DATA | Ограниченное административное управление файлом |
F-CREATE ответ | P-DATA | |
F-DELETE запрос | P-DATA | Ограниченное административное управление файлом |
F-DELETE ответ | P-DATA | |
F-READ-ATTRIB запрос | P-DATA | |
F-READ-ATTRIB ответ | P-DATA | |
F-CHANGE-ATTRIB запрос | Расширенное административное управление файлом | |
F-CHANGE-ATTRIB ответ | P-DATA | |
F-OPEN запрос | P-DATA | Чтение, запись |
F-OPEN ответ | P-DATA | |
F-CLOSE запрос | P-DATA | |
F-CLOSE ответ | P-DATA | |
F-BEGIN-GROUP запрос | P-DATA | Группирование |
F-BEGIN-GROUP ответ | P-DATA | |
F-END-GROUP запрос | P-DATA | Группирование |
F-END-GROUP ответ | P-DATA | |
F-RECOVER запрос | P-DATA | Восстановление при ошибках |
F-RECOVER ответ | P-DATA | |
F-LOCATE запрос | P-DATA | Доступ к файлу |
F-LOCATE ответ | P-DATA | |
F-ERASE запрос | P-DATA | |
F-ERASE ответ | P-DATA |
Примитив P-DATA переносит множество значений данных. Это множество значений в ГОСТ Р 34.980.1 называется блоком данных услуги уровня представления (БДУУП). Этот протокол определяет точное содержание сообщения каждого примитива P-DATA в терминах состояний, в соответствии с которыми оканчивается последовательность значений посылаемого в блоки данных услуги уровня представления. Множество блоков данных не может быть разделено между отдельными примитивами P-DATA другим способом, не указанным данным протоколом.
Блоки данных файлового протокола передаются с помощью одного соответствующего контекста уровня представления, называемого контекстом протокольной управляющей информации службы ПДУФ (FTAM). Он определяется как контекст, используемый для значений данных параметра "Информация пользователя" в сервисном примитиве A-ASSOCIATE сервисного элемента управления ассоциацией и должен соответствовать абстрактному синтаксису протокольной управляющей информации службы ПДУФ, определенному в настоящем стандарте.
Примечание - Значения данных в любых других контекстах не являются БДФП, и это используется для обеспечения прозрачности параметра "Данные пользователя".
Принимающий логический объект распознает БДП на основе того, что БДФП:
а) должен быть передан только в контексте протокольной управляющей информации службы ПДУФ;
б) должен содержать единственное завершенное значение в соответствии с абстрактным синтаксисом протокольной управляющей информации службы ПДУФ.
Примечание - Значение данных, в некотором отношении отличающееся от определенных значений типов данных БДФП или отсутствием обязательного параметра, или добавлением неопределенного параметра, или использованием недействительного значения параметра, не является БДФП.
Логический объект должен быть оповещен о протокольной ошибке (см. 10.2), если он:
а) получает некоторые сервисные примитивы сервисного элемента управления ассоциацией или уровня представления, не указанные для предварительно согласованных функциональных блоков;
б) получает последовательность значений данных в контексте протокольной управляющей информации службы ПДУФ (FTAM), которая не составляет определенный БДП;
в) получает какой-либо БДП, который не принадлежит к выбранным функциональным блокам.
8 Действия инициирующего логического объекта при работе с файлами
8.1 Установление режима службы ПДУФ (основного)
8.1.1 Получив сервисный примитив запроса F-INITIALIZE от пользователя внутренней файловой услуги во время состояния "Ожидание", логический объект должен:
а) создать БДП "F-INITIALIZE запрос БДП", основываясь на параметрах сервисного примитива запроса F-INITIALIZE;
б) установить параметр "Версия протокола" этого БДП в значение "Версия-1"; параметр "Версия протокола" должен быть установлен таким образом, чтобы биты, соответствующие другим версиям, не были установлены в значение 0 или 1;
в) на основе знаний локальной системы установить параметр "Информация реализующей системы";
г) добавить созданный БДП в качестве параметра "Информация пользователя" к примитиву запроса A-ASSOCIATE, устанавливая значения параметров примитива запроса A-ASSOCIATE в соответствии с информацией в таблице 4; установить значения параметров "Требования уровня представления" и "Требования сеансового уровня" примитива запроса A-ASSOCIATE таким образом, чтобы они, по меньшей мере, соответствовали функциональным блокам, описанным в таблице 1, в соответствии с принятыми параметрами; создать список абстрактных синтаксисов из:
1) тех необходимых для обеспечения типов документов и абстрактных синтаксисов, которые названы в параметре "Список типов содержания сообщения" без дублированных синтаксисов;
2) контекста протокольной управляющей информации службы ПДУФ (FTAM) и синтаксиса "ВНЕШНИЙ", указанного из этого контекста;
3) любых других абстрактных синтаксисов, обозначенных частями контекста прикладного уровня, не относящихся к службе ПДУФ;
д) установить значение параметра "Контекст прикладного уровня" в примитиве A-ASSOCIATE, чтобы запросить этот список абстрактных синтаксисов;
е) перейти в состояние "Ожидание примитива INITIALIZE".
Примечания
1 Если функциональный блок "Ресинхронизация" не был предварительно успешно согласован (см. 17), тогда в некоторых ситуациях управление потоком блокирования операции "Отмена" может быть задержано на неопределенное время.
2 Параметр "Информация реализующей системы" содержит информацию, специфичную для индивидуальных реализующих систем. Его можно опустить, чтобы принять значение по умолчанию. Содержимое этого параметра не используется при предварительном согласовании.
Таблица 4 - Отношение параметров примитива F-INITIALIZE к параметрам примитива A-ASSOCIATE
A-ASSOCIATE | F-INITIALIZE | |||
Запрос | Индикация | Ответ | Подтверждение | |
Символическое имя вызываемого логического объекта прикладного уровня (8) | Символическое имя вызываемого логического объекта прикладного уровня | Символическое имя вызываемого логического объекта прикладного уровня | - | - |
Символическое имя вызывающего логического объекта прикладного уровня (8) | Символическое имя вызывающего логического объекта прикладного уровня | Символическое имя вызывающего логического объекта прикладного уровня | - | - |
Символическое имя отвечающего логического объекта прикладного уровня (8) | - | - | Символическое имя отвечающего логического объекта прикладного уровня | Символическое имя отвечающего логического объекта прикладного уровня |
Имя контекста прикладного уровня | Имя контекста прикладного уровня (1) | - | Имя контекста прикладного уровня | - |
Адрес вызываемого логического объекта уровня представления | Адрес вызываемого логического объекта уровня представления | Адрес вызываемого логического объекта уровня представления | - | - |
Адрес вызывающего логического объекта уровня представления | Адрес вызывающего логического объекта уровня представления | Адрес вызывающего логического объекта уровня представления | - | - |
Адрес отвечающего логического объекта уровня представления | - | - | Адрес отвечающего логического объекта уровня представления | Адрес отвечающего логического объекта уровня представления |
Список определений контекста уровня представления (2) | Брать из списка типов контекстов (3) | Список типов контекстов | - | - |
Список результата контекста уровня представления | Брать из списка типов контекстов (4) | Список типов контекстов | ||
Качество услуги | Качество услуги связи (5) | Качество услуги связи | Качество услуги связи | Качество услуги связи |
Требования уровня представления | Брать из административного управления контекстом уровня представления (6) | - | Брать из административного управления контекстом уровня представления (6) | |
Требования сеансового уровня | Брать из функциональных блоков (7) | - | Брать из функциональных блоков (7) | - |
Порядковый номер точки начальной синхронизации | Установить в "1" модулем файлового протокола | - | ||
Значения начального назначения | Установить в "Инициатор" модулем файлового протокола | - | - | |
Результат | Результат состояния | Результат состояния |
В графах "Запрос" и "Ответ" таблицы 4 показано, как параметры примитива A-ASSOCIATE устанавливаются из параметров примитива F-INITIALIZE; в графах "Индикация" и "Подтверждение" показано, как параметры примитива F-INITIALIZE устанавливаются из параметров примитива A-ASSOCIATE, прочерк указывает, что параметр примитива A-ASSOCIATE не используется или не имеет отношения к параметру примитива F-INITIALIZE.
Примечания
1 Любой параметр "Имя контекста прикладного уровня" должен обеспечивать, по крайней мере, функцию, подразумеваемую контекстом прикладного уровня, указываемым следующим образом "{ИСО Стандарт 8571 Контекст прикладного уровня (1) Служба FTAM модели ИСО (1)}" (см. 21); если пользователем не предоставляется значение, то идентификатор объекта должен быть назначен механизмом файлового протокола, в противном случае параметр "Имя контекста прикладного уровня" берется из значения, предоставляемого пользователем внутренней файловой услуги.
2 Параметр "Определение контекстов уровня представления" должен содержать, по крайней мере, контексты уровня представления, необходимые для обеспечения текущего контекста прикладного уровня, как подразумевается службой FTAM (см. 21) и параметром "Список типов контекстов".
3 Описание параметра "Определение контекста уровня представления" содержит значение "ИСО 8571 - Протокольная управляющая информация службы FTAM" и имена абстрактных синтаксисов параметра "Список типов содержания сообщения".
4 В этих случаях параметр "Список типов содержания сообщения" может воздействовать на атрибут взаимодействия "Список доступных типов содержания сообщения".
5 Используется такой параметр "Качество услуги связи", как обозначено в сервисном элементе управления ассоциацией и на уровне представления.
6 Параметр "Требования уровня представления" устанавливается в значение "Административное управление контекстом", если значение параметра "Административное управление контекстом уровня представления" в примитиве F-INITIALIZE равно "ИСТИНА"; в противном случае параметр является пустым.
7 Параметр "Требования сеансового уровня" устанавливается, чтобы объединить требования сеансового уровня, необходимые для обеспечения выбранных функциональных блоков протокола.
8 Параметр "Символическое имя логического объекта прикладного уровня" используется в настоящем стандарте для сбора названных параметров, определенных в ГОСТ 34.981. Связь между названными концепциями определена в ГОСТ 28906.
9 Параметры примитива A-ASSOCIATE "Единый контекст уровня представления", "Имя контекста уровня представления, принимаемого по умолчанию", "Результат контекста уровня представления, принимаемого по умолчанию" и "Идентификатор соединения сеансового уровня" не относятся непосредственно к каким-либо параметрам примитива F-INITIALIZE.
8.1.2 Получив примитив подтверждения A-ASSOCIATE с БДП "F-INITIALIZE ответ БДП" в качестве параметра "Информация пользователя" и находясь в состоянии "Ожидание примитива INITIALIZE", логический объект должен:
а) если параметр "Результат состояния" примитива A-ASSOCIATE означает "Сбой" или следующие согласуемые параметры имеют значения, несовместимые с требуемыми значениями, для пользователя внутренней файловой услуги послать сервисный примитив подтверждения F-INITIALIZE с параметрами, взятыми из примитива подтверждения A-ASSOCIATE, и согласно этому прекратить работу.
Совместимость достигается, если:
- возвращаемое значение требуемого параметра "Группы атрибутов" относится к подмножеству требуемых значений;
- возвращаемое значение требуемых функциональных блоков относится к подмножеству требуемых значений;
- предварительно согласованные функциональные блоки уровня представления обеспечивают предварительно согласованные функциональные блоки службы ПДУФ (FTAM);
- класс услуги является одним и только одним из классов услуг, указанных в примитиве запроса F-INITIALIZE, или в случае, если был запрошен класс услуги "Передача файла и административное управление файлами", то класс услуги "Передача файла" или класс услуги "Административное управление файлами" также является совместимым;
б) если параметр "Результат состояния" примитива A-ASSOCIATE означает "Успешно" и значения согласуемых параметров совместимы с указанными в 8.1.2, а, то послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-INITIALIZE с параметрами, взятыми из полученных значений данных и из параметров полученного примитива подтверждения A-ASSOCIATE;
в) перейти в состояние "Инициализировано".
Примечание - Состояние "Инициализировано" возможно для нескольких контекстов уровня представления, обеспечивающих абстрактный синтаксис протокольной управляющей информации службы ПДУФ (FTAM), чтобы существовать в определенном списке контекстов. Логический объект в дальнейшем должен интерпретировать только первый контекст уровня представления, обеспечивая встреченную протокольную управляющую информацию (ПУИ) службы ПДУФ как ПДУФ ПУИ; любые другие элементы не воздействуют на состояние механизма файлового протокола.
8.1.3 Получив примитив подтверждения A-ASSOCIATE без параметра "Информация пользователя" и с параметром "Результат состояния", означающим "Сбой", и находясь в состоянии "Ожидание примитива INITIALIZE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-INITIALIZE с параметром "Результат состояния", означающим "Сбой";
б) согласно этому прекратить работу.
8.2 Завершение (организованное) режима службы ПДУФ
8.2.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-TERMINATE и находясь в состоянии "Инициализировано", логический объект должен:
а) послать блок данных протокола "F-TERMINATE запрос БДП" в качестве параметра "Информация пользователя" в примитиве запроса A-RELEASE;
б) перейти в состояние "Ожидание примитива TERMINATE".
8.2.2 Получив БДП "F-TERMINATE ответ БДП" и находясь в состоянии "Ожидание примитива TERMINATE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-TERMINATE с параметрами, взятыми из полученных значений данных;
б) согласно этому прекратить работу.
8.3 Выбор файла
8.3.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-SELECT и находясь в состоянии "Инициализировано", логический объект должен:
а) добавить БДП "F-SELECT запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить БДУУП;
в) перейти в состояние "Ожидание примитива SELECT".
8.3.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-SELECT и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Инициализировано", логический объект должен:
а) добавить БДП "F-SELECT запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-SELECT ответ" к концу списка ожидаемых ответов.
8.3.3 Получив БДП "F-SELECT ответ БДП" с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями, если параметр "Требуемый доступ" должен относиться к подмножеству требуемых действий, и, находясь в состоянии "Ожидание примитива SELECT", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-SELECT с параметрами, взятыми из полученных значений данных;
б) если посланный примитив не содержит параметр "Результат состояния", означающий "Сбой", перейти в состояние "Выбрано";
в) если посланный примитив содержит параметр "Результат состояния", означающий "Сбой", перейти в состояние "Инициализировано".
8.3.4 Получив БДП "F-SELECT ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-SELECT ответ", и с возвращаемыми параметрами, совместимыми с параметрами, описанными в 8.3.3, логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-SELECT;
б) если БДП не содержит параметр "Результат состояния", означающий "Сбой", установить индикатор "Следующее состояние" в значение "Выбрано";
в) удалить первый элемент списка ожидаемых ответов.
8.4 Отмена выбора файла
8.4.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-DESELECT и находясь в состоянии "Выбрано", логический объект должен:
а) добавить БДП "F-DESELECT запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива DESELECT".
8.4.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-DESELECT и находясь в состоянии "Группирование" с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-CLOSE ответ", "F-CREATE ответ" "F-SELECT ответ", "F-READ-ATTRIB ответ", "F-CHANGE-ATTRIB ответ", логический объект должен:
а) добавить БДП "F-DESELECT запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-DESELECT ответ" к концу списка ожидаемых ответов.
8.4.3 Получив БДП "F-DESELECT ответ БДП" и находясь в состоянии "Ожидание примитива DESELECT", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-DESELECT с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Инициализировано".
8.4.4 Получив БДП "F-DESELECT ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-DESELECT ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-DESELECT;
б) установить индикатор "Следующее состояние" в значение "Инициализировано";
в) удалить первый элемент списка ожидаемых ответов.
8.5 Создание файла (ограниченное административное управление файлами)
8.5.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CREATE и находясь в состоянии "Инициализировано", логический объект должен:
а) добавить БДП "F-CREATE запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП и перейти в состояние "Ожидание примитива CREATE".
8.5.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CREATE и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Инициализировано", логический объект должен:
а) добавить БДП "F-CREATE запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-CREATE ответ" к концу списка ожидаемых ответов.
8.5.3 Получив БДП "F-CREATE ответ БДП" и находясь в состоянии "Ожидание примитива CREATE" и с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями - начальные атрибуты имеются в составе требуемых групп атрибутов, успешно согласованных при инициализации файлохранилища, требуемый доступ должен относиться к подмножеству требуемых действий, - логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CREATE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Выбрано", если посланный примитив не содержит параметр "Результат состояния", означающий "Сбой";
в) перейти в состояние "Инициализировано", если посланный примитив содержит параметр "Результат состояния", означающий "Сбой".
8.5.4 Получив БДП "F-CREATE ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CREATE ответ" и с возвращаемыми параметрами, совместимыми с параметрами, описанными в 8.5.3, логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CREATE;
б) установить индикатор "Следующее состояние" в значение "Выбрано", если БДП не содержит параметр "Результат состояния", означающий "Сбой";
в) удалить первый элемент списка ожидаемых ответов.
8.6 Удаление файла (ограниченное административное управление файлами)
8.6.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-DELETE и находясь в состоянии "Выбрано", логический объект должен:
а) добавить БДП "F-DELETE запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива DELETE".
8.6.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-DELETE и находясь в состоянии "Группирование" с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-CLOSE ответ", "F-CREATE ответ", "F-SELECT ответ", "F-READ-ATTRIB ответ", "F-CHANGE-ATTRIB ответ", логический объект должен:
а) добавить БДП "F-DELETE запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-DELETE ответ" к концу списка ожидаемых ответов.
8.6.3 Получив БДП "F-DELETE ответ БДП" и находясь в состоянии "Ожидание примитива DELETE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-DELETE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Инициализировано".
8.6.4 Получив БДП "F-DELETE ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-DELETE ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-DELETE;
б) установить индикатор "Следующее состояние" в значение "Инициализировано";
в) удалить первый элемент списка ожидаемых ответов.
8.7 Чтение атрибутов (ограниченное административное управление файлами)
8.7.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-READ-ATTRIB и находясь в состоянии "Выбрано", логический объект должен:
а) добавить БДП "F-READ-ATTRIB запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива READ-ATTRIB".
8.7.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-READ-ATTRIB и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов или с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-CLOSE ответ", "F-CREATE ответ" или "F-SELEST ответ", логический объект должен:
а) добавить БДП "F-READ-ATTRIB запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-READ-ATTRIB ответ" к концу списка ожидаемых ответов.
8.7.3 Получив БДП "F-READ-ATTRIB ответ БДП" с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями, и, находясь в состоянии "Ожидание примитива READ-ATTRIB" при наличии успешно согласованного функционального блока "Ограниченное административное управление файлами" во время инициализации файлохранилища, логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-READ-ATTRIB с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Выбрано".
Возвращенные атрибуты находятся в требуемых группах атрибутов, успешно согласованных при инициализации файлохранилища и названных в параметре "Имена атрибутов" в посланном БДП "запрос БДП".
8.7.4 "Получив БДП "F-READ-ATTRIB ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-READ-ATTRIB ответ", и с возвращаемыми параметрами, совместимыми с параметрами, описанными в 8.7.3, логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-READ-ATTRIB с параметрами, взятыми из полученных значений данных;
б) удалить первый элемент списка ожидаемых ответов.
8.8 Изменение атрибутов (расширенное административное управление файлами)
8.8.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CHANGE-ATTRIB и находясь в состоянии "Выбрано", логический объект должен:
а) добавить БДП "F-CHANGE-ATTRIB запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива CHANGE-ATTRIB".
8.8.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CHANGE-ATTRIB и находясь в состоянии "Группирование" с выбранным функциональным блоком "Расширенное административное управление файлами" и с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-READ-ATTRIB ответ", "F-CLOSE ответ" или "F-SELECT ответ", логический объект должен:
а) добавить БДП "F-CHANGE-ATTRIB запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-CHANGE-ATTRIB ответ" к концу списка ожидаемых ответов.
8.8.3 Получив БДП "F-CHANGE-ATTRIB ответ БДП" с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями, и, находясь в состоянии "Ожидание примитива CHANGE-ATTRIB" с успешно, согласованным функциональным блоком "Расширенное административное управление файлами", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CHANGE-ATTRIB с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Выбрано".
8.8.4 Получив БДП "F-CHANGE-ATTRIB ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CHANGE-ATTRIB ответ", и с возвращаемыми параметрами, совместимыми с параметрами, описанными в 8.7.3, логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CHANGE-ATTRIB с параметрами, взятыми из полученных значений данных;
б) удалить первый элемент списка ожидаемых ответов.
8.9 Открытие файла (чтение, запись)
8.9.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-OPEN и находясь в состоянии "Выбрано", логический объект должен:
а) добавить БДП "F-OPEN запрос БДП" в качестве значения данных к текущему БДУУП;
б) если функциональный блок "Административное управление контекстом уровня представления" был предварительно успешно согласован и если инициирующий логический объект желает иметь какие-либо абстрактные синтаксисы, обеспечиваемые контекстами уровня представления, в определенном наборе контекстов, удаленных на основе соглашений локальной системы или административного управления сетью при успешном установлении режима "Открытие файла" (см. 9.9.4), то послать имена соответствующих абстрактных синтаксисов в параметре "Удаленные контексты" БДП "F-OPEN запрос БДП";
в) если функциональный блок "Административное управление контекстом уровня представления" был предварительно успешно согласован и если инициирующий логический объект желает иметь какие-либо контексты уровня представления для любых абстрактных синтаксисов, добавленных к определенному набору контекстов на основе соглашений локальной системы или системы административного управления сетью при успешном установлении режима "Открытие файла" (см. 9.9.4), то послать имена соответствующих абстрактных синтаксисов в параметре "Определенные контексты" БДП "F-OPEN запрос БДП";
г) завершить текущий БДУУП;
д) перейти в состояние "Ожидание примитива OPEN".
8.9.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-OPEN и находясь в состоянии "Группирование" с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-SELECT ответ", "F-CREATE ответ", "F-READ-ATTRIB ответ" или "F-CHANGE-ATTRIB ответ", логический объект должен:
а) добавить БДП "F-OPEN запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-OPEN ответ" к концу списка ожидаемых ответов.
8.9.3 Получив БДП "F-OPEN ответ БДП" с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями, в соответствии с правилами для согласования, данными в ГОСТ Р 34.1980.3, и, находясь в состоянии "Ожидание примитива OPEN", логический объект должен:
а) если посланный БДП содержал параметр "Результат состояния", означающий "Сбой", послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-OPEN и перейти в состояние "Выбрано";
б) если значением параметра "Действие уровня представления" является "Истина", установить индикатор "Р-изменение";
в) если индикатор "Р-изменение" не установлен, послать пользователю внутренней файловой услуги примитив подтверждения F-OPEN с параметрами, взятыми из полученных значений данных, и перейти в состояние "Ожидание передачи данных";
г) если индикатор "Р-изменение" установлен, сохранить БДП для дальнейшей обработки и перейти в состояние "Ожидание контекста Р-изменение".
Способ обработки должен предполагать только те действия, которые разрешены успешно согласованными функциональными блоками и параметром "Требуемый доступ" при инициализации файлохранилища.
Управление параллельностью выполнения действий должно быть ограничено, по меньшей мере, теми значениями, которые были успешно согласованы при установлении режима "Выбор файла" (см. ГОСТ Р 34.1980.3).
8.9.4 Получив БДП "F-OPEN ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-OPEN ответ", и с возвращаемыми параметрами, совместимыми с параметрами, описанными в 8.9.3, логический объект должен:
а) установить индикатор "Р-изменение", если посланный БДП не содержал параметр "Результат состояния", означающий "Сбой", и если значением параметра "Действие уровня представления" является "Истина";
б) послать пользователю внутренней файловой услуги примитив подтверждения F-OPEN с параметрами, взятыми из полученных значений данных, если индикатор "Р-изменение" не установлен;
в) установить значение индикатора "Следующее состояние" в значение "Ожидание передачи данных", если блок данных протокола не содержит параметр "Результат состояния", указывающий "Сбой";
г) сохранить БДП для дальнейшей обработки, если индикатор" "Р-изменение" установлен;
д) удалить первый элемент списка ожидаемых ответов.
8.9.5 Получив от поставщика услуг уровня представления примитив индикации P-ALTER-CONTEXT и находясь в состоянии "Ожидание примитива P-ALTER-CONTEXT" и при установленном индикаторе "Р-изменение", логический объект должен:
а) сформировать список результата добавления определений контекстов уровня представления, указывающий, какие из предполагаемых контекстов уровня представления могут быть обеспечены;
б) сформировать список результата удаления контекстов уровня представления, указывающий, какие из предполагаемых контекстов уровня представления должны быть удалены;
в) послать примитив P-ALTER-CONTEXT, используя оба списка, сформированных по описанию, представленному в 8.9.5,а; 8.9.5,б;
г) "сбросить" индикатор "Р-изменение";
д) если БДП "F-OPEN ответ БДП" был сохранен, то послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-OPEN.
8.9.6 Если БДП "F-OPEN ответ БДП" был сохранен в состоянии "Ожидание контекста Р-изменение" и индикатор "Р-изменение" не установлен, логический объект должен:
а) установить параметр "Результат действия" таким образом, чтобы указать исправимую ошибку и, необязательно, добавить диагностическое сообщение, описывающее результат согласования контекстов, основываясь на рассмотрении локальной системы административного управления, если режим "Открытие файла" был установлен, но не все контексты уровня представления, обеспечивающие требуемые абстрактные синтаксисы, были успешно согласованы;
б) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-OPEN с параметрами, взятыми из полученных значений данных;
в) перейти в состояние "Ожидание передачи данных", если посланный примитив не содержит параметр "Результат состояния", означающий "Сбой";
г) перейти в состояние "Выбрано", если посланный примитив содержит параметр "Результат состояния", означающий "Сбой".
Примечание - Если предоставленные средства окажутся недостаточными, пользователь внутренней файловой услуги должен завершить этот режим.
8.10 Закрытие файла (чтение, запись)
8.10.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CLOSE и находясь в состоянии "Ожидание передачи данных", логический объект должен:
а) добавить БДП "F-CLOSE запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива CLOSE".
Примечание - Примитив запроса F-CLOSE содержит параметр "Результат действия", который используется в качестве механизма сигнализации между парами механизмов протокола восстановления файла при ошибках (см. 19.1.3). Параметр "Результат действия" не воздействует на любой механизм файлового протокола.
8.10.2 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-CLOSE и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Ожидание передачи данных", логический объект должен:
а) добавить БДП "F-CLOSE запрос БДП" в качестве значения данных к текущему БДУУП;
б) добавить элемент со значением "F-CLOSE ответ" к концу списка ожидаемых ответов.
8.10.3 Получив БДП "F-CLOSE ответ БДП" и находясь в состоянии "Ожидание примитива CLOSE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CLOSE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Выбрано".
8.10.4 Получив БДП "F-CLOSE ответ БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CLOSE ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-CLOSE с параметрами, взятыми из полученных значений данных;
б) установить индикатор "Следующее состояние", в значение "Выбрано";
в) удалить первый элемент списка ожидаемых ответов.
8.11 Начало группы (группирование)
8.11.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-BEGIN-GROUP и находясь либо в состоянии "Инициализировано", либо в состоянии "Ожидание передачи данных", логический объект должен:
а) добавить БДП "F-BEGIN-GROUP запрос БДП" в качестве значения данных к текущему БДУУП;
б) установить значение индикатора "Начальное состояние" в текущее состояние;
в) перейти в состояние "Группирование".
8.11.2 Получив БДП "F-BEGIN-GROUP ответ БДП" и находясь в состоянии "Группирование", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-BEGIN-GROUP;
б) перейти в состояние "Группирование".
8.12 Конец группы (группирование)
8.12.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-END-GROUP и находясь в состоянии '"Группирование", логический объект должен:
а) добавить БДП "F-END-GROUP запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива GROUP".
8.12.2 Получив БДП "F-END-GROUP ответ БДП" и находясь в состоянии "Группирование", логический объект должен;
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-END-GROUP;
б) если требуемый порог был достигнут с помощью подсчета последовательных примитивов либо с параметрами "Результат состояния", указывающими значение "Успешно", либо без параметров "Результат состояния" и
1) индикатор "Р-изменение" установлен, перейти в состояние "Ожидание контекста Р-изменение";
2) индикатор "Р-изменение" не установлен, перейти в состояние, которое указывает индикатор "Следующее состояние";
в) если требуемый порог не был достигнут, то перейти в состояние, указанное индикатором "Начальное состояние";
г) очистить список ожидаемых ответов, "сбросить" индикатор "Следующее состояние" и "сбросить" индикатор "Начальное состояние".
Примечание - Если сообщается об ошибках класса 2, то режим "Открытие файла" установлен, но не все необходимые абстрактные синтаксисы имеют соответствующие контексты уровня представления в результате предшествующего обмена примитивами P-ALTER-CONTEXT. Если в результате средства являются недостаточными, пользователь внутренней файловой услуги может "сбросить" этот режим.
8.13 Восстановление при ошибках
8.13.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-RECOVER и находясь в состоянии "Инициализировано", логический объект должен:
а) добавить БДП "F-RECOVER запрос БДП" в качестве значения данных к текущему БДУУП;
б) если:
1) функциональный блок "Административное управление контекстом уровня представления" был предварительно успешно согласован и
2) инициирующий логический объект желает иметь какие-либо контексты уровня представления для любых абстрактных синтаксисов, добавленных к определенному набору контекстов, на основе соглашений локальной системы или административного управления сетью при успешном установлении режима "Открытие файла" (см. 9.9.4), то послать имена соответствующих абстрактных синтаксисов в параметре "Определенные контексты" БДП "F-RECOVER запрос БДП";
в) если:
1) функциональный блок "Административное управление контекстом уровня представления" был предварительно успешно согласован и
2) инициирующий логический объект желает иметь какие-либо абстрактные синтаксисы, обеспечиваемые контекстами уровня представления, в определенном наборе контекстов, удаленных на основе соглашений локальной системы или системы административного управления сетью при успешном установлении режима "Открытие файла" (см. 9.9.4), то послать имена соответствующих абстрактных синтаксисов в параметре "Удаленные контексты" БДП "F-RECOVER запрос БДП";
г) завершить текущий БДУУП;
д) перейти в состояние "Ожидание примитива RECOVER".
8.13.2 Получив БДП "F-RECOVER ответ БДП" с согласуемыми параметрами, имеющими возвращенные значения, совместимые с требуемыми значениями, в соответствии с правилами для согласования, данными в стандарте ИСО 8571-3, и, находясь в состоянии "Ожидание примитива RECOVER", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-RECOVER и перейти в состояние "Инициализировано", если посланный БДП содержал параметр "Результат состояния", означающий "Сбой";
б) установить индикатор "Р-изменение", если значением параметра "Действие уровня представления" является "Истина";
в) послать пользователю внутренней файловой услуги примитив подтверждения F-RECOVER с параметрами, взятыми из полученных значений данных, и перейти в состояние "Восстановление ожидания передачи данных", если индикатор "Р-изменение" не установлен;
г) сохранить БДП для дальнейшей обработки и перейти в состояние "Ожидание контекста Р-изменение", если индикатор "Р-изменение" установлен.
Способ обработки должен предполагать только те действия, которые разрешены успешно согласованными функциональными блоками и параметром "Требуемый доступ" при инициализации файлохранилища.
Управление параллельностью выполнения действий должно быть ограничено, по меньшей мере, теми значениями, которые, были успешно согласованы при установлении режима "Выбор файла" (ГОСТ Р 34.1980.3).
8.13.3 Получив от поставщика услуг уровня представления примитив индикации P-ALTER-CONTEXT и находясь в состоянии "Ожидание примитива P-ALTER-CONTEXT" и при установленном индикаторе "Р-изменение", логический объект должен:
а) сформировать список результатов добавления определений контекстов уровня представления, указывающий, какие из предполагаемых контекстов уровня представления могут быть обеспечены;
б) сформировать список результата удаления контекстов уровня представления, указывающий, какие из предполагаемых контекстов уровня представления должны быть удалены;
в) послать примитив P-ALTER-CONTEXT, используя оба списка, сформированных по описанию, представленному в 8.13.3,а и 8.13.3,б;
г) "сбросить" индикатор "Р-изменение".
8.13.4 Если БДП "F-RECOVER ответ БДП" был сохранен в состоянии "Ожидание контекста Р-изменение" и индикатор '"Р-изменение" не установлен, логический объект должен:
а) установить параметр "Результат действия" таким образом, чтобы указать исправимую ошибку и, необязательно, добавить диагностическое сообщение, описывающее результат согласования контекстов, основываясь на рассмотрении локальной системы административного управления, если режим "Открытие файла" был установлен, но не все необходимые абстрактные синтаксисы имеют соответствующие обеспечивающие контексты уровня представления в результате предшествующего обмена примитивами P-ALTER-CONTEXT;
б) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-RECOVER с параметрами, взятыми из полученных значений данных;
в) перейти в состояние "Восстановление ожидания передачи данных", если посланный примитив не содержит параметр "Результат состояния", означающий "Сбой";
г) перейти в состояние "Инициализировано", если посланный примитив содержит параметр "Результат состояния", означающий "Сбой".
Примечание - Если предоставленные средства окажутся недостаточными, пользователь внутренней файловой услуги должен завершить этот режим.
8.14 Установление местоположения (доступ к файлу)
8.14.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-LOCATE и находясь в состоянии "Ожидание передачи данных", логический объект должен:
а) добавить БДП "F-LOCATE запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива LOCATE".
8.14.2 Получив БДП "F-LOCATE ответ БДП" и находясь в состоянии "Ожидание примитива LOCATE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-LOCATE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание передачи данных".
8.15 Стирание (доступ к файлу)
8.15.1 Получив от пользователя внутренней файловой услуги сервисный примитив запроса F-ERASE и находясь в состоянии "Ожидание передачи данных", логический объект должен:
а) добавить БДП "F-ERASE запрос БДП" в качестве значения данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ожидание примитива ERASE".
8.15.2 Получив БДП "F-ERASE ответ БДП" и находясь в состоянии "Ожидание примитива ERASE", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив подтверждения F-ERASE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание передачи данных".
9 Действия отвечающего логического объекта при работе с файлами
9.1 Установление режима службы ПДУФ (основного)
9.1.1 Получив БДП "F-INITIALIZE запрос БДП" в качестве параметра "Информация пользователя" в примитиве индикации A-ASSOCIATE и находясь в состоянии "Ожидание", логический объект должен:
а) сформировать БДП "F-INITIALIZE ответ БДП" с параметром "Результат состояния", означающим протокольную ошибку, и добавить сформированный БДП в качестве параметра "Информация пользователя" в примитиве ответа A-ASSOCIATE с параметром "Результат состояния", установленным в значение "Отвергнуто ответственным логическим объектом (постоянная ошибка)", послать примитив ответа A-ASSOCIATE и согласно этому завершить работу, если логический объект не способен установить режим службы ПДУФ;
б) сформировать блок данных протокола "F-INITIALIZE ответ БДП" с параметром "Результат состояния", означающим "Сбой", с параметром "Результат действия", установленным в значение "Постоянная ошибка", и параметром "Версия протокола", указывающим, что он обеспечивает версию 1, и добавить сформированный блок данных протокола в качестве параметра "Информация пользователя" в примитив ответа A-ASSOCIATE с параметром "Результат состояния", установленным в значение "Отвергнуто ответственным логическим объектом (постоянная ошибка)", послать примитив ответа A-ASSOCIATE и согласно этому завершить работу, если БДП содержит параметр "Версия протокола", указывающий, что инициирующий механизм файлового протокола несовместим с версией 1 (бит "Версия-1" не установлен в 1);
в) послать пользователю внутренней файловой услуги сервисный примитив индикации F-INITIALIZE с параметрами, взятыми из полученных значений данных и из параметров, полученных в примитиве индикации A-ASSOCIATE, таким образом, что:
1) если параметр "Список типов содержания сообщения" отсутствует, то список определений контекстов, который должен быть выполнен, является пустым;
2) если элементы "P-CONNECT индикация" списка определений контекстов уровня представления не могут обеспечить элементы "F-INITIALIZE запрос БДП" списка типов содержания сообщений, тогда удалить из этого списка типов содержания сообщения:
- те абстрактные синтаксисы, которые не могут быть обеспечены, и
- те типы документов, отображающие абстрактные синтаксисы, которые не могут быть обеспечены;
г) перейти в состояние "Ожидание примитива F-INITIALIZE".
9.1.2 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-INITIALIZE и находясь в состоянии "Ожидание примитива F-INITIALIZE", логический объект должен:
а) создать БДП "F-INITIALIZE ответ БДП";
б) установить параметр "Версия протокола" этого БДП в значение "Версия-1", другие биты параметра "Версия протокола", соответствующие другим версиям, не должны быть установлены;
в) на основе знаний локальной системы установить параметр "Информация реализующей системы";
г) послать созданный БДП в качестве параметра "Информация пользователя" в примитиве ответа A-ASSOCIATE. Если сервисный примитив ответа F-INITIALIZE содержит параметр "Результат состояния", означающий "Сбой", установить параметр "Результат состояния" в примитиве ответа A-ASSOCIATE в значение, указывающее "Сбой"; в противном случае установить последний параметр в значение "Успешно";
д) если сервисный примитив ответа F-INITIALIZE содержал параметр "Результат состояния", означающий "Сбой", то согласно этому прекратить работу.
Примечания
1 Состояние "Инициализировано" возможно для нескольких контекстов уровня представления, обеспечивающих абстрактный синтаксис протокольной управляющей информации службы ПДУФ, чтобы существовать в определенном списке контекстов. Логический объект в дальнейшем должен интерпретировать только первый контекст уровня представления, обеспечивая встреченную протокольную управляющую информацию (ПУИ) службы ПДУФ как ПДУФ ПУИ; любые другие элементы не воздействуют на состояние механизма файлового протокола.
2 Параметр "Информация реализующей системы" содержит информацию, специфичную для индивидуальных реализующих систем. Его можно опустить, чтобы принять значение по умолчанию. Содержимое этого параметра не используется при предварительном согласовании.
9.2 3авершение (организованное) режима службы ПДУФ (FTAM)
9.2.1 Получив БДП "F-TERMINATE запрос БДП" и находясь в состоянии "Инициализировано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-TERMINATE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-TERMINATE".
9.2.2 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-TERMINATE и находясь в состоянии "Ожидание примитива F-TERMINATE", логический объект должен:
а) создать БДП "F-TERMINATE ответ БДП";
б) послать созданный БДП в качестве параметра "Информация пользователя" в примитиве ответа A-RELEASE;
в) прекратить работу.
9.3 Выбор файла (основного)
9.3.1 Получив БДП "F-SELECT запрос БДП" и находясь в состоянии "Инициализировано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-SELECT с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-SELECT".
9.3.2 Получив БДП "F-SELECT запрос БДП" и находясь в состоянии "'Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Инициализировано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-SELECT;
б) добавить элемент со значением "F-SELECT ответ" к концу списка ожидаемых ответов.
9.3.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-SELECT и находясь в состоянии "Ожидание примитива F-SELECT", логический объект должен:
а) добавить БДП "F-SELECT ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) если БДП содержал параметр "Результат состояния", означающий "Сбой", перейти в состояние "Инициализировано"; в противном случае перейти в состояние "Выбрано".
9.3.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-SELECT и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-SELECT ответ", логический объект должен:
а) добавить БДП "F-SELECT ответ БДП" в качестве значений данных к текущему БДУУП;
б) если примитив ответа не содержал параметр "Результат состояния", означающий "Сбой", то установить индикатор "Следующее состояние" в значение "Выбрано";
в) удалить первый элемент из списка ожидаемых ответов.
9.4 Отмена выбора файла (основного)
9.4.1 Получив БДП "F-DESELECT запрос БДП" и находясь в состоянии "Выбрано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-DESELECT с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-DESELECT".
9.4.2 Получив БДП "F-DESELECT запрос БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим одно из значений "F-CLOSE ответ", "F-READ-ATTRIB ответ" или "F-CHANGE-ATTRIB ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-DESELECT;
б) добавить элемент со значением "F-DESELECT ответ" к концу списка ожидаемых ответов.
9.4.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-DESELECT и находясь в состоянии "Ожидание примитива F-DESELECT", логический объект должен:
а) добавить БДП "F-DESELECT ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Инициализировано".
9.4.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-DESELECT и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-DESELECT ответ", логический объект должен:
а) добавить БДП "F-DESELECT ответ БДП" в качестве значений данных к текущему БДУУП;
б) установить индикатор "Следующее состояние" в значение "Инициализировано";
в) удалить первый элемент из списка ожидаемых ответов.
9.5 Создание файла (ограниченное административное управление файлами)
9.5.1 Получив БДП "F-CREATE запрос БДП" и находясь в состоянии "Инициализировано", логический объект должен:
a) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CREATE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-CREATE".
9.5.2 Получив БДП "F-CREATE запрос БДП" и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Инициализировано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CREATE;
б) добавить элемент со значением "F-CREATE ответ" к концу списка ожидаемых ответов.
9.5.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CREATE и находясь в состоянии "Ожидание примитива F-CREATE", логический объект должен:
а) добавить БДП "F-CREATE ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) если БДП содержал параметр "Результат состояния", означающий "Сбой", перейти в состояние "Инициализировано"; в противном случае перейти в состояние "Выбрано".
9.5.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CREATE и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CREATE ответ", логический объект должен:
а) добавить БДП "F-CREATE ответ БДП" в качестве значений данных к текущему БДУУП;
б) если примитив ответа не содержал параметр "Результат состояния", означающий "Сбой", то установить индикатор "Следующее состояние" в значение "Выбрано";
в) удалить первый элемент из списка ожидаемых ответов.
9.6 Удаление файла (ограниченное административное управление файлами)
9.6.1 Получив БДП "F-DELETE запрос БДП" и находясь в состоянии "Выбрано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-DELETE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-DELETE".
9.6.2 Получив БДП "F-DELETE запрос БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим одно из значений "F-CLOSE ответ", "F-READ-ATTRIB ответ" или "F-CHANGE-ATTRIB ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-DELETE;
б) добавить элемент со значением "F-DELETE ответ" к концу списка ожидаемых ответов.
9.6.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-DELETE и находясь в состоянии "Ожидание примитива F-DELETE", логический объект должен:
а) добавить БДП "F-DELETE ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Инициализировано".
9.6.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-DELETE и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-DELETE ответ", логический объект должен:
а) добавить БДП "F-DELETE ответ БДП" в качестве значений данных к текущему БДУУП;
б) установить индикатор "Следующее состояние" в значение "Инициализировано";
в) удалить первый элемент из списка ожидаемых ответов.
9.7 Чтение атрибутов (ограниченное административное управление файлами)
9.7.1 Получив БДП "F-READ-ATTRIB запрос БДП" и находясь в состоянии "Выбрано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-READ-ATTRIB с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-READ-ATTRIB".
9.7.2 Получив БДП "F-READ-ATTRIB запрос БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим одно из значений "F-SELECT ответ", "F-CREATE ответ" или "F-CLOSE ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-READ-ATTRIB;
б) добавить элемент со значением "F-READ-ATTRIB ответ" к концу списка ожидаемых ответов.
9.7.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-READ-ATTRIB и находясь в состоянии "Ожидание примитива F-READ-ATTRIB", логический объект должен:
а) добавить БДП "F-READ-ATTRIB ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Выбрано".
9.7.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-READ-ATTRIB и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-READ-ATTRIB ответ", логический объект должен:
а) добавить БДП "F-READ-ATTRIB ответ БДП" в качестве значений данных к текущему БДУУП;
б) удалить первый элемент из списка ожидаемых ответов.
9.8 Изменение атрибутов (расширенное административное управление файлами)
9.8.1 Получив БДП "F-CHANGE-ATTRIB запрос БДП" и находясь в состоянии "Выбрано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CHANGE-ATTRIB с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-CHANGE-ATTRIB".
9.8.2 Получив БДП "F-CHANGE-ATTRIB запрос БДП" и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим одно из значений "F-SELECT ответ", "F-CREATE ответ", "F-READ-ATTRIB ответ" или "F-CLOSE ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CHANGE-ATTRIB;
б) добавить элемент со значением "F-CHANGE-ATTRIB ответ" к концу списка ожидаемых ответов.
9.8.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CHANGE-ATTRIB и находясь в состоянии "Ожидание примитива F-CHANGE-ATTRIB", логический объект должен:
а) добавить БДП "F-CHANGE-ATTRIB ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Выбрано".
9.8.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CHANGE-ATTRIB и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CHANGE-ATTRIB ответ", логический объект должен:
а) добавить БДП "F-CHANGE-ATTRIB ответ БДП" в качестве значений данных к текущему БДУУП;
б) удалить первый элемент из списка ожидаемых ответов.
9.9 Открытие файла (чтение, запись)
9.9.1 Получив БДП "F-OPEN запрос БДП" и находясь в состоянии "Выбрано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-OPEN с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-OPEN".
9.9.2 Получив БДП "F-OPEN запрос БДП" и находясь в состоянии "Группирование" с последним элементом списка ожидаемых ответов, имеющим одно из значений "F-SELECT ответ", '"F-CREATE ответ", "F-READ-ATTRIB ответ" или "F-CHANGE-ATTRIB ответ", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-OPEN;
б) добавить элемент со значением "F-OPEN ответ" к концу списка ожидаемых ответов.
9.9.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-OPEN и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-OPEN ответ", логический объект должен:
а) добавить БДП "F-OPEN ответ БДП" в качестве значений данных к текущему БДУУП;
б) установить индикатор "Следующее состояние" в значение ''Ожидание передачи данных", если БДП не содержал параметр "Результат состояния", означающий "Сбой";
в) удалить первый элемент из списка ожидаемых ответов.
9.9.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-OPEN и находясь в состоянии "Ожидание примитива F-OPEN", логический объект должен:
включить имена соответствующих абстрактных синтаксисов в параметр "Список удаления контекстов уровня представления" примитива запроса P-ALTER-CONTEXT (см. 9.9.4,e), предоставляемый, если эти контексты не требуются в новом режиме "Открытие файла",
а) при условиях:
1) функциональный блок "Административное управление контекстом уровня" был успешно согласован и
2) какие-либо контексты уровня представления в определенном списке контекстов должны быть удалены из определенного списка контекстов (см. примечания к 9.9.4,е);
включить имена соответствующих абстрактных синтаксисов и идентификаторы контекстов уровня представления в параметр "Список добавления контекстов уровня представления" примитива запроса P-ALTER-CONTEXT (см. 9.9.4,е),
б) если:
1) функциональный блок "Административное управление контекстом уровня представления" был предварительно успешно согласован и
2) контекст уровня представления должен быть добавлен к определенному списку контекстов на основе параметра "Имя типа содержания сообщения" при успешном установлении режима "Открытие файла";
в) добавить БДП "F-OPEN ответ БДП" в качестве значений данных к текущему БДУУП; если некоторые необходимые действия были указаны в 9.9.4,а или 9.9.4,б для изменения контекста уровня представления, включить параметр "Действие уровня представления" со значением "Истина";
г) завершить текущий БДУУП;
д) перейти в состояние "Выбрано" и не выполнять требования 9.9.4,е, если примитив ответа F-OPEN содержал параметр "Результат состояния", означающий "Сбой", при выполнении действия;
е) послать сервисный примитив запроса P-ALTER-CONTEXT уровня представления и перейти в состояние "Ожидание действия уровня представления", если была указана необходимость изменения контекста в 9.9.4,а или 9.9.4,б, после того как был завершен какой-либо текущий БДУУП; в противном случае перейти в состояние "Ожидание передачи данных".
Примечания
1 Если имя типа содержания сообщения отсутствует, то список определений контекстов должен быть пустым.
2 Параметр "Удаляемые контексты" в принятом примитиве запроса F-OPEN может быть принят, при соглашении, в список удаления контекстов уровня представления. Соотношение между параметром "Удаляемые контексты" и списком удалений контекстов уровня представления зависит только от реализующей системы.
3 Не должны быть выбраны никакие действия, относящиеся к примитиву запроса P-ALTER-CONTEXT, если параметр "Результат состояния" в принятом примитиве указывал "Сбой".
9.9.5 Получив от поставщика услуг уровня представления примитив подтверждения P-ALTER-CONTEXT и находясь в состоянии "Ожидание действия уровня представления", логический объект должен перейти в состояние "Ожидание передачи данных".
Примечание - Если согласование примитива P-ALTER-CONTEXT не будет выполнено так точно, как это необходимо, ответственный логический объект ждет от инициатора решения о том, будет ли использован результирующий режим "Открытие файла" или нет.
9.10 Закрытие файла (чтение, запись)
9.10.1 Получив БДП "F-CLOSE запрос БДП" и находясь в состоянии "Ожидание передачи данных", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CLOSE с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-CLOSE".
Примечание - Примитив запроса F-CLOSE содержит параметр "Результат действия", который используется в качестве механизма сигнализации между парами механизмов протокола восстановления файла при ошибках (см. 19.1.3). Параметр "Результат действия" не воздействует на любой механизм файлового протокола.
9.10.2 Получив БДП "F-CLOSE запрос БДП" и находясь в состоянии "Группирование" с пустым списком ожидаемых ответов и индикатором "Начальное состояние", имеющим значение "Ожидание передачи данных", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-CLOSE;
б) добавить элемент со значением "F-CLOSE ответ" к концу списка ожидаемых ответов.
9.10.3 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CLOSE и находясь в состоянии "Ожидание примитива F-CLOSE", логический объект должен:
а) добавить БДП "F-CLOSE ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Выбрано".
9.10.4 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-CLOSE и находясь в состоянии "Группирование" с первым элементом списка ожидаемых ответов, имеющим значение "F-CLOSE ответ", логический объект должен:
а) добавить БДП "F-CLOSE ответ БДП" в качестве значений данных к текущему БДУУП;
б) установить индикатор "Следующее состояние" в значение "Выбрано";
в) удалить первый элемент из списка ожидаемых ответов.
9.11 Начало группы (группирование)
9.11.1 Получив БДП "F-BEGIN-GROUP запрос БДП" и находясь в состоянии "Инициализировано" или в состоянии "Ожидание передачи данных", логический объект должен:
а) послать пользователю внутренней файловой услуги примитив индикации F-BEGIN-GROUP;
б) установить индикатор "Начальное состояние" в текущее состояние;
в) перейти в состояние "Группирование".
9.11.2 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-BEGIN-GROUP и находясь в состоянии "Ожидание примитива GROUP", логический объект должен:
а) добавить БДП "F-BEGIN-GROUP ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) перейти в состояние "Ответы группирования".
9.12 Конец группы (группирование)
9.12.1 Получив БДП "F-END-GROUP запрос БДП" и находясь в состоянии "Запросы группирования", логический объект должен:
а) послать пользователю внутренней файловой услуги примитив индикации F-END-GROUP;
б) перейти в состояние "Ожидание примитива GROUP".
9.12.2 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-END-GROUP и находясь в состоянии "Ответы группирования", логический объект должен:
а) добавить БДП "F-END-GROUP ответ БДП" в качестве значений данных к текущему БДУУП;
б) завершить текущий БДУУП;
в) если требуемый порог был достигнут с помощью подсчета последовательных примитивов либо с параметрами "Результат состояния", указывающими значение "Успешно", либо без параметров "Результат состояния" и
1) индикатор "Р-изменение" был установлен, послать примитив запроса P-ALTER-CONTEXT с указанием определяемых или удаляемых контекстов, как это отмечено в 9.9.4, и затем перейти в состояние "Ожидание примитива ALTER-CONTEXT уровня представления";
г) перейти в состояние, которое указывает индикатор "Следующее состояние", если требуемый порог был достигнут с помощью подсчета последовательных примитивов либо с параметрами "Результат состояния", указывающими значение "Успешно", либо без параметров "Результат состояния" и индикатор "Р-изменение" не был установлен;
д) перейти в состояние, указанное индикатором "Начальное состояние", дочистить список ожидаемых ответов, "сбросить" индикатор "Следующее состояние" и "сбросить" индикатор "Начальное состояние", если требуемый порог не был достигнут с помощью подсчета соответствующих примитивов или с параметрами "Результат состояния", имеющими значение "Успешно", или без параметров "Результат состояния".
9.13 Восстановление при ошибках
9.13.1 Получив БДП "F-RECOVER запрос БДП"' и находясь в состоянии "Инициализировано", логический объект должен:
а) послать пользователю внутренней файловой услуги сервисный примитив индикации F-RECOVER с параметрами, взятыми из полученных значений данных;
б) перейти в состояние "Ожидание примитива F-RECOVER".
9.13.2 Получив от пользователя внутренней файловой услуги сервисный примитив ответа F-RECOVER и находясь в состоянии "Ожидание примитива F-RECOVER", логический объект должен:
включить идентификаторы соответствующих контекстов уровня представления в параметр "Список удаления контекстов уровня представления" примитива запроса P-ALTER-CONTEXT (см. 9.13.2,е), предоставляемый, если эти контексты не требуются в новом режиме "Открытие файла",
а) при условиях:
1) функциональный блок "Административное управление контекстом уровня представления" был успешно согласован и