
- •Глава 7 Группа Sigtran
- •7.1. Система общеканальной сигнализации №7 в ip-сети
- •Архитектура Sigtran
- •Транспортный протокол с управлением потоками
- •Основные функциональные возможности sctp
- •Множественная адресация
- •С множественной адресацией
- •Соединения для нескольких потоков
- •Фрагменты
- •7.3.5. Фрагмент полезной нагрузки data
- •Б.С.Гольдштейн
- •Установление соединения
- •Протокол m3ua
- •Функции m3ua
- •Терминология
- •Код пункта сигнализации
- •Примитивы
- •7.4.5. Сообщения m3ua
- •Протокол m2ua
- •Протокол м2ра
- •Протокол sua
- •Протокол iua
- •Протокол v5ua
7.3.5. Фрагмент полезной нагрузки data
Фрагмент DATA используется для переноса к и от UPL информации пользователя. Он имеет формат, показанный на рис. 7.6.
Рис.
7.6. Формат фрагмента DATA
Есть вероятность того, что протоколу SCTP придется разделить сообщение на сегменты. Такое может произойти, если MTU тракта меньше размера сообщения, которое необходимо передать. Из-за возможной сегментации в формат фрагмента введены биты Начало (В) и Конец (Е). Бит В указывает, что фрагмент содержит часть
Б.С.Гольдштейн
первого сегмента сообщения пользователя, а бит Е - что фрагмент содержит часть последнего сегмента сообщения. Если сообщение полностью умещается в один фрагмент, оба бита, В и Е, имеют значение 0. Если сообщение содержит более 2 сегментов, первый фрагмент первого сегмента должен иметь бит В, равный 1, а бит Е - равный 0, в то время как последний фрагмент последнего сегмента должен иметь бит В, равный 0, а бит Е равный - 1. Фрагменты всех сегментов в промежутке между первым и последним должны иметь оба бита, Е и В, равными 1.
Бит U указывает, что фрагмент принадлежит неупорядоченному потоку данных. Другими словами, порядок сообщений пользователя в потоке не играет роли, и порядковый номер в потоке следует игнорировать. В таком случае SCTP пропускает данные в верхний уровень без анализа порядка поступления сообщений. Однако SCTP все-таки должен гарантировать, что сегментированные сообщения прошли восстановительную сборку до отправки данных в верхний уровень.
Порядковый номер передачи (TSN) представляет собой 32-битовое целое число, которое идентифицирует фрагмент в контексте соединения. Этот номер не зависит от порядкового номера фрагмента в потоке и назначается SCTP, а не каким-нибудь пользователем SCTP. Когда оконечный пункт передает фрагмент INIT, в его состав входит TSN, соответствующий первому фрагменту DATA, который этот пункт планирует передать. Таким образом, первый передаваемый фрагмент DATA всегда содержит тот же TSN, что и фрагмент INIT. После этого TSN увеличивается для каждого нового фрагмента DATA, передаваемого оконечным пунктом в этом соединении.
Идентификатор потока (S) является 16-битовым целым числом, определяющим поток, которому принадлежат данные. Порядковый номер в потоке (п) - это 16-битовое целое число, указывающее положение сообщения внутри потока. Порядковые номера сообщений в каждом потоке начинаются с 0. Номер увеличивается для каждого передаваемого в этом потоке сообщения. Заметим, что сегментированное сообщение должно иметь в каждом сегменте один и тот же порядковый номер в потоке.
Идентификатор протокола полезной нагрузки передается от пользователя-отправителя к SCTP на передающем конце и пропускается от SCTP к пользователю-адресату на приемном конце. Он доступен пользователям для пропуска дальнейшей информации о фрагменте, но SCTP не проверяет этот идентификатор и не воздействует на него.