Поиск по этому блогу

16.03.2009

Связь между телефонными станциями через сеть передачи данных

В зависимости от телефонной станции или имеющихся лицензий на нее, можно использовать два протокола сигнализации:
  • QSIG
  • Euro ISDN (net5 в cisco)
Первый используется в корпоративных сетях и известен своими функциями, в частности, идентификацией. Очень удобно, когда на дисплее вашего телефона помимо номера отображается ФИО звонящего сотрудника.
Второй используется для подключения к сетям общего пользования, а так же в корпоративных сетях, если по каким-то причинам вы не можете использовать QSIG.
Если один порт, например станция, настраивается для работы в режиме network, то маршрутизатор - user. И наоборот.



В рассматриваемом примере имеются две телефонных станции, каждая из которых подключается интерфейсом PRI к маршрутизаторам Cisco, соединенных между собой некой сетью передачи данных.

Требования к маршрутизаторам следующие:
  1. Модель из серии 2800, например, 2811. Модель из серии 3800, например, 3845. Используйте конфигуратор Cisco, чтобы составить спецификацию оборудования.
  2. Программное обеспечение маршрутизатора. Если вы воспользовались конфигуратором, то наверняка включили программное обеспечение IOS IP VOICE/SP SERVICES, которое входит в состав т.н. bundle Voice (V_K9)
  3. Если подключение производится только одним потоком, то достаточно карты VWIC2-1MFT-T1/E1 (1-Port 2nd Gen Multiflex Trunk Voice/WAN Int. Card - T1/E1)
  4. Для преобразования голоса в ip и обратно необходимы карты PVDM2 с определенным количеством цифровых процессоров DSP, выполняющих кодирование/декодирование голоса. Есть карты на 8,16,32,48,64 процессора. Если прогнозируется, что не будет больше, чем 16 одновременных звонков, то можно обойтись PVDM2-16, входящий в состав СISCO2811-V_K9. Если необходимо использовать все таймслоты на карте станции, то - PVDM2-32 минимум. Если маршрутизатор комплектуется картами с FXS/FXO портами, то каждый порт будет использовать 1 DSP из имеющихся. Неоходимо это предусматривать.
Пусть имеем маршрутизатор CISCO3845-V_K9 в следующей комплектации (серийные номера удалены):
router1#show inventory
NAME: "3845 chassis", DESCR: "3845 chassis"
PID: CISCO3845 , VID: V01 , SN: x

NAME: "c3845 Motherboard with Gigabit Ethernet on Slot 0", DESCR: "c3845 Motherboard with Gigabit Ethernet"
PID: CISCO3845-MB , VID: V06 , SN: x

NAME: "VWIC2-1MFT-T1/E1 - 1-Port RJ-48 Multiflex Trunk - T1/E1 on Slot 0 SubSlot 0", DESCR: "VWIC2-1MFT-T1/E1 - 1-Port RJ-48 Multiflex Trunk - T1/E1"
PID: VWIC2-1MFT-T1/E1 , VID: V01 , SN: x

NAME: "One-Port Fast Ethernet High Speed WAN Interface Card on Slot 0 SubSlot 1", DESCR: "One-Port Fast Ethernet High Speed WAN Interface Card"
PID: HWIC-1FE , VID: V01 , SN: x

NAME: "VWIC2-1MFT-T1/E1 - 1-Port RJ-48 Multiflex Trunk - T1/E1 on Slot 0 SubSlot 3", DESCR: "VWIC2-1MFT-T1/E1 - 1-Port RJ-48 Multiflex Trunk - T1/E1"
PID: VWIC2-1MFT-T1/E1 , VID: V01 , SN: x

NAME: "PVDMII DSP SIMM with four DSPs on Slot 0 SubSlot 4", DESCR: "PVDMII DSP SIMM with four DSPs"
PID: PVDM2-64 , VID: V01 , SN: x

Телефонная станция подключается в порт Slot 0 Subslot 3. Она не имеет QSIG лиценции, поэтому подключение производится по Euro ISDN. К тому же станция может быть только как user.
Для начала задается режим работы карты VWIC2-1MFT-T1/E1:
card type e1 0 3

Разрешается использовать синхронизацию от этой карты:

network-clock-participate wic 3

Можно использовать ее в качестве основной, если источников несколько:

network-clock-select 1 E1 0/3/0

Определяется тип сигнализации Euro ISDN:

isdn switch-type primary-net5

После этого появится контроллер E1. Договариваемся, что в E1 не будет использоваться CRC4 и будут использоваться все имеющиеся таймслоты:
controller E1 0/3/0
framing NO-CRC4
pri-group timeslots 1-31
Автоматически создается интерфейс D-канала, в который надо внести изменения с учетом того, что маршрутизатор выполняет функции network:
interface Serial0/3/0:15
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn protocol-emulate network
isdn incoming-voice voice
isdn send-alerting
isdn sending-complete
no cdp enable
Производится проверка подключения:

prouter1#show controllers e1
E1 0/3/0 is up.
Applique type is Channelized E1 - balanced
Cablelength is Unknown
No alarms detected.
alarm-trigger is not set
Version info Firmware: 20071011, FPGA: 13, spm_count = 0
Framing is NO-CRC4, Line Code is HDB3, Clock Source is Line.
Data in current interval (581 seconds elapsed):
0 Line Code Violations, 0 Path Code Violations
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
Total Data (last 24 hours)
0 Line Code Violations, 0 Path Code Violations,
0 Slip Secs, 0 Fr Loss Secs, 0 Line Err Secs, 0 Degraded Mins,
0 Errored Secs, 0 Bursty Err Secs, 0 Severely Err Secs, 0 Unavail Secs
router1#show isdn status
Global ISDN Switchtype = primary-net5
ISDN Serial0/3/0:15 interface
******* Network side configuration *******
dsl 0, interface ISDN Switchtype = primary-net5
Layer 1 Status:
ACTIVE
Layer 2 Status:
TEI = 0, Ces = 1, SAPI = 0, State = MULTIPLE_FRAME_ESTABLISHED
Layer 3 Status:
2 Active Layer 3 Call(s)
CCB:callid=C78C, sapi=0, ces=0, B-chan=2, calltype=VOICE
CCB:callid=3335, sapi=0, ces=0, B-chan=9, calltype=VOICE
Active dsl 0 CCBs = 2
The Free Channel Mask: 0xFFFF7EFD
Number of L2 Discards = 0, L2 Session ID = 1
Total Allocated ISDN CCBs = 2
Теперь настраивается voip часть:

voice rtp send-recv
!
voice service voip
allow-connections h323 to h323
h323

Пора приступить к номерному плану. Автоматически был создан порт voice-port 0/3/0:15. Именно он будет использоваться в т.н. dial-peer - маршрутах звонков. Исходные данные:
86101XXX - номера на АТС, подключенной к маршрутизатору router1;
86102XXXX - номера на АТС, подключенной к маршрутизатору router2;
10.0.0.1 - ip-адрес на интерфейсе маршрутизатора router1, через который доступен router2;
10.0.0.2 - ip-адрес на интерфейсе маршрутизатора router2, через который доступен router1.
Номера dial-peer выбираются произвольно. Главное, чтобы были уникальными.
dial-peer voice 86101 pots
destination-pattern 86101...
progress_ind alert enable 8
direct-inward-dial
port 0/3/0:15
forward-digits all
!
dial-peer voice 86102 voip
destination-pattern 86102....
session target ipv4:10.0.0.2
dtmf-relay rtp-nte
no vad
можно добавить настройки для факсов
fax-relay ecm disable
fax rate 14400
fax nsf 000000
fax protocol t38 nse ls-redundancy 0 hs-redundancy 0 fallback cisco

Следует учитывать, что в dial-peer voip, где используется session target ipv4 нельзя указать адрес источника. Источник можно указать:
  • для session target ras, когда вы настраиваете h323-шлюз и вводите соответствующие команды на интерфейсе для регистрации на гейткипере;
  • для session target sip-server, когда вы настраиваете подключение маршрутизатора к SIP-серверу.

Расписывать конфигурацию router2 подробно не стану. Отмечу, что для связи со станцией используется сигнализация QSIG, станция является network для маршрутизатора.
card type e1 0 0
!
network-clock-participate wic 0
network-clock-select 1 E1 0/0/0
!
isdn switch-type primary-qsig
!
voice rtp send-recv
!
voice service voip
qsig decode
allow-connections h323 to h323
h323
!
controller E1 0/0/0
framing NO-CRC4
pri-group timeslots 1-31
!
interface Serial0/0/0:15
no ip address
encapsulation hdlc
isdn switch-type primary-qsig
isdn incoming-voice voice
isdn send-alerting
isdn sending-complete
no cdp enable
!
dial-peer voice 86102 pots
destination-pattern 86102....
progress_ind alert enable 8
direct-inward-dial
port 0/0/0:15
forward-digits all
!
dial-peer voice 86101 voip
destination-pattern 86101...
session target ipv4:10.0.0.1
dtmf-relay rtp-nte
no vad
fax-relay ecm disable
fax rate 14400
fax nsf 000000
fax protocol t38 nse ls-redundancy 0 hs-redundancy 0 fallback cisco
Чтобы слушать привычные тоны КПВ, необходимо в voice-port настроить cptone:
voice-port 0/0/0:15
cptone RU
Когда что-то не работает, необходимо включать отладку и смотреть:

router#debug isdn q931

router#debug voice dcapi inout

Для корректной работы сервисов желательно использовать один тип сигнализации. Передача имен в данном примере была бы возможна, если бы router1 и ATC использовали QSIG, как и вторая станция.