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 |
Алиас сетевого интерфейса сервера, на котором будет происходить внутреннее взаимодействие ролей между собой. |
|
|
empty |
Дополнительные опции роли. Содержит json объект или список. |
|
|
empty |
Флаг активности роли. При установке в false роль не участвует в валидации и не запускается. |
|
|
required |
Идентификатор роли. |
|
|
required |
Признак выделения роли в отдельную ноду. |
|
|
|
Локальный порт TCP MEGACO. |
|
|
|
Группа mgc, к которой принадлежит текущий mg. |
|
|
empty |
Aлиасы интерфейсов. Формат записи алиаса для интерфейса:
В приложении редактора конфигураций задаются путем выбора интерфейсов, алиасы подставляются автоматически. |
|
|
empty |
Список используемых кодеков. Ограничивает использование кодеков, выдаваемых вовне. |
|
|
empty |
Алиас каталога на сервере для хранения сертификатов (файлы server.crt и server.key). |
|
|
empty |
Пароль для расшифровки файла секретного ключа сертификата. |
|
|
|
Признак сохранения записей разговоров. |
|
|
|
Алиас каталога на сервере для размещения записей разговоров. |
|
|
empty |
Диапазон RTP портов, которые будет использовать роль. Формат записи диапозона портов:
где AliasName – имя интерфейса, PortFrom – начальное значение порта, PortCnt – количество портов. |
|
|
empty |
Алиас каталога на сервере для размещения лог-файлов. |
|
|
[ |
Уровень логирования. Возможные значения:
Не рекомендуется к постоянному использованию в силу больших требований к производительности жестких дисков. |
|
|
|
Максимальный суммарный размер лог-файлов за один день, в МБ. При достижении лимита запись логов останавливается в ожидании удаления, в том числе автоматического по времени. |
|
|
|
Максимальный размер одного лог-файла, в МБ. |
|
|
|
Выключатель логирования статистики на основе пакетов RTCP. |
|
|
|
Интервал сброса данных из кэша в исходный файл записи разговора, в миллисекундах. |
Пример конфигурации
Управление конфигурацией производится в приложении, доступном для администраторов мастер-домена. Приложение скрывает полное содержание конфигурации, однако тем не менее оно доступно через API.
Конфигурация содержит раздел для описания всех экземпляров всех ролей. Параметры определяются для каждого конкретного экземпляра роли.
{
"name": "bgmg1",
"roletype": "bgmg",
"iface": "eth0",
"roleid": 11301,
"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"
]
}