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

ECSS-10 должен корректно выбирать медиасервер. Под корректностью подразумевается уровень его загруженности (равномерное использование доступных ресурсов), а так же учет его территориального расположения (распределение с учетом географии пользователей). Уровень загрузки ресурсов вычисляется на основании данных о параметрах медиасервера (сообщение уровня загрузки CPU в каждом сообщении от MSR к SIP-серверу).

Территориальную принадлежность ECSS-10 определяет самостоятельно путем тегирования аккаунтов UA медиасервера. Служебным UA для медиасервера ставится в соответствие имя сайта (site) - географическая зона, которую может обслуживать данный контакт медиасервера. Пользовательским окончаниям и транкам так же задается географическая областью путем установки параметра site. Для проключения медиа-потока ECSS-10 использует медиасервер с сайтом минимально удаленным от целевого.
Сетка взаимопритяжений/дистанций (матрица связности) сайтов задается в конфигурации ECSS-10.

  1. Выбор медиаресурса
    1. Выбор осуществляется среди зарегистрированных и активированных медиаресурсов.
    2. При выборе подходящего медиаресурса учитывается Zone(NID) и site.
    3. Сначала список доступных медиаресурсов фильтруется на основании параметра Zone(NID), затем выбирается ресурс с максимальным тяготением к site ресурса (минимальное "расстояние").
    4. При выборе медиаресурса для терминирующей стороны предпочтение отдается выделению точки "приземления" медиатрафика на том же медиасервере, который использовался для "приземления" медиатрафика вызывающей стороны. Если использование медиасервера вызывающей стороны невозможно (в силу отличных Zone(NID) вызывающего или вызываемого абонента), то медиаресурс терминирующей стороны выбирается по тому же алгоритму, что и для вызывающей стороны (с учетом Zone(NID) и site терминирующей стороны). Кроме того учитывается возможность проброса медиабриджа между медиасерверами вызывающей и вызываемой стороны.

Матрица связности

Матрица связности показывает расстояние между сайтами в условных единицах. Чем меньше расстояние, тем сайты ближе. Близость сайтов задает предпочтения по использованию медиаресурсов сайта для обслуживания вызова.

Пример
Вызов инициируется абонентом site1. Для обслуживания вызова система по матрице связности ищет медиаресурсы с минимальным расстоянием от сайта инициатора вызова.
Значения показывающие "расстояние" между сайтами являются условными и фактически задают стоимость использования медиаресурса выбранного сайта для обслуживания вызова от абонента.
Расстояние до медиаресурсов сайта, к которому относится абонент по умолчанию, принимается равным 0, но может быть изменено. Это сделано для того, чтобы можно было на время вывести MSR из работы, например, для обновления. 
Если установлено расстояние между сайтами 0 - это означает, что медиаресурсы сайтов равноправны.
Если абонентам одного сайта необходимо запретить использовать медиаресурса другого сайта, то необходимо установить расстояние между этими сайтами равное бесконечности - infinity.

Коэффициент производительности

Для каждого медиасервера в системе можно установить  нужный коэффициент производительности. При распределении медиатрафика этот коэффициент будет учитываться и нагрузка между разными медиасерверами будет делиться пропорционально данным значениям.  Коэффициент(любое положительное целое или дробное число) устанавливается командой system/media/msr/set.

Примеры:

Установить для msr_1 коэффициент производительности 2

system/media/msr/set msr_1 performance_coefficient 2
 msr   msr_1
 set   performance_coefficient
 from  1.0
 to    2

[exec at: 21.07.2019 21:37:08, exec time: 102ms, nodes: core1@ecss1]

Просмотр:

admin@mycelium1@ecss1:/$ system/media/msr/list                                            
 Auto declared media server list specific:
┌───────┬─────────────┐
│ Name  │ Performance │
│       │ coefficient │
├───────┼─────────────┤
│ msr_1 │         2.0 │
│ msr_2 │         1.0 │
└───────┴─────────────┘

[exec at: 21.07.2019 21:37:12, exec time: 11ms, nodes: core1@ecss1]

Также данные значения можно увидеть при выводе списка медиаресурсов:

admin@mycelium1@ecss1:/$ system/media/resource/list active       
  Active media resource selected list specific:
┌─────────────┬───────┬────────────┬───────────┬──────┬────────┬───────────┬────────────┬───────────────────┬─────────┬──────────────┬────────┬─────────┬───────┬───────────────┬────────────┬─────────┐
│    Node     │  MSR  │    MSR     │    MSR    │ MSR  │ Cc-id  │ Cc-status │ Cc-uptime  │    Cc-address     │  Iface  │    Iface     │ Active │  Zone   │ Site  │    Contact    │   Status   │ Expired │
│             │       │  version   │ perf coef │ load │        │           │            │                   │  name   │     addr     │        │         │       │               │            │         │
├─────────────┼───────┼────────────┼───────────┼──────┼────────┼───────────┼────────────┼───────────────────┼─────────┼──────────────┼────────┼─────────┼───────┼───────────────┼────────────┼─────────┤
│ core1@ecss1 │ msr_1 │ 3.11.4.23  │       2.0 │    0 │ 8e0e08 │ connected │ 4 07:46:54 │ 10.22.131.91:5700 │ bond1.2 │ 10.22.131.91 │ true   │ default │ local │ bond1.2@msr_1 │ registered │      58 │
│             │ msr_2 │ 3.11.4.23  │       1.0 │    0 │ c5b9d8 │ connected │ 4 07:41:32 │ 10.22.131.92:5700 │ bond1.2 │ 10.22.131.92 │ true   │ default │ local │ bond1.2@msr_2 │ registered │      57 │
└─────────────┴───────┴────────────┴───────────┴──────┴────────┴───────────┴────────────┴───────────────────┴─────────┴──────────────┴────────┴─────────┴───────┴───────────────┴────────────┴─────────┘

[exec at: 21.07.2019 23:14:22, exec time: 8ms, nodes: core1@ecss1]

Уровень загрузки медиасервера

Механизм информирования ядра о степени загруженности MSR реализован через подписки. Команды по управлению такими подписками приведены справочнике команд CLI - /system/media/msr/subscription/.

  • Нет меток