Version 9 (modified by 7 years ago) ( diff ) | ,
---|
Пример настройки маршрутизации телефонных вызовов через сеть IP с резервированием через канал ТЧ ¶
В этом примере рассмотрено применение маршрутизации вызовов SIP в плате VE-01 для организации телефонной связи через сеть IP с резервированием с помощью одного или нескольких каналов ТЧ.
Постановка задачи ¶
Дано ¶
Имеется две станции - А и Б. На каждой из станций установлен блок MC04-DSL-3U с платами EM-04, FS-08 и VE-01. Между станциями организована сеть IP, а также один или несколько каналов ТЧ с сигнализацией АДАСЭ. Плата VE-01 станции А имеет адрес 192.168.1.67, плата VE-01 станции Б - 192.168.1.68. К портам плат FS-08 подключены телефонные аппараты абонентов. На станции А абоненты имеют 3-значные номера 1xx, на станции Б - 3-значные номера 5xx. К платам EM-04 подключены межстанционные каналы ТЧ.
Требуется ¶
Необходимо организовать возможность абонентам станции А вызывать абонентов станции Б таким образом, чтобы при работающей сети IP вызовы передавались через сеть IP, а при отсутствии связи в сети IP вызовы передавались через канал(ы) ТЧ.
Конфигурация сети плат VE-01 ¶
Для начала на вкладке "Настройки" диалога конфигурации платы VE-01 устанавливаем параметры сетевого подключения. На станции А устанавливаем IP адрес 192.168.1.67, на станции Б - адрес 192.168.1.68:
Здесь же устанавливаем режим канальной платы.
Конфигурация абонентов FXS ¶
На вкладке "SIP окончания" диалога конфигурации плат VE-01 станций А и Б создаем по три канальных окончания FXS с номерами каналов 1, 2 и 3. При этом окончаниям станции А назначаем URI 111@192.168.1.67
, 112@192.168.1.67
и 113@192.168.1.67
, а окончаниям станции Б - 511@192.168.1.68
, 512@192.168.1.68
и 513@192.168.1.68
. В остальных конфигурационных параметрах канальных окончаний можно оставить значения по умолчанию. В результате таблица канальных окончаний SIP должна выглядеть следующим образом:
Теперь в таблице коммутации блоков необходимо соединить каналы 1, 2 и 3 плат VE-01 с каналами плат FS-08, используемых для подключения телефонных аппаратов абонентов.
Создание маршрута для вызовов через сеть IP ¶
Настало время дать абонентам станции А возможность вызывать абонентов станции Б. Для начала создаем маршрут, направляющий вызовы абонентов станции Б на станцию Б через сеть IP. Для этого на вкладке "Маршруты SIP" конфигурации платы VE-01 станции А добавляем маршрут с параметрами, показанными на рисунке:
После нажатия "OK" и записи конфигурации в плату VE-01 проверим работу созданной нами конфигурации. Для этого на станции А снимем трубку любого телефонного аппарата и наберем номер 511. Телефонный аппарат 511 на станции Б должен зазвенеть. Работает это следующим образом. После набора номера 511 на телефонном аппарате станции А канальное окончание FXS платы VE-01 формирует URI, на который направляет вызов, добавляя к набранному номеру "511" свой собственный домен "192.168.1.67". В результате получается URI 511@192.168.1.67
. Вызов этого URI передается прокси-серверу платы. Прокси-сервер ищет совпадение вызываемого URI с регулярным выражением маршрута в таблице маршрутизации. Так как URI 511@192.168.1.67
совпадает с регулярным выражением созданного нами маршрута, вызываемый URI заменяется значением поля "Замена URI" маршрута, при этом вместо "\1" подставляется значение группы "(5..)" регулярного выражения. В результате замены получается URI 511@192.168.1.68
, и прокси-сервер направляет вызов на адрес станции Б.
Конфигурация канального окончания АДАСЭ как резервного канала ¶
На вкладке "SIP окончания" диалога конфигурации плат VE-01 станций А и Б создаем канальное окончание АДАСЭ. При этом на станции А присваиваем ему SIP URI с доменом 192.168.1.67, на станции Б - с доменом 192.168.1.68. Имя пользователя SIP URI в данном случае значения не имеет, но оно не должно совпадать ни с одним из существующих номеров. На станции А дополнительно устанавливаем конфигурационный параметр "Рег. выражение вызова" в значение "^5..$", что разрешит канальному окончанию принимать вызовы номеров станции Б. В остальных конфигурационных параметрах можно оставить значения по умолчанию:
Теперь в таблице коммутации блоков необходимо соединить канал только что созданного канального окончания АДАСЭ платы VE-01 с каналом порта платы EM-04, используемым для подключения межстанционного канала ТЧ.
Создание маршрута для резервирования через канал ТЧ ¶
Теперь добавим маршрут, благодаря которому будет осуществляться резервная связь через канал ТЧ в случае отсутствия связи через сеть IP. Для этого на вкладке "Маршруты SIP" конфигурации платы VE-01 станции А добавим маршрут с параметрами, изображенными на рисунке:
Обратите внимание, что в отличие от маршрута, созданного нами ранее, поле "Порядок" имеет значение 1, так как нам важен порядок, в котором прокси-сервер будет проверять маршруты в таблице.
Примечание: текущая версия веб-интерфейса блока MC04-DSL-3U не позволяет создать два маршрута с одним и тем же регулярным выражением. Чтобы обойти это ограничение, регулярное выражение было изменено, но так чтобы, тем не менее, сохранить его смысл - с регулярным выражением должны совпадать вызовы номеров 5XX, принадлежащих станции Б. В будущем данное ограничение веб-интерфейса планируется устранить.
В поле "Замена URI" создаваемого маршрута в качестве домена указан адрес loopback-интерфейса 127.0.0.1, в результате чего вызов, совпадающий с регулярным выражением этого маршрута, будет снова направлен в свою собственную плату.
После добавления маршрута таблица маршрутов должна выглядеть так:
Проверка работы резервирования связи через канал ТЧ ¶
После добавления второго маршрута и записи конфигурации в плату VE-01 на станции А поставленная задача решена. Теперь осталось проверить работу созданной конфигурации и убедиться, что вызовы проходят как при наличии, так и при отсутствии связи через сеть IP.
Для начала еще раз проверим, что при наличии связи в сети IP вызовы выполняются по сети IP. Для этого с любого телефонного аппарата станции А вызовем номер абонента станции Б. После установки соединения откроем вкладку "SIP окончания" конфигурации платы VE-01 любой из станций и убедимся, что канальное окончание АДАСЭ свободно:
Теперь положим трубки телефонных аппаратов и имитируем нарушение связи в сети IP. Для этого в веб-интерфейсе любой из станций откроем вкладку "Ethernet", под-вкладку "Порты", найдем строку, соответствующую установленной плате VE-01 и поставим отметку чекбокса в столбце "Блокировка порта", лишив таким образом плату VE-01 связи через сеть IP:
Теперь снова выполним вызов абонентом станции А абонента станции Б. Несмотря на отсутствие связи через сеть IP, соединение все равно произойдет, хотя на выполнение вызова потребуется заметно больше времени. Убедимся, что на этот раз в соединении участвует межстанционный канал ТЧ, снова открыв вкладку "SIP окончания" в конфигурации платы VE-01:
Как был выполнен вызов в последнем эксперименте? После набора номера 511 абонентом станции А прокси-сервер станции А получил вызов URI sip:511@192.168.1.67
. Прокси-сервер начал выполнять поиск этого URI в таблице маршрутов. Первым был проверен маршрут с порядком 0, в результате чего был сформирован вызов URI sip:511@192.168.1.68
. Однако из-за отсутствия связи в сети IP этот вызов был неудачным (прокси-сервер не получил никакого ответа от хоста 192.168.1.68). Поэтому прокси-сервер продолжил поиск совпадений в таблице маршрутов. Регулярное выражение следующего маршрута в таблице также совпало с URI sip:511@192.168.1.67
, в результате чего был сформирован вызов URI sip:511@127.0.0.1
.
Так как адрес 127.0.0.1 является loopback-адресом, прокси-сервер отправляет вызов сам себе. Однако вновь полученный вызов URI sip:511@127.0.0.1
уже не совпадает с регулярными выражениями маршрутов, и вызов передается канальным окончаниям SIP-шлюза. Вызываемый номер 511 совпадает с регулярным выражением канального окончания АДАСЭ, в результате канальное окончание АДАСЭ принимает и обслуживает наш вызов.
Примечание: для правильной работы описанной схемы резервирования требуется определенная установка конфигурационных параметров прокси-сервера в файле
/etc/repro.config
платы VE-01 станции А. А именно, параметрParallelForkStaticRoutes
должен быть установлен в значениеfalse
, а параметрContinueProcessingAfterRoutesFound
- в значениеtrue
. Именно такие значения этих параметров установлены по умолчанию в платах VE-01, однако стоит в этом убедиться, если что-то все-таки работает неправильно.
Дальнейшие улучшения ¶
Описанное выше решение поставленной задачи дано как иллюстрация использования маршрутов SIP. В нем намеренно опущены некоторые несущественные для понимания сути решения моменты, которые, однако, в реальной жизни бывают полезны. Поэтому, хотя сделанная конфигурация полностью решает поставленную задачу, она может быть дополнительно улучшена.
Регулярное выражение номера канальных окончаний FXS ¶
Полезно установить канальным окончаниям FXS конфигурационный параметр "Рег. выражение номера" чтобы вызов выполнялся сразу после набора нужного числа цифр. Это сократит ожидание абонентом соединения, которое в случае отсутствия связи по сети IP и без того значительное. В простейшем случае, если все набираемые номера состоят из трех цифр, параметру "Рег. выражение номера" можно установить значение "..." (три точки).
Регулярное выражение набора канального окончания АДАСЭ ¶
Канальное окончание АДАСЭ станции Б принимает из канала номер вызываемого абонента. При этом критерием окончания номера является таймаут, что вносит свой вклад в общую задержку установки соединения. Так как известно, что номера станции Б 3-значные, полезно установить канальному окончанию АДАСЭ станции Б конфигурационный параметр "Рег. выражение набора" в значение "...".
Attachments (11)
- ss1.jpg (58.8 KB ) - added by 7 years ago.
- ss2.jpg (36.5 KB ) - added by 7 years ago.
- ss4.jpg (47.4 KB ) - added by 7 years ago.
- ss6.2.jpg (27.2 KB ) - added by 7 years ago.
- ss7.jpg (43.8 KB ) - added by 7 years ago.
- ss8.jpg (35.4 KB ) - added by 7 years ago.
- ss9.jpg (44.3 KB ) - added by 7 years ago.
- ss3.jpg (11.7 KB ) - added by 7 years ago.
- ss10.jpg (63.9 KB ) - added by 4 years ago.
- ss5.jpg (30.8 KB ) - added by 4 years ago.
- ss6.jpg (58.2 KB ) - added by 4 years ago.
Download all attachments as: .zip