...
| Блок кода | ||
|---|---|---|
| ||
vesr# vesr# configure vesr(config)# esbc #Создание медиапрофиля NEW_MEDIA_PROFILE: vesr(config-esbc)# media-profile NEW_MEDIA_PROFILE vesr(config-esbc-media-profile)# #Включение таймера в медиапрофиле: vesr(config-esbc-media-profile)# rtp-timeout 100 vesr(config-esbc-media-profile)# vesr(config-esbc-media-profile)# exit vesr(config-esbc)# #Привязать медиапрофиль к транку NEW_TRUNK: vesr(config-esbc)# trunk sip NEW_TRUNK vesr(config-esbc-trunk-sip)# media profile NEW_MEDIA_PROFILE vesr(config-esbc-trunk-sip)# #Применить и подтвердить изменения: vesr(config-esbc-user-interfacetrunk-sip)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. vesr(config-esbc-user-interfacetrunk-sip)# do confirm Configuration has been confirmed. Commit timer canceled. |
...
| Примечание |
|---|
По умолчанию поддержка SRTP выключена. |
Пример использования SRTP
...
| Блок кода | ||
|---|---|---|
| ||
vesr# vesr# configure vesr(config)# esbc #Создание медиапрофиля NEW_MEDIA_PROFILE: vesr(config-esbc)# media-profile NEW_MEDIA_PROFILE vesr(config-esbc-media-profile)# #Настройка SRTP(включили обязательный режим использования, метод обмена ключами - SDES): vesr(config-esbc-media-profile)# srtp keying dtls-srtp Enable DTLS-SRTP keying method sdes Enable SDES keying method vesr(config-esbc-media-profile)# srtp keying sdes vesr(config-esbc-media-profile)# srtp mode disable SRTP is disabled mandatory SRTP is mandatory optional SRTP is optional vesr(config-esbc-media-profile)# srtp mode mandatory vesr(config-esbc-media-profile)# vesr(config-esbc-media-profile)# exit vesr(config-esbc)# #Привязать медиапрофиль к транку TRUNK_OUT: vesr(config-esbc)# trunk sip TRUNK_OUT vesr(config-esbc-trunk-sip)# media profile NEW_MEDIA_PROFILE vesr(config-esbc-trunk-sip)# #Применить и подтвердить изменения: vesr(config-esbc-user-interfacetrunk-sip)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. vesr(config-esbc-user-interfacetrunk-sip)# do confirm Configuration has been confirmed. Commit timer canceled. |
...
| Блок кода | ||
|---|---|---|
| ||
vesr# vesr# configure vesr(config)# esbc #Создание sip-профиля NEW_SIP_PROFILE: vesr(config-esbc)# sip-profile NEW_SIP_PROFILE vesr(config-esbc-sip-profile)# #Включить контроль доступности: vesr(config-esbc-sip-profile)# keepalive enable vesr(config-esbc-sip-profile)# #Настроим интервалы контроля: vesr(config-esbc-sip-profile)# keepalive success-interval 120 vesr(config-esbc-sip-profile)# keepalive failed-interval 30 vesr(config-esbc-sip-profile)# vesr(config-esbc-sip-profile)# exit vesr(config-esbc)# #Привязать SIP-профиль к транку TRUNK_OUT: vesr(config-esbc)# trunk sip NEW_TRUNK vesr(config-esbc-trunk-sip)# sip-profile NEW_SIP_PROFILE vesr(config-esbc-trunk-sip)# #Применить и подтвердить изменения: vesr(config-esbc-user-interfacetrunk-sip)# do commit Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds. vesr(config-esbc-user-interfacetrunk-sip)# do confirm Configuration has been confirmed. Commit timer canceled. |
После применения изменений E-SBC будет слать в сторону TRUNK_OUT OPTIONS(пока поддержан только этот метод контроля).
Если транк отвечает на OPTIONS, то следующий запрос будет отправлен через 120 секунд(success-interval).
Если не отвечает(транк недоступен), то через 30 секунд(failed-interval).
| Предупреждение |
|---|
Контроль доступности не работает для user-interface. |
Использование списка причин отбоя для перехода на следующее направление
На E-SBC есть возможность создать список ответов, при получении которых происходит перемаршрутизация на следующее направление(следующий транк в транковой группе/следующее правило в таблице маршрутизации). Это работает как для вызовов, так и для регистраций.
При создании маски для списка можно использовать регулярные выражения PCRE.
Схема:
В таблице маршрутизации два правила, первое направляет вызов в TRUNK_GROUP, второе направляет вызов в TRUNK_3.
| Блок кода | ||
|---|---|---|
| ||
vesr#
vesr# configure
vesr(config)# esbc
#Создать список ответов:
vesr(config-esbc)# cause-list sip LIST
vesr(config-esbc-cause-list-sip)#
#Создать маску по которой будут отбираться ответы для перемаршрутизации
vesr(config-esbc-cause-list-sip)# cause-mask 404
vesr(config-esbc-cause-list-sip)# exit
#Создать SIP-профиль, привязать список к SIP-профилю
vesr(config-esbc)# sip-profile SIP-PROFILE
vesr(config-esbc-sip-profile)# cause-list LIST
vesr(config-esbc-sip-profile)# exit
#Привязать к транковой группе TRUNK-GROUP SIP-профиль
vesr(config-esbc)# trunk-group TRUNK-GROUP
vesr(config-esbc-trunk-group)# sip-profile SIP-PROFILE
vesr(config-esbc-trunk-group)#
#Применить и подтвердить изменения:
vesr(config-esbc-trunk-group)# do commit
Configuration has been successfully applied and saved to flash. Commit timer started, changes will be reverted in 600 seconds.
vesr(config-esbc-trunk-group)# do confirm
Configuration has been confirmed. Commit timer canceled. |
Приходит вызов и начинает маршрутизироваться по данной таблице маршрутизации. В результате вызов уходит на TRUNK_GROUP и оттуда в TRUNK_1, он недоступен, вызов отбивается по Timer B и происходит перемаршрутизация на TRUNK_2(следующий транк в транковой группе), из TRUNK_2 приходит ответ 404 Not Found, код ответа совпадает с маской из списка, который привязан к TRUNK-GROUP, поэтому происходит маршрутизация на следующее направление, в транковой группе больше нет транков, поэтому E-SBC переходит к RULE_2 и вызов маршрутизируется в TRUNK_3.
| Предупреждение |
|---|
Если нет привязанного списка, то перемаршрутизация происходит только по недоступности транка. |
| Предупреждение |
|---|
Если из user-interface пришёл ответ, совпадающий с маской, то перемаршрутизации не будет. |
Перемаршрутизация абонентов
Вызов с зарегистрированного абонента будет направлен в тот транк, где он регистрировался. В случае неудачи перемаршрутизация запрещена.
При вызове с незарегистрированного абонента сначала идёт проверка, разрешены ли с этого user-interface вызовы без регистрации(allow_unreg_call), если проверка успешна, то вызов смаршрутизируется по привязанной таблице маршрутизации и в случае недоступности транка/совпадении ответа с маской из списка произойдёт маршрутизация на следующее направление.
Создание/конфигурирование модификаторов (modification table)
...
