ЄС-11

Цифрова комутаційна система

Науково-виробничий центр
"Автоматизовані мікропроцесорні системи"
ЄДРПОУ: 13807402 тел: +380-32-237-21-36

Користувальницькькі налаштування

Налаштування сайту


extrasoft:tracer2:index

Tracer2

Призначення

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

Можливості

  1. отримання даних зі станції через допоміжні програми AgentRgt та NexusSrv
  2. отримання даних з попередньо збережених файлів
  3. перегляд отриманих даних в декодованому вигляді
  4. перегляд отриманих даних в шістнадцятковому вигляді
  5. збереження прийнятих даних у файл
  6. Обробка великих файлів 100000 і більше пакетів
  7. Пошук пакетів згідно умови користувача
  8. Фільтрація пакетів згідно умови користувача
  9. Статистка згідно умови користувача
  10. Прив'язка абсолютного часу станції до реального при декодуванні пакетів
  11. Кольорове підсвічування в таблиці пакетів згідно умови користувача
  12. Зміна умов підсвічення і часової прив'язки за допомогою файлу налаштувань для окремих вхідних файлів
  13. Перезавантаження декодера в будь-який момент часу

Мінімальні системні вимоги

  1. Windows 2000
  2. Частота процесора 1 ГГц
  3. Об'єм оперативної пам'яті 512 Мб
  4. Жорсткий диск 80 Гб

Архітектура

Опис програми

Вікно програми складається з таких частин:

  1. меню
  2. панель інструментів
  3. список пакетів
  4. багатофункціональне вікно відображення (декодованого пакету, шістнадцяткових даних або вибір профілю відображення)
  5. рядок статусу

Вигляд головного вікна

На панелі інструментів є такі кнопки:

  • Створити новий сеанс трасування
  • Зберегти поточний сеанс трасування
  • Копіювати дані з вікна декодування
  • Автопрокрутка
  • Режим зв'язаних індексів
  • Інформація про програму

Є два режими створення сеансу трасування - з файлу і зі станції. При відкритті файлу трасування слід вказати лише метод декодування пакетів. При отриманні даних зі станції, слід вказати IP-адресу і udp-порт на яких працює програма NexusSrv - транслятор отриманих від AgentRgt даних.

При натисканні правої кнопки миші на списку пакетів з'являється контекстне меню, яке дозволяє експортувати інформацію про трасовані пакети в текстовому і декодованому вигляді.

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

  • № пакету - порядковий номер отриманих даних
  • TimeStamp - часова мітка події - відносний час
  • LinkID - ідентифікатор ланки сигналізації, яка внесла такий запис в базу
  • Flags - прапорці, які визначають подію (T - передача, R - прийом, E - прийом з помилкою контрольної суми)
  • RepeatCnt - кількість повторів однакових пакетів (як правило колапсування використовується для FISU)

Решта полів залежать від протоколу сигналізації.

Вікно відображення можна переключити у режим декодування, шістнадцяткових даних, статистики і вибору профілю відображення за допомогою кнопок внизу.

Налаштування програми для отримання даних зі станції

  1. Включити в роботу програму CommSrv з базою даних, де визначено шлях до процесорів, ланки СКС7 яких будуть трасуватися.
  2. Включити в роботу програму NexusSrv (знаходиться, як правило, в папці, де і програма Tracer). Вікно, яке з'явиться на екрані, згорнути та проконтролювати появу піктограми у системній області (system Tray).
  3. Налаштувати та включити в роботу програму AgentRgt. Для цого внести необхідні зміни в файлах *.ini та AgentRgtPump.cfg. Проконтролювати після запуску програми що модуль AgentRgtPump.cfg під'єднаний. Дані можна знімати як в ручному режимі так і автоматичному, якщо поставити програму на виконання в Резидент.
  4. Включити в роботу програму Tracer.
  5. За допомогою програми Agent встановити на необхідних ланках режим трасування Плати →Сервіс →Керування ланками сигналізації СКС7 →TraceOn та проконтролювати появу повідомлень в вікні програми Tracer.

ПРИМІТКА: Не забудьте після закінчення роботи з програмою виключити режим трасування на ланках →TraceOff.

Пошук і Фільтрація даних

Пошук і фільтрація пакетів здійснюються за допомогою умови пошуку/фільтрації. В результаті декодування пакету створюється набір декодованих параметрів, які можна використовувати в умовах пошуку/фільтрації. Декодовані параметри представлені двома наборами $CHASH та $DHASH. $CHASH представляє список даних, які відображаються в таблиці. $DHASH - набір даних, які не відображаються в таблиці пакетів. Основні параметри, доступні через ці два набори описані в таблиці:

Доступ до комірок таблиці пакетів
Параметр Опис
$CHASH{'TimeStamp'} Часова мітка пакету
$CHASH{'LinkID'} Ідентифікатор ланки сигналізації
$CHASH{'RepeatCnt'} Лічильник повторів сигнальних одиниць
$CHASH{'Flags'} Прапорці R-прийнятий, E-прийнятий з помилкою, T-переданий пакет
$CHASH{'Protocol'} Протокол взаємодії
$CHASH{'BIB'} Зворотній біт індикації
$CHASH{'BSN'} Зворотній порядковий номер
$CHASH{'FIB'} Прямий біт індикації
$CHASH{'FSN'} Прямий порядковий номер
$CHASH{'NET'} Ідентифікатор мережі
$CHASH{'SIF'} Ідентифікатор підсистеми користувача
$CHASH{'DPC'} Пункт призначення (Текстовий)
$CHASH{'OPC'} Пункт відправки (Текстовий)
$CHASH{'SLC'} Код ланки сигналізації
$CHASH{'CIC'} Ідентифікатор каналу
$CHASH{'MT'} Тип повідомлення (Текстовий)
$CHASH{'ExtraPars'} Декодовані дані (Текстовий вигляд)
$CHASH{'CREF'} Мітка з'єднання PRI
$CHASH{'NReceived'} Номер прийнятого пакету PRI
$CHASH{'NSent'} Номер переданого пакету PRI
Доступ до декодованих параметрів пакетів
Параметр Опис
$DHASH{'LI'} Ідентифікатор довжини сигнальної одиниці
$DHASH{'DPC'} Код пункту призначення
$DHASH{'OPC'} Коду пункту відправки
$DHASH{'MT'} Код повідомлення
$DHASH{'CPN.NOA'} Октет з NatureOfAddress CalledParty
$DHASH{'CPN.NPL'} Октет з NumberingPlan CalledParty
$DHASH{'CPN.NUM'} Номер CalledParty
$DHASH{'TMR'} Вимоги до середовища передачі TransmissionMediuRequirement
$DHASH{'NoC'} NatureOfConnection
$DHASH{'FCI'} ForwardCallIndicators
$DHASH{'OFCI'} Optional ForwardCallIndicators
$DHASH{'BCI'} BackwardCallIndicators
$DHASH{'OBCI'} Optional BackwardCallIndicators
$DHASH{'CPC'} CallingPartyCategory
$DHASH{'CV.LOC'} Октет з Location of Cause
$DHASH{'CV.VAL'}[i] Причина відбою з індексом i = 0..N
$DHASH{'RIF'} RedirectionInformation
$DHASH{'SUPERV'} SupervisoryFunction
$DHASH{'RANGE'} Range
$DHASH{'CLPN.NOA'} Октет з NatureOfAddress CallingParty
$DHASH{'CLPN.NPL'} Октет з NumberingPlan CallingParty
$DHASH{'CLPN.NUM'} Номер CallingParty
$DHASH{'RDPN.NOA'} Октет з NatureOfAddress RedirectingParty
$DHASH{'RDPN.NPL'} Октет з NumberingPlan RedirectingParty
$DHASH{'RDPN.NUM'} Номер RedirectingParty
$DHASH{'RPN.NOA'} Октет з NatureOfAddress RedirectionNumber
$DHASH{'RPN.NPL'} Октет з NumberingPlan RedirectionNumber
$DHASH{'RPN.NUM'} Номер RedirectionNumber
$DHASH{'ADI'} AccessDeliveryInformation
$DHASH{'PROPCNT'} PropagationDelayCounter
$DHASH{'DIVINF'} CallDiversionInformation
$DHASH{'ECHOINFO'} EchoInformation
$DHASH{'INRID'} InformationRequestIndicators
$DHASH{'INFID'} InformationIndicators
$DHASH{'COTID'} ContinuityIndicators
$DHASH{'HOPCNT'} HopCounter
$DHASH{'RNR'} RedirectionNumberRestriction
$DHASH{'LPN.NOA'} LocationNumber NatureOfAddress
$DHASH{'LPN.NPL'} LocationNumber NumberingPlan
$DHASH{'LPN.NUM'} Номер LocationNumber
$DHASH{'CCNR'} CCNRPossibleIndicators
$DHASH{'SUSRESID'} Suspend/Resume Indicators
$DHASH{'EVENT'} Even
$DHASH{'GNOT'} GenericNotification
$DHASH{'HISTORY'} CallHistory
$DHASH{'GPN.NQF'} GenericNumber NumberQualifier
$DHASH{'GPN.NOA'} GenericNumber NatureOfAddress
$DHASH{'GPN.NPL'} GenericNumber NumberingPlan
$DHASH{'GPN.NUM'} Номер GenericNumber
$DHASH{'TBLIDX'} Індекс точки аналізу (лише для внутрішнього протоколу)

Основні операції порівняння

Операції порівняння:

Для числових даних ДляСимвольних даних Пояснення
== eq порівняння на рівність
!= ne порівняння на нерівність
> gt порівняння на більше
< lt порівняння на менше
= > ge порівняння на більше або рівно
< = le порівняння на менше або рівно

Логічні операції:

Операція Пояснення
&& and Логічне І
|| or Логічне АБО
xor Логічне СУМУВАННЯ ПО МОДУЛЮ 2
! not Логічне НЕ

Логічні операції:

Операція Пояснення
& Побітове І
| Побітове АБО
^ Побітове СУМУВАННЯ ПО МОДУЛЮ 2
~ Побітове НЕ
>> Зсув вправо
<< Зсув вліво

Крім того для порівняння можна застосовувати регулярні вирази PERL

Приклади запитів для фільтрації:

  • DPC дорівнює 1234
$DHASH{'DPC'} == 1234
  • OPC більше 5000 і менше 5100
($DHASH{'OPC'} > 5000) && ($DHASH{'OPC'} < 5100)
  • Всі пакети підсистеми ISUP
$CHASH{'SIF'} == 5
  • Сигнальні одиниці, прийняті з помилкою
$CHASH{'Flags'} eq 'E'
  • Сигнальні одиниці, які містять поле “Причина відбою”
$DHASH{'CV.VAL'}
  • Сигнальні одиниці LSSU
($DHASH{'LI'} > 0) && {$DHASH{'LI'} < 3)
  • Сигнальні одиниці, які містять GenericNumber
$DHASH{'GPN.NUM'}
  • Сигнальні одиниці для 30 каналу
$CHASH{'CIC'} == 30
  • Сигнальні одиниці з CallingParty, що починається на 32123
$DHASH{'СLPN.NUM'} =~ /^32123/

Режим зв'язаних індексів

Режим зв'язаних індексів дозволяє знайшовши потрібну сигнальну одиницю у фільтрованих даних швидко знайти її в нефільтрованих даних і навпаки. Для використання цієї функції слід ввімкнути режим зв'язаних індексів, клацнути лівою кнопкою миші на потрібну сигнальну одиницю, а потім на документ, в якому необхідно знайти цю ж сигнальну одиницю.

Цей режим працює для документів, які мають один і той самий файл даних.

Якщо потрібної сигнальної одинці в документі немає, то курсор встановлюється якомога ближче до того місця, де вона повинна була бути.

Статистика

Статистика обраховується згідно умови фільтрації одночасно з виконанням самої фільтрації даних. За результатами виконання умови фільтрації будується таблиця всіх можливих значень і підраховується кількість кожного зі значень. Наприклад для умови користувача (Виділення всіх пакетів, в яких є поле причина) можна визначити розподіл причин: Умова: {{ :extrasoft:tracer2:tracercondition.png |Умова виділення причини} Статистика такої умови: Розподіл причин

Підсвічування користувача

Підсвічування здійснюється згідно умови користувача, яка може бути збережена у файлі *.cfg, назва якого повинна співпадати з назвою основного файлу даних. Умова будується в масиві %ColorMap у вигляді:

%ColorMap = (
             #  Умова                  textcolor background - у форматі 0xRRGGBB
	     q($CHASH{'MT'} eq 'IAM'),q(0x000000,0xFFAAAA),
	     q($CHASH{'MT'} eq 'REL'),q(0x000000,0xAAFFAA),
	     q($CHASH{'MT'} eq 'RLC'),q(0x000000,0xAAAAFF),
	     q($CHASH{'MT'} eq 'ACM'),q(0xFFFFFF,0x444466),
	     q($CHASH{'MT'} eq 'COT'),q(0xFFFFFF,0x554466),
	     q($CHASH{'MT'} eq 'INR'),q(0xFFFFFF,0x334466),
	     q($CHASH{'MT'} eq 'CPG'),q(0xFFFFFF,0x224466),
	    );

Користувацька часова прив'язка

Користувацька часова прив'язка здійснюється згідно правил користувача, які можуть бути збережені у файлі *.cfg, назва якого повинна співпадати з назвою основного файлу даних. Прив'язки вказуються в масиві %TimeStamp0 у такому вигляді:

               #proc  real_time              station_time
%TimeStamp0 = (q(A),q(2009.12.11 00:00:00 == 0.000),
	       q(C),q(2009.12.15 14:29:40 == 0.000),
	       q(D),q(2009.12.11 00:00:00 == 0.000),
       q(DECODE_ID),q(2009.12.24 11:43:00 == 0.000),
	       );

Швидкі клавіші

  • Ctrl+F - пошук пакету з діалогом вибору умови пошуку
  • F3 - повторний пошук з попередньою умовою
  • Shift+F3 - повторний пошук в зворотньому напрямку з попередньою умовою
  • Ctrl+Shift+F - Фільтрація даних
extrasoft/tracer2/index.txt · В останнє змінено: 2015/04/17 15:25 (зовнішнє редагування)