Примечание. Бит 3 используется в УЛЗ при наличии условия восстановления по тайм-ауту (см. п. 7.5.9).

  1. Процедуры установления и разъе­динения звена данных

    1. Фаза соединения звена данных. Любой УЛЗ может начать инициацию соединения звена данных.

Если УЛЗ желает инициировать звено данных, то он дол­жен передать командный ПБД УРРАС и начать отсчет тайм-аута подтверждения (см. п. 7.8.1). При приеме ответного ПБД НП подуровень УЛЗ должен сбросить свои переменные приема и передачи ПД и ПМ в 0 для соответствующего соединения звена данных, остановить тайм-аут подтверждения и перейти в фазу передачи информации.

При приеме ответного ПБД ФРЗД подуровень УЛЗ, вы­давший командный ПБД УРРАС, должен остановить свой тайм-аут подтверждения, не входить в фазу передачи инфор­мации и сообщить об этом вышерасположенному уровню для принятия соответствующих действий.

Описание действий, вызываемых приемом командного ПБД УРРАС или РЗД, см. в п. 7.4.5. Другие ПБД типа 2 (ко­мандные или ответные), принятые во время установления соединения, должны игнорироваться УЛЗ.

Если тайм-аут подтверждения истек до приема ответного ПБД НП или ФРЗД, то УЛЗ должен повторно передать команд­ный ПБД УРРАС и начать повторно отсчет тайм-аута подтверж­дения. После повторной передачи командного ПБД УРРАС N2 раз, передающий УЛЗ должен прекратить передачу командных ПБД УРРАС и сообщить об этом вышерасположенному уров­ню для инициации соответствующих действий по исправлению ошибки. Значение N2 определяется в п. 7.8.2.

При приеме командного ПБД УРРАС подуровень УЛЗ должен послать индикацию сетевому уровню, чтобы указать на появление запроса установления соединения звена данных от удаленного УЛЗ.

Если затем УЛЗ получит уведомление из сетевого уровня о приемлемости соединения, то он должен передать удаленно­му УЛЗ ответный ПБД НП, установить свои переменные прие­ма и передачи ПМ и ПД соответствующего соединения звена данных в 0 и войти в фазу передачи информации. Передача ответного ПБД НП должна иметь преимущество над любым другим ответным ПБД того же соединения звена данных, которые могут ожидать передачи на подуровне УЛЗ. Вслед за ответным ПБД НП могут передаваться’ дополнительные ПБД УЛЗ, ожидзютцие передачи.

Если УЛЗ пот:учил уведомление из сетевого уровня не входить в указанную фазу, то он должен передать удаленно­му УЛЗ ответный ПБД ФРЗД и остаться в разъединенном режиме звена.

  1. Фаза передачи информации. После передачи ответ­ного ПБД НП на командный ПБД УРРАС или после приема ответного ПБД НП на переданный командный ПБД УРРАС подуровень УЛЗ должен принимать и передавать ПБД фор­мата И и формата У КО в соответствии с процедурами, опи­санными в п. 7.5.

При приеме командного ПБД УРРАС в фазе передачи информации УЛЗ должен подтвердить процедуру сброса, как описано в п. 7.6.

  1. Фаза разъединения звена данных. В фазе передачи информации любой УЛЗ может инициировать разъединение соединения звена данных, передав командный ПБД РЗД.

Если УЛЗ желает разъединить соединение звена данных, то он должен передать командный ПБД РЗД и начать отсчет тайм-аута подтверждения (см. п. 7.8.1). При приеме ответного ПБД НП или ФРЗД от удаленного УЛЗ локальный УЛЗ дол­жен прекратить отсчет своего тайм-аута подтверждения и пе­рейти в режим разъединения звена.

Если тайм-аут подтверждения истечет до приема ответного ПБД НП или ФРЗД, то УЛЗ должен передать повторно ко­мандный ПБД РЗД и начать повторный отсчет тайм-аута подт­верждения. После передачи командного ПБД РЗД N2 раз передающий УЛЗ должен прекратить передачу командного ПБД РЗД, войти в фазу разъединенного звена данных и со­общить об этом вышерасположенному уровню для инициации соответствующего действия по исправлению ошибки. Зна­чение N2 определяется в п. 7.8.2.

При приеме командного ПБД РЗД подуровень УЛЗ дол­жен передать ответный ПБД НП и войти в фазу разъединен­ного звена данных. Передача ответного ПБД НП должна иметь преимущество перед передачей любого другого ответ­ного ПБД в том же соединении звена данных, которое может ожидать передачи в УЛЗ.

  1. Фаза разъединенного звена данных. После приема командного ПБД РЗД от удаленного УЛЗ и передачи ответ­ного'ПБД НП либо приема ответного ПБД НП на переданный командный ПБД РЗД подуровень УЛЗ должен перейти в фазу разъединения звена данных.

В фазе разъединения УЛЗ может инициировать соединение звена данных. В этой фазе УЛЗ должен реагировать на прием командного ПБД УРРАС, как описано в п. 7.4.1, и передавать ответный ПБД ФРЗД в ответ на прием командного ПБД РЗД.

При приеме в фазе разъединения любого другого команд­ного ПБД типа 2 с битом 3, равным 1, УЛЗ должен передать ответный ПБД РЗД с битом П, равным 1. Другие ПБД типа 2, принятые в фазе разъединения, УЛЗ должен игнорировать.

  1. Столкновение ненумерованных командных ПБД установления режима. Ситуация столкновения в УЛЗ должна разрешаться следующим образом.

Если переданный и принятый командный ПБД установле­ния режима одинаковы, то каждый УЛЗ при первой возмож­ности должен передать ответный ПБД НП и перейти в указан­ную фазу либо после приема ответного ПБД НП, либо после истечения своего тайм-аута подтверждения. Если переданный и принятый командные ПБД установления режима различны, то каждый УЛЗ должен перейти в фазу разъединения звена данных и выдать при первой возможности ответный ПБД ФРЗД.

  1. Процедуры передачи информации Ниже описаны процедуры, которые применяются для пере­дачи ПБД И в каждом направлении соединения звена данных.

В дальнейшем выражение „на единицу больше” означает непрерывно повторяющиеся серии последовательностей, т. е. 7 на единицу больше 6, а 0 на единицу больше 7 при нумерации по модулю 8.

  1. Передача ПБД И. Если УЛЗ имеет ПБД И для переда­чи (т. е. ПБД И еще не переданные или подлежащие повторной передаче, как описано в п. 7.5.5), то он должен передать ПБД И с номером Нпд, равным его текущей переменной ПД, и с Нпм, равным его текущей переменной ПМ для этого соедине­ния звена данных. После передачи ПБД И подуровень УЛЗ должен увеличить на единицу свою переменную передачи ПД.

Если тайм-аут подтверждения не истек к моменту передачи ПБД И, то следует начать его отсчет.

Если переменная передачи ПД соединения звена данных равна последнему принятому значению Нпм плюс к (где к — максимальное число неподтвержденных ПБД И, см. п. 7.8.4), то УЛЗ не должен передавать каких-либо новых ПБД И по этому соединению звена данных, но должен обладать возмож­ностью повторной передачи ПБД И в соответствии с п. 7.5.6 или п. 7.5.9.

Если локальный УЛЗ соединения звена данных находится в состоянии занятости, то он может передавать ПБД И при условии, что удаленный УЛЗ этого соединения звена данных сам не находится в состоянии занятости. Если в УЛЗ некоторо­го соединения звена данных имеется особое условие НПРК, то он должен прекратить передачу ПБД по этому соединению звена данных.

  1. Прием ПБД И. Если УЛЗ соединения звена данных не находится в состоянии занятости и получает ПБД И с поряд­ковым номером, равным переменной приема ПМ, то этот УЛЗ должен принять поле информации этого ПБД, увеличить на единицу свою переменную приема ПМ и действовать следую­щим образом:

  1. При наличии готовых к передаче ПБД И УЛЗ должен действовать в соответствии с п. 7.5.1 и подтверждать приня­тые ПБД И, устанавливая номер Нпм в поле управления следующего передаваемого ПБД И в значение переменной приема ПМ. УЛЗ может также подтвердить принятые ПБД И, передав ПБД ГПР с номером Нпм, равным значению пере­менной приема ПМ.

  2. При отсутствии готовых к передаче ПБД И УЛЗ дол­жен:

  1. передать при первой возможности ПБД ГПР с номером Нпм, равным значению переменной приема ПМ, либо,

  2. если принятый ПБД не являлся командным ПБД с битом 3, равным 1, ожидать в течение некоторого пе­риода времени, ограниченного вероятным истечением удаленного тайм-аута, подтверждения, пока не появит­ся ПБД И, готовый к передаче, или ожидать накопле­ния дополнительных ПБД И с целью их подтверждения одним ПБД ГПР, что является предметом ограничения размера окна.

  1. Если прием ПБД И вызвал переход УЛЗ в состояние занятости по отношению к последующим ПБД И, то УЛЗ должен передать ПБД НГПР с номером Нпм, равным зна­чению переменной приема ПМ. При наличии готовых к пе­редаче ПБД И подуровень УЛЗ может передать их, как опи­сано в п. 7.5.1, до или после передачи ПБД НГПР.

Если УЛЗ, связанный с некоторым соединением звена данных, находится в состоянии занятости и получает ПБД И в правильной последовательности, то он может игнориро­вать поле информации, содержащееся в любом принятом по этому соединению звена данных ПБД И (см. п. 7.5.8).

  1. Прием неправильных ПБД. Если УЛЗ принимает недействительный ПБД (см. п. 3.3.5) или ПБД с неправиль­ным адресом ПДУП или ПДУО, то этот ПБД должен быть целиком аннулирован.

  2. Прием ПБД с нарушением порядка следования. Если УЛЗ принимает ПБД И, чей номер передачи нарушает порядок следования, т. е. не равен текущей переменной прие­ма ПМ, но находится внутри окна приема, то УЛЗ должен аннулировать поле информации ■■'этого ПБД И и передать ПБД НПР с Нпм, равным значению ПМ. Затем УЛЗ должен аннулировать поле информации всех ПБД И до тех пор, пока не будет правильно принят ожидаемый ПБД И. При приеме ожидаемого ПБД И УЛЗ должен подтвердить ПБД, как опи­сано в п. 7.5.2. УЛЗ должен использовать значения Нпм и би­та 3 аннулированных ПБД И.

В конкретном соединении звена данных в любой момент времени от одного УЛЗ к другому УЛЗ может быть установ­лено только одно особое условие „передан НПР”. Условие „передан НПР” должно сбрасываться при приеме запрошен­ного ПБД И. Условие „передан НПР” может быть сброшено по истечении функции тайм-аута „неприем”. Если УЛЗ узнает по истечению тайм-аута „неприем”, что запрошенный ПБД И не будет принят, так как либо запрошенный ПБД И, либо ПБД НПР был потерян или содержал ошибку, то этот УЛЗ может повторить ПБД НПР с гем, чтобы повторно установить условие „передан НПР” вплоть до N2 раз. Значение N2 опре­деляется в п. 7.8.2.

  1. Подтверждение приема. При правильном приеме ПБД формата И или формата УКО. даже в состоянии занятос­ти (см. и. 7 5.8), принимающий УЛЗ должен рассматривать Нпм, содержащийся в этом ПБД, как подтверждение нсек ПЬД И, переданных по этому соединению звена данных с Нид вплоть до принятого Нпм минус 1 включительно. УЛЗ должен сбросить тайм-аут подтверждения при правильном приеме ПБД формата И или формата УКО с Нпм большим, чем пос­ледний принятый Нпм (действительно подтверждающий не. которые ПБД И).

Если тайм-аут сброшен, но все еще остались неподтверж­денные ПБД И на этом соединении звена данных, то УЛЗ должен начать повторный отсчет тайм-аута подтверждения. Если этот тайм-аут затем истечет, то УЛЗ должен выполнять процедуры п. 7.5.9 относительно неподтвержденных ПБД И.

  1. Прием ПБД НПР. При приеме ПБД НПР подуровень УЛЗ должен установить свою переменную передачу ПД, рав­ную номеру Нпм, принятому в поле управления ПБД НПР. УЛЗ должен передать (в том числе повторно) соответствую­щий ПБД И, как только он появится. Если другие неподт­вержденные ПБД И были уже переданы по этому соединению вслед за ПБД И, указанным в ПБД НПР, то эти ПБД И долж­ны быть повторно переданы УЛЗ вслед за повторной переда­чей запрошенного ПБД И.

Если повторная передача началась с некоторого ПБД вследствие контрольной сверки (см. п. 7.5.9) и был принят ПБД НПР, который вызывал бы повторную передачу с того же самого ПБД И (как указано Нпм в ПБД НПР), то повтор­ная передача в результате приема ПБД НПР должна быть запрещена.

  1. Прием ПБД НГПР. УЛЗ, принявший ПБД НГПР должен остановить как можно скорее передачу ПБД И по указанному соединению звена данных и начать отсчет тайм­аута „занято”, если он еще не начат. По истечении тайм-аута „занято” УЛЗ должен выполнить процедуру, описанную в п. 7.5.9. В любом случае УЛЗ не должен передавать других ПБД И по этому соединению звена данных до тех пор, пока не будет принят ПБД ГПР или НПР, или ответный ПБД И с битом П, равным 1, либо пока не завершится процедура сбро­са в этом соединении звена данных.

  2. Состояние занятости УЛЗ. УЛЗ должен войти в сос­тояние занятости в соединении звена данных, если он времен­но не способен принять, или продолжать гнил м ПБД И из-за внутренних ограничений, например ограничений приемных буферов. Ожидающие в этом соединении звена данных пере­дачи ПБД И могут быть переданы до или после передачи ПБД НГПР. Находясь н состоянии занятости, УЛЗ должен принимать и обрабатывать ПБД формата УКО и выдавать ответный ПБД НГПР с битом П, равным 1, в ответ на прием командного ПБД формата УКО или И с битом 3, равным 1, по этому соединению звена данных.

Для указания сброса состояния занятости в соединении звена данных УЛЗ должен передать либо ответный ПБД И с битом П, равным 1, при наличии неподтвержденного бита 3, равного 1, либо ответного ПБД НПР или ГПР с номером Нпм, равным текущей переменной приема ПМ, в зависимости от того аннулировал ли УЛЗ поля информации правильно при­нятых ПБД И или нет. Кроме того, передача командного ПБД УРРАС или ответного ПБД НП должна указывать на сброс состояния занятости на передающем УЛЗ соединения звена данных.

  1. Ожидание подтверждения. УЛЗ поддерживает внут- ренную переменную счета повторных передач для каждого соединения звена данных, которая должна устанавливаться в 0, когда УЛЗ принимает или передает ответный ПБД НП или командный ПБД УРРАС, либо когда УЛЗ принимает ПБД НГПР, либо когда УЛЗ правильно принимает ПБД фор­мата И или формата УКО с Нпм большим, чем последний при­нятый Нпм (действительно подтверждающий некоторые ПБД И).