...
| Блок кода | ||
|---|---|---|
| ||
vesbc# vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# route-table ROUTE_TABLE #Добавление первого правила с действием отправить вызов в транковую группу TRUNK_GROUP: vesbc(config-esbc-route-table)# rule 0 vesbc(config-esbc-route-table-rule)# action direct-to-trunk-group TRUNK_GROUP vesbc(config-esbc-route-table-rule)# exit #Добавление второго правила с действием отправить вызов в транк TRUNK_3: vesbc(config-esbc-route-table)# rule 1 vesbc(config-esbc-route-table-rule)# action direct-to-trunk TRUNK_3 |
Пример работы условий:
ПЕРЕДЕЛАТЬ СХЕМУ
В таблице маршрутизации два правила, у обоих есть условия по CGPN, CDPN и SIP-MESSAGE. Например, приходит вызов, у которого номер А=23000, номер Б=24000, и кастомный заголовок "Trunk: For trunk_1". ESBC заходит в RULE_1 и анализирует условие CONDITION_1, условие истинно, далее происходит анализ условия из CONDITION_2, условие истинно, далее происходит анализ условия из CONDITION_3, условие также истинно. Значит правило RULE_1 подходит для маршрутизации, и вызов отправляется в TRUNK_1.
...
Настройка медиапрофилейЯкорь media_profile media_profile
| media_profile | |
| media_profile |
Использование медиапрофилей позволяет гибко управлять типом медиаданных путем фильтрации медиасекций в SDP, транкодированием аудио и видео, шифрованием RTP потока, контролем сессии по наличию RTP потока.
Медиапрофили служат для настройки общих параметров передачи и приёма медиаданных. Медиапрофили используются в абонентских интерфейсах, транках и транк-группах.
...
. Медиапрофиль используемый для транка входящего в транк-группу переопределяет настройки медиа профиля используемого в транк-группе.
Управление типом медиаданных и кодеками
Обработка медиапотоков осуществляется в двух режимах: проксирование и транскодирование.
По умолчанию ESBC работает в режиме проксирования медиатрафика без использования транскодирования. Список паттернов кодеков доступных для проксирования через ESBC задается командой
| Блок кода |
|---|
codec allow {all | <CODEC_PATTERN> [<PT>]} |
<CODEC_PATTERN> – название кодека/часть названия кодека,
<PT> – payload type. (Не обязательный параметр). При указании будет проводиться дополнительная проверка патерна на полное совпадение кодека с указанным payload type.
Описание всех команд приведено в разделе Настройки медиапрофиля справочника команд CLI.
При созданиии медиа профиля список паттернов для наиболее известных кодеков IANAПри создании медиапрофиля список кодеков, доступных для проксирования, добавляется автоматически .и выглядит следующим образом:
| Блок кода | language | c#
|---|
vesbc# configure vesbc(config)# esbc vesbc(config-esbc)# media profile MEDIA_PROFILE vesbc(config-esbc-media-profile)# do commit vesbc(config-esbc-media-profile)# do confirm vesbc(config-esbc-media-profile)# do sh running-config esbc media profile media profile MEDIA_PROFILE codec allow AMR codec allow CLEARMODE codec allow AMRCN codec allow CLEARMODE codec allow CNG72 codec allow G72 codec allow G722/ 9 codec allow G728 15 codec allow G729/ 18 codec allow GSM 3 codec allow H26 codec allow H261 31 codec allow H263 34 codec allow ILBC codec allow L16/44100 11 codec allow L16/44100/2 10 codec allow OPUS codec allow PCMA 8 codec allow PCMU 0 codec allow SPEEX codec allow T38 t38 codec allow VP codec allow telephone-event exit |
Для очистки списка используется команда no codec allow all. При использовании данной команды будут удалены кодеки, добавленные автоматически при создании профиля, и кодеки, добавленные пользователем.
Список кодеков, разрешенных для проксирования, можно изменять, а также добавлять в него любые кодеки. Для этого используется команда:
| Блок кода | ||
|---|---|---|
| ||
codec allow <full or partial codec name> [payload type] |
где:
<full or partial codec name> — часть или полное название кодека (в соответствии с SDP rtpmap);
[payload type] — номер payload type. Параметр опциональный.
Т.к. использование паттернов позволяет указывать не полное название кодека а его чать, то запись вида "codec allow G72" означает что кодеки Допускается указание части названия кодека, например: codec allow G72, в таком случае будет разрешено проксирование кодеков G726-16, G726-24, G726-32, G726-40 будут доступны для проксирования.
| Предупреждение |
|---|
Для кодеков со статическим payload type рекомендуется указывать номер payload type, иначе, если в SDP не будет указан атрибут rtpmap, вызов будет отбиваться кодом 488. |
| Scroll Pagebreak |
|---|
Транскодирование
Поддержка кодеков для транскодирования осуществляется командами:
- codec audio
- codec video
- codec image (в текущей версии ПО не поддерживается, данная команда аналогична команде codec allow T38 t38)
Порядок обработки SDP для выбора режима работы:
1. Offer SDP фильтруется согласно разрешённым кодекам на плече A.
2. Offer SDP фильтруется согласно разрешённым кодекам на плече B.
3. В конец Offer SDP добавляются недостающие кодеки, транскодинг которых включен в media profile на плече B.
4. Answer SDP фильтруется согласно разрешённым кодекам на плече B.
5. В конец Answer SDP добавляются недостающие кодеки, транскодинг которых включен в media profile на плече A.
В результате транскодирование включается, если самые приоритетные кодеки из Offer и Answer SDP не совпадают.
Иначе при совпадении приоритетных кодеков будет использоваться проксирование.
Пример:
На плече A разрешён только кодек PCMA:
| Блок кода | ||
|---|---|---|
| ||
media profile MP_A
codec audio PCMA
exit |
на плече B — PCMU:
| Блок кода | ||
|---|---|---|
| ||
media profile MP_B
codec audio PCMU
exit |
В данном случае на плечах А и B будут согласованы кодеки PCMA и PCMU соответственно, и будет включено транскодирование.
Если на плече B включить поддержку PCMA:
| Блок кода | ||
|---|---|---|
| ||
media profile MP_B
codec audio PCMU
codec audio PCMA
exit |
то выбор режима работы (проксирование/транскодирование) будет осуществляться в зависимости от кодека, указанного в Answer SDP плеча B.
Для абонентских интерфейсов, транков и транковых групп к которым не привязан ни один медиа профиль, используется медиа профиль по умолчанию, который не отображается в конфигурации. В данном медиа профиле применяются паттерны кодеков доступных для проксирования, указанные выше.
Для очистки списка используется команда no codec allow all. При использовании данной команды будут удалены паттерны кодеков, добавленные автоматически при создании профиля, и паттерны кодеков, добавленные/измененные пользователем.
Управление списком кодеков и типом медиаданных (audio, video, image) SDP осуществляется путем добавления/удаления/изменения паттернов codec allow. Максимальное количесво паттернов в одном медиа профиле - 64.
| Примечание |
|---|
Для успешного согласования кодеков в режиме проксирования, необходимо что бы на входящем и исходящем напрвлении, в медиапрофилях, привязанным к этим напрвлениям, содержались паттерны, позволяющие пропускать одни и теже кодеки. В случае когда согласование невозможно, на запросы INVITE ESBC будет отвечать сообщением 488. |
Примеры использования медиа профиля для управления кодеками и типами медиаданных в режиме проксирования.
1. Запретить использование видео для транка Trunk2.
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для транка Trunk2
vesbc(config-esbc)# media profile FOR_TRUNK_2
# Запретить использование всех видео кодеков
vesbc(config-esbc-media-profile)# no codec allow H26
vesbc(config-esbc-media-profile)# no codec allow H261
vesbc(config-esbc-media-profile)# no codec allow H263
vesbc(config-esbc-media-profile)# no codec allow VP
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку
vesbc(config-esbc)# trunk sip TRUNK_2
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_2
vesbc(config-esbc-trunk-sip)# do commit
vesbc(config-esbc-trunk-sip)# do confirm |
В результате конфигурация медиа профиля будет выглядеть следующим образом:
| Блок кода |
|---|
media profile FOR_TRUNK_2
codec allow AMR
codec allow CLEARMODE
codec allow CN
codec allow G72
codec allow G722/ 9
codec allow G728 15
codec allow G729/ 18
codec allow GSM 3
codec allow ILBC
codec allow L16/44100 11
codec allow L16/44100/2 10
codec allow OPUS
codec allow PCMA 8
codec allow PCMU 0
codec allow SPEEX
codec allow T38 t38
codec allow telephone-event
exit |
В данном примере, для транка Trunk1 не требуется использование отдельного медиапрофиля, т.к. при вызовах, поступающих в Trunk1 и маршрутизируемых в Trunk2 все видеокодеки из SDP будут удалены в соответствии с медиапрофилем используемом для транка Trunk2.
Для вызовов поступающих в Trunk2 все видеокодеки из SDP будут удалены вне зависимости от направления маршрутизации.
2. Запретить использование кодеков G729 и G726 для транка Trunk1.
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для транка Trunk1
vesbc(config-esbc)# media profile FOR_TRUNK_1
# Запретить использование кодеков G729 и G726
vesbc(config-esbc-media-profile)# no codec allow G729/
vesbc(config-esbc-media-profile)# no codec allow G72
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку
vesbc(config-esbc)# trunk sip TRUNK_1
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1
vesbc(config-esbc-trunk-sip)# do commit
vesbc(config-esbc-trunk-sip)# do confirm |
В результате конфигурация медиа профиля будет выглядеть следующим образом:
| Блок кода |
|---|
media profile FOR_TRUNK_1
codec allow AMR
codec allow CLEARMODE
codec allow CN
codec allow G722/ 9
codec allow G728 15
codec allow GSM 3
codec allow H26
codec allow H261 31
codec allow H263 34
codec allow ILBC
codec allow L16/44100 11
codec allow L16/44100/2 10
codec allow OPUS
codec allow PCMA 8
codec allow PCMU 0
codec allow SPEEX
codec allow T38 t38
codec allow VP
codec allow telephone-event
exit |
В данном примере в транк Trunk1 приходит INVITE c SDP Offer1 в котором наиболее приоритетным кодеком является G729, а также указан кодек G726, но т.к. настройками медиа профиля FOR_TRUNK_1 данные кодеки запрещены, то в транк Trunk2 будет отправлен SDP Offer2 без данных кодеков. UA Trunk2 выбирает в качестве приоритетного кодек PCMA (SDP Answer2) и в результате ESBC отправляет в SDP Answer1 наиболее приоритетный кодек из SDP Offer1 (кроме G729) - PCMA.
3. Разрешить использование кодека QCELP для обоих транков (в дополнение к паттернам по-молчанию).
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для использования в обоих транках
vesbc(config-esbc)# media profile FOR_TRUNKS
# добавить паттерн для кодека QCELP
vesbc(config-esbc-media-profile)#codec allow QCELP
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к обоим транкам
vesbc(config-esbc)# trunk sip TRUNK_1
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNKS
vesbc(config-esbc-trunk-sip)# exit
vesbc(config-esbc)# trunk sip TRUNK_2
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNKS
vesbc(config-esbc-trunk-sip)# exit
vesbc(config-esbc)# do commit
vesbc(config-esbc)# do confirm
|
В результате конфигурация медиа профиля будет выглядеть следующим образом:
| Блок кода |
|---|
В данном примере в транк Trunk1 приходит INVITE c SDP Offer1 в котором содержится кодек QCELP,и т.к. настройками медиа профиля FOR_TRUNKS этот кодек разрешен, то он будет передаваться SDP Offer2, отправляемый в транк Trunk2. UA Trunk2 выбирает кодек QCELP и в результате он будет согласован в SDP Answer1.
4. Разрешить использование только кодека PCMA для Trunk1.
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для транка Trunk1
vesbc(config-esbc)# media profile FOR_TRUNK_1
# Удалить все паттерны
vesbc(config-esbc-media-profile)# no codec allow all
# Добавить паттерн только для кодека PCMA
vesbc(config-esbc-media-profile)# codec allow PCMA 8
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку
vesbc(config-esbc)# trunk sip TRUNK_1
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1
vesbc(config-esbc-trunk-sip)# do commit
vesbc(config-esbc-trunk-sip)# do confirm |
В результате конфигурация медиа профиля будет выглядеть следующим образом:
| Блок кода |
|---|
media profile FOR_TRUNK_1
codec allow PCMA 8
exit |
В данном примере в транк Trunk1 приходит INVITE c SDP Offer1 с набором кодеков. Т.к. настройками медиа профиля FOR_TRUNK_1 запрещены все кодеки кроме PCMA, то в транк Trunk2 будет отправлен SDP Offer2 содержащий только кодек PCMA.
| Scroll Pagebreak |
|---|
Транскодирование
Транскодирование — это возможность преобразования медиапотоков, основанных на разных кодеках.
Эта возможность позволяет:
- Гибко справляться со сложными сетевыми соединениями и широким спектром медиакодеков
- Оптимизировать доступную полосу пропускания, принудительно используя различные кодеки сжатия
- Нормализовать трафик в сети предприятия, используя один кодек
- Заключать соглашения о взаимодействии между сетями VoIP для использования одобренных кодеков
ESBC предоставляет возможности транскодирования на границе сети вместо использования ресурсов сети предприятия для тех же функций.
Список кодеков поддерживаемых в режиме транскодирования:
Аудиокодеки | Видеокодеки |
|---|---|
AMR AMR-WB G722 G7221-24 G7221-32 G7221C-24 G7221C-32 G7221C-48 G726-16 G726-24 G726-32 G726-40 G729 GSM ILBC L16-MONO OPUS PCMA PCMU SPEEX-NB SPEEX-UWB SPEEX-WB | H263-1998 H264 VP8 VP9 |
Поддержка кодеков для транскодирования осуществляется командами:
| Блок кода |
|---|
codec {audio | video | image} {all | <CODEC>}
no codec {audio | video | image} {all | <CODEC>} |
<CODEC> – название кодека. Указывается из списка поддержанных для транскодирования кодеков.
all - включает транскодирование всех доступных кодеков заданного типа медиаданных.
| Примечание |
|---|
Команда codec image в текущей версии ПО не поддерживается, данная команда аналогична команде codec allow T38 t38 |
Описание всех команд приведено в разделе Настройки медиапрофиля справочника команд CLI.
Порядок обработки SDP для выбора режима работы:
- Offer SDP фильтруется согласно разрешённым кодекам на плече A.
- Offer SDP фильтруется согласно разрешённым кодекам на плече B.
- Если в медиапрофиле на плече А включен транскодинг и во входящем SDP присутствуют кодеки из списка разрешенных, то в конец Offer SDP добавляются недостающие кодеки, транскодинг которых включен в media profile на плече B.
- Answer SDP фильтруется согласно разрешённым кодекам на плече B.
- В конец Answer SDP добавляются недостающие кодеки, транскодинг которых включен в media profile на плече A.
- Перед отправкой Answer SDP в плечо А производится согласование кодеков.
В результате, транскодирование включается, если самые приоритетные кодеки из Offer и Answer SDP на двух плечах не совпадают. В таком случае в Answer SDP будет выбран наиболее приоритетный кодек который был получен в Offer SDP и для которого включена поддержка транскодирования в медиа профиле на плече А.
Иначе, при совпадении приоритетных кодеков в Offer SDP и Answer SDP, будет использоваться проксирование медиаданных.
С целью снижения нагрузки на ESBC, транскодирование включается только в случае когда использовать проксирование медатрафика невозможно.
Для включения транскодирования необходимо ипользовать медиапрофили с включенным транкодированием (codec audio/video) на обоих направлениях.
Если на одном из направлений не используется медиапрофиль (т.е. используется медиа профиль по умолчанию) или в профиле не настроено ни одно правило codec audio/video то транскодирование осуществляться не будет.
Пример:
В транке Trunk1 используется медиапрофиль FOR_TRUNK_1 в котором разрешены кодеки PCMA и PCMU для проксирования и не указаны кодеки разрешенные для транскодирования.
В транке Trunk2 используется медиапрофиль FOR_TRUNK_2 в котором также кодеки PCMA и PCMU разрешены для проксирования и кодек G729 разрешен для транскодирования.
В SDP Offer1 полученном с транка Trunk1 указаны кодеки PCMA и PCMU, и т.к. в медиа профиле FOR_TRUNK_1 отсутствуют кодеки разрешенные для транскодирования, в SDP Offer2 который будет отправлен в Trunk2 кодек G729 не будет добавлен. Соответственно при вызовах из Trunk1 в Trunk2 (и в обратном направлении) возможно только проксирования медиаданных.
Если в медиапрофиле не содержится ни одного паттерна для проксирования кодеков а указаны только кодеки доступные для транскодирования, то при наличае одинаковых кодеков в медиапрофилях, используемых на входящем и исходящем напрвлениях медиаданные будут передаваться в режмие проксирования.
Т.о. включение поддержки транскодирования для кодеков комадндами codec {audio | video | image} {all | <CODEC>} не означает что медиаданные передаваемы через ESBC всегда будут транскодироваться.
Пример:
Для транков Trunk1 и Trunk2 используется один и тотже медиапрофиль FOR_TRUNKS, в котором указан только кодек PCMA разрешенный для транскодирования и отсутствуют паттерны кодеков для проксирования.
В SDP Offer1 полученном с транка Trunk1 указаны кодеки PCMA и PCMU, и т.к. в медиа профиле FOR_TRUNKS не указан кодек PCMU (ни для проксирования ни для транскодирования),то в SDP Offer2 который будет отправлен в Trunk2 кодек PCMU не будет добавлен. При получении SDP Answer2 происходит согласование кодека PCMA и в Trunk1 будет отправлен SDP Answer1 с кодеком PCMA. При этом медиаданные будут передаваться в режиме проксирования, т.к. наиболее приоритетные кодеки в SDP Offer и SDP Answer совпадают.
Примеры использования медиа профилей для управления кодеками в режиме транскодирования
1. Настроить только режим транскодирования кодеков PCMA <---> PCMU между направлениями.
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для транка Trunk1
vesbc(config-esbc)# media profile FOR_TRUNK_1
# Запретить использование всех кодеков в режмие проксирования
vesbc(config-esbc-media-profile)# no codec allow all
# Включить поддержку кодека PCMA в режиме транскодирования
vesbc(config-esbc-media-profile)# codec audio PCMA
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку Trunk1
vesbc(config-esbc)# trunk sip TRUNK_1
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1
vesbc(config-esbc-trunk-sip)# exit
# Содать медиа профиль для транка Trunk2
vesbc(config-esbc)# media profile FOR_TRUNK_2
# Запретить использование всех кодеков в режмие проксирования
vesbc(config-esbc-media-profile)# no codec allow all
# Включить поддержку кодека PCMU в режиме транскодирования
vesbc(config-esbc-media-profile)# codec audio PCMU
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку Trunk2
vesbc(config-esbc)# trunk sip TRUNK_2
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_2
vesbc(config-esbc-trunk-sip)# do commit
vesbc(config-esbc-trunk-sip)# do confirm |
В результате конфигурации медиа профилей будет выглядеть следующим образом:
| Блок кода |
|---|
media profile FOR_TRUNK_1
codec audio PCMA
exit
media profile FOR_TRUNK_2
codec audio PCMU
exit |
В SDP Offer1 полученном с транка Trunk1 указан кодек PCMA, и т.к. в медиа профиле FOR_TRUNK_2 указан только кодек PCMU для транскодирования, в SDP Offer2 который будет отправлен в Trunk2 кодек кодек PCMA будет заменен на PCMU. Соответственно при вызовах из Trunk1 в Trunk2 (и в обратном направлении) возможно только транскодирование медиаданных.
Если в В SDP Offer1 полученном с транка Trunk1 будут указаны любые кодеки кроме PCMA, то вызов не будут установлен, ESBC отправит на INVITE ответ 488.
2. Использование медиапрофилей для проксирования и транскодирования аудиоданных.
Для транков Trunk1 и Trunk2 используются медиапрофили позволяющие проксировать все кодеки и транскодировать аудио G722 <---> G729 и GSM <---> G729
Настройка медиа профилей:
| Блок кода |
|---|
vesbc# configure
vesbc(config)# esbc
# Содать медиа профиль для транка Trunk1
vesbc(config-esbc)# media profile FOR_TRUNK_1
# Включить поддержку кодеков G722 и GSM в режиме транскодирования
vesbc(config-esbc-media-profile)# codec audio G722
vesbc(config-esbc-media-profile)# codec audio GSM
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку Trunk1
vesbc(config-esbc)# trunk sip TRUNK_1
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1
vesbc(config-esbc-trunk-sip)# exit
# Содать медиа профиль для транка Trunk2
vesbc(config-esbc)# media profile FOR_TRUNK_2
# Включить поддержку кодека G729 в режиме транскодирования
vesbc(config-esbc-media-profile)# codec audio G729
vesbc(config-esbc-media-profile)# exit
# Привязать медиа профиль к транку Trunk2
vesbc(config-esbc)# trunk sip TRUNK_2
vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_2
vesbc(config-esbc-trunk-sip)# do commit
vesbc(config-esbc-trunk-sip)# do confirm |
В результате конфигурации медиа профилей будет выглядеть следующим образом:
| Блок кода |
|---|
media profile FOR_TRUNK_1
codec audio GSM
codec audio G722
codec allow AMR
codec allow CLEARMODE
codec allow CN
codec allow G72
codec allow G722/ 9
codec allow G728 15
codec allow G729/ 18
codec allow GSM 3
codec allow H26
codec allow H261 31
codec allow H263 34
codec allow ILBC
codec allow L16/44100 11
codec allow L16/44100/2 10
codec allow OPUS
codec allow PCMA 8
codec allow PCMU 0
codec allow SPEEX
codec allow T38 t38
codec allow VP
codec allow telephone-event
exit
media profile FOR_TRUNK_2
codec audio G729
codec allow AMR
codec allow CLEARMODE
codec allow CN
codec allow G72
codec allow G722/ 9
codec allow G728 15
codec allow G729/ 18
codec allow GSM 3
codec allow H26
codec allow H261 31
codec allow H263 34
codec allow ILBC
codec allow L16/44100 11
codec allow L16/44100/2 10
codec allow OPUS
codec allow PCMA 8
codec allow PCMU 0
codec allow SPEEX
codec allow T38 t38
codec allow VP
codec allow telephone-event
exit |
2.1 В SDP Offer1 полученном с транка Trunk1 указаны кодеки PCMA, PCMU, G726 и G722. Т.к. в медиа профиле FOR_TRUNK_1 есть кодек G722 разрешенный для транскодирования, то в SDP Offer2 который будет отправлен в Trunk2 будет добавлен кодек G729. Остальные кодеки будут передавться из SDP Offer1 в SDP Offer2 т.к. на обоих медиапрофилях настроены паттерны разрешающие проксирование этих кодеков. В SDP Answer2, полученном из Trunk2 указан кодек PCMU. Этот кодек будет согласован ESBC в SDP Answer1. Т.к. этот кодек был в SDP Offer1 то будет выбран режим проксирования медиаданных.
2.2 В SDP Offer1 полученном с транка Trunk1 указаны кодеки PCMA, PCMU, G726 и G722. Т.к. в медиа профиле FOR_TRUNK_1 есть кодек G722 разрешенный для транскодирования, то в SDP Offer2 который будет отправлен в Trunk2 будет добавлен кодек G729. Остальные кодеки будут передавться из SDP Offer1 в SDP Offer2 т.к. на обоих медиапрофилях настроены паттерны разрешающие проксирование этих кодеков. В SDP Answer2, полученном из Trunk2 указан кодек G729. Т.к. этого кодека не было в SDP Offer1 то будет согласован единственный возможный кодек для Trunk1 - G722. Т.к. кодеки на плечах Trunk1 и Trunk2 отличаются, будет включено транскодирование медиаданных G722 <---> G729.
2.3 В SDP Offer1 полученном с транка Trunk1 указаны кодеки PCMA, PCMU, GSM, G726 и G722. Т.к. в медиа профиле FOR_TRUNK_1 есть кодеки G722 и GSM разрешенные для транскодирования, то в SDP Offer2 который будет отправлен в Trunk2 будет добавлен кодек G729. Остальные кодеки будут передавться из SDP Offer1 в SDP Offer2 т.к. на обоих медиапрофилях настроены паттерны разрешающие проксирование этих кодеков. В SDP Answer2, полученном из Trunk2 указан кодек G729. Т.к. этого кодека не было в SDP Offer1 то будет согласован наиболее приоритетный кодек для Trunk1 - GSM. Т.к. кодеки на плечах Trunk1 и Trunk2 отличаются, будет включено транскодирование медиаданных GSM <---> G729.
Если в ответе первым кодеком будет указан PCMA, то будет выбран режим проксирования, если PCMU — режим транскодирования.
| Scroll Pagebreak |
|---|
Таймаут ожидания RTP-пакетов
...
| Блок кода | ||
|---|---|---|
| ||
vesbc# vesbc# config vesbc(config)# esbc #Просмотр полной статистики при активных вызовах: vesbc# show esbc statistics all ESBC global call counters: ----------------------------------------------------------------------- Counter Name Incoming Outgoing ------------------------- -------------------- -------------------- CALLS PER SECOND 2 2 CALL LEGS 50 50 REQUESTS IN CALL 6 7 RESPONSES IN CALL 8 8 ANSWERED CALLS 2 2 CALLS TO WRONG NUMBER 0 0 BUSY CALLS 0 0 NO ANSWERED CALLS 0 0 FORBIDDEN CALLS 0 0 UNAUTHORIZED CALLS 0 0 3XX CODES 0 0 4XX CODES 0 0 5XX CODES 0 0 6XX CODES 0 0 ESBC global register counters: ----------------------------------------------------------------------- Counter Name Incoming Outgoing ------------------------- -------------------- -------------------- REGISTERS PER SECOND 0 0 REGISTER TRANSACTIONS 0 0 RESPONSES 0 0 SUCCESS REGISTERS 0 0 REQUEST TIMEOUT 0 0 FORBIDDEN REGISTERS 0 0 UNAUTHORIZED REGISTERS 0 0 INTERVAL TOO BRIEF 0 0 3XX CODES 0 0 4XX CODES 0 0 5XX CODES 0 0 6XX CODES 0 0 ESBC global subscribe counters: ----------------------------------------------------------------------- Counter Name Incoming Outgoing ------------------------- -------------------- -------------------- SUBSCRIBES PER SECOND 0 0 ACTIVE SUBSCRIBES 0 0 REQUESTS IN SUBSCRIBE 0 0 RESPONSES IN SUBSCRIBE 0 0 SUCCESS SUBSCRIBES 0 0 REQUEST TIMEOUT 0 0 FORBIDDEN SUBSCRIBES 0 0 UNAUTHORIZED SUBSCRIBES 0 0 INTERVAL TOO BRIEF 0 0 3XX CODES 0 0 4XX CODES 0 0 5XX CODES 0 0 6XX CODES 0 0 ESBC global rps counters: ----------------------------------------------------------------------- Counter Name Incoming Outgoing ------------------------- -------------------- -------------------- REQUESTS PER SECOND 6 6 INVITE PER SECOND 2 2 ACK PER SECOND 2 2 BYE PER SECOND 2 3 CANCEL PER SECOND 0 0 REFER PER SECOND 0 0 PRACK PER SECOND 0 0 SUBSCRIBE PER SECOND 0 0 NOTIFY PER SECOND 0 0 UPDATE PER SECOND 0 0 OPTIONS PER SECOND 0 0 INFO PER SECOND 0 0 REGISTER PER SECOND 0 0 MESSAGE PER SECOND 0 0 #Просмотри статистики вызовов после завершения вызовов vesbc# show esbc statistics call ESBC global call counters: ----------------------------------------------------------------------- Counter Name Incoming Outgoing ------------------------- -------------------- -------------------- CALLS PER SECOND 0 0 CALL LEGS 0 0 REQUESTS IN CALL 0 0 RESPONSES IN CALL 0 0 ANSWERED CALLS 0 0 CALLS TO WRONG NUMBER 0 0 BUSY CALLS 0 0 NO ANSWERED CALLS 0 0 FORBIDDEN CALLS 0 0 UNAUTHORIZED CALLS 0 0 3XX CODES 0 0 4XX CODES 0 0 5XX CODES 0 0 6XX CODES 0 0 |
...
АварииЯкорь alarms alarms
| alarms | |
| alarms |
Включение аварий происходит включением SNMP трапов командой snmp-server enable traps esbc в CLI
...
Настройка для SIP-абонентов, использующих WebRTCЯкорь sip_abonents_webrtc sip_abonents_webrtc
| sip_abonents_webrtc | |
| sip_abonents_webrtc |
Схема применения:
ПЕРЕДЕЛАТЬ ОБОЗНАЧЕНИЕ SIP-АБОНЕНТОВ
Описание:
SIP-абоненты (WEB, Desktop-клиенты) отправляют сообщения на IP-адрес 192.168.20.120 порт 5062 с помощью WebSocket Secure, ESBC отправляет по TCP данный трафик с IP-адреса 192.168.16.113 порт 5061 на адрес Softswitch (IP АТС/SIP-proxy и т. д) 192.168.16.65 порт 5060.
...
| Примечание |
|---|
В текущей версии ПО поддержана работа только с DNS в качестве внешнего сервиса. |
Схема применения:
ПЕРЕДЕЛАТЬ СХЕМУ
Описание:
SIP-абоненты (IP-телефон/VoIP шлюз/Мобильный SIP-клиент и т. д.) отправляют SIP-запросы на IP-адрес 192.168.20.120 порт 5062.
ESBC должен смаршрутизировать запрос в зависимости от домена в hostname части RURI, полученного от абонента. Вызовы/регистрации могут быть смаршрутизированы на один из трёх Softswitch (IP АТС/SIP-proxy и т. д), на каждом из них настроено несколько доменов.
...














