Быстрый переход
ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ
«ЭРИКССОНСОФТ»
Описание функциональных характеристик программного продукта «Виртуальный центр коммутации мобильной связи VMSC»
Правообладатель программы:
ООО «ЭрикссонСофт», ИНН 9718246399
Брянская обл., 2026
Оглавление
Настоящий документ содержит описание функциональных характеристик экземпляра программного обеспечения «vMSC», предоставленного для экспертной проверки.
В современных сетях сотовой связи оборудование коммутационных центров мобильной связи (MSC) выполняет критические функции обработки вызовов, управления мобильностью и взаимодействия с другими узлами инфраструктуры (HLR, BSC, SGSN, PSTN). Для обеспечения отказоустойчивости и корректной работы коммерческого оборудования, а также для целей разработки и лабораторных испытаний, требуется инструментарий, позволяющий генерировать эталонные сигнальные сообщения и эмулировать поведение смежных сетевых элементов.
Программное обеспечение vMSC представляет собой инструмент командной строки, реализующий функции генерации, инкапсуляции и отправки сигнального трафика в соответствии со стандартами 3GPP и ITU-T. ПО позволяет выполнять функциональное тестирование оборудования MSC путем направления специализированных сообщений по всем ключевым интерфейсам (A, C, E, F, Gs, ISUP), а также осуществлять управление состоянием абонентов в гостевом регистре (VLR) и контролировать состояние соединительных линий (CIC).
Документ составлен на основе анализа предоставленного экземпляра ПО и описывает его архитектуру, реализованные функции, поддерживаемые протоколы и возможности по эксплуатации.
Программное обеспечение vMSC предназначено для функционального тестирования, диагностики и верификации оборудования мобильных коммутационных центров (MSC) и сопутствующей инфраструктуры сетей сотовой связи стандарта GSM.
В процессе эксплуатации и разработки телекоммуникационного оборудования возникает необходимость проверки реакции системы на широкий спектр сигнальных сценариев, включая штатные процедуры, пограничные состояния и аварийные ситуации. ПО vMSC выполняет роль контролируемого источника сигнального трафика, позволяя направлять в адрес тестируемого узла заранее сформированные сообщения без необходимости развертывания полномасштабного окружения реальной сети.
Основные области применения:
Проверка процедур управления мобильностью: тестирование обработки запросов на обновление местоположения (Location Update), отмену местоположения (Cancel Location), вставку абонентских данных (Insert Subscriber Data) и аутентификацию.
Тестирование процедур установления и разрушения соединений: генерация сообщений ISUP (IAM, ACM, ANM, REL) для проверки обработки вызовов, поступающих из ТФОП (PSTN).
Верификация взаимодействия с приложениями и базами данных Core Network: отправка MAP-запросов к HLR (Send Authentication Info, Update Location) и EIR (Check IMEI).
Диагностика транспортной инфраструктуры SIGTRAN: проверка корректности маршрутизации на уровнях M3UA и SCCP, включая маршрутизацию по глобальным заголовкам (GT).
Тестирование интерфейсов с сетью доступа: эмуляция сообщений от BSC (A-интерфейс) и SGSN (Gs-интерфейс), включая BSSMAP Reset и Paging Request.
Лабораторные испытания и отладка: создание воспроизводимых сценариев сигнального взаимодействия в изолированной лабораторной среде, в том числе при разработке на платформе WSL.
ПО не предъявляет специфических требований к аппаратному обеспечению и функционирует на стандартных x86-64 совместимых процессорах. Объем требуемых ресурсов (оперативная память, дисковое пространство) определяется интенсивностью генерации трафика и объемом сохраняемых диагностических данных. Для типовых сценариев тестирования достаточно ресурсов, доступных на современной персональной рабочей станции или виртуальной машине.
Операционная система: ОС семейства Linux. ПО разработано и протестировано для работы в среде Linux. Допускается использование подсистемы Windows Subsystem for Linux (WSL) для целей разработки и проведения лабораторных испытаний на рабочих станциях под управлением ОС Windows.
Среда исполнения: Консольное приложение (command-line interface) с запуском из командной строки или с использованием скриптов автоматизации. Взаимодействие с пользователем осуществляется через параметры командной строки и вывод диагностической информации в стандартные потоки вывода.
ПО поставляется в виде единственного исходного файла на языке C++17 и набора сопутствующих конфигурационных файлов, что обеспечивает простоту развертывания и модификации.
Язык реализации: C++17 (стандарт ISO/IEC 14882:2017).
Ключевые зависимости:
libosmocore — библиотека, предоставляющая базовую функциональность для разработки телекоммуникационных приложений: работа с таймерами, механизмы логирования, управление буферами сообщений (msgb), работа с очередями.
libosmogsm — библиотека кодирования и декодирования сообщений протоколов GSM, включая уровни RR, MM, CC (3GPP TS 24.008), BSSMAP (3GPP TS 48.008) и MAP (3GPP TS 29.002).
libtalloc — библиотека иерархического управления памятью, обеспечивающая эффективное выделение и освобождение ресурсов в долгоживущих процессах.
Архитектура сборки: Проект собирается с использованием системы CMake, что обеспечивает кроссплатформенность и гибкость настройки процесса компиляции.
ПО взаимодействует с тестируемым оборудованием посредством отправки UDP-дейтаграмм, содержащих инкапсулированные сигнальные сообщения. Для корректной работы требуется сетевая связность (маршрутизация IP-пакетов) между хостом, на котором запущено ПО vMSC, и тестируемым устройством (MSC, HLR, SGSN и т.д.). ПО поддерживает конфигурацию локальных и удаленных IP-адресов и портов для каждого эмулируемого интерфейса.
ПО поставляется в виде единственного исходного файла на языке C++17 и набора сопутствующих конфигурационных файлов, что обеспечивает простоту развертывания, модификации и верификации.
Основной файл: main.cpp — содержит полную реализацию всех функций ПО, включая:
парсинг аргументов командной строки;
загрузку и обработку конфигурационных файлов;
формирование сигнальных сообщений всех поддерживаемых типов;
кодирование протоколов (BER, TLV, фиксированные заголовки);
инкапсуляцию в транспортные уровни (SCCP, M3UA, UDP);
управление состоянием VLR и пулом CIC;
систему логирования и диагностики.
ПО использует текстовые конфигурационные файлы в формате INI для хранения параметров настройки и динамического состояния:
vmsc.conf — основная конфигурация узла:
идентификация (MCC, MNC, LAC, Cell ID);
параметры VLR (префиксы IMSI, VLR number);
диапазон CIC (Circuit Identification Code);
статические записи абонентов (IMSI, MSISDN).
vmsc_interfaces.conf — конфигурация сетевых интерфейсов и маршрутизации:
параметры интерфейсов A, C, E, F, Gs, ISUP (IP-адреса, порты);
правила маршрутизации по глобальным заголовкам (GT routes);
привязка OPC/DPC/NI к интерфейсам.
vmsc_vlr.conf — динамическая таблица VLR (генерируется автоматически в процессе работы):
зарегистрированные абоненты (IMSI, MSISDN, TMSI, состояние);
временные метки регистрации.
vmsc_cic.conf — динамическое состояние пула CIC:
состояние каждой цепи (IDLE, ACTIVE, BLOCKED, RESETTING);
статистика использования.
Файл: CMakeLists.txt — конфигурация сборки проекта с использованием CMake.
Поддерживаемые опции:
автоматическое обнаружение зависимостей;
настройка путей инсталляции;
флаги компиляции для отладочной и релизной сборок.
run_vmsc.sh — скрипт быстрого запуска с предустановленными параметрами (--send-udp --use-m3ua).
Для корректной компиляции и функционирования ПО требуются следующие сторонние библиотеки:
Основные зависимости (обязательные):
Библиотека | Назначение | Версия |
libosmocore | Базовая инфраструктура для телекоммуникационных приложений: управление буферами (msgb), таймеры, очереди, логирование, работа с битовыми полями. | ≥ 1.4.0 |
libosmogsm | Кодирование и декодирование GSM-протоколов: Layer 3 (RR, MM, CC) по 3GPP TS 24.008, BSSMAP по 3GPP TS 48.008, MAP по 3GPP TS 29.002. | ≥ 1.4.0 |
libtalloc | Иерархическое управление памятью с автоматическим освобождением вложенных структур, предотвращающее утечки памяти в длительных сессиях. | ≥ 2.3.0 |
Транзитивные зависимости (устанавливаются автоматически с основными):
Библиотека | Назначение | Примечание |
libc | Стандартная библиотека языка C | Входит в состав любой ОС Linux |
libstdc++ | Стандартная библиотека языка C++ | Входит в состав компилятора g++ |
libpthread | Поддержка многопоточности POSIX | Используется для таймеров и асинхронных операций |
libdl | Динамическая загрузка библиотек | Необходима для работы libosmocore |
libffi | Foreign Function Interface | Используется некоторыми компонентами libosmocore |
libz | Сжатие данных | Может использоваться для сжатия логов |
Рекомендуемые инструменты для разработки и отладки:
Инструмент | Назначение |
g++ / clang | Компилятор C++17 |
cmake | Система сборки (≥ 3.10) |
make | Утилита сборки |
| Определение флагов компиляции и линковки для зависимостей |
wireshark / tshark | Анализ захваченного трафика (поддержка PCAP) |
valgrind | Поиск утечек памяти и ошибок работы с памятью |
text
vMSC/
├── main.cpp # Исходный код
├── CMakeLists.txt # Конфигурация сборки
├── README.md # Документация
├── ROADMAP.md # План развития
├── vmsc.conf # Основная конфигурация
├── vmsc_interfaces.conf # Конфигурация интерфейсов
├── vmsc_vlr.conf # VLR runtime (генерируется)
├── vmsc_cic.conf # CIC runtime (генерируется)
│
├── build/ # Каталог сборки
│ ├── vmsc # Исполняемый файл
│ ├── run_vmsc.sh # Скрипт запуска
│ └── ... # Объектные и временные файлы
│
└── traces/ # Директория для PCAP-файлов (при наличии)
ПО реализует полный стек инкапсуляции для отправки сигнального трафика в соответствии с архитектурой 3GPP и ETSI. Инкапсуляция выполняется снизу вверх, от транспортного уровня до прикладных протоколов.
Транспортный уровень: UDP поверх IPv4. Протокол UDP используется как базовая транспортная среда для передачи сигнальных сообщений в IP-сетях.
Уровень сигнализации SIGTRAN: M3UA в соответствии с IETF RFC 4666 и RFC 3868. Обеспечивает адаптацию пользовательских частей сигнализации SS7 для транспортировки поверх IP-сетей, включая функции управления состоянием ASP (Application Server Process) и мультиплексирования сообщений.
Сетевой уровень сигнализации: SCCP в соответствии с ITU-T Q.713. Поддерживается два режима работы: с установлением логического соединения с использованием сообщений CR и DT1 для интерфейсов A и E, а также без установления соединения с использованием сообщений UDT для интерфейсов C, F и Gs. Реализована маршрутизация на основе глобальных заголовков GT с типом GTI=4, включая поддержку префиксных правил маршрутизации из конфигурационных файлов.
Прикладные уровни реализуют следующие протоколы:
BSSAP, включающий BSSMAP и DTAP, для интерфейса A между MSC и BSC, а также для интерфейса Gs между MSC и SGSN в соответствии с 3GPP TS 48.008 и 44.008.
ISUP для взаимодействия с ТФОП (PSTN) по стандарту ITU-T Q.763 с поддержкой базовых процедур установления и разрушения соединений, а также управления цепями CIC.
TCAP в соответствии с ITU-T Q.771-Q.775 для обеспечения транзакционных диалогов и поддержки прикладных протоколов.
MAP в соответствии с 3GPP TS 29.002 для взаимодействия с HLR по интерфейсу C и с EIR по интерфейсу F.
ПО обеспечивает выполнение функций генерации и отправки сообщений для следующих интерфейсов MSC в соответствии с их назначением в архитектуре сети.
Функции управления радиоресурсами и мобильностью через протокол BSSAP:
--send-lu-request — формирование и отправка запроса обновления местоположения (Location Update Request) от мобильной станции.
--send-bssmap-reset — отправка сообщения сброса BSSMAP Reset для инициализации взаимодействия с BSC.
--send-dtap-auth-req — отправка запроса аутентификации (Authentication Request) в составе DTAP.
--send-dtap-lu-accept — подтверждение обновления местоположения (Location Updating Accept).
--send-dtap-cc-setup-mo — отправка запроса на установление соединения от мобильной станции (Mobile Originated Call Setup).
--send-dtap-cc-setup-mt — отправка запроса на установление соединения к мобильной станции (Mobile Terminated Call Setup).
Функции прикладного уровня MAP для работы с абонентскими данными в домашнем регистре местоположения:
--send-map-sai — запрос информации аутентификации (Send Authentication Info).
--send-map-ul — обновление местоположения абонента в HLR (Update Location).
--send-map-cl — отмена местоположения (Cancel Location).
--send-map-isd — вставка данных абонента (Insert Subscriber Data).
Функция проверки легальности оборудования:
--send-map-check-imei — проверка IMEI в регистре идентификации оборудования (Check IMEI).
Функции управления звонками и состоянием цепей с использованием сервисного индикатора SI=5:
--send-isup-iam — инициирование вызова (Initial Address Message).
--send-isup-acm — подтверждение адреса (Address Complete Message).
--send-isup-anm — ответ на вызов (Answer Message).
--send-isup-rel — отправка сообщения о разъединении (Release).
--send-isup-rlc — подтверждение разъединения (Release Complete).
--send-isup-blo — блокировка цепи (Block Circuit).
--send-isup-ubl — разблокировка цепи (Unblock Circuit).
Функции взаимодействия с доменом коммутации пакетов (PS - Packet Switched):
--send-gs-lu — обновление местоположения (Location Update).
--send-gs-paging — отправка запроса пейджинга (Paging Request).
--send-gs-imsi-detach — отправка уведомления об отсоединении IMSI (IMSI Detach).
--send-gs-reset — отправка сообщения сброса (Reset).
Функции для поддержки многошаговых MAP операций с использованием идентификаторов транзакций (TID):
--send-map-sai-end — завершение диалога MAP с передачей результата (Return Result).
--send-tcap-continue — продолжение TCAP диалога с указанием исходящего и входящего идентификаторов транзакций.
--send-tcap-abort — аварийное завершение TCAP диалога (Abort).
--send-map-return-error — возврат ошибки MAP с указанием кода ошибки.
Функции управления состоянием ASP (Application Server Process) в сетях SIGTRAN:
--send-m3ua-aspup — активация ASP (ASP Up).
--send-m3ua-aspac — перевод ASP в активное состояние (ASP Active) с поддержкой режимов распределения нагрузки.
--send-m3ua-aspia — перевод ASP в неактивное состояние (ASP Inactive).
ПО поддерживает динамическое управление состоянием абонентов в гостевом регистре VLR:
--show-vlr — просмотр текущей таблицы зарегистрированных абонентов с указанием IMSI, MSISDN, TMSI, LAC и состояния регистрации.
--show-subscriber — отображение параметров конкретного абонента.
--show-subscribers — отображение таблицы всех абонентов из конфигурации.
Автоматическое обновление состояния VLR при выполнении процедур регистрации и обновления местоположения.
ПО обеспечивает контроль и управление пулом соединительных линий CIC (Circuit Identification Code):
--show-alarms — отображение состояния аварий, включая контроль занятости и блокировки цепей.
Автоматическое обновление состояния цепей (CIC IDLE, ACTIVE, BLOCKED, RESETTING) в файле vmsc_cic.conf.
Генерация аварийных сообщений при достижении пороговых значений занятости или блокировки цепей.
Программное обеспечение vMSC предоставляет широкий набор функциональных возможностей для генерации сигнального трафика и тестирования оборудования MSC. Функциональные возможности сгруппированы по областям применения в соответствии с их назначением в сети.
Версия ПО 1.0+ включает следующие реализованные функциональные возможности:
Базовые функции генерации сообщений:
Поддержка всех основных интерфейсов MSC: A, C, E, F, Gs, ISUP.
Генерация сообщений уровня BSSAP (BSSMAP и DTAP) для процедур управления мобильностью и установления соединений.
Генерация сообщений MAP для взаимодействия с HLR и EIR.
Генерация сообщений ISUP для взаимодействия с ТФОП.
Поддержка TCAP диалогов для многошаговых MAP операций.
Управление состоянием ASP через M3UA.
Функции управления и диагностики:
Просмотр конфигурации интерфейсов и таблиц маршрутизации GT.
Просмотр состояния VLR и зарегистрированных абонентов.
Просмотр состояния пула CIC и генерация аварийных сообщений.
Сохранение и загрузка конфигурационных файлов.
Транспортные функции:
Инкапсуляция сообщений в SCCP (с установлением и без установления соединения).
Инкапсуляция в M3UA с поддержкой различных сервисных индикаторов (SI=3 для SCCP, SI=5 для ISUP).
Отправка по UDP.
Данная группа включает функции, связанные с отслеживанием местоположения абонентов и управлением их состоянием в сети:
--send-lu-request — формирование и отправка запроса обновления местоположения (Location Update Request).
--send-dtap-lu-accept — подтверждение обновления местоположения (Location Updating Accept).
--send-gs-lu — обновление местоположения через Gs-интерфейс.
--send-gs-imsi-detach — отправка уведомления об отсоединении IMSI.
--send-gs-paging — отправка запроса пейджинга.
--send-map-ul — обновление местоположения абонента в HLR (Update Location).
--send-map-cl — отмена местоположения (Cancel Location).
Функции для установления, управления и разрушения соединений:
--send-dtap-cc-setup-mo — отправка запроса на установление соединения от мобильной станции (Mobile Originated Call Setup).
--send-dtap-cc-setup-mt — отправка запроса на установление соединения к мобильной станции (Mobile Terminated Call Setup).
--send-isup-iam — инициирование вызова (Initial Address Message).
--send-isup-acm — подтверждение адреса (Address Complete Message).
--send-isup-anm — ответ на вызов (Answer Message).
--send-isup-rel — отправка сообщения о разъединении (Release).
--send-isup-rlc — подтверждение разъединения (Release Complete).
Функции для работы с данными абонентов в домашнем регистре и регистре оборудования:
--send-map-sai — запрос информации аутентификации (Send Authentication Info).
--send-map-isd — вставка данных абонента (Insert Subscriber Data).
--send-map-check-imei — проверка IMEI в регистре идентификации оборудования (Check IMEI).
--show-subscriber — отображение параметров конкретного абонента.
--show-subscribers — отображение таблицы всех абонентов.
Функции, связанные с проверкой подлинности абонентов и оборудования:
--send-dtap-auth-req — отправка запроса аутентификации (Authentication Request).
--send-map-sai — запрос векторов аутентификации из HLR.
--send-map-check-imei — проверка оборудования в EIR.
Функции, обеспечивающие транспортировку сигнальных сообщений по протоколам SIGTRAN:
--send-m3ua-aspup — активация ASP (ASP Up).
--send-m3ua-aspac — перевод ASP в активное состояние (ASP Active).
--send-m3ua-aspia — перевод ASP в неактивное состояние (ASP Inactive).
Поддержка инкапсуляции в SCCP CR/DT1 (соединение-ориентированная) и SCCP UDT (без соединения).
Поддержка маршрутизации по глобальным заголовкам (GT) с GTI=4.
Функции для контроля и управления соединительными линиями и пулами ресурсов:
--send-isup-blo — блокировка цепи (Block Circuit).
--send-isup-ubl — разблокировка цепи (Unblock Circuit).
--show-alarms — отображение состояния аварий по CIC пулу и VLR.
Автоматическое обновление состояния цепей в файле vmsc_cic.conf.
Функции для поддержки многошаговых диалогов прикладного уровня:
--send-map-sai-end — завершение диалога MAP с передачей результата (Return Result).
--send-tcap-continue — продолжение TCAP диалога.
--send-tcap-abort — аварийное завершение TCAP диалога (Abort).
--send-map-return-error — возврат ошибки MAP с указанием кода ошибки.
Функции для настройки параметров работы ПО и просмотра текущего состояния:
--show-interfaces — отображение конфигурации интерфейсов и таблицы GT.
--show-gt-route — просмотр таблицы маршрутизации GT.
--show-vlr — просмотр таблицы подписчиков VLR.
--show-identity — отображение идентификации узла (MCC, MNC, LAC, Cell ID).
--show-m3ua — отображение параметров M3UA (OPC/DPC/NI/SI/SLS).
--config — загрузка конфигурационных файлов (поддерживается стекирование).
--save-config — сохранение текущей конфигурации.
--opc, --dpc, --ni — установка параметров сигнализации.
Функции для инициализации взаимодействия с сетевыми элементами:
--send-bssmap-reset — отправка сообщения сброса BSSMAP Reset.
--send-gs-reset — отправка сообщения сброса Reset по Gs-интерфейсу.
Эксплуатация и обслуживание ПО vMSC охватывает действия по настройке параметров, контролю состояния, диагностике неисправностей и управлению конфигурацией. Управление ПО осуществляется через интерфейс командной строки с использованием набора специализированных команд и конфигурационных файлов.
ПО vMSC реализует систему диагностики и аварий, позволяющую контролировать состояние критических ресурсов и своевременно обнаруживать нештатные ситуации.
Аварии классифицируются по уровням критичности в зависимости от влияния на способность ПО выполнять свои функции:
CRITICAL — полная потеря функциональности (например, все цепи CIC заняты или заблокированы).
MAJOR — серьезное нарушение в работе, требующее вмешательства (например, высокий процент заблокированных цепей или отсутствие зарегистрированных абонентов в VLR).
MINOR — частичное нарушение, не влияющее на основную функциональность (например, отдельные цепи в процессе сброса).
WARNING — предупреждение о приближении к критическому порогу (например, высокая занятость цепей).
Контролируемые ресурсы и условия генерации аварий:
Ресурс | Уровень аварии | Условие | Описание |
CIC пул | CRITICAL | allCircuitsBusy | Все соединительные линии заняты или заблокированы |
CIC пул | MAJOR | highBlockedRatio | Более 30% цепей заблокировано |
CIC пул | MAJOR | circuitBlocked | Отдельная цепь заблокирована (индикация по конкретному CIC) |
CIC пул | MINOR | circuitResetting | Цепь находится в состоянии сброса |
CIC пул | WARNING | highOccupancy | Более 80% цепей активно используются |
VLR | MAJOR | noRegisteredSubscribers | В гостевом регистре отсутствуют зарегистрированные абоненты |
VLR | WARNING | vlrTableEmpty | Таблица VLR пуста |
Интерфейсы | MAJOR | remoteIpNotConfigured | Отсутствует IP-адрес удаленного пира для одного из интерфейсов |
Для просмотра текущего состояния аварий используется команда:
--show-alarms — отображение всех активных аварий с указанием типа, уровня критичности и affected resource.
ПО предоставляет следующие возможности для локализации и анализа неисправностей:
Просмотр детальной конфигурации интерфейсов и таблиц маршрутизации для проверки корректности настроек:
--show-interfaces
--show-gt-route
--show-m3ua
Просмотр состояния VLR и зарегистрированных абонентов для проверки процедур регистрации:
--show-vlr
--show-subscriber
Просмотр состояния пула CIC для анализа занятости ресурсов:
vmsc_cic.conf (динамический файл состояния)
Анализ инкапсуляции сообщений для проверки корректности формирования стеков протоколов:
--show-encapsulation
Управление конфигурацией осуществляется через параметры командной строки и текстовые конфигурационные файлы в формате INI. Поддерживается стекирование конфигурационных файлов для реализации различных сценариев тестирования.
vmsc.conf — основная конфигурация узла:
Идентификация (MCC, MNC, LAC, Cell ID)
Параметры VLR (префиксы IMSI, номер VLR, префиксы IMEI)
Диапазон CIC (начало и конец пула)
Статические записи абонентов (секции [subscriber-N])
vmsc_interfaces.conf — конфигурация сетевых интерфейсов и маршрутизации:
Параметры интерфейсов A, C, E, F, Gs, ISUP (локальные и удаленные IP-адреса, порты, Network Indicator)
Правила маршрутизации по глобальным заголовкам (секция [gt-route])
vmsc_vlr.conf — динамическая таблица VLR (генерируется автоматически):
Зарегистрированные абоненты (IMSI, MSISDN, TMSI, LAC, Cell ID, состояние, временная метка)
vmsc_cic.conf — динамическое состояние пула CIC (генерируется автоматически):
Состояние каждой цепи (IDLE, ACTIVE, BLOCKED, RESETTING)
--show-interfaces — отображение конфигурации интерфейсов и таблицы GT
--show-vlr — просмотр таблицы подписчиков VLR
--show-gt-route — просмотр таблицы маршрутизации GT
--show-subscriber — отображение параметров конкретного абонента
--show-subscribers — отображение таблицы всех абонентов из конфигурации
--show-identity — отображение идентификации узла (MCC, MNC, LAC, Cell ID)
--show-m3ua — отображение параметров M3UA (OPC/DPC/NI/SI/SLS)
--show-encapsulation — отображение цепочки инкапсуляции сообщения
--show-alarms — отображение состояния аварий
--config <file> — загрузка конфигурационного файла (поддерживается множественное использование для стекирования)
--save-config — сохранение текущей конфигурации (включая переопределенные через командную строку параметры)
--opc <N> — установка исходящего кода пункта сигнализации (Originating Point Code)
--dpc <N> — установка кода пункта назначения (Destination Point Code)
--ni <N> — установка сетевого индикатора (Network Indicator, 0-3)
--cic <N> — установка идентификатора цепи для ISUP сообщений
--cause <N> — установка кода причины Q.850
ПО предоставляет базовые возможности для оценки производительности и загрузки системы.
В ПО реализованы следующие счетчики, автоматически инкрементируемые при выполнении операций:
Счетчики транзакций TCAP: статические переменные-счетчики TID (Transaction ID) для каждой MAP операции, обеспечивающие уникальность идентификаторов диалогов.
Счетчики SCCP соединений: переменная sccp_src_local_ref, инкрементируемая для каждого нового ориентированного на соединение диалога (SCCP CR).
Состояние ресурсов отслеживается через систему аварий и динамические конфигурационные файлы:
Текущая загрузка CIC пула отслеживается через пороговые значения в системе аварий (highOccupancy при достижении 80% занятости).
Состояние VLR контролируется через наличие зарегистрированных абонентов.
ПО поддерживает базовые механизмы безопасности на уровне сетевого взаимодействия:
Отправка сообщений осуществляется по протоколу UDP без установления постоянного соединения.
Возможность конфигурации локальных и удаленных IP-адресов и портов для каждого интерфейса.
Поддержка различных сетевых индикаторов (NI) для разделения трафика разных сетей.
Доступ к функциям ПО осуществляется через интерфейс командной строки. Авторизация и аутентификация на уровне приложения не реализованы, так как ПО предназначено для использования в контролируемой лабораторной среде.
ПО распространяется в исходном коде. Процесс установки включает следующие этапы:
Установка зависимостей (libosmocore, libosmogsm, libtalloc) через пакетный менеджер ОС.
Клонирование или копирование исходного файла main.cpp и конфигурационных файлов.
Сборка с использованием CMake:
cd build && cmake .. && make
Обновление ПО выполняется путем замены исходного файла main.cpp на новую версию и повторной сборки. Конфигурационные файлы сохраняются отдельно и не требуют модификации при обновлении, если не изменяется формат конфигурации.
Для резервного копирования достаточно сохранить следующие файлы и директории:
Исходный файл main.cpp
Конфигурационные файлы (*.conf)
Скрипты запуска (run_vmsc.sh)
Динамические файлы состояния (vmsc_vlr.conf, vmsc_cic.conf) могут быть сохранены для анализа, но при необходимости восстанавливаются автоматически в процессе работы.
ПО распространяется без лицензионных ограничений. Все функциональные возможности доступны в полном объеме в рамках версии 1.0+. Управление лицензиями не требуется.
8. Характеристики (Characteristics)
8.1. Емкость (Capability)
ПО vMSC характеризуется следующими емкостными параметрами, которые определяют максимальный объем обслуживаемых ресурсов и настроек. Указанные значения основаны на текущей реализации версии 1.0+ и могут быть ограничены доступными аппаратными ресурсами (оперативная память, производительность процессора).
Параметр | Значение | Примечание |
Количество поддерживаемых интерфейсов | 7 | A, C, E, F, Gs, ISUP, Nc |
Максимальное количество правил маршрутизации GT | Не ограничено программно | Ограничивается объемом оперативной памяти и размером конфигурационного файла |
Максимальное количество абонентов в статической конфигурации | Не ограничено программно | Определяется размером конфигурационного файла vmsc.conf |
Максимальное количество одновременно зарегистрированных абонентов в VLR | Не ограничено программно | Определяется объемом оперативной памяти |
Диапазон CIC (Circuit Identification Code) | 0 – 65535 | Задается в конфигурации, фактический размер пула определяется диапазоном |
Максимальная длина сообщения | Ограничена MTU | Ограничения транспортного уровня UDP/IP |
Количество поддерживаемых сервисных индикаторов (SI) | 2 | SI=3 для SCCP интерфейсов, SI=5 для ISUP |
Поддержка нескольких файлов конфигурации | Да | Режим стекирования через --config |
8.2. Доступность (Availability)
ПО vMSC предназначено для функционирования в контролируемой лабораторной среде и не предъявляет требований к промышленной отказоустойчивости. Доступность ПО определяется доступностью аппаратной платформы и операционной системы, на которой оно развернуто.
В случае сбоев в работе (аварийное завершение, потеря сетевой связности) восстановление работоспособности осуществляется путем перезапуска приложения. Состояние VLR и пула CIC сохраняется в динамических конфигурационных файлах (vmsc_vlr.conf, vmsc_cic.conf) и восстанавливается при последующем запуске.
Характеристика | Значение |
Режим работы | Без резервирования (single instance) |
Восстановление после сбоя | Ручной перезапуск оператором |
Сохранение состояния при сбое | Частичное (динамические файлы конфигурации) |
8.3. Масштабируемость (Scalability)
Масштабируемость ПО vMSC обеспечивается за счет увеличения производительности аппаратной платформы (вертикальное масштабирование). Программных ограничений на масштабирование не установлено.
Аспект масштабирования | Возможности |
Увеличение количества абонентов | Не ограничено программно, зависит от объема оперативной памяти |
Увеличение количества цепей CIC | Определяется заданным диапазоном в конфигурации |
Увеличение интенсивности трафика | Зависит от производительности процессора и пропускной способности сети |
Многопоточная обработка | Не реализована (однопоточное приложение) |
9. Документация продукта (Product Documentation)
В состав ПО vMSC входит следующая документация, поставляемая вместе с исходным кодом и конфигурационными файлами.
9.1. Основные документы
Документ | Назначение |
README.md | Общее описание проекта, инструкции по сборке, быстрому запуску и базовому использованию. Содержит информацию о зависимостях и структуре директорий. |
ROADMAP.md | План развития проекта, описание архитектуры, полный перечень поддерживаемых команд и параметров командной строки, примеры использования, описание конфигурационных файлов и системы аварий. |
9.2. Конфигурационные файлы (с комментариями)
Конфигурационные файлы содержат встроенную документацию в виде комментариев, описывающих назначение каждого параметра.
Файл | Назначение |
vmsc.conf | Основная конфигурация узла. Содержит комментарии по настройке идентификации, параметров VLR, диапазона CIC и статических записей абонентов. |
vmsc_interfaces.conf | Конфигурация интерфейсов и маршрутизации GT. Содержит комментарии по настройке IP-адресов, портов, Network Indicator и правил GT. |
9.3. Вспомогательные скрипты
Скрипт | Назначение |
run_vmsc.sh | Пример скрипта для быстрого запуска с предустановленными параметрами (--send-udp --use-m3ua). Может использоваться как шаблон для автоматизации тестовых сценариев. |
Информация
Адрес
242504
Брянская область
Карачевский район, Вишневка
Молодёжная улица, 33
Быстрый переход
Информация
Отдел продаж
+7 (953) 284-42-23
sales@ericssonsoftware.ru
Адрес
242504
Брянская область,
Карачевский район,
Вишневка, Молодёжная улица, 33