Home | Telephony | Computers | CRTs | About | Contact | Files Section | Links | Change Log | RSS
Nortel | Lucent | Cisco ISRs | General
IOS configuration notes
IOS connection trunk notes

Cisco IOS Connection Trunks

For the basics of configuring a connection trunk, refer to this section in Cisco IOS configuration notes.

Cisco IOS 'connection trunks' are a method of building transparent virtual tie-lines between Cisco routers using VoIP. These types of trunked VoIP connections are ideally transparent to the equipment involved, down to the dial-pulse level.

This can be interesting to those in the telephone switch equipment hobby to interconnect with other hobbyists or from one site to another. Historically, this sort of thing would have been done with real circuits, either owned or leased from another entity. However, this practice has always been prohibitively expensive for a hobbyist, and these days we can simulate such arrangements over the internet.

These types of tie-lines may generally be used for FXS<->FXO loop start, FXS<->FXO ground start (currently untested), E&M<->E&M, and even ISDN PRI (using clear-channel codec for the D-channel). For most of these types of connection, the signaling data is transmitted in a side channel in the RTP stream in the form of ABCD signaling bits, just the same as they would be on a T1. For ISDN PRI, the D-channel is carried as an independent stream. They are suitable for trunks from one piece of switching equipment to another, or for 'foreign exchange' or 'off premise' lines from another switching system.

This is not perfect for a number of reasons, some of which I'll outline here:

Compatibility Tables

The table and lists in this section cover scenarios that were tested to check the functionality of 'connection trunk' type tie lines using Cisco hardware. Common problems include non-working dial-pulse signaling and various call-state lockups which may require special user intervention to clear the fault.

Each of these scenarios considers two sides: side A and side B. The two sides simply represent the two groupings of hardware which communicate via and are separated by the VoIP link in the middle.

By convention, for the sake of consistency only, for FXS<->FXO links side A will always be the FXS side and side B will always be the FXO side.

We can begin to see patterns in this data which lead us to conclude that specific pieces of hardware may have individual problems.

For a thorough test, calls in each direction must be tested, applicable signaling types must be tested, and various combinations of call sequences must be performed to establish proper behavior regardless of which party originates and which party disconnects first. A list is provided below to detail the tests and verifications that should be performed, where applicable, to establish proper operation with a particular combination of hardware and software.

  1. Call from A-side to B-side, A-side hangs up first
  2. Call from A-side to B-side, B-side hangs up first
  3. Call from B-side to A-side, A-side hangs up first
  4. Call from B-side to A-side, B-side hangs up first
  5. Test tone-type signaling (DTMF and/or MF as applicable)
  6. Test dial type signaling (dial pulse)
  7. Test answer & disconnect supervision (if applicable: FXS/FXO can use battery reversal and battery drop for answer/disconnect supervision, E&M more directly represents far-end hook state)

The following hardware appears to be 100% working as expected at least on one version of IOS.

The following hardware is suspected to have problems which cannot be solved. In some cases, it may be worth trying an older IOS version (e.g. 12.x instead of 15.x) or other router platforms (e.g. 2600/3600 instead of 2800/3800) before ruling them out completely.

The table below covers each individual test case which has been documented thus far. If you have tested a combination not listed in this table, you may contact me with the results of the tests listed above and I can add it to the table.

A-side B-side
connected device ISR IOS version voice port signaling connected device ISR IOS version voice port signaling working? notes
Adit 600 + 500 set 3845 C3845-ADVENTERPRISEK9_SNA-M
IOS 15.1(4)M12a
VWIC2-2MFT-T1/E1
(T1 mode)
'fxs-loop-start' DMS-100 POTS line 2821 C2800NM-ADVENTERPRISEK9_IVS-M
IOS 15.1(4)M
VIC2-4FXO FXO Yes May have had some issues with dial pulse, but was unable to reproduce after fixing some T1 issues. Battery drop disconnect supervision working. Battery reversal not tested (and I don't think it's supported on CAS T1 from a Cisco ISR).
Fluke butt set 3845 C3845-ADVENTERPRISEK9_SNA-M
IOS 15.1(4)M12a
EVM-HD FXS DMS-100 POTS line 2821 C2800NM-ADVENTERPRISEK9_IVS-M
IOS 15.1(4)M
VIC2-4FXO FXO Partial DTMF works, dial-pulse not working (pulses run together, like the hook state sample rate isn't high enough). Battery drop disconnect supervision working. Battery reversal not tested.
telephone VG224 vg224-i6s-mz
IOS 15.1(4)M10
onboard FXS FXS RAX (Rural Automatic eXchange, step by step) 2951 IOS 15.7(3)M5 VIC2-4FXO FXO No VG224 port locks up with continuous ring upon disconnect.
telephone 2951 IOS 15.7(3)M7 VIC3-4FXS/DID FXS RAX (Rural Automatic eXchange, step by step) 2951 IOS 15.7(3)M5 VIC2-4FXO FXO Partial Dial pulse is distorted
telephone 2951 IOS 15.1(4)M2 VIC3-4FXS/DID FXS RAX (Rural Automatic eXchange, step by step) 2951 IOS 15.7(3)M5 VIC2-4FXO FXO Partial Dial pulse is distorted
Meridian 1 Line Side T1 card 3845 ??? VWIC2-2MFT-T1/E1
(T1 mode)
'fxo-loop-start' channel bank 2851? ??? VWIC2-2MFT-T1/E1
(T1 mode)
'fxs-loop-start' Partial Dial pulse was not tested.
DMS-100 T1 E&M 2821 C2800NM-ADVENTERPRISEK9_IVS-M
IOS 15.1(4)M
VWIC2-2MFT-T1/E1
(T1 mode)
E&M wink start ITEC EMS-1 3845 IOS 15.1 VIC3-2E/M E&M wink start Yes The ISR was actually set up for E&M immediate start, but since it acts as signaling pass-through, this shouldn't actually matter?

Part of the Shadytel Web Ring: previous | next | random
This page was last modified 2026-11-09 08:26:22.293235849 -0600