t Хронирование : таймеры запускаются, останавливаются и перезапускаются по запросу программной машины; сообщается также о тайм-аутах.
t Доступ к файлам по запросу программной машины.
t Управление прерываниями по запросу программной машины.
t Наблюдение : фиксируется время центрального процессора для программной машины и контролируются очереди.
t Помощь в отладке.
4.4.4.2 ПРОГАММНАЯ МАШИНА (ML)
Программная машина полностью устанавливается в одной МП-станции.
Она может состоять из одного или нескольких "исполняемых блоков", установленных в различных активных агентах данной станции. Каждый исполняемый блок является компонентом. Компонент представляет собой, таким образом, некоторое подмножество программной машины, выполняемое в отдельном процессоре.
Программная машина знает структуру своих собственных компонентов, но она не известна другим программным машинам. Поэтому ПЕРВИЧНЫЙ КОМПОНЕНТ представляет программную машину в целом во внешнем диалоге. Другие компоненты называются ВТОРИЧНЫМИ КОМПОНЕНТАМИ.
Пример :
В программных машинах обработки вызовов и тарификации используются различные исполняемые блоки : первичный компонент (обменный блок) и до четырех вторичных компонентов (MACRO).
С функциональной точки зрения компонент выполняет некоторую совокупность базовых действий, причем каждое из них активирует ту или иную УСЛУГУ (SERVICE). Последовательность услуг задается СУПЕРВИЗОРОМ (SUPERVISOR, SUP), который действует как операционная система компонента.
К основным функциям супервизора относятся :
t Активация / деактивация услуг в различных режимах : рекуррентный, по запросу от другой услуги, срочный,
t Предоставление стандартных услуг прикладным программам: периодическое управление задачами,
t Управление режимом возврата гипервизора : без возврата, прогнозируемый возврат,
t Счет времени и событий для целей наблюдения за нагрузкой.
Компонент состоит из супервизора и, в некоторых случаях, специализированных услуг. Он также содержит все прикладные программы программной машины.
4.4.4.3 МП-ПРОГРАММНАЯ МАШИНА (ML SM)
МП-программная машина "скопирована" во всех активных агентах (PUP, PUS) в МП-станции.
Она использует один компонент для каждого агента :
t первичный компонент установлен в драйвере первичной шины станции,
t вторичные компоненты установлены во всех других активных агентах станции.
Роль каждого компонента зависит от типа агента.
Например :
t В драйверах первичной или вторичной шины компонент выполняет загрузку и инициализацию агента, защиту, наблюдение и обеспечивает помощь в отладке.
t В драйвере первичной шины компонент также загружает и инициализирует SM-программы и функциональные программные машины, устанавливает состояние станции, обновляет файлы состояний, выполняет локальную защиту, управляет наблюдениями и обеспечивает помощь в отладке.
Подводя итог, можно сказать, что операционная система станции организована по двухуровневому принципу :
t гипервизор, связанный с данной станцией,
t супервизор, связанный с компонентом программной машины.
Взаимодействие программных машин основано на следующих принципах :
t передача: По запросу программной машины гипервизор в агенте, поддерживающем эту машину, определяет:
pМП-станцию, поддерживающую программную машину-получателя, путем обращения к файлам маршрутизации между программными машинами.
pдрайвер линии передачи (если программная машина-получатель не находится в той же МП-станции),
pочередь связи для пересылки сообщения.
t прием : Гипервизор данного драйвера шины определяет программную машину-получателя на основе системного адреса в сообщении. В соответствии с критериями управления потоком и приоритета, гипервизор выбирает очередь приема данной программной машины и пересылает сообщение.
Программные машины являются загружаемыми и инсталлируются на следующих станциях :
t управляющие программные машины - в SMC-станциях,
t программные машины подключения ИКМ-трактов - в SMT-станциях,
t программные машины обработки сигнализации N7 ITU-T (уровни 1, 2 и 3) и сервисного блока - в SMA-станциях.
t программные машины управления коммутацией - в SMX-станции.
4.4.5 ПРОГРАММНЫЕ МАШИНЫ ОБРАБОТКИ ВЫЗОВОВ
Программная машина обработки вызовов включает компонент блока обмена, который, в частности, реализует связь с другими программными машинами и подсистемой обработки вызовов.
Обработка вызовов связана с выделением областей памяти (или контекстов вызова), которые используются для установления и отбоя вызовов. Это включает:
t Распознавание состояний "трубка снята" и "трубка положена", а также состояний занятия/освобождения канала, обнаруживаемых устройствами доступа.
t Запоминание и анализ цифр адреса, принятых по линии или каналу.
t Ретрансляция цифр адреса по каналам (после модификации, где это требуется) с использованием процедур, специфичных для данного кода сигнализации.
t Выдачу команд на коммутационую матрицу на установление или прекращение соединений следующих типов : абонент-абонент, вызывающий абонент-частотный приемник, тональный генератор-абонент, абонент-конференц-канал, абонент-канал, канал-абонент и т.п.
t Выдачу команд на устройства доступа на выделение временных интервалов, контроль вызовов, отбой абонентских линий и каналов и т.п.
t Инициализацию передачи сигнализации и различных тонов.
t Взаимодействие с функцией трансляции с целью определения характеристик линии или канала, для того чтобы тем или иным способом модифицировать их (например, ввод сокращенного номера).
t Взаимодействие с функцией тарификации для предоставления той информации по оплате, которая должна быть сохранена.
Функция обработки вызовов может также осуществлять параллельную обработку : в этом режиме вместо выполнения отдельной программы выполняются две программы - одновременно и независимо.
При параллельной обработке процессы, выделяемые для каждой из программ, четко определены :
t Первая программа выполняет все функции управления вызовами, принимая решения, как только происходит каждое новое событие, и выполняя функции, относящиеся к вызывающей линии.
t Вторая программа выполняет функции, относящиеся к вызываемой линии.
Со структурной точки зрения, данное ПО обеспечивает легкую адаптируемость ко всем типам работы.
Функциональная организация
Программа имеет иерархическую структуру, в результате чего ее функциональная организация отражает различные фазы обработки, относящиеся к выполнению функций коммутации (см. рис.18) :
Уровень 1 : Общие функции, относящиеся к захвату контекста вызова. Этот уровень содержит модули уровня 2, выполняющие эти функции.
Уровень 2 : Модули, предназначенные для типа кода сигнализации, используемого на входящей линии.
Уровень 3 : Модуль инициализации режима параллельной обработки.
Уровень 4 : Функции коммутации: например, предварительный анализ и трансляция (программа 1), сигнализация, контроль вызываемого абонента (программа 2).
Совместно используемые части того или иного модуля соответствуют структурам вызовов и интерпретируются как подпрограммы с двенадцатью уровнями вызовов.
Программная машина обработки вызовов является (n+1)-избыточной и инсталлируется в SMC-станциях.
Рис.18. Организация ПО обработки вызовов.
4.4.6 ПРОГРАММНАЯ МАШИНА ТАРИФИКАЦИИ
Программная машина тарификации включает компонент "обменный блок" и подсистему тарификации ТАХ.
Функция тарификации включает :
t Поиск и выделение ресурсов для вызова в начале фазы разговора, и освобождение этих ресурсов в конце вызова (контекст оплаты).
t Обработку сигналов (счетных импульсов), принимаемых по каналам, и, если требуется, инициализацию обратной передачи принятых или вычисленных счетных импульсов.
t Инициализацию передачи предупреждающих тонов таксофона и счетных импульсов для CPE-счетчиков.
t Расчет оплаты за вызовы и генерацию подробных счетов оплаты и/или международной учетной информации, а также данных наблюдения за трафиком.
Отличительными чертами функции тарификации являются :
pподдержка двумя отдельными SMC-станциями, работающими в режиме разделения нагрузки,
pдублирование абонентских счетчиков оплаты (обновляются в обоих устройствах в конце вызова), а также защита данных в памяти корректирующим кодом,
pпериодическое считывание содержимого счетчика оплаты модулем OA&M на основе календарного файла или по запросу.
Как подсистема обработки вызовов (ТАР), так и подсистема тарификации (ТАХ) могут выполнять параллельную обработку.
Функция тарификации имеет три иерархических уровня : первый определяет задачу, которая должна быть выполнена, второй определяет режим тарификации и т.д. (см. рис.19).
Данная программа составлена из взаимозаменяемых модулей, выбираемых по критерию соответствия конкретному применению : тарификация с постоянным тарифом, периодическая тарификация, тарификация, основывающаяся на импульсах, принимаемых от удаленной АТС, и т.п.
Рис.19. Организация процесса начисления оплаты.