Смекни!
smekni.com

Сигнализация в сетях железнодорожной связи (стр. 6 из 13)

Рис. 1.11. Распределение трудоемкости (стоимости) разработки протокола сигнализации без деталированных спецификаций (1) и с деталированными спецификациями (2)

Реализованная в книге концепция иерархических спецификаций систем сигнализации в некоторой степени соответствует современной спиральной модели развития больших программных систем Б.Боэма [104] и представлена на рис.1.12. Некоторая незавершенность спиральной модели, обусловленная законом непрерывных изменений Биледи и Лемана:

«Используемая система подвергается непрерывным изменениям до тех пор, пока не окажется, что экономически выгоднее ее заморозить и сделать заново», напоминает известные со школьной скамьи философские принципы и внушает определенный оптимизм автору относительно будущей полезности данной книги.

Уровни спецификации по спирали на рис.1.12 различаются не только степенью конкретизации (возрастающей сверху вниз), но и языковыми средствами описания. Следовательно, представление спецификаций на вышестоящем уровне является в известном смысле «общим прародителем» семейств представлений нижестоящих уровней, за исключением первого уровня (уровня Технических условий, использующих естественный язык). На деталированных уровнях проектирования протоколов сигнализации активно применяется графический синтаксис с паскалеобразными нотациями, объединенными специалистами Исследовательской комиссии 10 ITU-T в единый язык спецификаций и описаний SDL.

Методология спецификаций на базе SDL рассматривается в следующей главе.

Рис. 1.12. Спиральная модель процесса реализации систем сигнализации

Изложенный в этой главе подход отнюдь не содержит каких-либо принципиально новых, революционных постулатов. Напротив, вся методология опирается на традиционную схему разработки типа «требование - спецификации - проектирование - тестирование», но при этом ори­ентируется на более решительную и последовательную формализацию спецификаций интерфейсов с существующей телефонной сетью. Реализация этой совокупности приемов и методов спецификации для различных протоколов сигнализации рассматривается в последующих главах книги. Некоторое подведение итогов в части тестирования реализации систем сигнализации на соответствие формализованным интерфейсным спецификациям приводится в главе 11, завершающей эту книгу.

Такая перестановка акцентов в достаточно традиционной совокупности приемов дает в определенном смысле новое качество и позволяет надеяться, что предпринятая автором попытка может оказаться полезной, если не как руководство к действию, то как одна из возможных точек зрения.


Глава 2

МЕТОДОЛОГИЯ СПЕЦИФИКАЦИИ И ОПИСАНИЯ СИСТЕМ СИГНАЛИЗАЦИИ

Suaviter in modo. fortiter in re, лат. (По способу мягко, а по существу жестко)

2.1. ВВЕДЕНИЕ В SDL-ОРИЕНТИРОВАННУЮ МЕТОДОЛОГИЮ

Данная глава посвящена методологии спецификации протоколов сигнализации телефонных сетей, базирующейся на хорошо известном языке описаний и спецификаций SDL, разработанном Международным союзом электросвязи (ITU-T), в сочетании с двумя другими языками спецификаций ASN.1 и MSC, также предусмотренными Рекомендациями ITU-T серии Z.I 00 в версии Белой книги.

Такой подход обусловлен разумным балансом между выполнением двух основных требований к методологии подготовки спецификаций:

хорошие аналитические и хорошие выразительные возможности. К сожалению, эти два требования обычно находятся в противоречии: чем более выразительной является спецификация, тем более затруднителен ее анализ. Существование двух версий SDL - графической SDL/GR и программоподобной SDL/PR позволило отчасти нейтрализовать эту конфликтную ситуацию.

Существенно для целей настоящей книги и то, что SDL не предусматривает никакой разницы между спецификацией и описанием. Актуальность этого принципа явно прослеживается в материалах следующих глав, являющихся одновременно и описанием протоколов сигнализации в существующей телефонной сети, и спецификациями интерфейсов вновь разрабатываемых или адаптируемых цифровых систем коммутации.

Рассматриваемое в этой главе описание методологии использования SDL ориентировано сугубо на проблематику данной книги и, хотя ни на йоту не отступает от рекомендаций Исследовательской комиссии 10 «Языки, применяемые в электросвязи» ITU-T по состоянию на 1997 г., но и не претендует на полную и всеобъемлющую инструкцию по SDL. Данная глава построена следующим образом: в первом разделе приведено элементарное введение в SDL, достаточное для понимания приведенных в книге диаграмм. Следующий раздел 2.2 посвящен непосредственно связанному с SDL языку MSC, на котором написаны сценарии различных протоколов сигнализации в следующих главах.

В разделе 2.3 приведена дополнительная информация о стандартизации и других современных языковых средствах спецификаций и тестирования протоколов. Этот раздел ориентирован на интересующихся этой проблематикой читателей и не является абсолютно необходимым для понимания дальнейшего материала книги.

Разработка языка SDL (Specification and Description Language) началась в 1972 г. после предварительного исследовательского периода. Первая версия языка была опубликована ITU-T (в то время эта организация называлась Международным консультативным комитетом по телеграфии и телефонии - МККТТ) в 1976 г., последующие версии появились в соответствующих цветных книгах ITU-T в 1980. 1984, 1988, 1992 и 1996 годах [102, 115, 122].

Благодаря отраженному в эпиграфе к данной главе уникальному сочетанию свойств строго формализованного, с одной стороны, и простого в использовании, наглядного и интуитивно понятного языка, с другой стороны, SDL быстро завоевал популярность. Причем не только для спецификаций и описаний собственно телекоммуникационных систем, но и в самых разнообразных промышленных областях, таких как вычислительная техника, аэронавтика и др. В частности, SDL был в Аюран языком спецификаций компании Боинг. Тот же выбор сделан автором для целей данной книги.

Основу языка SDL составляет концепция взаимодействия конечных автоматов. Динамическое поведение системы описывается с помощью механизмов функционирования расширенных конечных автоматов и связей между ними, называемых процессами. Наборы процессов образуют блоки. Блоки, соединенные друг с другом и со своим окружением каналами, в свою очередь, образуют SDL-систему.

Согласно предлагаемой методологии спецификация протоколов сигнализации предусматривает следующие шаги:

• определение границ SDL-системы;

• определение каналов SDL-системы и передаваемых по этим каналам сигналов;

• разбиение системы на SDL-блоки;

• разбиение SDL-блоков на взаимодействующие процессы;

• определение входных и выходных сигналов, состояний и внутренних переходов для каждого из SDL-процессОв;

• составление SDL-диаграмм процессов.

На рис. 2.1 представлен пример SDL-системы, называемой «Соединением» и состоящей из двух SDL-блоков: «Оконечное устройство» и «Станция», соединенных каналами: «абонент», «абонентская линия» и «соединительная линия». В квадратных скобках около каналов находятся списки сигналов, которые могут быть переданы по каналу. Каждый сигнал подлежит точному определению в спецификации SDL с указанием значений типов данных, которые могут быть переданы данным сигналом.

Рис. 2.1. Диаграмма взаимодействия блоков

Каждый блок в диаграмме SDL-системы может быть в дальнейшем разделен либо еще на блоки, либо на набор процессов. Процесс описывает поведение в SDL и является наиболее важным объектом в языке. Поведение каждого процесса определяется расширенным конечным автоматом, который выполняет действия и генерирует реакции (сигналы) в ответ на внешние дискретные воздействия (сигналы).

Такой автомат имеет конечное число внутренних состояний и оперирует с конечным дискретным множеством входов и выходов. Под автоматом с конечным числом состояний понимается объект, находящийся в одном из дискретных состояний S1, S2,..., Sn, на вход которого поступают извне некоторые сигналы I1, I2,..., Im, а на выходе, которого имеется набор выходных сигналов J1, J2,...,Jk. Под влиянием входных сигналов автомат переходит из одного состояния в другое, которое может совпадать с предыдущим, и выдает выходной сигнал. При этом для каждого состояния Si и для каждого входного сигнала Ij однозначно известно, в какое состояние St перейдет автомат, и какой выходной сигнал Jo он при этом выдаст.

В отличие от классического конечного автомата расширенный конечный автомат допускает возможность перехода ненулевой длительности и определяет механизм простой очереди (FIFO) для сигналов, поступающих в автомат в тот момент, когда он выполняет некоторый переход. Сигналы рассматриваются по одному в каждый момент времени в порядке их поступления.

Итак, процесс в SDL-спецификации имеет конечное число состояний, в каждом из которых он может принимать ряд отправленных этому процессу допустимых сигналов (от других процессов или от таймера). Процесс может находиться в одном из состояний или в переходе между состояниями. Если во время перехода поступает сигнал, предназначенный для данного процесса, то он ставится в очередь к процессу.