Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Новый вариант ПО.doc
Скачиваний:
6
Добавлен:
16.04.2019
Размер:
6.18 Mб
Скачать

Введение

Новый этап в развитии российских телекоммуникаций – это этап превращения российского общества на базе конвергентного объединения информатизации и телекоммуникации в электронно-информационное общество. Сетевой основой российских телекоммуникаций определена Единая сеть электросвязи (ЕСЭ).

ЕСЭ совместно со средствами вычислительной техники и информационных технологий составляет техническую основу инфраструктуры информатизации российского общества и является технологической основой будущего «электронного» общества России.

ЕСЭ связана с сетями электросвязи других стран и должна занять важное место в мировом информационном пространстве, в развивающейся Глобальной информационной инфраструктуре (ГИИ) .

Выход за границы возможностей традиционных сетей связи, обусловленный характером сегодняшнего мультимедийного трафика и потребностями в мультисервисном его обслуживании, привел к качественному преобразованию всей сетевой структуры и появлению концепции сети следующего поколения NGN (Next Generation Network), которая базируется на использовании технологий пакетной коммутации.

Существующие сети с коммутацией каналов, и, прежде всего, телефонные сети общего пользования (ТфОП), реализующие концепцию интеграции обслуживания (ISDNIntegrated Services Digital Network), еще долго будут работать совместно с сетями NGN, поэтому информация об основных компонентах этих сетей – цифровых системах коммутации (ЦСК) и принципах построения их программного обеспечения остается актуальной.

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

  1. СОСТАВ И ЭТАПЫ ПРОЕКТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ КОММУТАЦИОННОЙ СТАНЦИИ

1.1 Аппаратная поддержка программного обеспечения коммутационной станции

      1. 1.1.1 Понятия системы и структуры системы

Электронные управляющие системы (ЭУС) коммутационных станций относятся к классу сложных систем. Термин система определяет объект, который рассматривается, с одной стороны, как единое целое, а с другой – как совокупность элементов, связанных между собой определенным образом.

Цель системы – получить результат, качественно или количественно превосходящий сумму результатов работы отдельных ее компонентов.

Схема или сеть связей между составляющими элементами системы называется структурой системы.

Системой также называют объект с заданной структурой связи между его элементами.

Свойства системы во многом зависят от вида связей между элементами, т.е. от структуры системы. Изменением структуры можно достичь неисчислимого многообразия свойств системы.

      1. 1.1.2 Особенности ЭУС коммутационных станций

Применение вычислительной техники в автоматическом управлении является важнейшей чертой технической инфраструктуры современного общества.

Основные особенности ЭУС коммутационных станций:

Особенности ЭУС:

1) управление процессами в реальном времени, т.е. со скоростью, соответствующей скорости управляемого процесса;

2) управление параллельными задачами;

3) управление на основе “прерываний”,

прерывания” – метод сигнализации, используемый для переключения от одной задачи к другой при наступлении некоторого события;

4) работа в режиме разделения времени, при котором машинные ресурсы предоставляются для решения задач различным объектам и процессам со сдвигом во времени;

5) организация многопрограммного режима на основе принципов приоритетности программ и запуска программ по заявкам;

6) функционирование в течение длительного времени, что обуславливает повышенные требования к надежности.

1.1.3 Классификация и структуры ЭУС ЦСК

В общем случае взаимодействие ЭУС с управляемым объектом обеспечивает периферийный интерфейс, а взаимодействие управляющих устройств внутри ЭУС – системный интерфейс (рисунок 1.1).

ИУ – исполнительное устройство

УУ – управляющее устройство

Рисунок 1.1 – Структура ЭУС

Процесс организации сеанса связи в коммутационной станции можно разбить на три класса процессов: сигнализация, управление, коммутация.

Рисунок 1.2 – Структура процесса организации сеанса связи

В ЦСК данные процессы имеют более сильную взаимосвязь и взаимовлияние, чем в аналоговых системах коммутации, и могут быть реализованы на единой элементной базе с использованием единых методов моделирования. Наличие единых принципов и способов реализации обеспечивает интеграцию подсистем сигнализации, управления и коммутации в единую ЭУС. Уровень интеграции в ЦСК зависит от уровня технологии: чем совершеннее технология, тем больше глубина интеграции. В ЦСК все подсистемы реализуются на микропроцессорах, что значительно упрощает организацию интерфейсов между ними.

Функции ЭУС распределены между множеством процессоров, поэтому говорят, что в ЦСК применяется распределенное управление. Распределение функций между процессорами выполняется на основе временного, пространственного, функционального и модульного принципов.

Временное разделение. Функции разбиваются на классы в соответствии с требованием скорости реагирования и выполнения в реальном масштабе времени. Каждый класс функций реализуется соответствующей группой процессоров.

Например:

Класс 1 – сканирование заявок; обнаружение событий; прием, выдача, обработка линейных и управляющих сигналов;

Класс 2 – обработка адресной и управляющей информации по установлению соединения;

Класс 3 – реализация процессов коммутации.

Пространственное разделение. Функции распределяются между процессорами, закрепленными за определенными видами оборудования: абонентскими блоками, линейными комплектами, устройствами сигнализации, коммутационными блоками и т.д.

Функциональное распределение. Функции системы разбиваются на классы в соответствии с принадлежностью их к процессам сигнализации, управления и коммутации. Каждый класс функций реализуется своей группой процессоров.

Модульное распределение. При таком методе каждый модуль оборудования имеет свой процессор или группу процессоров.

ЭУС ЦСК можно классифицировать по следующим признакам (рисунок 1.3):

1) по способу управления соединением

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

б) децентрализованные;

2) по типу системного интерфейса

а) с непосредственными связями УУ,

б) со связями УУ через общую шину (магистральная структура системного интерфейса),

в) со связями УУ через цифровое коммутационное поле (сетевая структура системного интерфейса).

В состав ЭУС могут входить двухмашинные управляющие комплексы, многопроцессорные электронные управляющие машины (ЭУМ), [2], с. 44…50.

УУ – управляющие устройства

ОШ – общая шина

БУШ – блок управления общей шиной

ЦКП – цифровое коммутационное поле

Рисунок 1.3 – Варианты построения ЭУС с различными типами системного интерфейса

Контрольные вопросы:

1) Что такое система? С какой целью отдельные элементы объединяются в систему?

2) От чего зависят свойства системы?

3) Назначение периферийного и системного интерфейсов. Типы системных интерфейсов.

4) Какую структуру имеет иерархическая ЭУС, децентрализованная ЭУС?

5) Что такое реальный масштаб времени?

6) Чем характеризуется режим разделения нагрузки?

7) Какими способами может быть разделена нагрузка между ЭУМ?

1.2 Понятия алгоритмического и программного обеспечения ЭУС ЦСК

1.2.1 Под алгоритмом функционирования ЭУС понимают точное предписание о порядке выполнения действий по реализации той или иной функции. Алгоритмы функционирования ЭУС могут быть описаны разными способами с различной степенью детализации: на естественном языке с необходимыми дополнениями графической и цифровой информацией, либо на некотором формализованном языке. Совокупность описаний алгоритмов функционирования ЭУС образует алгоритмическое обеспечение (АО). АО ЭУС может быть полностью или частично реализовано аппаратными (схемными) или программными средствами. Программой называют алгоритм, представленный в форме, воспринимаемой реализующей его ЭУС.

1.2.2 Программное обеспечение (ПО) – это организованная совокупность взаимосвязанных и взаимодействующих программ и соответствующих им данных, предназначенная для целенаправленной работы ЭУС.

1.3 Состав программного обеспечения ЦСК

1.3.1 В зависимости от целевой установки ПО подразделяется на три типа: инструментальное, системное и прикладное (рисунок 1.4).

1.3.2 Инструментальное ПО (ИПО) используется программистами как инструмент для написания и отладки программ. В составе ПО ЦСК инструментальное ПО предназначено для автоматизации проектирования программ на различных уровнях – от уровня алгоритмов до уровня машинных команд. Автоматизация обеспечивается специальными системами автоматизации проектирования (САПР). Применяемые САПР соответствуют различным уровням проектирования:

1) на этапе разработки алгоритмов функционирования используются САПР на основе языка SDL (Specification and Description Language). Алгоритм, представленный в терминах языка SDL, автоматически преобразуется в программу на одном из языков программирования;

2) на этапах программирования используются САПР на языке CHILL, на машинно-зависимом языке высокого уровня, на языке ассемблера.

Язык CHILL (CHILL – High Level Language – язык высокого уровня МККТТ) предназначен для поддержки систем реального времени, т.е. он является проблемно-ориентированным.

Если в ПО ЭУС используется машинно-ориентиовнный язык выоноглуровня, т САПР на машинно-зависимом языке дает возможность программисту учитывать архитектурные возможности конкретной ЭВМ, входящий в состав ЭУС. САПР на языке ассемблера позволяет разрабатывать программы с нормированным временем выполнения.

1.3.3 Системное ПО (СПО) включает в себя инструментальную и исполнительную операционную систему (ОС). Различия инструментальной и исполнительной ОС обусловлены степенью участия человека в управлении работой ЭУС (степенью интерактивности). В инструментальной ОС управление осуществляется, главным образом, посредством команд (директив) оператора. В исполнительной ОС вмешательство оператора минимально и является вспомогательным, например, при возникновении аварийных ситуаций и проведении профилактических работ. Для интерактивного общения используется язык диалога “человек-машина” (MML – Man Machine Language).

1.3.4 Прикладное ПО (ППО) делится на основное и вспомогательное. Основное ППО содержит программы и данные, предназначенные для обеспечения технологического процесса установления соединений (коммутационные программы), удовлетворения запросов абонентов и администрации сети связи (административные программы), поддержания работоспособности аппаратно-программных средств ЦСК (программы технического обслуживания). Вспомогательное прикладное ПО (ВСПО) используется на этапе разработки основного прикладного ПО и подготовки ЦСК к эксплуатации.

ИПО – инструментальное ПО

СПО – системное ПО

ППО – прикладное ПО

САПР – система автоматизации проектирования

ОС – операционная система

SDL (Specification and Description Language) – язык спецификаций и описаний

MML (Man Machine Language) язык диалога «человек-машина»

Рисунок 1.4 – Состав ПО ЦСК

Контрольные вопросы:

  1. Что называют алгоритмом функционирования ЭУС?

  2. Как может быть описан алгоритм функционирования ЭУС?

  3. Что называют алгоритмическим и программным обеспечением ЭУС?

  4. Что такое программа?

  5. Назначение инструментального ПО.

  6. Для какой цели применяются САПР и на какие виды они подразделяются?

  7. Что входит в состав операционной системы?

  8. Чем отличаются инструментальная и исполнительная ОС?

  9. Какие системы программ входят в состав основного прикладного ПО?

1.4 Этапы разработки (проектирования) программного обеспечения

1.4.1 Процесс проектирования (разработки) алгоритмического и программного обеспечения является многоэтапным, иерархическим, итеративным и в соответствии с рекомендациями МККТТ (МСЭ-Т) ведется методом “сверху вниз”. Это способ поэтапной абстракции с возрастающей последовательной детализацией: этапы проектирования алгоритмического и программного обеспечения иерархически упорядочены так, что результаты выполнения данного слоя (уровня) детализируют проектные решения предшествующего уровня и являются исходными данными для следующего, более низкого уровня. Этапы проектирования связаны не только в прямом (от более высокого уровня к более низкому), но и в обратном направлении. Обратные связи используются для уточнений и улучшений проектных решений, что позволяет найти окончательное решение методом последовательных приближений.

1.4.2 В соответствии с принятым методом проектирования ПО можно выделить следующие этапы разработки (рисунок 1.5):

спецификация и планирование – разработка укрупненной структурной схемы ПО, определение перечня (спецификации) основных параметров и состава всех процессов;

системное проектирование – выделение стандартных процессов, определение информационных связей между ними;

детальное проектирование – разработка алгоритмов, отражающих действительное поведение системы;

программирование – запись разработанных алгоритмов на одном из языков программирования высокого уровня;

компоновка – связывание отдельных модулей программы в единую систему ПО;

верификация – выявление и устранение ошибок, практически работы по выявлению и устранению ошибок выполняются на каждом этапе разработки ПО;

генерация – запись готовых программ на машинные носители информации, на этом этапе в ПО заносятся данные конкретной коммутационной станции;

документирование – составление документации (описание структуры ПО, алгоритмы, листинг программы, структуры данных, инструкция пользователя и др.), фактически документирование выполняется в процессе всех этапов разработки ПО.

SDL (Specification and Description Language) – язык спецификаций и описаний.

CHILL (CCITT High Level Language) – язык высокого уровня МККТТ (Международного Консультативного Комитета по Телефонии и Телеграфии)

MML (Man Machine Language) – язык диалога “человек-машина”

Рисунок 1.5 – Этапы разработки ПО

На этапах разработки спецификаций, системного и детального проектирования рекомендуется использовать язык SDL (Specification and Description Language) – язык спецификаций и описаний. На этапе программирования рекомендуется использовать язык CHILL (CCITT High Level Language) – язык высокого уровня МККТТ (Международного Консультативного Комитета по Телефонии и Телеграфии), предназначенный для поддержки систем реального времени. На этапах верификации, генерации используется язык диалога “человек-машина” MML ( Man Machine Language).

Контрольные вопросы:

  1. В чем суть метода проектирования “сверху вниз”?

  2. Какие этапы проектирования ПО ориентированы на разработку алгоритмов функционирования коммутационной станции?

  3. На каких этапах непосредственно разрабатывается ПО?

  4. На каком этапе обеспечивается адаптация ПО к особенностям конкретной ЦСК?

  5. Какие языки программирования используются в процессе разработки ПО?

1.5 Основные требования к программному обеспечению ЦСК

1.5.1 Требования, которым должно удовлетворять программное обеспечение, можно разделить на две группы:

1) требования, невыполнение которых приводит к нарушению нормального функционирования коммутационной станции,

2) требования, невыполнение которых приводит к снижению эффективности функционирования и использования коммутационной станции.

1.5.2 К первой группе можно отнести следующие требования:

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

программное обеспечение должно функционировать в реальном масштабе времени и обладать совместно с техническими средствами производительностью, достаточной для реализации заданных функций с соблюдением необходимых временных ограничений:

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

Ко второй группе относятся следующие требования:

- принципы построения программного обеспечения и его распределение по различным запоминающим устройствам должны обеспечивать минимальную стоимость хранения программ и данных при выполнении требований к производительности программного обеспечения в целом;

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

- структура и принципы построения программного обеспечения в целом и отдельных программ должны быть достаточно простыми для изучения, освоения и эксплуатации обслуживающим персоналом ЦСК;

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

Перечисленные требования определяют основные характеристики программного обеспечения:

1) время реакции – отрезок времени от момента поступления сообщения от управляемого объекта до момента выдачи управляющего сигнала;

2) структурность, структурная (структуризованная) программа состоит из конечного числа стандартных конструкций структурного программирования;

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

Различия между коммутационными станциями можно разбить на две группы:

а) принципиального характера (тип ЦСК и ЭУС, коммутация каналов и/или пакетов, уровень сети, на котором функционирует ЦСК),

б) непринципиального характера (емкость, структурный состав абонентов, план нумерации, объем оборудования, протоколы сигнализации, варианты маршрутизации, виды дополнительных услуг и др.).

Программное обеспечение должно легко адаптироваться под различия непринципиального характера и должны быть заложены возможности адаптации под различия принципиального характера.

4) надежность (качество).

Качество ПО в значительной степени определяется количеством ошибок, допущенных на этапах проектирования ПО. Определить точное количество ошибок в ПО невозможно, поэтому для оценки качества используют интегральные показатели:

а) среднее время безошибочной работы (Тбр) зависит от общего числа ошибок, которое подвержено динамическому изменению (рисунок 1.6).

λλоб – интенсивность обнаружения ошибок

λнов – интенсивность появления новых ошибок

Рисунок 1.6 – Фазы «жизни» программного обеспечения

С одной стороны в процессе эксплуатации число ошибок постоянно уменьшается за счет их выявления и устранения, с другой стороны при модернизации и расширении ПО неизбежно появляются новые ошибки;

б) среднее время устранения ошибки, которое обычно составляет довольно значительную величину. Это связано с тем, что исправление программной ошибки требует внесения изменений в значительную часть текста программы и данных;

в) вероятность неправильного соединения (рнс) и вероятность нарушения установленного соединения (рну). На этапе нормальной эксплуатации эти характеристики имеют малые значения (рнс=10-8, рну=10-5…10-4), поэтому их оценка на практике затруднена. Используется вспомогательный показатель – интенсивность перезапусков станции, который на этапе нормальной эксплуатации равен 4 – 5 перезапускам в год, что соизмеримо с интенсивностью перезапусков из-за отказов оборудования.

Контрольные вопросы:

1) Какие требования к программному обеспечению должны выполняться, чтобы не нарушалось нормальное функционирование коммутационной станции?

2) Какие требования к программному обеспечению должны выполняться, чтобы не снижалась эффективность функционирования и использования коммутационной станции?

3) Что такое время реакции?

4) Что такое адаптируемость ПО? Какие типы различий между коммутационными станциями необходимо учитывать при разработке ПО?

5) На какие фазы делится полный цикл жизни программного обеспечения? Чем объясняется появление новых ошибок в разных фазах жизни ПО?

6) Какие показатели используются для количественной оценки качества ПО?

1.6 Основные принципы построения ПО

1.6.1 Модульность

При модульном построении ПО разбивается на относительно небольшие по размеру (по количеству занимаемых ячеек памяти) физически и логически независимые “куски”, называемые модулями. Различают: программные модули (обеспечивают обработку данных), информационные модули (содержат обрабатываемые данные);

1.6.2 Иерархичность

Взаимоотношения между программными модулями устанавливаются иерархическими и приоритетными уровнями этих модулей.

Принцип иерархичности устанавливает такие отношения подчиненности по управлению, при которых программный модуль иерархического уровня i может вызываться только одним модулем уровня (i - 1) и вызывать любой связанный с ним модуль уровня (i + 1) (рисунок 1.7).

Рисунок 1.7

1.6.3 Приоритетность

Принцип приоритетности устанавливает такие отношения очередности вызова программных модулей во времени, что при наличии в некоторый момент времени запроса на выполнение программ приоритетных уровней (k -1) и k в первую очередь будут вызваны модули уровня (k – 1).

Очередностью вызова программных модулей разных приоритетных уровней управляет диспетчер прерываний или главный диспетчер (рисунок 1.7). Он находится на нулевом иерархическом уровне и не относится ни к одному из приоритетных уровней. Очередностью вызова программ, относящихся к одному приоритетному уровню, управляет диспетчер приоритетного уровня. Приоритетный уровень программ, относящихся к иерархическому уровню 2 (рисунок 1.7), определяется приоритетом вызывающего диспетчера.

Количество приоритетных уровней зависит от принципа организации системы прерываний ЭУС. В общем случае можно выделить следующие уровни:

0й уровень – уровень аварийных прерываний; к нему относятся программы технического обслуживания, запускаемые по сигналам прерывания от схем аппаратного контроля ЭУС;

1ый уровень для программ обслуживания ввода-вывода, запускаемых по сигналам прерывания от каналов ввода-вывода и внешних устройств;

2ой уровень для программ со строгой периодичностью запуска, запускаемых от таймера;

3ий уровень для периодических программ, допускающих отклонение от расписания запуска;

4ый уровень – базовый уровень, на котором работают основные коммутационные программы. Эти программы имеют самый низкий приоритет, т.к. задержка их запуска или прерывание выполнения не нарушают нормального функционирования коммутационной станции.

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

Различают три вида дисциплин обслуживания:

абсолютные приоритеты – появление заявки на запуск программы с более высоким приоритетом безусловно прерывает выполнение текущей программы;

относительные приоритеты – программа с более высоким приоритетом будет запущена по заявке после окончания цикла работы текущей программы, т.е. текущая программа не прерывается;

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

Контрольные вопросы:

  1. Что такое модуль ПО?

  2. Какой модуль ПО называется программным?

  3. Какой модуль ПО называется информационным?

  4. Какие отношения между программными модулями устанавливает принцип иерархичности?

  5. К каким иерархическим уровням относятся диспетчер прерываний, диспетчер приоритетных уровней, программы, подпрограммы?

  6. Какие отношения между программными модулями устанавливает принцип приоритетности?

  7. На какие виды приоритетных уровней делится программное обеспечение?

  8. Какие программы имеют самый высокий, самый низкий приоритет и почему?

  9. От чего зависит количество приоритетных уровней?

  10. Что такое дисциплина обслуживания заявок?

  11. Какая дисциплина обслуживания заявок применяется в коммутационных станциях?

  12. При каких условиях может быть прервана текущая программа в дисциплинах обслуживания с абсолютными, относительными и смешанными приоритетами?