Border Gate’s Media Gate (bgmg)
Описание
Медиа-шлюз, замыкающий медиа потоки на внешних интерфейсах.
Одной стороной всегда выступает порт функциональной роли mg управляемый функциональной ролью b2b, а другой стороной – порт абонентского устройства.
Работает на одном сервере с функциональной ролью sg и/или esg и под их управлением.
Может быть зарезервирована на одном сервере в режиме Active-Active с непересекающимися настройками нескольких экземпляров.
Организует запуск и мониторинг процесса приложения rtx_mg3 в операционной системе, фактически осуществляющего обработку медиа-трафика.
Код |
|
Режим работы |
|
Режим резервирования |
|
Типы сайтов |
|
Слой |
|
Размещение |
|
Сохранение и восстановление состояния при перезагрузке |
|
Приложение |
|
Управляемое приложение |
|
Ограничения
-
Должна существовать на всех серверах с несколькими интерфейсами с доступом к разным подсетям, где присутствуют функциональные роли sg и esg.
-
Настройки портов не должны пересекаться с другими функциональными ролями на сервере.
-
Активное использование функциональной роли понижает потенциальную пропускную способность трафика сигнализации SIP через сервер.
-
Пропускная способность сетевых интерфейсов, обслуживающих медиа-трафик, и подключений к сетям должна сочетаться с возможной пиковой нагрузкой и используемыми кодеками. Так, 200 телефонных разговоров в кодеке PCMA (G.711 a-law) требуют пропускной способности не менее 20 Mbit/s в каждую сторону в самой узкой точке. При обслуживании большего количества разговоров и распределении их по разным серверам с медиа-шлюзами необходимо обеспечить соответствующую пропускную способность на сетевых устройствах, агрегирующих трафик.
Параметры
Имя | Тип | Умолчание | Описание |
---|---|---|---|
|
|
required |
Имя. Может состоять из латинских букв и цифр, должно начинаться с буквы. |
|
|
required |
Тип функциональной роли. Возможные значения: |
|
|
required |
Алиас сетевого интерфейса сервера, на котором будет происходить внутреннее взаимодействие функциональных ролей между собой. |
|
|
required |
Идентификатор функциональной роли. |
|
|
required |
Признак выделения функциональной роли в отдельную ноду. |
|
|
|
Локальный порт TCP MEGACO. |
|
|
|
Группа mgc, к которой принадлежит текущий mg. |
|
|
required |
Aлиасы интерфейсов. Формат записи алиаса для интерфейса:
В приложении редактора конфигураций задаются путем выбора интерфейсов, алиасы подставляются автоматически. |
|
|
Список используемых кодеков. Ограничивает использование кодеков, выдаваемых вовне. |
|
|
|
empty |
Алиас каталога на сервере для хранения сертификатов (файлы server.crt и server.key). |
|
|
empty |
Пароль для расшифровки файла секретного ключа сертификата. |
|
|
|
Признак сохранения записей разговоров. |
|
|
|
Алиас каталога на сервере для размещения записей разговоров. |
|
|
required |
Диапазон RTP портов, которые будет использовать функциональная роль. Формат записи диапозона портов:
где AliasName – имя интерфейса, PortFrom – начальное значение порта, PortCnt – количество портов. |
|
|
empty |
Алиас каталога на сервере для размещения лог-файлов. |
|
|
[ |
Уровень логирования. Возможные значения:
Не рекомендуется к постоянному использованию в силу больших требований к производительности жестких дисков. |
|
|
|
Максимальный суммарный размер лог-файлов за один день, в МБ. При достижении лимита запись логов останавливается в ожидании удаления, в том числе автоматического по времени. |
|
|
|
Максимальный размер одного лог-файла, в МБ. |
|
|
|
Выключатель логирования статистики на основе пакетов RTCP. |
|
|
|
Интервал сброса данных из кэша в исходный файл записи разговора, в миллисекундах. |
Пример конфигурации
Управление конфигурацией производится в приложении, доступном для администраторов мастер-домена. Приложение скрывает полное содержание конфигурации, однако тем не менее оно доступно через API.
Конфигурация содержит раздел для описания всех экземпляров всех функциональных ролей. Параметры определяются для каждого конкретного экземпляра функциональной роли.
{
"name": "bgmg1",
"roletype": "bgmg",
"iface": "eth0",
"roleid": 11111,
"separate": true,
"port": 2984,
"mgcgroup": 3,
"aliases": [
{
"key": "tgw1",
"value": "eth0"
}
],
"termportranges": [
{
"key": "tgw1",
"value": "30000:1000"
}
],
"codecs": ["PCMA", "PCMU"],
"logtrace": [
"error",
"warning",
"call",
"flag3",
"proto",
"media-flow",
"rtp-flow",
"rtp"
]
}