Документ утратил силу или отменен. Подробнее см. Справку

Таблица N 3. Состав пакета протокола Транспортного уровня

┌─────┬─────┬─────┬─────┬──────┬─────┬───┬────┬─────┬────────┬────────────┐

│Бит 7│Бит 6│Бит 5│Бит 4│Бит 3 │Бит 2│Бит│Бит │ Тип │ Тип │ Размер, │

│ │ │ │ │ │ │ 1 │ 0 │ │ данных │ байт │

├─────┴─────┴─────┴─────┴──────┴─────┴───┴────┼─────┼────────┼────────────┤

│ PRV (Protocol Version) │ M │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ SKID (Security Key ID) │ M │ BYTE │ 1 │

├────────────┬────┬────────────┬─────┬────────┼─────┼────────┼────────────┤

│ PRF │RTE │ ENA │ CMP │ PR │ M │ BYTE │ 1 │

│ (Prefix) │ │ │ │ │ │ │ │

├────────────┴────┴────────────┴─────┴────────┼─────┼────────┼────────────┤

│ HL (Header Length) │ M │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ HE (Header Encoding) │ M │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ FDL (Frame Data Length) │ M │ USHORT │ 2 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ PID (Packet Identifier) │ M │ USHORT │ 2 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ PT (Packet Type) │ M │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ PRA (Peer Address) │ O │ USHORT │ 2 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ RCA (Recipient Address) │ O │ USHORT │ 2 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ TTL (Time To Live) │ O │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ HCS (Header Check Sum) │ M │ BYTE │ 1 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ SFRD (Services Frame Data) │ O │ BINARY │0 ... 65517 │

├─────────────────────────────────────────────┼─────┼────────┼────────────┤

│ SFRCS (Services Frame Data Check Sum) │ O │ USHORT │ 0,2 │

└─────────────────────────────────────────────┴─────┴────────┴────────────┘

5.4. Заголовок протокола Транспортного уровня состоит из следующих полей: PRV, PRF, PR, CMP, ENA, RTE, HL, HE, FDL, PID, PT, PRA, RCA, TTL, HCS. Протокол Уровня поддержки услуг представлен полем SFRD, контрольная сумма поля Уровня поддержки услуг содержится в поле SFRCS.

5.5. Параметр PRV содержит значение 0x01. Значение данного параметра инкрементируется каждый раз при внесении изменений в структуру заголовка.

5.6. Параметр SKID определяет идентификатор ключа, используемого при шифровании.

5.7. Параметр PRF определяет префикс заголовка Транспортного уровня и содержит значение 00.

5.8. Поле RTE (Route) определяет необходимость дальнейшей маршрутизации данного пакета на удаленный аппаратно-программный комплекс, а также наличие опциональных параметров PRA, RCA, TTL, необходимых для маршрутизации данного пакета. Если поле имеет значение 1, то необходима маршрутизация и поля PRA, RCA, TTL присутствуют в пакете. Данное поле устанавливает Диспетчер того аппаратно-программного комплекса, на котором сгенерирован пакет, или абонентский терминал, сгенерировавший пакет для отправки на аппаратно-программный комплекс, в случае установки в нем параметра "HOME_DISPATCHER_ID", определяющего адрес аппаратно-программного комплекса, на котором данный абонентский терминал зарегистрирован.

5.9. Поле ENA (Encryption Algorithm) определяет код алгоритма, используемый для шифрования данных из поля SFRD. Если поле имеет значение 00, то данные в поле SFRD не шифруются.

5.10. Поле CMP (Compressed) определяет, используется ли сжатие данных из поля SFRD. Если поле имеет значение 1, то данные в поле SFRD считаются сжатыми.

5.11. Поле PR (Priority) определяет приоритет маршрутизации данного пакета и может принимать следующие значения:

00 - наивысший

01 - высокий

10 - средний

11 - низкий

При получении пакета Диспетчер производит маршрутизацию пакета с более высоким приоритетом быстрее, чем пакетов с низким приоритетом.

5.12. Поле HL - длина заголовка Транспортного уровня в байтах с учетом байта контрольной суммы (поля HCS).

5.13. Поле HE определяет применяемый метод кодирования следующей за данным параметром части заголовка Транспортного уровня.

5.14. Поле FDL определяет размер в байтах поля данных SFRD, содержащего информацию протокола Уровня поддержки услуг.

5.15. Поле PID содержит номер пакета Транспортного уровня, увеличивающийся на 1 при отправке каждого нового пакета на стороне отправителя. Значения в данном поле изменяются по правилам циклического счетчика в диапазоне от 0 до 65535, т.е. при достижении значения 65535 следующее значение 0.

5.16. Поле PT - тип пакета Транспортного уровня. Поле PT может принимать следующие значения.

0 - EGTS_PT_RESPONSE (подтверждение на пакет Транспортного уровня);

1 - EGTS_PT_APPDATA (пакет, содержащий данные протокола Уровня поддержки услуг);

2 - EGTS_PT_SIGNED_APPDATA (пакет, содержащий данные протокола Уровня поддержки услуг с цифровой подписью).

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

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

5.19. Поле TTL - время жизни пакета при его маршрутизации между аппаратно-программными комплексами. Использование данного параметра предотвращает зацикливание пакета при ретрансляции в системах со сложной топологией адресных пунктов. Первоначально TTL устанавливается аппаратно-программным комплексом, сгенерировавшим данный пакет. Значение TTL устанавливается равным максимально допустимому числу аппаратно-программных комплексов между отправляющим и принимающим аппаратно-программным комплексом. Значение TTL уменьшается на единицу при трансляции пакета через каждый аппаратно-программный комплекс, при этом пересчитывается контрольная сумма заголовка Транспортного уровня. При достижении данным параметром значения 0 и при обнаружении необходимости дальнейшей маршрутизации пакета происходит уничтожение пакета и выдача подтверждения с соответствующим кодом PC_TTLEXPIRED, описанным в Таблице N 14.

5.20. Поле HCS - контрольная сумма заголовка Транспортного уровня (начиная с поля "PRV" до поля "HCS", не включая поле "HCS"). Для подсчета значения поля HCS ко всем байтам указанной последовательности применяется алгоритм CRC-8.

5.21. Поле SFRD - структура данных, зависящая от типа пакета и содержащая информацию Протокола уровня поддержки услуг.

5.22. Поле SFRCS - контрольная сумма поля уровня Протокола поддержки услуг. Для подсчета контрольной суммы по данным из поля SFRD используется алгоритм CRC-16. Данное поле присутствует только в том случае, если есть поле SFRD.

5.23. Блок-схема алгоритма обработки пакета данных протокола Транспортного уровня при приеме представлена на Рисунке N 2.

(────────────)

( НАЧАЛО )

(─────┬──────)

\/

┌─┬────────────────┬─┐

│ │Чтение заголовка│ │

└─┴───────┬────────┴─┘

│ ┌─────┐

\/ │ │

┌─┬────────────────────────┬─┐ -┌───────/\───────┐ + │ │

┌─┤ │ Код │ │<─<Версия PRV И PRF>───┘ \/

│ │ │ EGTS_PC_UNS_PROTOCOL │ │ │ поддерживается?│ ┌───/\───┐

│ └─┴────────────────────────┴─┘ └───────\/───────┘ - │ HL==11 │

│ ┌──< или >

\/┌─┬────────────────────────┬─┐ │ │ HL==16 │

├─┤ │ Код │ │ │ └───\/───┘

│ │ │ EGTS_PC_INC_HEADERFORM │ │<─────────────────────┘ │

│ └─┴────────────────────────┴─┘ │ +

│ \/

\/┌─┬────────────────────────┬─┐ - ┌────/\───┐

├─┤ │ Код │ │<───────────────────────<CRC8==HCS>

│ │ │EGTS_PC_HEADERCRC_ERROR │ │ └────\/───┘

│ └─┴────────────────────────┴─┘ │

│ │

│ ┌─┬────────────────────────┬─┐ │ +

├─┤ │ Код │ │ ┌───────┐ │

│ │ │ EGTS_PC_TTLEXPIRED │ │ \/ │ - \/

│ └─┴────────────────────────┴─┘ - ┌────/\────┐ │ ┌───/\───┐

│ /\ ┌─<RCA==Адрес> └──< RTE==0 >

│ └──────────────────┐ │ │текущей ТП│ └───\/───┘

│ ┌─┬──────────────┬─┐ │ - │ └────\/────┘ │

│ ─ │ │TTL = TTL - 1,│ │ + ┌───/\──┐ │ │ + │ +

│(A)<─┤ │ Пересчет HCS,│ │<──<TTL > 0><┘ └─────────────>│

│ ─ │ │ Отправка на │ │ └───\/──┘ │

│ │ │ другую ТП │ │ │

\/ └─┴──────────────┴─┘ \/

│ - ┌───/\──┐

\/ ┌─┬───────────────────────┬─┐ ┌─────<FDL > 0>

├───────┤ │ Код │ │<─────────────┘ └───\/──┘

│ │ │ EGTS_PC_OK │ │ │

│ └─┴───────────────────────┴─┘ │ +

│ \/

\/ ┌─┬───────────────────────┬─┐ ┌─┬───────────────────────┬─┐

├───────┤ │ Код │ │<───┐ │ │ Чтение данных SFRD, │ │

│ │ │ EGTS_PC_DATACRC_ERROR │ │ │ │ │ Вычисление CRC16 │ │

│ └─┴───────────────────────┴─┘ │ └─┴───────────┬───────────┴─┘

│ │ │

\/ ┌─┬───────────────────────┬─┐ │ \/

├───────┤ │ Код │ │ │ - ┌──────/\──────┐

│ │ │ EGTS_PC_DECRYPT_ERROR │ │<┐ └───────────< CRC16==SFRCS >

│ └─┴───────────────────────┴─┘ │ - └──────\/──────┘

│ /\ /\ │ + │

│ ┌────┘ │ │ │

│ │ │ - + ┌───────/\──────┐ \/

│ │ ┌───────/\─────┐ ┌──< ENA ><──┐ - ┌────/\───┐

│ │ < SKID найден? ><┘ │поддерживается?│ └────< ENA==00 >

│ │ └───────\/─────┘ └───────\/──────┘ └────\/───┘

│ │ │ + │

│ │ + \/ │

│ │ ┌─┬─────────────┬─┐ ┌─────────────┬<───────────────┘

│ │ │ │Декодирование│ │ │ │

│ │ │ │ поля SFRD │ │ │ │

│ │ └─┴──────┬──────┴─┘ │ \/ ──────────────

│ │ \/ │ ┌───/\───┐ + / Данные /

│ │ - ┌─────/\─────┐ + │ < CMP==0 >────>/ уровня /

│ └────<Декодировано>───┘ └───\/───┘ / Поддержки /──┐

│ │ успешно? │ - │ / Сервисов / │

│ └─────\/─────┘ │ ────────────── │

│ \/ /\ │

│ ┌─┬────────────┬─┐ │ │

│ │ │ Распаковка │ │ │ │

│ │ │ данных │ │ │ │

│ └─┴────┬───────┴─┘ │ │

│ │ │ │

│ │ │ │

│ │ │ │

│ ┌─┬────────────────────┬─┐ \/ │ │

│<────┤ │ Код │ │<─┐ - ┌────/\─────┐ + │ \/

│ │ │EGTS_PC_INC_DATAFORM│ │ └───<Распаковано>───────┘ ┌─┬────────────┬─┐

│ └─┴────────────────────┴─┘ │ успешно? │ │ │ Код │ │

│ └────\/─────┘ │ │ EGTS_PC_OK │ │

\/ └─┴─────┬──────┴─┘

┌─┬──────────────────┬─┐ \/

│ │ Отправка │ │ ─

│ │ EGTS_PT_RESPONSE │ │ (B)

└─┴────────┬─────────┴─┘ ─

\/

(─────) A - маршрутизация и отправка пакета на другой

(КОНЕЦ) аппаратно-программный комплекс

(─────) B - обработка данных Протокола Уровня Поддержки

Услуг

Рисунок 2. Блок-схема алгоритма обработки пакета данных

протокола Транспортного уровня при приеме