The
utility is part of the isdn4bsd package and is used to provide the user with a
mnemonic display of the layers 1, 2 and 3 protocol activities on
the D channel and hex dump of the B channel(s) activities.
Together with two passive supported cards and an easy to build cable it can
also be used to monitor the complete traffic on a S0 bus providing S0 bus
analyzer features.
The
utility is only available for passive supported cards.
Note
All filenames, user specified or default, get a date and time stamp string
added in the form -yyyymmdd-hhmmss: a hyphen, four digits year, two digits
month and day, a hyphen and two digits hour, minutes and seconds.
Tracefiles no longer get overwritten.
In case a new filename is needed within a second, the filename-generating
mechanism sleeps one second.
In case the program is sent a USR1 signal, a new user specified or default
filename with a new date and timestamp is generated and opened.
The following options can be used:
-a
Run
in analyzer mode by using two passive cards and a custom cable which can
be build as described in the file
cable.txt
in the isdn4bsd source distribution.
One card acts as a receiver for the
transmitting direction on the S0 bus while the other card acts as a receiver
for the receiving direction on the S0 bus.
Complete traffic monitoring is
possible using this setup.
-b
switch B channel tracing on (default off).
-d
switch D channel tracing off (default on).
-f
Use
filename
as the name of a file into which to write tracing output (default filename is
isdntrace<n> where n is the number of the unit to trace).
-h
switch display of header off (default on).
-i
print layer 1 (I.430) INFO signals to monitor layer 1 activity (default off).
-l
switch displaying of Layer 2 (Q.921) frames off (default on).
-n
This option takes a numeric argument specifying the minimum
frame size in octets a frame must have to be displayed.
(default 0)
-o
switch off writing trace output to a file (default on).
-p
Use
filename
as the name of a file used for the -B and -P options (default filename
is isdntracebin<n> where n is the number of the unit to trace).
-r
Switch off printing a raw hexadecimal dump of the packets preceding
the decoded protocol information (default on).
-u
Use
number
as the unit number of the controller card to trace (default 0).
-x
Switch on printing of packets with a non-Q.931 protocol discriminator.
(default off).
-B
Write undecoded binary trace data to a file for later or remote
analyzing (default off).
-F
This option can only be used when option -P (playback from binary data file)
is used.
The -F option causes playback not to stop at end of file but rather
to wait for additional data to be available from the input file.
This option is useful when trace data is accumulated in binary format (to
save disk space) but a monitoring functionality is desired.
(default off).
-P
Read undecoded binary trace data from file instead from device (default off).
-R
Use
unit
as the receiving interface unit number in analyze mode.
-T
Use
unit
as the transmitting interface unit number in analyze mode.
When the USR1 signal is sent to a
process, the currently used logfiles are reopened, so that logfile
rotation becomes possible.
The trace output should be obvious.
It is very handy to have the following
standard texts available when tracing ISDN protocols:
I.430
ISDN BRI layer 1 protocol description.
Q.921
ISDN D-channel layer 2 protocol description.
Q.931
ISDN D-channel layer 3 protocol description.
1TR6
German-specific ISDN layer 3 protocol description.
(NOTICE: decoding
of the 1TR6 protocol is included but not supported since i dont have
any longer access to a 1TR6 based ISDN installation.)
The
utility
automatically detects the layer 3 protocol being used by looking at the
Protocol Discriminator (see: Q.931/1993 pp. 53).
FILES
/dev/i4btrc<n>
The devicefile(s) used to get the trace messages for ISDN card unit <n>
out of the kernel.
EXAMPLES
The command:
isdntrace -f /var/tmp/isdn.trace
will start D channel tracing on passive controller 0 with all except B
channel tracing enabled and logs everything into the output file
/var/tmp/isdn.trace-yyyymmdd-hhmmss (where yyyymmdd and hhmmss are replaced
by the current date and time values).