ГОСТ Р 56451—2015
Затененные поля на рисунке 3 обозначают те фрагменты, которые участвуют в вычислении CRC:
байты, по которым должен быть вычислен CRC. опуская поле общая длина, не принимая во внимание
все последующие заголовки пакета GSE вплотьдо поля ID Frag и не включая полеCRC.
4.3 Фрагментация PDU
Пакеты GSE с данными от PDU должны иметь одинаковый ID Frag и должны передаваться по
порядку. Однако они не могут быть переданы последовательно, так как могут чередоваться с пакетами
GSE. переносящими полные PDU или фрагменты с другими ID Frag. Собранные PDU будутпоставлены
на более высокие уровни после приема последнего фрагмента PDU.
При фрагментации применяются следующие правила:
- все пакеты GSE, переносящие данные одного итого же PDU. должны иметьодинаковые ID Frag;
- первый пакетGSE с конкретным ID Frag должен иметь бит S. равный «1», ибит Е.равный «0»;
- пакеты GSE. переносящиефрагменты PDU. которыенеявляются нипервым, нипоследним фраг
ментом PDU. должны иметь бит S. равный «0». ибит Е. равный «0»;
- последний пакет GSE сконкретным ID Frag должен иметь бит S. равный «0», и бит Е. равный «1»;
- до тех пор. пока PDU не заполнен, его ID Frag не должен повторно использоваться на интервале
256 кадров основной полосы;
- все пакеты GSEс одинаковым ID Fragдолжны передаваться в порядке очередности;
- поле меткадолжно использоваться только в первом пакете GSE.
Всякий раз при фрагментации инкапсулятор GSE исполняет первые байты Х1 PDU и следующие
операции:
- формирует пакет GSEс установкой бита S. равного «1», исустановкой бита Е, равного «0»;
- устанавливает в поле длина GSE расчетное количество байтов, включая длину данных Х1 PDU
(см. рисунок3). длины полейID Frag, общейдлины, типпротокола, уровень(еслиполеуровеньсуществу
ет) илюбого заголовка расширения. Полезная нагрузка GSE переносится в первой части инкапсулиро
ванного PDU сдлиной Х1 байтов. Полученная длина GSE не должна превышать величинуостающегося
свободного пространства в текущем поледанных кадра основной полосы;
- устанавливаетсвободное значение ID Frag;
- устанавливает в поле общаядлина расчетное количество байтов, включая длину нефрагменти-
рованного PDU, полятип протокола, поля метка (при наличии) и любого заголовка расширения;
- добавляет полетип протокола;
- добавляет поле метка (если применяется);
- выполняет вставки Х1 (см. рисунок3) байтов изданных PDU в полезную нагрузкуGSE;
- помещаетэтот пакетGSEв текущем кадре первым пакетом GSEили послелюбогодругого пакета
GSE. уже присутствующего в кадре.
Когда PDU разделен наколичествофрагментовболеедвух, инкапсулятор GSEпринимаетследую
щиеХ2 (см. рисунок 3) данные PDU и:
- формируетпакетGSE с установкой бита Sв «0» и с установкой бита Е в «0»;
- устанавливает в поле общаядлина в заголовке GSE расчетное количество байтов, включая дли
нуданных Х2 PDU и поля ID Frag. Полученная длина GSE недолжна превышать величинуостающегося
свободного пространства в текущем поледанных кадра основной полосы;
- устанавливаетто же значение ID Frag, чтои в предыдущем фрагментеэтого PDU;
- вставляет байты Х2 (см. рисунок3) из PDU в полезную нагрузкуGSE и следующие операции;
- помещаетэтотпакетGSE в выбранный кадр (взависимостиоталгоритма планирования)какпер
вый пакет GSE или после любого другого пакета GSE уже присутствующего в кадре. Такая же операция
повторяетсядля всех фрагментов PDU за исключением последнего.
ИнкапсуляторGSEобрабатываетостающиесяХЗ данные PDU (см. рисунок3)иследующие опера
ции;
- формируетпакетGSE с установкой бита S в «0» и с установкой бита Е в «1»;
- устанавливает в поле длина GSE в заголовке GSE расчетное количество байтов, включая длину
поляданные PDU ХЗ. поля IDFragиразмера поляCRC-32. Полученнаядлина GSEнедолжна превышать
остающееся свободное пространство втекущем поледанных кадра основной полосы;
- устанавливает в поле ID Frag туже самую величину, что ив предыдущихфрагментахэтого PDU; -
вставляет остающийсяХЗ(см.рисунок 3). данныеPDU вполезной нагрузке GSE идобавляет CRC32; -
помещает этот пакет GSE в выбранном кадре основной полосы в качестве первого пакета GSE
или послелюбогодругого пакета GSE, уже установленного в кадре.
Примеры форматовпакетов GSE приведены в приложении В.
ю