Вы находитесь на странице: 1из 11

NGTK DSP Debug Utility usage Document

Introduction:
This document is intended to be useful while debugging NGTJ card in call related issues that
occur during MAX-NG migration.

Signalling Level Debugging


1. How to know if hdlc (mcc) driver is inserted in the card

lsmod | grep mcchdlc

2. What is the link ID and slots for hdlc channel communication

Link ID = 12, Slots = 4,5,6,7,8,9,10 & 11

How TU (PTU) signalling slot is mapped to Processor MCC (HDLC) slot


TU LINK From TIC to From MCC to MCC Switching
MCC TIC Link ID,
(Link ID, Slot (Link ID, Slot Slot ID one_way_switch (src link, src
ID) ID) slot, dst link, dst slot)

Note: Data available on “src


link” & “src slot” is switched to
“dst link” & “dst slot”
TU-0 Copy 0 24,0 24,126 12,4 one_way_switch(24, 0, 12, 4)
one_way_switch(12, 4, 24, 126)
TU-1 Copy 0 25,0 25,126 12,5 one_way_switch(25, 0, 12, 5)
one_way_switch(12, 5, 25, 126)
TU-2 Copy 0 26,0 26,126 12,6 one_way_switch(26, 0, 12, 6)
one_way_switch(12, 6, 26, 126)
TU-3 Copy 0 27,0 27,126 12,7 one_way_switch(27, 0, 12, 7)
one_way_switch(12, 7, 27, 126)
TU-0 Copy 1 28,0 24,126 12,8 one_way_switch(28, 0, 12, 8)
one_way_switch(12, 8, 24, 126)
TU-1 Copy 1 4,0 25,126 12,9 one_way_switch(4, 0, 12, 9)
one_way_switch(12, 9, 25, 126)
TU-2 Copy 1 5,0 26,126 12,10 one_way_switch(5, 0, 12, 10)
one_way_switch(12, 10, 26, 126)
TU-3 Copy 1 6,0 27,126 12,11 one_way_switch(6, 0, 12, 11)
one_way_switch(12, 11, 27, 126)

How to check signalling communication (packet transfer) on MCC link

1. Telnet to the NGTJ card


2. Run following command to check Rx & Tx data count on MCC link (Link ID 12 and slots
4,5,6,7,8,9,10,11)

cat /proc/mccinfo/*
Example:
cat /proc/mccinfo/4
Rx Tx RxErr TxErr RELG RENO REAB RECR
696491 696502 0 0 0 0 0 0

command Usages
cat /proc/mccinfo/4 For TU-0 Copy-0 Rx & Copy-0 & 1 Tx
cat /proc/mccinfo/5 For TU-1 Copy-0 Rx & Copy-0 & 1 Tx
cat /proc/mccinfo/6 For TU-2 Copy-0 Rx & Copy-0 & 1 Tx
cat /proc/mccinfo/7 For TU-3 Copy-0 Rx & Copy-0 & 1 Tx
cat /proc/mccinfo/8 For TU-0 Copy-1 Rx
cat /proc/mccinfo/9 For TU-1 Copy-1 Rx
cat /proc/mccinfo/10 For TU-2 Copy-1 Rx
cat /proc/mccinfo/11 For TU-3 Copy-1 Rx

LAG TU to DSP Mapping:


TU LINK NAME LINK ID DSP LINK
TU-0 Copy 0 24 16
TU-1 Copy 0 25 17
TU-2 Copy 0 26 18
TU-3 Copy 0 27 19
TU-0 Copy 1 28 16
TU-1 Copy 1 4 17
TU-2 Copy 1 5 18
TU-3 Copy 1 6 19

Test Pre-check:

Please check the following steps before using the utilities for debugging purposes.
1. For LAG: Utilities have to be copied in proper MMC directory and should be run after
giving chroot /mmc command only. For PRI/V5/TMG: The utilities must be executed on $
prompt of NGTJ-V3 card. Pl. Refer README available in dsp utility tar.
2.Ensure that distributor or aggregator application is running in the system for functional
testing.
NOTE: One must use released DSP Driver
PSG_MAXNG_LAG_DSPDTMF_ECHO_NGTK_V2_1_7
List of Utilites:
The following three utilities are describe in this document.
1. read_dsp_eth
2. read_dsp_ch
3. read_dsp_api
4. read_packet_count
5. read_dtmf_count
6. read_dsp_ver : To read version of Released DSP Driver installed.
Utility read_dsp_eth:

This utility is used to get ethernet info on DSP. Ethernet configuration parameters like DSP
Ip address, Broadcast IP, Default GW, Netmask, Server IP, MAC address and Link state are read by
this utility from DSP and displayed.

The following screen shot illustrates the utility usage.

Utility read_dsp_ch:

This utility is used to get channel parameter information on DSP. This utility takes channel
number as the only argument in the range of 0-1023 . Channel configuration parameters like system
status, channel status, Tone id, Clip info and packetisation info is read and displayed by this utility.

In the above image “Sys stat” refers to System state whose value will be eaither 0(Standby
mode) or 1(Active mode).
“Ch Stat” refers to Channel status which ranges between value 0-3 in hexadecimal format.
Each of these value represents Receive and Transmit paths status on that channel according to the
table given below.

Channel Status Value(Hex) Inference


00 Receive Disabled and Transmit Disabled
01 Receive Enabled and Transmit Disabled
10 Receive Disabled and Transmit Enabled
11 Receive Enabled and Transmit Enabled

“Tone” refers to Tone id that is being played on that particular channel which ranges
between value 0x-3. Each of these value represents a distinct Tone which can be refered from table
below.

Tone ID Value Tone Name


0x00 CLEAR_TONE_ID
0x01 ACTION_FAIL_TONE_ID
0x02 ZIP_TONE_ID
0x03 BUSY_TONE_ID
0x04 CALL_ROUTING_TONE_ID
0x05 CONGESTION_TONE_ID
0x06 DIAL_TONE_ID
0x07 DISTINCTIVE_RINGING_TONE_ID
0x08 CONTINUOUS_TONE_ID
0x09 N0_UNOBTAINABLE_TONE_ID
0x0a PARKING_TONE_ID
0x0b FAST_INTR_TONE_ID
0x0c RING_BACK_TONE_ID
0x0d TRANSFER_DIAL_TONE_ID
0x0e INTRUSION_TONE_ID
0x0f VERY_SLOW_INTR_TONE_ID
0x10 POSITIVE_INDICATION_TONE_ID
0x11 PAY_TONE_ID
0x12 WARNING_DIAL_TONE_ID
0x13 HOLD_TONE_ID
0x14 SPCL_INFO_TONE_ID
0x15 SLOW_INTR_TONE_ID
0x16 SILENCE_TONE_ID
0x17 ZERO_TONE_ID
0x18 ONE_TONE_ID
0x19 TWO_TONE_ID
0x1a THREE_TONE_ID
0x1b FOUR_TONE_ID
0x1c FIVE_TONE_ID
0x1d SIX_TONE_ID
0x1e SEVEN_TONE_ID
0x1f EIGHT_TONE_ID
0x20 NINE_TONE_ID
0x21 A_TONE_ID
0x22 B_TONE_ID
0x23 C_TONE_ID
0x24 D_TONE_ID
0x25 HASH_TONE_ID
0x26 STAR_TONE_ID
“Clip” refers to 16 dtmf digit buffer that is being played on the channel. When the
channel does not have any Clip to play the default value is 0xFF.
“Ip parameter details ” represents the IP configuration of the channels i.e source
ip/port and destination ip/port for the channel .

Utility read_dsp_api:

This utility is used to get channel parameter and system information on DSP. It accepts a
three arguments. First argument takes choice of parameter to be input which ranges from decimal
values 7-13 and 22. Each choice commands a specific parameter to be read from DSP as listed in
the choice table below. Second and Third parameter take start channel and stop channel range that
takes values between 0-1023.Note that Start channel number should always to less than stop
channel number. Channel configuration parameters like system status, channel status, Tone id, Clip
info, packetisation info, Ethernet status, PHY device status and packet counters are read and
displayed by this utility.

Note: Please note that Start channel and Stop channel arguments in case of System status,
Ethernet Status and Link Status are irrelavent, but do provide dummy start channel and stop channel
data for the utility to work.

CHOICE value Configuration Parameter


7 System Status
8 Channel Status
9 Tone Info
10 Clip info
11 Packetisation Info
12 Ethernet Status
13 PHY Status
22 DSP UDP,RTP packet Counters

System Status:

System status return eaither '0' or '1'. A value of '0' represents system is in StandBy
mode and '1' represents system to be in Active mode.
Channel Status:

Channel status for each of the channel between Start Channel and stop channel is
fetched any displayed by using choice '8' in the utility. Utility returns a values between 0-3 in
hexadecimal format. Each value represent specific Receive mode and Transmit mode on the channel
as per table below. A sample utility run on channel status for channel range 0 to 2 is also given in
the image below the table.

Channel Status Value(Hex) Inference


00 Receive Disabled and Transmit Disabled
01 Receive Enabled and Transmit Disabled
10 Receive Disabled and Transmit Enabled
11 Receive Enabled and Transmit Enabled

Tone info:

Tone Info on each of the channel between Start Channel and stop channel is fetched
any displayed by using choice '9' in the utility. Utility returns a values between 0x00-0x26 for each
channel in hexadecimal format. Each value represent specific Tone being played on the channel as
per table below. Default value when tone is not being played on the channel is 0xff. A sample utility
run on Tone info for channel range 0 to 2 is also given in the image below the table.

Tone ID Value Tone Name


0x00 CLEAR_TONE_ID
0x01 ACTION_FAIL_TONE_ID
0x02 ZIP_TONE_ID
0x03 BUSY_TONE_ID
0x04 CALL_ROUTING_TONE_ID
0x05 CONGESTION_TONE_ID
0x06 DIAL_TONE_ID
0x07 DISTINCTIVE_RINGING_TONE_ID
0x08 CONTINUOUS_TONE_ID
0x09 N0_UNOBTAINABLE_TONE_ID
0x0a PARKING_TONE_ID
0x0b FAST_INTR_TONE_ID
0x0c RING_BACK_TONE_ID
0x0d TRANSFER_DIAL_TONE_ID
0x0e INTRUSION_TONE_ID
0x0f VERY_SLOW_INTR_TONE_ID
0x10 POSITIVE_INDICATION_TONE_ID
0x11 PAY_TONE_ID
0x12 WARNING_DIAL_TONE_ID
0x13 HOLD_TONE_ID
0x14 SPCL_INFO_TONE_ID
0x15 SLOW_INTR_TONE_ID
0x16 SILENCE_TONE_ID
0x17 ZERO_TONE_ID
0x18 ONE_TONE_ID
0x19 TWO_TONE_ID
0x1a THREE_TONE_ID
0x1b FOUR_TONE_ID
0x1c FIVE_TONE_ID
0x1d SIX_TONE_ID
0x1e SEVEN_TONE_ID
0x1f EIGHT_TONE_ID
0x20 NINE_TONE_ID
0x21 A_TONE_ID
0x22 B_TONE_ID
0x23 C_TONE_ID
0x24 D_TONE_ID
0x25 HASH_TONE_ID
0x26 STAR_TONE_ID
Clip info:

Clip Info on each of the channel between Start Channel and stop channel is fetched
any displayed by using choice '10' in the utility. Utility returns 16 byte buffer of Clip info for each
channel in hexadecimal format. Each byte in the buffer represents a dtmf digit . Default value in the
buffer when no clip being played on the channel is 0xff. A sample utility run on Clip info for
channel range 0 to 2 is also given in the image below the table.

Packetization info:

Packetization Info on each of the channel between Start Channel and stop channel is
fetched any displayed by using choice '11' in the utility. Utility returns four hexa decimal values
seperated by space character . First value represents channel number and paketization validity info.
Second value represents UDP source port and destination port combination.Third and fourth values
represent source IP and destination IP address values respectively. A sample utility run on
Packetization info for channel range 0 to 2 is also given in the image below the table.

Ethernet Status:

Ethernet status returns ethernet configuration parameters like DSP Ip address,


Broadcast IP, Default GW, Netmask, Server IP and MAC address by using choice '12' in the utility.
A sample utility run on Ethernet Status is given in the image below the table.

Link Status:

Link status returns state of ethernet phy link status by using choice '13' in the utility.
A sample utility run on Ethernet Status is given in the image below the table.

DTMF count:

DTMF count on each of the channel between Start Channel and stop channel is
fetched and displayed by using choice '21' in the utility. A sample utility run on Dtmf count for
channel range 769 to 770 is also given in the image below the table.

UDP/RTP Packet count:

Udp packet counter API returns per Channel RTP debug counter values and Global
UDP packet counters. A simple utility run using the API for channel range 1-2 is given in image
below.
In the above image “RTP packet receive count” represents total RTP packets received on the
channel, “RTP packet drop count” represents number of packets dropped by the channel due to
buffer crunch in DSP, “UDP packet wrong size count” represent number of packets dropped due to
size mismatch i.e UDP size which is not 172 bytes(G711 20ms) and “UDP packet on channel
disabled count” represents number of packets received on the channel when channel is disabled to
receive RTP packets.
Under Global Debug counters “Global UDP packet received count” represents total number
of UDP packets received, “Global RTP packet received count” represents total number of RTP
packets received, “Global RTP packet dropped count” represents total number of RTP packets
dropped across all the channels, “Global UDP packet wrong size count” represents total number of
UDP packet received of wrong size across all channels, “Global UDP packet on channel disabled
count ” represents total UDP packets received across all the channels when the channel is disabled
and “Global UDP packet on invalid port count” represents total UDP packets received on port
number other than the range (8000-10046).

Note: All the channel specific packet counters are reset to zero when the channel is disabled,
and Global packet counters are not reset at any time(They auto reset at increment on MAX value of
Unsigned interger to zero).

Utility read_packet_count:

This utility is used to get Channel level and Global UDP and RTP packets received counts
on DSP. It accepts a channel number as argument.
Description of each counter above is same as read_dsp_api choice 22.

Utility read_dtmf_count:

This utility is used to get per Channel level dtmf counts on DSP. It accepts a channel number
as argument.

Description of each counter above is same as read_dsp_api choice 21.

Procedure to Capture RTP packet from Remote End:

NOTE: Note down DSP ip. The Laptop shall also be connected in same sub-net and accessible to
core.

1) Establish LAG to Remote End call (don't disconnect)

2) Reset the dsp (use following command : resetdsp)

3) Setup a laptop/pc (with wireshark) with IP as DSP IP (This IP setup require to be done
immediately)

4) Keep Pinging the gateway from laptop/pc

5) Take UDP/RTP packet capture on wireshark

NOTE: You may require to physically reset the MLS-0 and MLS-1 to reset the DSP MAC and start
the packet flow.

Note: There is a better way of capture the RTP packet from Remote End by changing the SIP/SDP
IP field. The procedure is known to Application team.

Вам также может понравиться