ЭрикссонСофт

+7 (953) 284-42-23

ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ

«ЭРИКССОНСОФТ»

Эксплуатационная документация программного продукта

«Программа модуля пакетного ядра сети vEPC»

Правообладатель программы:

ООО «ЭрикссонСофт», ИНН 9718246399

Брянская обл., 2026

Оглавление

Настоящий документ содержит руководство по эксплуатации виртуального сетевого элемента vEPC, объединяющего функции MME (Mobility Management Entity) и SGSN (Serving GPRS Support Node). Документ предназначен для администраторов и операторов, осуществляющих повседневное управление, мониторинг и обслуживание программного обеспечения в процессе эксплуатации.

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

Целевая аудитория

Документ предназначен для:

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

Необходимая квалификация

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

  • Уверенное владение командной строкой операционных систем семейства Linux
  • Понимание основ сетевых технологий и протоколов (TCP/IP, UDP, SCTP)
  • Знание архитектуры сетей мобильной связи (базовый уровень)
  • Навыки анализа текстовых файлов журналов

Запуск в интерактивном режиме:

Для запуска программы выполните в терминале:

bash

./vepc

или, если программа установлена в системную директорию:

bash

vepc

При запуске программа выполняет следующие действия:

  1. Создает директорию для хранения журналов (logs/)
  2. Загружает конфигурационные файлы (../vmme.conf, ../vsgsn.conf)
  3. Открывает файл журнала logs/vepc.log для записи
  4. Запускает рабочие потоки (MME, SGSN, GTP-сервер, S1AP-сервер)
  5. Запускает поток консоли управления
  6. Выводит приглашение для ввода команд

Параметры командной строки:

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

Запуск с правами root:

Для прослушивания портов с номерами менее 1024 (по умолчанию 2123 и 36412) требуются права root. Запуск производится командой:

bash

sudo ./vepc

Запуск в фоновом режиме:

Для запуска в фоновом режиме используйте стандартные средства операционной системы:

bash

nohup ./vepc > /dev/null 2>&1 &

Однако следует учитывать, что при таком запуске консоль управления будет недоступна. Для управления программой в фоновом режиме рекомендуется использовать Docker-контейнер или разработать скрипт-обертку с перенаправлением ввода/вывода.

Штатная остановка:

Для штатной остановки программы в консоли управления введите команду:

text

stop

После ввода команды программа выполняет следующие действия:

  1. Устанавливает флаг остановки для всех рабочих потоков
  2. Ожидает завершения каждого потока
  3. Закрывает файл журнала
  4. Завершает процесс

Принудительная остановка:

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

bash

kill -TERM <PID>

bash

kill -9 <PID>  # только в крайнем случае

Для определения идентификатора процесса (PID) используйте команду:

bash

ps aux | grep vepc

При принудительной остановке возможно повреждение файла журнала или потеря несохраненных данных.

Перезапуск из консоли управления:

Для перезапуска всех рабочих потоков без остановки основного процесса используйте команду:

text

restart

Программа последовательно выполняет:

  1. Останов всех рабочих потоков (MME, SGSN, GTP, S1AP)
  2. Повторную загрузку конфигурационных файлов
  3. Запуск новых потоков с обновленной конфигурацией

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

Полный перезапуск процесса:

Для полного перезапуска процесса (например, после обновления исполняемого файла) выполните:

text

stop

Затем запустите программу заново.

При запуске программы в интерактивном режиме консоль управления доступна непосредственно в терминале. Программа выводит приглашение:

text

[vEPC] Команды: status / logs / state / show / set <key> <value> / restart / stop

>

Команда status

Отображает текущее состояние компонентов программы:

text

> status

MME: Running | SGSN: Running | PLMN: 250-20

Поля вывода:

  • MME — состояние потока MME (Running, Stopped)
  • SGSN — состояние потока SGSN (Running, Stopped)
  • PLMN — код страны и оператора из текущей конфигурации

Команда logs

Выводит сохраненные записи журнала событий:

text

> logs

[2025-01-15 14:30:22] [MAIN] vEPC запущен

[2025-01-15 14:30:22] [MME] MME запущен (MCC=250, MNC=20)

[2025-01-15 14:30:22] [SGSN] SGSN запущен (MCC=250, MNC=20)

[2025-01-15 14:30:22] [GTP] GTP-C сервер запущен на UDP 2123

[2025-01-15 14:30:22] [S1AP] S1AP сервер запущен на SCTP 36412

[2025-01-15 14:30:27] [MME] MME: ожидание Initial UE Message...

[2025-01-15 14:30:27] [SGSN] SGSN: ожидание GTP-C сообщений...

Количество сохраняемых в памяти записей ограничено (определяется реализацией). Полный журнал доступен в файле logs/vepc.log.

Команда state

Отображает текущее состояние сохраненных контекстов абонентов:

text

> state

PDP контексты (SGSN): 2

TEID=1001 IMSI=250201234567890

TEID=1002 IMSI=250209876543210

UE контексты (MME): 1

IMSI=250201234567890 GUTI=1234-5678-90AB

Вывод содержит:

  • Количество PDP-контекстов (активные сессии SGSN)
  • Для каждого контекста: TEID и IMSI
  • Количество UE-контекстов (зарегистрированные абоненты MME)
  • Для каждого контекста: IMSI и GUTI

Команда show

Отображает текущие значения параметров конфигурации:

text

> show

[MAIN] Текущие значения конфигурации:

gtp-c-port = 2123

mcc = 250

mme-ip = 127.0.0.1

mnc = 20

s1ap-port = 36412

sgsn-ip = 127.0.0.1

Команда set

Изменяет параметр конфигурации в реальном времени:

text

set <ключ> <значение>

Примеры:

text

set mcc 250

set mnc 20

set gtp-c-port 2123

После изменения параметра программа фиксирует событие в журнале:

text

[MAIN] Установлено mcc = 250

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

Команда restart

Выполняет перезапуск всех рабочих потоков:

text

restart

Процесс перезапуска отражается в журнале:

text

[MAIN] Перезапуск потоков...

[MAIN] vEPC запущен

Команда stop

Останавливает программу:

text

stop

После ввода команды программа завершает работу.

Команда trace start

Активирует трассировку сетевого трафика:

text

trace start [интерфейс]

Параметры:

  • gtp-c — трассировка трафика GTP-C
  • s1ap — трассировка трафика S1AP
  • all — трассировка всех интерфейсов

Примеры:

text

trace start gtp-c

trace start all

При успешном запуске трассировки создается файл в директории traces/:

text

[MAIN] Трассировка GTP-C запущена, файл: traces/gtp-c_20250115_143022.pcap

Команда trace stop

Останавливает трассировку:

text

trace stop [интерфейс]

Примеры:

text

trace stop gtp-c

trace stop

Команда trace status

Отображает статус активных трассировок:

text

trace status

Пример вывода:

text

Активные трассировки:

  GTP-C: файл traces/gtp-c_20250115_143022.pcap, размер 1.2 МБ

  S1AP: файл traces/s1ap_20250115_143025.pcap, размер 0.8 МБ

Команда trace config

Настраивает параметры трассировки:

text

trace config <интерфейс> <параметр> <значение>

Параметры:

  • max-size — максимальный размер файла в МБ
  • max-files — количество файлов при ротации
  • filter-ip — фильтрация по IP-адресу

Примеры:

text

trace config gtp-c max-size 200

trace config gtp-c max-files 10

trace config s1ap filter-ip 192.168.1.100

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

  • ../vmme.conf — конфигурация MME
  • ../vsgsn.conf — конфигурация SGSN

Файлы должны находиться в родительской директории относительно исполняемого файла. При запуске из директории build/ программа ожидает файлы в корневой директории проекта.

Формат файлов конфигурации:

  • Строки, начинающиеся с символа '#', игнорируются (комментарии)
  • Параметры задаются в формате ключ=значение
  • Пробельные символы в начале и конце строк игнорируются
  • Пустые строки игнорируются

Параметры MME (файл vmme.conf):

  • mcc — Mobile Country Code (код страны)
    Пример: mcc=250
  • mnc — Mobile Network Code (код оператора)
    Пример: mnc=20
  • mme-ip — IP-адрес для MME
    Пример: mme-ip=127.0.0.1
  • s1ap-port — порт для S1AP протокола (SCTP)
    Пример: s1ap-port=36412

Параметры SGSN (файл vsgsn.conf):

  • mcc — Mobile Country Code (код страны)
    Пример: mcc=250
  • mnc — Mobile Network Code (код оператора)
    Пример: mnc=20
  • sgsn-ip — IP-адрес для SGSN
    Пример: sgsn-ip=127.0.0.1
  • gtp-c-port — порт для GTP-C протокола (UDP)
    Пример: gtp-c-port=2123

Пример файла vmme.conf:

text

# MME Configuration

mcc=250

mnc=20

mme-ip=192.168.1.10

s1ap-port=36412

Пример файла vsgsn.conf:

text

# SGSN Configuration

mcc=250

mnc=20

sgsn-ip=192.168.1.10

gtp-c-port=2123

Временное изменение:

Для временного изменения параметра без перезапуска программы используйте команду set в консоли управления:

text

set mcc 250

set mnc 20

Изменения применяются немедленно, но после перезапуска программы будут утеряны.

Постоянное изменение:

Для постоянного изменения параметра:

  1. Остановите программу (команда stop)
  2. Отредактируйте соответствующий файл конфигурации
  3. Запустите программу заново

Изменение с перезапуском:

Для применения изменений, требующих перезапуска потоков:

  1. Внесите изменения в конфигурационные файлы
  2. В консоли управления выполните команду restart
  3. Программа перезагрузит конфигурацию и перезапустит потоки

Программа ведет журнал событий в двух формах:

Консольный вывод:

  • Цветовая дифференциация по типам сообщений
  • Немедленное отображение в реальном времени
  • Удобен для оперативного мониторинга

Файл журнала:

  • Расположение: logs/vepc.log
  • Формат: [YYYY-MM-DD HH:MM:SS] [УЗЕЛ] Сообщение
  • Сохраняется между запусками программы
  • Предназначен для анализа и диагностики

Просмотр файла журнала:

bash

tail -f logs/vepc.log  # просмотр в реальном времени

cat logs/vepc.log       # вывод всего файла

less logs/vepc.log      # просмотр с прокруткой

Для диагностики проблем протокольного взаимодействия используйте встроенные средства трассировки.

Запуск трассировки:

text

trace start gtp-c

Сбор трафика:

После запуска трассировки все входящие и исходящие пакеты по указанному протоколу сохраняются в pcap-файл.

Остановка трассировки:

text

trace stop gtp-c

Анализ собранных данных:

Сохраненные файлы находятся в директории traces/:

bash

ls -la traces/

Для анализа используйте Wireshark:

bash

wireshark traces/gtp-c_20250115_143022.pcap

или tcpdump:

bash

tcpdump -r traces/gtp-c_20250115_143022.pcap -vv

Для мониторинга потребления ресурсов используйте стандартные средства операционной системы.

Процессор и память:

bash

top -p $(pgrep vepc)

bash

ps -o pid,%cpu,%mem,cmd -p $(pgrep vepc)

Сетевые порты:

Проверка, что программа слушает ожидаемые порты:

bash

netstat -tulpn | grep vepc

Ожидаемый вывод:

text

udp   0.0.0.0:2123    0.0.0.0:*    PID/vepc

sctp  0.0.0.0:36412   0.0.0.0:*    PID/vepc

Открытые файлы:

bash

lsof -p $(pgrep vepc)

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

  1. Версия программы:

bash

md5sum vepc

  1. Состояние программы (вывод команды status)
  2. Журнал событий:

bash

cp logs/vepc.log vepc.log

  1. Конфигурационные файлы:

bash

cp ../vmme.conf .

cp ../vsgsn.conf .

  1. Состояние контекстов (вывод команды state)
  2. Файлы трассировки (при наличии):

bash

tar -czf traces.tar.gz traces/

  1. Информация об окружении:

bash

uname -a

cat /etc/os-release

dpkg -l | grep libsctp  # для Debian/Ubuntu


Проверка работоспособности:

При входе в систему выполните:

  1. Запустите программу (если не запущена):

bash

cd /путь/к/vepc/build

sudo ./vepc

  1. Проверьте статус:

text

status

  1. Просмотрите последние события:

text

logs

  1. Проверьте наличие активных контекстов:

text

state

Мониторинг ошибок:

Периодически проверяйте файл журнала на наличие сообщений об ошибках:

bash

grep -i error logs/vepc.log

grep -i fail logs/vepc.log

Анализ тенденций:

Оцените динамику количества активных контекстов:

text

state

Сравните с показателями предыдущих периодов.

Проверка дискового пространства:

Убедитесь, что достаточно свободного места для файлов журнала и трассировки:

bash

df -h .

du -sh logs/

du -sh traces/

Очистка старых файлов:

При необходимости удалите старые файлы трассировки:

bash

find traces/ -name "*.pcap" -mtime +7 -delete

Анализ производительности:

Соберите статистику использования ресурсов за месяц:

bash

sa -u | grep vepc

Проверка актуальности версии:

Сверьте текущую версию с последней доступной версией программного обеспечения.

Резервное копирование конфигурации:

Создайте резервную копию конфигурационных файлов:

bash

tar -czf vepc-config-$(date +%Y%m%d).tar.gz ../vmme.conf ../vsgsn.conf

Программа не отвечает на команды:

  1. Попробуйте отправить сигнал завершения:

bash

kill -TERM $(pgrep vepc)

  1. Если не помогает, используйте принудительное завершение:

bash

kill -9 $(pgrep vepc)

  1. Запустите программу заново.

Потеря связи с сетевыми интерфейсами:

  1. Проверьте состояние сетевых интерфейсов:

bash

ip link show

  1. Проверьте правила файервола:

bash

iptables -L

  1. Проверьте, слушает ли программа порты:

bash

netstat -tulpn | grep vepc

Корректировка времени:

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

Для проверки доступности GTP-C порта используйте:

bash

echo -n "test" | nc -u <IP_vepc> 2123

Для SCTP порта используйте специализированные утилиты или библиотеки.

Отправка UDP-сообщения на GTP-C порт:

bash

echo -n "test" | nc -u 127.0.0.1 2123

В журнале программы должно появиться сообщение:

text

[GTP] Получено сообщение длиной 4 байт от 127.0.0.1

Для интеграции с внешними системами мониторинга используйте анализ файла журнала:

bash

tail -f logs/vepc.log | while read line; do

  if echo "$line" | grep -q "ERROR"; then

    # Отправка alert во внешнюю систему

  fi

done

Команда

Описание

Пример

status

Отображение состояния компонентов

status

logs

Вывод журнала событий

logs

state

Отображение контекстов абонентов

state

show

Отображение текущей конфигурации

show

set

Изменение параметра конфигурации

set mcc 250

restart

Перезапуск рабочих потоков

restart

stop

Остановка программы

stop

trace start

Запуск трассировки

trace start gtp-c

trace stop

Остановка трассировки

trace stop gtp-c

trace status

Статус трассировки

trace status

trace config

Настройка трассировки

trace config gtp-c max-size 200


Файл/директория

Назначение

vepc

Исполняемый файл программы

../vmme.conf

Конфигурационный файл MME

../vsgsn.conf

Конфигурационный файл SGSN

logs/vepc.log

Файл журнала событий

traces/

Директория для файлов трассировки

traces/*.pcap

Файлы трассировки в формате pcap

Отдел продаж

+7 (953) 284-42-23

sales@ericssonsoftware.ru

Мы в соц.сетях

Информация

Адрес

242504
Брянская область
Карачевский район, Вишневка
Молодёжная улица, 33

Информация

Отдел продаж

+7 (953) 284-42-23

sales@ericssonsoftware.ru

Адрес

242504
Брянская область,
Карачевский район,
Вишневка, Молодёжная улица, 33