после символа опции (рис. 2.10).
Рис.2.10. Пример дивергенции после символа опции Точка конвергенции не может возникнуть между вводом или сохранением и символом состояния, но может возникнуть в любой другой точке SDL - диаграммы (рис. 2.11).
Рис.2.11. Пример использования конвергенции
В рамках тематики данной книги описанную выше иерархию описаний (SDL-система, блок, процессы, каналы, сигналы) представляется полезным продемонстрировать на более реальном примере SDL-спецификаций одночастотной системы сигнализации 2600 Гц, которая будет детально рассмотрена в главе 5. На рис. 2.12-2.14 приведены фрагменты SDL-спецификаций линейной сигнализации на внутризоновой сети, например, между центральной станцией (ЦС) или сельско-пригородным узлом (У СП) и междугородной станцией (АМТС) по заказно-соединительным линиям (ЗСЛ) и соединительным междугородным линиям (СЛМ). При всей фрагментарности этих спецификаций они достаточно наглядно иллюстрируют предлагаемый подход.
Далее в заключительной части параграфа отмечаются некоторые более общие свойства используемой в книге версии SDL-92 и перспективы ее развития.
Рис.2.12. Диаграмма взаимодействия блоков для системы одночастотной сигнализации
Введение объектно-ориентированных свойств стало основным дополнением SDL-92 по сравнению с SDL-88. В сфере объектно-ориентированных разработок SDL-92 соответствует новым промышленным стандартам, таким как C++ в программировании.
Определение процесса можно повторно использовать, определяя его как тип, путем добавления ключевого слова тип и двух интерфейсов (шлюзов), которые описывают принимаемые и передаваемые сигналы. Это иллюстрирует рис. 2.15, являющийся развитием рис. 2.2, приведенного в начале этого параграфа.
Рис.2.13. Структура блока обработки одночастотной сигнализации на SDL для входящего соединения по СЛМ
Тип может быть разделен на подтипы, и типы могут определяться как объекты (экземпляры в SDL). Объектно-ориентированные свойства SDL включают защищенные переопределения в подтипах (называемые виртуальными), общие типы (называемые параметризованными типами) и понятия библиотеки для типов (называемые пакетами).
Использование различных инструментальных средств в SDL породило требование: способность передачи SDL-диаграмм между различными платформами различных инструментальных систем. Это особенно важно для организаций, занимающихся стандартами, в первую очередь - для различных исследовательских комиссий самого ITU-T. При этом край-' не желательно сохранение основной графической информации при переводе спецификаций SDL от одной инструментальной платформы к другой.
Рис.2.14. Фрагмент SDL-диаграммы процесса обработки входящего вызова одночастотной системы сигнализации 2600 Гц по СЛМ
Разрабатываемый проект единого формата взаимообмена (Common Interchange Format - CIF) базируется на текстуальном представлении, SDL/PR, и включает вопрос минимальной передачи такой графической информации, которая позволяет пользователям распознавать спецификации. Передача ограничена человеческим фактором распознавания, т.е. информацией постраничной организации и относительным позиционированием; детали при этом опускаются. Планируется, что CIF будет передавать только законченные элементы спецификаций, такие как система, блок и диаграммы процесса.
С точки зрения дальнейшего развития SDL достаточно сложно обеспечить равновесие между требованием стабильности текущей версии языка, которое разделяют специалисты других исследовательских комиссий ITU-T, промышленных организаций, НИИ и администраций связи, давно использующих SDL, и интересами новых пользователей SDL.
По мнению автора, до 2000 г. не ожидается появления новой версии SDL. Относительно же сегодняшних представлений о будущей версии SDL-2000 можно отметить, что их основой является упрощение языка. В настоящее время в ITU-T обсуждаются некоторые идеи по разработке SDL-2000, конспективно изложенные ниже.
Рис. 2.15-Процесс тастатуры как тип
SDL имеет широкий набор концепций структурирования, и при этом они иногда используются в разных целях и часто перекрываются. Основная из этих концепций - концепция процесса может в принципе заменить остальные концепции: системы, блока и сервиса. Это сделает язык проще, но потребует дополнительных руководящих принципов для применения концепции процесса в различных целях, например, для системного структурирования и для описания поведения. Возможность такого упрощения становится очевидной при определении объектно-ориентированных свойств SDL-92, где многое повторяется для каждой из четырех концепций структурирования (система, блок, процесс, сервис).
Определение типов данных основано на принципе ACT-ONE, который одинаков в SDL и в языке LOTOS. При введении этого принципа полагалось, что это наилучший способ для формализованного описания системы данных. Хотя этот принцип действительно весьма привлекателен теоретически, однако в практических применениях значительная часть данных почти никогда не используется. Последнее также иллюстрируется слабой поддержкой этого принципа существующими инструментальными средствами SDL. Версия языка SDL-92 была дополнена ACT-ONE с более традиционным алгоритмическим подходом, а новая рекомендация Z. 105 идет дальше и предписывает определение данных в SDL, основывающееся на стандарте языка ASN. 1. Но, к сожалению, и этот алгоритмический подход, и описание данных по Z.I 05 преобразуются затем в семантическую модель, основанную на том же принципе ACT-ONE. Во время работы над SDL-92 стало ясно, что привлекательные свойства объектного ориентирования, такие как общие типы и полиморфизм, достаточно сложно совместить с принципом ACT-ONE. В связи с этим имеется очевидная тенденция к отходу в будущем от имеющейся зависимости в описании данных от принципа ACT-ONE. Сегодня трудно предположить направление этой тенденции, разве что можно ожидать в последующей версии SDL-2000 более полный переход kasn. 1, чем это сегодня предусматривает рекомендация Z.I 05.
Объектно-ориентированные свойства SDL-92 делают SDL привлекательным для спецификаций и описаний систем в соответствии с моделью Открытых Распределенных Процессов (Basic Reference Model of Open Distributed Processing - ODP) [114]. Однако необходимость совместимости SDL-92 с предыдущими версиями SDL привела к усложнению интерпретации некоторых концепций ODP в SDL-92, например, в адресации одиночного интерфейса к объекту. Хотя упомянутое выше обобщение концепции процесса и может привести к решению некоторых из этих проблем в SDL-2000, но, в целом, соответствие ODP также потребует значительных усилий.
Рис.2.16. Стандарты ITU-T для описания телекоммуникационных протоколов в книге
В заключении этого параграфа, посвященного непосредственно языку SDL, на рис. 2.16 представлена последовательность использования стандартов Исследовательской комиссии 10 ITU-T для описания телекоммуникационных протоколов в данной книге. Эта последовательность состоит из трех базовых элементов: текстовые описания систем сигнализации, диаграммы SDL, специфицирующие режимы поведения процесса обработки этой сигнализации и сценарии обмена сигналами и сообщениями на языке MSC, рассматриваемом в следующем параграфе.
В рамках рассматриваемой в книге методологии, представленные в предыдущем разделе, формализованные описания на языке SDL эффективно дополняются спецификациями в виде карт последовательностей сообщений (MSC) в соответствии с рекомендацией Z.I 20 Сектора стандартизации электросвязи Международного союза электросвязи (ITU-T). Язык MSC также дает возможность предварительного описания процессов на фазе подготовки SDL-спецификаций. Представления в форме MSC обладают большой наглядностью и могут переводиться в SDL форму. При этом возникает также и обратная задача перевода из SDL в MSC, что особо важно при отладке готового программного обеспечения и тестировании протоколов. MSC-описания легко использовать в качестве шаблонов, по которым работают имитаторы программного обеспечения обработки вызовов и протокол-тестеры систем сигнализации.
Основное использование MSC в книге - создание сценариев обмена сигналами между различными процессами или объектами. Получающиеся описания представляются настолько удобными для читателя, что автор старался использовать их при описании практически всех протоколов в последующих главах книги.
Для описания протоколов сигнализации применяются следующие элементы языка MSC:
1. Момент (Instance)
2. Сообщение (Message)
3. Вентиль (Gate)
4; Тайм-аут (Timeout)
Графического синтаксиса часто оказывается недостаточно для наглядного графического представления, в связи с чем графические сценарии могут сопровождаться информационным объяснением на мета-языке, строящемся на тех же формах Бэкуса-Наура (BNF - Backus-Naur Form) со следующими мета-конструкциями:
Contains (содержит)
is followed by (сопровождается)
is associated with (связан с)
is attached to (присоединен к)
above (над)
set (установить)
Отличие этих конструкций от обычных BNF состоит в некоторых дополнительных логических и геометрических соотношениях между аргументами, которые автор вынужден оставить за пределами настоящей книги в силу ограниченного объема последней. Тем не менее, из приведенных ниже примеров основные правила станут понятны читателю.
Основные символы, используемые в MSC, приведены в таблице 2.2.