1.6.2. Процессы и их организация
1.6.3. Программные компоненты, их размещение и взаимодействие
1.6.1. Общая структура
Общая структура программного обеспечения (ПО) СЦК "ЭЛКОМ" показана на рис.1.6.1.
Рис. 1.6.1. Общая структура программного обеспечения СЦК "ЭЛКОМ"
ПО в целом делится по функциональному принципу на 3 уровня:
- уровень оператора (Модуля оператора - МО);
- уровень управляющего вычислительного модуля (ВМ);
- уровень терминальных модулей.
ПО уровня оператора обеспечивает выполнение следующих функций:
- организация графического интерфейса пользователя, отображение процессов выполнения соединений,
- настройка и конфигурирование АТС;
- формирование статистических данных;
- администрирование и техническое обслуживание АТС;
- экспорт тарификационных данных из АТС;
- обеспечение функционирования дополнительной консоли Оператора, применяемой в аварийных режимах и при настройке системы.
Программные модули данного уровня общаются с программами уровня ВМ с помощью данных, передаваемых через стек протоколов TCP/IP, которые приняты в системе как стандартные.
На уровне ВМ взаимодействие программных модулей своего и смежных уровней, а также создание и ведение БД различного назначения организуется и поддерживается Сервером Модуля оператора. Каждому из видов сигнализаций соответствует своя подсистема, которая обеспечивает настройку, конфигурирование и управление линиями данного вида.
Хранение БД непосредственно в АТС обеспечивает их высокую сохранность и оперативность обращения к ним со стороны программных модулей, резидентно находящихся в АТС. С другой стороны, поскольку вся информация, как оперативная (аварийные сообщения, протоколы работы, данные тарификации), так и условно-постоянная (конфигурационные данные, таблицы маршрутов) хранится в станции, любое обращение к данным требует их предварительной перекачки из АТС.
Транспорт данных производится под управлением сервера МО.
Внутреннее ПО (уровня ВМ) работает под управление операционной системы реального времени (ОС РВ) QNX4. ОС РВ выполняет следующие основные функции:
- управляет запуском программ, контролирует их выполнение, обеспечивает диспетчеризацию ресурсов (процессор, память);
- обеспечивает доступ к устройствам ввода-вывода;
- обеспечивает функционирование файловой системы.
Интерфейс с программными модулями нижнего уровня, обеспечивающими работу терминальных модулей (ТМ), обеспечивается менеджером внутрисистемных сообщений.
Программное обеспечение ТМ организовано по видам терминальных модулей. Актуальная версия ПО (рабочая версия программного обеспечения - РВПО) записывается в процессе производства оборудования. Идентификаторы файлов заносятся в формуляр АТС, что позволяет определять конкретную действующую версию. При проведении модернизации ПО (upgrade) или замены ПО в случае исправления ошибок это также фиксируется в формуляре.
1.6.2. Процессы и их организация
Все программы уровня ВМ реализованы в виде отдельных программных модулей - процессов, для каждого из которых заданы:
- условия запуска - по времени, по событию или по аппаратному прерыванию;
- системные, или служебные параметры (разрешенная область памяти и т.п.);
- таймаут, т.е. максимально допустимое время выполнения;
- приоритет в ряду других процессов (программ).
Запуск по времени означает регулярный запуск с некоторым периодом (например, 1 раз в секунду). Запуск по событию означает, что запрос на запуск процесса поступает в случае наступления некоторого события. Например, изменилось состояние линии - линия перешла в состояние "Занято", и это событие надо отразить на Модуле оператора. Особо обрабатываются аппаратные прерывания, например, запрос на ввод-вывод данных с жесткого диска. Такие запросы должны быть обработаны за минимальное время.
На каждый процесс задается свой таймаут, т.е. время, за которое он должен успешно завершиться и "доложить" об этом операционной системе. Если по какой-либо причине сообщение в заданные сроки не поступило, процесс снимается с выполнения. Запуск по времени или по событию приводит к тому, что через некоторое время запрос на запуск повторяется, и процесс снова запускается на выполнение. Тем самым обеспечивается автоперезапуск программ, что значительно увеличивает живучесть системы.
С помощью системы приоритетов процессы разбиваются на группы. Запрос на выполнение определенного процесса ставится в очередь в соответствии с его приоритетом, т.е. после всех готовых для обработки процессов своей группы. Когда до него доходит очередь, он запускается на выполнение. Если в период его выполнения приходит запрос на выполнение процесса с более высоким приоритетом, данный процесс приостанавливается и ждет, пока идет обработка запроса с более высоким приоритетом, после чего приостановленный процесс снова запускается в работу.
Такой механизм позволяет Администратору системы легко управлять процессами. В случае необходимости без остановки всей системы конкретный процесс может быть остановлен и заменен другой версией. Это дает возможность автоматизировать модернизацию (upgrade) ПО.
С функциональной точки зрения процессы условно можно подразделить на следующие группы:
- процесс-администратор, выполняющий функции диспетчера для всех остальных процессов;
- системные и служебные процессы;
- прикладные процессы, обеспечивающие управление коммутацией, реализацию конкретных протоколов, а также процессы-модули приложений, функционирующих на компьютерах внешней сети (Модуль оператора, Тарификация, Статистика и пр.).
В нормальном состоянии все процессы работают (активны). Доступ к ним разрешен в окне системной консоли Администратора. При вызове системной консоли открывается окно, в котором ведется работа.
Переход от одного процесса к другому осуществляется с помощью комбинаций функциональных клавиш.
Первым в актуальном списке процессов всегда является процесс-администратор, за ним следуют остальные процессы в порядке возрастания номеров.
Номер в списке |
Процесс |
Обозначение | Текущий вызов |
0 |
Администратор | elcadmin | CTRL+F1 |
1 |
Общая консоль | econsole | CTRL+F2 |
2 |
Управление LOG-файлами | elogger | CTRL+F3 |
3 |
Менеджер EDLC | elcedlc | CTRL+F4 |
4 |
Модуль коммутации | elcmk | CTRL+F5 |
5 |
Модуль оператора | elcmo | CTRL+F6 |
6 |
Менеджер ISDN | elcisdn | CTRL+F7 |
7 |
Управление услугами ДВО | elcsrv | CTRL+F8 |
8 |
Процесс SS7 MTP | elcss7 | CTRL+F9 |
9 |
Процесс SS7 ISUP | elcisup | CTRL+F10 |
10 |
Проведение upgrade ПО | elcupgr | CTRL+F11 |
11 |
Изменение параметров АТС | elcparam | CTRL+F12 |
12 |
Сервер сообщений | ecommsrv | ALT+F1 |
13 |
Протокол TCP/IP | elc_tcp | ALT+F2 |
14 |
Тарификация | elcbill | ALT+F3 |
15 |
Статистика | elcstat | ALT+F5 |
16 |
Обслуживание СОРМ | elcsorm | ALT+F7 |
17 |
Обслуживание файлов | elcassist | ALT+F8 |
18 |
Обслуживание интерфейса V5.2 | elcv5l2 | ALT+F9 |
Ряд процессов имеют параметры (настроечные значения), определяющие работу системы в целом, такие, как различные таймауты, задержки и т.п. Для каждого из параметров предусмотрены исходные (заводские) значения, которые персоналу разрешено изменять самостоятельно, причем делать это можно без остановки АТС.
1.6.3. Программные компоненты, их размещение и взаимодействие
Прикладное ПО включает в себя ряд приложений, основным из которых является "Модуль оператора" (исполняемый файл - MO.ЕХЕ). Данное приложение предназначено для управления оборудованием АТС, отображения его текущего состояния, управления конфигурированием и т.п.
Поставляется также ряд подсистем (ПС) и утилит (служебных программ):
- ПС"Тарификация" (MOBILL.ЕХЕ), служащая для экспорта тарификационных данных из АТС;
- ПС"Статистика" (MOSTAT.ЕХЕ), предназначенная для экспорта из АТС и формирования данных о трафике;
- Утилита "Контрольные наборы" (MoTech.EXE);
- Утилита "Отключение абонентов списком (MOSWITCH.EXE);
- Утилита "Тестирование абонентов" (MOTEST.EXE);
- Утилита "База данных абонентов" (MoAbonent.EXE);
- Утилита "Изменение структуры АТС" (ATSupgr.EXE);
- Утилита "Обновление ПО АТСЭЛКОМ" (MoProg.EXE).
На любом рабочем месте, как на компьютере МО, так и на дополнительных рабочих местах, могут быть запущены перечисленные выше приложения в любом наборе. Это означает, что в системе может использоваться несколько одноименных приложений.
Расположение программных компонент в общем случае показано на рис.1.6.2.
В ходе работы каждого из приложений взаимодействуют 2 обязательных компоненты:
- собственно приложение, функционирующее на одном из внешних компьютеров;
- процесс, функционирующий внутри АТС.
Например, приложениям MO.EXE, MOBILL.EXE, MOSTAT.EXE соотнесены процессы elcmo, elcbill, elcstаt.
Рис.1.6.2. Состав и расположение программных компонент
Рассмотрим теперь взаимодействие компонент ПО, используя терминологию "сервер-клиент". В простейшем понимании сервер - это источник информации, клиент - ее потребитель, который получает данные на основании своего запроса к серверу.
Вся исходная информация находится в АТС, откуда ее можно получить только по запросу. Обмен осуществляется с помощью Сервера МО - служебной программы Tspsrv.exe, которая функционирует в Модуле оператора и обслуживает все приложения на всех компьютерах.
На рис.1.6.3 показана организация взаимодействия программных компонент.
Сервер МО функционирует на компьютере Главного (центрального) МО.
Рис.1.6.3. Организация взаимосвязи программных компонент
Среди приложений, работающих на внешних компьютерах, в том числе и на главном МО, могут быть одноименные (см. на рис. 1.6.3 MO1.EXE - MON.EXE, MOBILL1.EXE - MOBILLK.EXE).
Прохождение запроса следующее: клиент (любое из приложений) обращается с запросом к Серверу МО. Сервер МО (программный модуль), в свою очередь, выступая в роли клиента, обращается за информацией к активному в текущий момент УВМ, который по отношению к нему является информационным сервером. Сервер МО также организует очередь запросов, контролирует выполнение запросов по тайм-ауту.
Для передачи файлов в системе применяется и связь по протоколу FTP (File Transfer Protocol). Эта связь используется для работы с файлами конфигурации, статистики и некоторых видов мониторингов. Данный вид связи также реализуется Сервером МО, который по запросу приложения пересылает из АТС соответствующий файл.
Связь между любым из приложений, независимо от места его нахождения, и Сервером МО получила в системе название "Связь с сервером". Связи между Сервером МО и каждым из УВМ (Node10, Node11) получили в системе общее название "Связь ТСР".
Структура IP-адресов типовой сети показана на рис.1.6.4.
Рис.1.6.4. Структура IP-адресов типовой (минимальной) сети
1.6.4. Отображение связей программных компонент
Каждое приложение после запуска открывает на своей панели три окна, соответствующие данным видам связи, состояние которых постоянно отслеживается.
Окно "Связь с Сервером" (в некоторых приложениях - "Сервер") свидетельствует о наличии связи между этим приложением и Сервером МО. Если индицирован отказ данного вида связи (окно окрасилось в красный цвет), доступ данного приложения к любой новой информации становится невозможен. Такой отказ возможен как на главном МО, так и на любом рабочем месте
Связь ТСР отслеживается отдельно для пар "Сервер МО - Node10" и "Сервер МО - Node11", каждая в своем окне. Как правило, эти окна имеют наименование "ТСР0" и "ТСР1" (в других приложениях - "ВМ0" и "ВМ1") соответственно. Эти окна свидетельствует о наличии связи Сервера МО с соответствующим УВМ, о чем Сервер МО оповещает всех своих клиентов, поддерживающих с ним в настоящий момент связь. Отказ этого вида связи проявляется на панелях ВСЕХ работающих в данный момент приложений.
1.6.5. Структура основных каталогов на диске С:
Инсталляция системы производится на компьютере МО автоматически с помощью программы-инсталлятора ElcInst.EXE. При этом на диске С: создается система каталогов, где располагаются файлы приложений, настройки, служебный файлы (см.рис. 1.6.5)
C:\ElcomV3n | ||
\BIN | Основные программы и настройки | |
\BACKUP | - Исполняемые файлы - *.ЕХЕ - Библиотеки - *.BPL, *.DLL - Файлы настройки и инициализации - *.INI Архив файлов конфигураций | |
\MO_BAS | - Файлы конфигураций - *.CFG Служебная БД Модуля оператора | |
\SWAP | Временная БД при экспорте файлов из АТС | |
\LOG | Протоколы, трассировки, мониторинги | |
\CONNECT | - Протоколы - * .LOG - Мониторинги - * .MNT - Системные сообщения - Sysmess.gz, Sysmessr.gz Файлы тарификации, служебный каталог | |
\SWITCH | Списки на включение/отключение абонентов | |
\ТЕМР | Служебный каталог | |
\ТХТ | Инструкции, HELP'ы | |
\RO_BAS | БД ПС"ЭЛКОМ-ЦБР" |
Рис.1.6.5. Типовая структура каталогов на диске С:
Служебные библиотеки – файлы *.BPL, *.DLL - необходимы для работы МО и всех остальных утилит, при инсталляции они помещаются в каталог C:\ElcomV3n\Bin.
Для создания дополнительной реализации утилит необходимо создать специальный подкаталог, куда скопировать исполнительные и настроечные файлы, а также все служебные библиотеки.
Если таких реализаций много, рекомендуется скопировать эти библиотеки в каталог C:\Windows\System32, что обеспечит доступ к ним из любого каталога.
Все приложения могут работать под управлением Win'98/2000/XP. Для нормальной работы приложений необходима настройка Windows, которая выполняется в окне "Панель управления".
1. Настройка режимов экрана.
Страница "Настройка" |
Область экрана - 1024х768 |
Размеры шрифта - "Мелкий шрифт" |
|
Размеры шрифта заголовка активного окна - 8 |
2. Настройки режима "Язык и стандарты"
Страница "Регион и язык" |
- Русский |
Страница "Числа" |
Разделитель целой и дробной части - "," (запятая) |
Количество знаков - 2 |
|
Количество цифр в группе -3 |
|
Признак отрицательного числа - "-" (минус) |
|
Вывод "0" в начале числа - 0.7 |
|
Система единиц - метрическая |
|
Разделитель элементов списка - ";" (точка с запятой) |
|
Страница "Время" |
Формат - ЧЧ:мм:сс |
Разделитель - ":" (двоеточие) |
|
Страница "Дата" |
Краткий формат - дд.ММ.гг |
Полный формат - д ММММ гггг'г |