Конфигурация.
В данном разделе задаются индивидуальные настройки для каждого направления, работающего по протоколу MGCP.
Протокол MGCP (Media Gateway Control Protocol) – протокол сигнализации, используемый в IP-телефонии. Помимо базовых задач управления вызовом, таких как открытие и завершение сеанса, обеспечивает функциональность протокола QSIG, обычно используемого для PRI интерфейсов.
MGCP основан на принципе декомпозиции, согласно которому шлюз разбивается на отдельные функциональные блоки:
- транспортный шлюз - Media Gateway, который выполняет функции преобразования речевой информации, в вид, пригодный для передачи по сетям с маршрутизацией пакетов IP: кодирование и упаковку речевой информации в пакеты RTP/UDP/IP, а также обратное преобразование;
- устройство управления - Call Agent, выполняющее функции управления шлюзом;
- шлюз сигнализации - Signaling Gateway, который обеспечивает доставку сигнальной информации, поступающей к устройству управления шлюзом и перенос сигнальной информации в обратном направлении.
Таблица. Команды протокола MGCP.
Команда | Направление передачи | Назначение |
EndpointConfiguration (Конфигурация порта) | СА -> MG | Call Agent инструктирует шлюз, каким образом ему нужно обрабатывать получаемые речевые сигналы |
CreateConnection (Создать соединение) | СА -> MG | Call Agent дает указание шлюзу создать соединение |
ModifyConnection (Модифицировать соединение) | СА -> MG | Call Agent дает указание шлюзу изменить параметры существующего соединения |
DeleteConnection (Завершить соединение) | СА -> MG, MG -> СА | Call Agent и шлюзы завершают соединение |
NotificationRequest (Запрос уведомления) | СА -> MG | Call Agent инструктирует шлюз, какие события необходимо обнаруживать. |
Notify (Уведомить) | MG -> СА | Шлюз информирует Call Agent о том, что произошло событие из числа тех, которые были специфицированы в команде NotificationRequest |
AuditEndpoint (Проверить порт) | СА -> MG | Call Agent запрашивает информацию о каком-либо порте шлюза |
AuditConnection (Проверить соединение) | MGC -> MG | Call Agent запрашивает параметры соединения |
ReStartlnProgress (Идёт рестарт) | MG -> MGC | Шлюз информирует Call Agent о том, что один или несколько портов выводятся из рабочего состояния или возвращаются в рабочее состояние |
Таблица. Параметры команд протокола MGCP.
Название параметра | Код | Описание и значение параметра |
ResponseAck (Подтверждение транзакции) | К | Подтверждает завершение одной или нескольких транзакций. Например, параметр К: 6234-6255, 6257, 19030-19044 подтверждает завершение транзакций, имеющих идентификаторы с 6234 по 6255, 6257 и с 19030 по 19044. |
Bearerlnformation (Сведения о виде информации) | В | Служит для доставки информации о законе кодирования речевой информации А или m |
ReasonCode (Код причины) | Определены следующие коды причины; 000 - номинальное состояние порта, передается только в ответе на запрос о состоянии порта 900 - неисправность порта 901 - порт выведен из обслуживания 902 - отказ на физическом уровне (например, потеря синхронизации) | |
CalllD (Идентификатор сеанса связи) | С | Идентифицирует сеанс связи, в котором может использоваться одно или несколько соединений. Идентификатор кодируется шестнадцатеричной последовательностью символов длиной не более 32 символом. |
ConnectionID (Идентификатор подключения) | 1 | Идентифицирует подключение данного порта к одному соединению, так как один порт может быть одновременно подключен к нескольким соединениям |
Notified Entity (Уведомляемый объект) | N | Идентификатор объекта, к которому следует передавать уведомления об обнаруженных событиях. Если данный параметр опущен, порт передает эту информацию к объекту, от которого была получена команда. Идентификатор объекта кодируется так же, как кодируются адреса электронной почты согласно RFC 821, например, MGC@ca.anynet.com:5625 или Joe@[128.23.0.4]. При использовании IP-адреса, он должен быть заключен в квадратные скобки. |
Requestldentifier (Идентификатор запроса) | Х | Согласует требование уведомить о событии, полученное от Call Agent, с уведомлением, передаваемым шлюзом в команде Notify. |
LocalConnection Options (Параметры подключения порта к соединению) | L | Данные об алгоритме кодирования информации, размере речевых пакетов в мс, используемой полосе пропускания в Кбит/с, типе обслуживания, использовании эхокомпенсации и другие сведения. Передается от Call Agent к шлюзу, обычно в команде CRCX. |
ConnectionMode (Режим соединения) | М | Определены следующие режимы соединения: передача, прием, прием/передача, конференция, передача данных, отсутствие активности, петля, тест и другие режимы. Значение параметру присваивает Call Agent. |
RequestedEvents (Запрашиваемые события) | R | Список событий, о которых следует оповестить Call Agent, и действия шлюза при обнаружении события. Определены следующие действия: оповестить Call Agent о событии немедленно; ожидать дальнейших событий; если событием является прием сигнала DTMF, то накапливать цифры в соответствии с требованиями параметра DigitMap; в определенных ситуациях передавать в канал акустические или вызывные сигналы; обработать инкапсулированную команду Endpoint Configuration, игнорировать событие и др. |
SignalRequests (Требование передать сигнал) | S | Специфицируется сигнал, который должен быть передан абоненту, например, акустический сигнал "Ответ станции". |
DigitMap (План нумерации) | D | Специфицирует правила обработки сигналов DTMF. При накоплении количества цифр, указанного в данном параметре, шлюз должен передать их устройству управления. |
ObservedEvents (Обнаруженные события) | 0 | Список обнаруженных событий. |
ConnectionParameters (Параметры соединения) | Р | Статистические данные о соединении, передаваемые шлюзом после его завершения. |
SpecifiedEndPointID (Идентификатор порта) | Z | Идентификатор порта в формате RFC821, например, EndPoint@hub1 .anynet.com:5625, |
Requestedlnfo (Запрашиваемая информация) | F | Описывает информацию, которую Call Agent запрашивает у шлюза, например, цифры номера вызываемого абонента, набранные вызывающим абонентом. |
QuarantineHandling (Карантинная обработка) | Q | Определяет правила обработки событий, которые были обнаружены до получения данной команды в период так называемого карантина (quarantine period), и о которых Call Agent еще не был оповещен. |
DetectEvents (Выявляемые события) | Т | Перечень событий, которые порт должен отслеживать, а при их обнаружении - извещать об этом Call Agent. |
EventStates (Состояния, обусловленные событиями) | ES | Перечень состояний порта, обусловленных, например, тем, что абонент снял или положил трубку; информация об этих состояниях должна передаваться к Call Agent в ответ на команду AuditEndpoint. |
RestartMethod (Метод рестарта) | RM | Способ индикации шлюзом вывода порта из обслуживания или ввода его в обслуживание. Поддерживаются несколько вариантов рестарта: "graceful", "forced", "restart", "disconnected" or "cancel-graceful". |
RestartDelay (Задержка рестарта) | RD | Определяет время в секундах, после которого производится производится порта. Если этот параметр отсутствует, задержка рестарта равна нулю. При получении от Call Agent требования о принудительном рестарте порта команда выполняется незамедлительно. |
Capabilities (Функциональные возможности порта) | А | Информацию о функциональных возможностях порта запрашивает Call Agent при помощи команды AuditEndpoint. Эти возможности порта включают в себя: поддерживаемые алгоритмы кодирования, период пакетизации, полосу пропускания, эхокомпенсацию, подавление пауз речи, режимы соединения, тип обслуживания, совокупность событий и др. |
Таблица. Коды ответов на команды протокола MGCP.
Код | Значение кода |
100 | Полученная команда в данный момент обрабатывается, сообщение о выполнении команды будет передано позже |
200 | Полученная команда выполнена |
250 | Соединение разрушено |
400 | Транзакция не может быть выполнена из-за временной ошибки |
401 | Трубка телефона уже снята |
402 | Трубка телефона уже повешена |
403 | Команда не может быть выполнена из-за отсутствия в данный момент необходимых ресурсов |
404 | В настоящий момент отсутствует необходимая полоса пропускания |
500 | Команда не может быть выполнена, потому что порт неизвестен |
501 | Команда не может быть выполнена, потому что порт не готов к ее выполнению |
502 | Команда не может быть выполнена, потому что порт не имеет необходимой полосы пропускания |
510 | Команда не может быть выполнена из-за ошибки в протоколе |
511 | Команда не может быть выполнена, так как в ней содержится нераспознанное расширение |
512 | Команда не может быть выполнена, потому что шлюз не имеет средств детектирования одного из запрашиваемых сигналов |
513 | Команда не может быть выполнена, потому что шлюз не имеет средств генерирования одного из запрашиваемых сигналов |
514 | Команда не может быть выполнена, потому что шлюз не может передать необходимое речевое уведомление или подсказку |
515 | Команда имеет некорректный идентификатор соединения, например, идентификатор уже завершенного соединения |
516 | Команда имеет некорректный идентификатор сеанса связи |
517 | Неподдерживаемый или некорректный режим |
518 | Неподдерживаемая или неизвестная совокупность сигналов или событий |
519 | Порт не имеет сведений о плане нумерации |
520 | Команда не может быть выполнена, потому что идет рестарт порта |
521 | Порт передан другому Call Agent |
522 | Нет такого события или сигнала |
523 | Неизвестное действие или неразрешённая комбинация действий |
524 | Внутреннее несоответствие в параметре LocalConnectionOptions |
525 | Неизвестное расширение параметра LocalConnectionOptions |
526 | Недостаточная полоса пропускания |
527 | Отсутствует параметр LocalConnectionOptions |
528 | Несовместимая версия протокола |
529 | Отказ в аппаратном обеспечении |
530 | Ошибка в сигнальном протоколе CAS |
531 | Отказ группы каналов или трактов |
Описание сеанса связи вводится в состав некоторых команд и ответов протокола MGCP и включает в себя IP-адрес, UDP/RTP порт, вид информации, алгоритм кодирования информации, размер речевых пакетов и т. д. Синтаксис описания сеанса связи в протоколе MGCP соответствует синтаксису протокола описания сеансов связи - session description protocol (SDP), описанному в документе RFC 2327 [53].
Для создания, редактирования и удаления интерфейсов IP-Net используется меню «Объекты» – «Добавить объект», «Объекты» – «Редактировать объект» и «Объекты» – «Удалить объект», а также кнопки:
добавить интерфейс | |
редактировать параметры интерфейса | |
удалить интерфейс |
Сигнальный процессор шлюза выполняет функции кодирования аналогового речевого трафика, данных факса/модема в цифровые сигналы, а также обратного декодирования. Шлюз поддерживает следующие кодеки: G.711 (A/U), G.729 (A/B), G.723.
Вкладка «Настройка интерфейса IP-Net».
- Название – наименование интерфейса;
- Идентификатор шлюза – уникальный идентификатор шлюза внутри корпоративной IP сети;
- Транковая группа – наименование транковой группы, в которую входит интерфейс;
- Категория доступа – выбор категории доступа;
- План нумерации – определяет план нумерации, в котором будет осуществляться набор с данного порта (это необходимо для согласования планов нумерации);
- Встречный IP – IP-адрес, взаимодействующего по протоколу MGCP шлюза;
- Встречный порт - порт назначения MGCP сигнализации взаимодействующего шлюза;
- Локальный порт - локальный UDP/TCP-порт устройства, на котором он принимает сигнализацию MGCP от взаимодействующего через данный интерфейс устройства;
- Сетевой интерфейс сигнализации – выбор сетевого интерфейса для приема и передачи сигнальных MGCP сообщений;
- Сетевой интерфейс для RTP – выбор сетевого интерфейса для приема и передачи голосового трафика;
- Использовать внешний адрес – устанавливается в случае, если взаимодействующее устройство находится в другой подсети;
- Внешний IP-адрес сигнализации – адрес, который будет использоваться при работе с взаимодействующим устройством, находящимся в другой подсети;
- Внешний IP-адрес для RTP – адрес, который будет использоваться для RTP при работе с взаимодействующим устройством, находящимся в другой подсети;
- Профиль маршрутизации по расписанию – выбор профиля услуги «маршрутизация по расписанию», которая конфигурируется в разделе «Внутренние ресурсы»;
- DSCP для Signaling – тип сервиса (DSCP) для сигнального трафика (SIP);
- Активных соединений – максимальное количество одновременных (входящих и исходящих) соединений через данный интерфейс;
- NAT (comedia mode) – опция, необходимая для корректной работы SIP через NAT (Network Address Translation) в случае использования шлюза в публичной сети. Позволяет проверять данные источника во входящем RTP потоке и транслировать исходящий поток на IP-адрес и UDP-порт, с которого принимается медиапоток.
Вкладка «Настройка кодеков RTP».
Опции.
- Детектор активности речи / Генератор комфортного шума (VAD/CNG) – при установленном флаге детектор тишины и генератор комфортного шума включены. Детектор активности речи позволяет отключать передачу разговорных пакетов RTP в моменты молчания, тем самым уменьшая нагрузку в сети передачи данных;
- Контроль IP:Port источника RTP – при установленной настройке контролируется поступление медиа трафика с IP-адреса и UDP-порта указанных в описании сеанса связи SDP, иначе принимается трафик с любого IP-адреса и UDP-порта;
- Эхокомпенсация – режим эхокомпенсации:
- voice(default) – эхокомпенсаторы включены в режиме передачи голосовой информации;
- voice nlp-off – эхокомпенсаторы включены в голосовом режиме, нелинейный процессор NLP выключен. В случае, когда уровни сигналов на передаче и приеме сильно различаются, слабый сигнал может быть подавлен нелинейным процессором NLP. Для предотвращения подавления используется данный режим работы эхокомпенсаторов;
- modem – эхокомпенсаторы включены в режиме работы модема (фильтрация постоянной составляющей сигнала выключена, контроль процессором NLP выключен, генератор комфортного шума выключен);
- off – не использовать эхокомпенсацию (данный режим установлен по умолчанию);
- DSCP для RTP – тип сервиса (DSCP) для RTP и UDPTL (T.38) пакетов;
- Таймаут ожидания RTP-пакетов – функция контроля состояния разговорного тракта по наличию RTP-трафика от взаимодействующего устройства. Диапазон допустимых значений от 10 до 300 секунд. При снятом флаге контроль RTP выключен, при установленном – включен. Контроль осуществляется следующим образом: если в течение данного таймаута от встречного устройства не поступает ни одного RTP-пакета и последний пакет не был пакетом подавления пауз, то вызов отклоняется;
- Таймаут ожидания RTP-пакетов после получения Silence-Suppression (множитель) – таймаут ожидания RTP-пакетов при использовании опции подавления пауз. Диапазон допустимых значений от 1 до 30. Коэффициент является множителем и определяет, во сколько раз значение данного таймаута больше, чем «Таймаут ожидания RTP-пакетов». Контроль осуществляется следующим образом: если в течение данного времени от встречного устройства не поступает ни одного RTP-пакета и последний пакет был пакетом подавления пауз, то вызов отклоняется;
- Период передачи пакетов RTCP (с) – период времени в секундах (5-65535 c.), через который устройство отправляет контрольные пакеты по протоколу RTCP. При отсутствии установленного флага протокол RTCP не используется;
- Контроль активности сессии по протоколу RTCP – функция контроля состояния разговорного тракта, принимает значения из диапазона 5-65535. Количество интервалов времени (RTCP timer), в течение которого ожидаются пакеты протокола RTCP со встречной стороны. При отсутствии пакетов в заданном периоде времени установленное соединение разрушается. При этом в сторону TDM и IP-протоколов устанавливается причина разъединения «cause 3 No route to destination». Значение контрольного периода определяется по формуле: RTCP timer * RTCP control period секунд. При отсутствии установленного флага функция выключена.
Цифровое усиление:
- Усиление сигнала на приеме (0.1 dB) – громкость принимаемого сигнала, усиление/ослабление уровня сигнала, принятого от взаимодействующего шлюза;
- Усиление сигнала на передаче (0.1 dB) – громкость передаваемого сигнала, усиление/ослабление уровня сигнала, передаваемого в сторону взаимодействующего шлюза.
Прием/передача DTMF:
- Способ передачи DTMF – способ передачи DTMF через IP-сеть;
- inband – в пакетах протокола RTP, внутриполосно;
Для возможности использования донабора во время разговора убедитесь, что аналогичный метод передачи сигналов DTMF настроен на встречном шлюзе!
Параметры jitter-буфера.
- Режим – режим работы джиттер-буфера: фиксированный либо адаптивный;
- Минимальный размер, мс – размер фиксированного джиттер-буфера либо нижняя граница (минимальный размер) адаптивного джиттер-буфера. Диапазон допустимых значений от 0 до 200 мс;
- Начальный размер, мс – начальное значение адаптивного джиттер-буфера. Диапазон допустимых значений от 0 до 200 мс;
- Максимальный размер, мс – верхняя граница (максимальный размер) адаптивного джиттер-буфера в миллисекундах. Диапазон допустимых значений от «минимального размера» до 200 мс;
- Период адаптации, мс – время адаптации буфера к нижней границе при отсутствии нарушений в порядке следования пакетов;
- Режим удаления – режим адаптации буфера. Определяет, каким образом будут удаляться пакеты при адаптации буфера к нижней границе:
- Soft – используется интеллектуальная схема выбора пакетов для удаления, превысивших порог;
- Hard – пакеты, задержка которых превысила порог, немедленно удаляются;
- Порог удаления, мс – порог немедленного удаления пакетов в миллисекундах. При росте буфера и превышении задержки пакета свыше данной границы пакеты немедленно удаляются. Диапазон допустимых значений от максимального размера до 500 мс;
- Режим подстройки – выбор режима подстройки адаптивного джиттер-буфера при его увеличении (плавный/моментальный);
- Размер для VBD, мс – размер фиксированного джиттер-буфера, используемого при передаче данных в режиме VBD (модемной связи). Диапазон допустимых значений от 0 до 200 мс;
Кодеки.
В данном разделе можно выбрать кодеки для интерфейса и порядок, в котором они будут использоваться при установлении соединения. Кодек с наивысшим приоритетом необходимо установить в верхней позиции. При нажатии левой кнопкой мыши строка с выбранным кодеком подсвечивается. Для изменения приоритета кодеков используются стрелки (вниз, вверх).
- Включить – при установленном флаге использовать кодек, указанный в поле напротив.
- Кодек – кодек, используемый для передачи голосовых данных. Поддерживаемые кодеки G.711 (A/U), G.729 (A/B), G.726-32.
При включенном VAD/CNG кодек G.729 работает как G.729B, иначе как G729A.