Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

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

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

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

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

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

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

Маршрутизатор является местом, где производится анализ номера и классификация характера вызова (местный, междугородный и т.п.). Именно здесь осуществляется анализ цифр номера, определяются способы обработки вызова (соединение с локальным абонентом или выход на другую АТС), здесь же можно классифицировать вызов.

Для классификации определения типа номера в ISUP используется такое поле как nai - Nature of Address Indicator, которое показывает как интерпретировать цифры номера.
В ISUP предусмотрены типы:

  • unknown
  • subscriberNumber
  • nationalNumber
  • internationNumber

В то же время для операторов связи для введения ограничений, а также для СОРМ требуется различать такие типы как зоновая связь, вызов экстренных служб, а это невозможно при использовании NAI.
Поэтому в нашей системе параллельно с nai был введен параметр ni - Number Indicator (признак номера), который существует только в рамках нашего софтсвича, на другие станции не передается и может принимать значения:

  • emergency
  • private
  • local
  • zone
  • intercity
  • international

Признак номера ni является параметром номера вызывающего (CGPN) и вызываемого (CDPN) абонента.
Для вызывающего абонента его значение в CGPN берется из абонентских данных (alias info) и может быть изменено в процессе маршрутизации (при выходе на другие станции при префиксировании).
Для вызываемого абонента его значение при начале маршрутизации не определено (undefined) и полностью определяется правилами маршрутизации.

Задавая в настройках маршрутизации правила по изменению признака номера для CDPN и CGPN, определяется характер (тип) вызова.

Типы доступа, режимы обслуживания и барринги

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

  1. Долговременные ограничения, которые вводятся при подключении абонента и прописываются в договоре с абонентом, называются типом доступа (access_type);
  2. Временные ограничения, связанные с неоплатой абонентом счетов, называются режимом обслуживания (regime);
  3. Ограничения, которые задает себе сам абонент, называются баррингами (barring) по аналогии с сотовыми сетями.

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

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

Рассмотрим пример определения конкретного режима обслуживания абонента (regime), для которого открыты все виды связи: (определение типов доступа и баррингов производится аналогично).Описание конкретного режима обслуживания можно представить как таблицу. Каждому режиму присваивается его идентификатор (название), которому соответствует набор правил ограничения типов связи по входу и выходу.
Например режим "normal" можно описать в виде:

+-----------------------------------------------------------------------------------------------+
|тип вызова     | направление вызова | значение     | Описание                                  |
|               | in - входящая      | true  - Вкл  |                                           |
|               | out - исходящая    | false - Выкл |                                           |
|-----------------------------------------------------------------------------------------------|
| emergency     | in                 | true         | Входящий с экстренных служб               |
|               | out                | true         | Исходящий на экстренные службы            |
|-----------------------------------------------------------------------------------------------|
| private       | in                 | true         | Входящий с абонентов своей АТС            |
|               | out                | true         | Исходящий на абонентов своей АТС          |
|-----------------------------------------------------------------------------------------------|
| local         | in                 | true         | Входящий с абонентов местной сети         |
|               | out                | true         | Исходящий на абонентов местной сети       |
|-----------------------------------------------------------------------------------------------|
| zone          | in                 | true         | Входящий с абонентов зоновой сети         |
|               | out                | true         | Исходящий на абонентов зоновой сети       |
|-----------------------------------------------------------------------------------------------|
| intercity     | in                 | true         | Входящий с абонентов междугородной сети   |
|               | out                | true         | Исходящий на абонентов междугородной сети |
|-----------------------------------------------------------------------------------------------|
| international | in                 | true         | Входящий с абонентов международной сети   |
|               | out                | true         | Исходящий на абонентов международной сети |
+-----------------------------------------------------------------------------------------------+

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

+-----------------------------------------------------------------------------------------------+
|тип вызова     | направление вызова | значение     | Описание                                  |
|               | in - входящая      | true  - Вкл  |                                           |
|               | out - исходящая    | false - Выкл |                                           |
|-----------------------------------------------------------------------------------------------|
| emergency     | in                 | true         | Входящий с экстренных служб               |
|               | out                | true         | Исходящий на экстренные службы            |
|-----------------------------------------------------------------------------------------------|
| private       | in                 | false        | Входящий с абонентов своей АТС            |
|               | out                | false        | Исходящий на абонентов своей АТС          |
|-----------------------------------------------------------------------------------------------|
| local         | in                 | false        | Входящий с абонентов местной сети         |
|               | out                | false        | Исходящий на абонентов местной сети       |
|-----------------------------------------------------------------------------------------------|
| zone          | in                 | false        | Входящий с абонентов зоновой сети         |
|               | out                | false        | Исходящий на абонентов зоновой сети       |
|-----------------------------------------------------------------------------------------------|
| intercity     | in                 | false        | Входящий с абонентов междугородной сети   |
|               | out                | false        | Исходящий на абонентов междугородной сети |
|-----------------------------------------------------------------------------------------------|
| international | in                 | false        | Входящий с абонентов международной сети   |
|               | out                | false        | Исходящий на абонентов международной сети |
+-----------------------------------------------------------------------------------------------+

Принцип работы ограничений:

Исходящий вызов

Абонент А набирает номер Б. Информация об абоненте А, его номер и набранный номер Б поступает в маршрутизатор. Маршрутизатор осуществляет поиск правила. Когда правило обнаружено, производятся модификации, в частности определяется ni для номера Б, по умолчанию установлено значение «undefined». Определяется результат маршрутизации: локальный вызов или выход на другую АТС (определяется пучек СЛ). После чего запускается механизм проверки ограничений. В наборе параметров абонента А могут присутствовать параметры «access_type», «regime» и «barring». По умолчанию, если параметр не определен, считается, что ограничений нет. Если параметр задан (установлен определенный идентификатор), то считываются определенные параметры доступа для выбранного идентификатора. Далее по параметру ni из номера абонента Б проверяется, какое значение стоит в поле тип вызова (ni) абонента Б и направление вызова (out). Если стоит значение «true», то вызов разрешается и возвращаются результаты маршрутизации, если установлено значение «false», то возвращается ошибка с информацией о том, что для вызова введены ограничения.

Входящий вызов

Работает аналогично. В систему поступает вызов от абонента с номером А на абонента с номером Б. Система считывает абонентские параметры по номеру А, если такие доступны.
На основании указанных параметров маршрутизатор осуществляет поиск правила.
При срабатывании правила могут быть выполнены модификации параметров номера А и/или Б. В частности могут быть определены ni для номера А. Маршрутизатор производит анализ номера А, классифицируя тип вызова (с какой сети пришел вызов, также это можно делать на базе назначения параметра ni для всех вызовов с определенного интерфейса, но тут могут быть ограничения). В результате маршрутизации, если вызов производится на абонента софтсвича, то будет найдено правило, по которому будет определено, что абонента Б является локальным абонентом. В результате маршрутизации система найдет интерфейс абонента Б и абонентские параметры абонента Б.
В наборе параметров абонента Б могут присутствовать параметры «access_type», «regime» и «barring». По умолчанию, если параметр не определен, считается, что ограничений нет.
Если параметр задан (установлен определенный идентификатор), то считываются определенные параметры доступа для выбранного идентификатора.
Далее по параметру ni из номера абонента А и проверяется, какое значение стоит в поле тип вызова (ni) абонента А, направление вызова (in). Если стоит значение «true», то вызов разрешается и возвращаются результаты маршрутизации, если установлено значение «false», то возвращается ошибка с информацией о том, что для вызова введены ограничения.
Механизм отработки баррингов аналогичен типам доступа и режиму обслуживания, но задается в другом виде. Основное отличие - количество вариаций ограничений, которые может задать пользователь меньше, чем может сделать оператор.

Категории

Категории абонентов были введены еще в период аналоговых систем сигнализации типа 2ВСК и перешли в ОКС7. Изначально категории использовались для большей гибкости начисления оплаты за разговор.

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

Группы доступа (access_group)

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

Пример: АТС является транзитным коммутатором, который осуществляет коммутацию вызовов между транками, выходящими на сети трех операторов: A, B и C.

Задача дать возможность устанавливать соединения в следующих направлениях:

B->А, C->А, А->B, А->C.

Решать такую задачу можно разными способами, например, на уровне маршрутизации, логически разнеся транки каждого оператора в независимые контексты и прописав независимо для них маршрутизацию. Но группы доступа и матрица доступа дает возможность решения этой задачи по другому, делая одну общую маршрутизацию. Для этого объявляются три группы доступа (access_group). Создается три независимых сущности. Транки идущие от/к каждому из операторов прописываются в соответствующих группах (domain/alias/set-for-iface trunk access_group имя_группы).

Далее создается матрица доступа следующего вида:

+-----------------------------------------+
|            | rostelecom | mts | beeline |
|-----------------------------------------|
| rostelecom |      *     |  *  |    *    |
| mts        |      *     |  *  |         |
| beeline    |      *     |     |    *    |
+-----------------------------------------+

Эта матрица задает требуемые правила выхода абонентов одних групп на другие (символ «*» - выход разрешен).

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

<calling have_access_to="rostelecom"/>

Условие такого рода приведет к тому, что правило пройдет проверку тогда и только тогда, когда по матрице доступа будет разрешено выходить абонентам А с группой доступа Х, а абонентам Б с группой доступа Y.

Под абонентами А с группой доступа X подразумеваются вызовы, для которых в абонентских параметрах вызывающего абонента присутствует параметр «access_group», в частности это могут быть вызовы с какого-то транка, которому соответствует определенный интерфейс в системе и для которого объявлены абонентские параметры в профиле алиаса уровня интерфейса, а именно параметр «access_group» (эти параметры из профиля автоматически наследуются на вызов). Это же замечание справедливо для стороны абонента Б.

  • Нет меток