The Care and Feeding of ISDN4BSD
previous up next
7.1 Normal Usage 7 The isdntrace Utility 8 The isdndebug Utility

7.2 Analyzing an S0 Bus with two Passive Cards

Analyzing all traffic on an S0 bus is possible using two passive supported ISDN cards, building a special cable and running the isdntrace utility in a special mode called analyze-mode.

The necessary setup looks like this:


You have an NT connected to the exchange with a U interface and to an S0 bus where your ISDN equipment is connected to.

The NT's S0 bus TX lines are connected to every TE's RX lines, so every TE can "hear" what the NT "says": this way anybody on the S0 bus "hears" who is calling in.

The NT's S0 bus RX lines are connected to every TE's TX lines so the NT is the only (!) device, which can "hear" all the TE's TX lines: this means that TE1 cannot "hear" whom TE2 is calling and vice versa.

In case you want to "hear" everything on the S0 bus, you have to put a second card into the i4b machine and connect that cards RX lines to the NT's RX lines, that way you are able to "hear" what every other device sends to the NT. This is supported in i4b in the isdntrace program by means of the so called "analyze mode" which i use heavily in the development of i4b: put 2 cheap card into a 386, solder a cable (documented in cable.txt) install FreeBSD & i4b and you have an ISDN bus analyzer almost for free (in case you recognize what commercial vendors will charge you for such a device).

[Note: there is a mechanism specified to prevent contention of the S0 bus which involves some "echo" bits (explaining this here goes much too far, so in case you want to understand that, study the respective standards text) with which you might be able to read out the NT's RX lines on the TE side. Wether a manufacturer of a given chipset allows a programmer to access those echo bits depends on the chipset being used: the Siemens chipsets i4b currently supports do not have a mechanism built in to allow access to the echo bits.]

previous index next

Hellmuth Michaelis 2000-08-30