...
| Блок кода |
|---|
media profile FOR_TRUNKS 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 QCELP codec allow SPEEX codec allow T38 t38 codec allow VP codec allow telephone-event exit |
| Scroll Pagebreak |
|---|
В данном примере в транк TRUNK_1 приходит INVITE c SDP Offer1, в котором содержится кодек QCELP, и т. к. настройками медиапрофиля FOR_TRUNKS этот кодек разрешен, то он будет передаваться SDP Offer2, отправляемый в транк TRUNK_2. UA TRUNK_2 выбирает кодек QCELP, и в результате он будет согласован в SDP Answer1.
...
| Блок кода |
|---|
vesbc# configure vesbc(config)# esbc # Содать медиапрофиль для транка TRUNK_1 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 |
| Scroll Pagebreak |
|---|
...
Аудиокодеки | Видеокодеки |
|---|---|
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 |
| Scroll Pagebreak |
|---|
Поддержка кодеков для транскодирования осуществляется командами:
...
all — включает транскодирование всех доступных кодеков заданного типа медиаданных.
| Примечание |
|---|
Команда codec image в текущей версии ПО не поддерживается, данная команда аналогична команде codec allow T38 t38. |
Описание всех команд приведено в разделе Настройки медиапрофиля справочника команд CLI.
...
В SDP Offer1, полученном с транка TRUNK_1, указаны кодеки PCMA и PCMU, и т. к. в медиапрофиле FOR_TRUNKS не указан кодек PCMU (ни для проксирования, ни для транскодирования),то в SDP Offer2, который будет отправлен в TRUNK_2, кодек PCMU не будет добавлен. При получении SDP Answer2 происходит согласование кодека PCMA, и в TRUNK_1 будет отправлен SDP Answer1 с кодеком PCMA. При этом медиаданные будут передаваться в режиме проксирования, т. к. наиболее приоритетные кодеки в SDP Offer и SDP Answer совпадают.
| Scroll Pagebreak |
|---|
Примеры использования медиапрофилей для управления кодеками в режиме транскодирования
...
| Блок кода |
|---|
vesbc# configure vesbc(config)# esbc ##Создать Содатьмедиапрофиль медиа профиль для транка TRUNK_1: 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 ##Привязать Привязать медиапрофиль к транку TRUNK_1: vesbc(config-esbc)# trunk sip TRUNK_1 vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1 vesbc(config-esbc-trunk-sip)# exit # Содать#Создать медиапрофиль для транка TRUNK_2: 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 ##Привязать Привязать медиапрофиль к транку TRUNK_2: 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 |
| Scroll Pagebreak |
|---|
В SDP Offer1, полученном с транка TRUNK_1, указан кодек PCMA, и т. к. в медиапрофиле FOR_TRUNK_2 указан только кодек PCMU для транскодирования, в SDP Offer2, который будет отправлен в TRUNK_2, кодек PCMA будет заменен на PCMU. Соответственно при вызовах из TRUNK_1 в TRUNK_2 (и в обратном направлении) возможно только транскодирование медиаданных.
...
Если в В SDP Offer1, полученном с транка TRUNK_1, будут указаны любые кодеки кроме PCMA, то вызов не будут установлен, ESBC отправит на INVITE ответ 488.
| Scroll Pagebreak |
|---|
2. Использование медиапрофилей для проксирования и транскодирования аудиоданных.
Для транков TRUNK_1 и TRUNK_2 используются медиапрофили, позволяющие проксировать все кодеки и транскодировать аудио G722 <---> G729 и GSM <---> G729.
Настройка медиапрофилей:
| Блок кода |
|---|
vesbc# configure vesbc(config)# esbc ##Создать Содать медиапрофиль для транка TRUNK_1: 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 ##Привязать Привязать медиапрофиль к транку TRUNK_1: vesbc(config-esbc)# trunk sip TRUNK_1 vesbc(config-esbc-trunk-sip)# media profile FOR_TRUNK_1 vesbc(config-esbc-trunk-sip)# exit ##Создать Содать медиапрофиль для транка TRUNK_2: vesbc(config-esbc)# media profile FOR_TRUNK_2 ##Включить Включить поддержку кодека G729 в режиме транскодирования: vesbc(config-esbc-media-profile)# codec audio G729 vesbc(config-esbc-media-profile)# exit # Привязать медиа профиль#Привязать медиапрофиль к транку TRUNK_2: 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 |
| Scroll Pagebreak |
|---|
В результате конфигурация медиапрофилей будет выглядеть следующим образом:
| Блок кода |
|---|
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 |
| Scroll Pagebreak |
|---|
2.1 В SDP Offer1, полученном с транка TRUNK_1, указаны кодеки PCMA, PCMU, G726 и G722. Т. к. в медиапрофиле FOR_TRUNK_1 есть кодек G722, разрешенный для транскодирования, то в SDP Offer2, который будет отправлен в TRUNK_2, будет добавлен кодек G729. Остальные кодеки будут передаваться из SDP Offer1 в SDP Offer2, т. к. на обоих медиапрофилях настроены паттерны, разрешающие проксирование этих кодеков. В SDP Answer2, полученном из TRUNK_2, указан кодек PCMU. Этот кодек будет согласован ESBC в SDP Answer1. Т. к. этот кодек был в SDP Offer1, то будет выбран режим проксирования медиаданных.
| Scroll Pagebreak |
|---|
2.2 В SDP Offer1, полученном с транка TRUNK_1, указаны кодеки PCMA, PCMU, G726 и G722. Т. к. в медиапрофиле FOR_TRUNK_1 есть кодек G722, разрешенный для транскодирования, то в SDP Offer2, который будет отправлен в TRUNK_2, будет добавлен кодек G729. Остальные кодеки будут передаваться из SDP Offer1 в SDP Offer2, т. к. на обоих медиапрофилях настроены паттерны, разрешающие проксирование этих кодеков. В SDP Answer2, полученном из TRUNK_2, указан кодек G729. Т. к. этого кодека не было в SDP Offer1, то будет согласован единственный возможный кодек для TRUNK_1 — G722. Т. к. кодеки на плечах TRUNK_1 и TRUNK_2 отличаются, будет включено транскодирование медиаданных G722 <---> G729.
| Scroll Pagebreak |
|---|
2.3 В SDP Offer1, полученном с транка TRUNK_1, указаны кодеки PCMA, PCMU, GSM, G726 и G722. Т. к. в медиапрофиле FOR_TRUNK_1 есть кодеки G722 и GSM, разрешенные для транскодирования, то в SDP Offer2, который будет отправлен в TRUNK_2, будет добавлен кодек G729. Остальные кодеки будут передавться передаваться из SDP Offer1 в SDP Offer2, т. к. на обоих медиапрофилях настроены паттерны, разрешающие проксирование этих кодеков. В SDP Answer2, полученном из TRUNK_2, указан кодек G729. Т. к. этого кодека не было в SDP Offer1, то будет согласован наиболее приоритетный кодек для TRUNK_1 — GSM.
Т. к. кодеки на плечах TRUNK_1 и TRUNK_2 отличаются, будет включено транскодирование медиаданных GSM <---> G729.
...
По умолчанию при использовании DTLS-SRTP используются сертификаты, сгенерированные автоматически. Для использования сертификатов, загруженных пользователем, необходимо в медиапрофиле указать криптопрофиль с необходимыми сертификатами командой crypto profile. Подробное описание криптопрофилей приведено в разделе Настройка криптопрофилей.
...
| Примечание |
|---|
При использовании опции "Контроль источника RTP" совместно с включенной опцией "nat comedia" в транке или абонентском интерфейсе, RTP-трафик будет передаваться на IP-адрес и порт из входящего потока. |
| Scroll Pagebreak |
|---|
Настройка профилей безопасностиЯкорь security_profile security_profile
| security_profile | |
| security_profile |
...
В текущей версии поддержаны следующие настройки:
- Фильтрация фильтрация SIP-флуда;
- Блокировка блокировка по AOR/User-Agent;
- Объединение объединение ошибок по IP-адресу.
Профиль безопасности может быть привязан к абонентскому интерфейсу, транку, транковой группе. В общих настройках возможна привязка профиля ко всем абонентским интерфейсам или ко всем транкам.
...



