|
Linux Westell Monitoring Utilities.
| |
|
 |
Westell does not offer telnet, ftp or SNMP in their products making it very hard to collect ADSL
line statistical data when the collecting program is not running in Windows.
One obscure and undocumented method for collecting data in Westell modems is via multicasting
streams. Multicasting streams use a special IP address in the following range 224.0.0.0 -
224.0.0.255 (224.0.0/24) Local Network Control Block. A device called a Client can join a
multicasting stream or group by sending IGMP (Internet Group Management Protocol) packets to
the server ( Westell 6100 ) requesting to join the group. The server reacts to the join request
by activating the multicast stream. The multicast stream is in the form of UDP packets with a
destination address of 224.73.193.62 using port 1875.
A monitoring program can be set to listen and intercept the multicast stream. Once the packets
are intercepted the monitoring program can decode the encapsulated data payload. The following
table shows some of the already identified parameters present in the data payload. The data
payload for the 6100 is 120 bytes long and starts at 0x2A or 42 decimal in the multicast packet.
| Packet Offset |
Data Payload Offset |
Description |
Units |
Size (bytes) |
| 42 |
00 |
Unknown Data |
NA |
3 |
| 45 |
03 |
Modem Status NOTE1 |
NA |
1 |
| 46 |
04 |
Up Time Counter |
Seconds |
4 |
| 50 |
08 |
Upstream Noise Marging ( SNR ) |
db x 10 |
2 |
| 52 |
10 |
Upstream Power Output |
dbm x 10 |
2 |
| 54 |
12 |
Upstream Attenuation |
db x 10 |
2 |
| 56 |
14 |
Upstream Sync Rate |
kbps |
2 |
| 58 |
16 |
Downstream Noise Marging ( SNR ) |
db x 10 |
2 |
| 60 |
18 |
Downstream Power Output |
dbm x 10 |
2 |
| 62 |
20 |
Downstream Attenuation |
db x 10 |
2 |
| 64 |
22 |
Downstream Sync Rate |
kbps |
2 |
| 66 |
24 |
FEC Errors |
counter |
4 |
| 70 |
28 |
CRC Errors |
counter |
4 |
| 74 |
32 |
HEC Errors |
counter |
4 |
| 78 |
36 |
Signal Lost |
counter |
4 |
| 82 |
40 |
Frame Lost |
counter |
4 |
| 86 |
44 |
TX User Traffic Cell Count |
counter |
4 |
| 90 |
48 |
RX User Traffic Cell Count |
counter |
4 |
| 94 |
52 |
Invalid Dropped Cells |
counter |
4 |
| 98 |
56 |
OAM Control Cells |
counter |
4 |
| 102 |
60 |
0/21 Loopback |
counter |
4 |
| 106 |
64 |
Encapsulation Type ( RFC2684, RFC2364, etc ) |
numeric |
2 |
| 108 |
66 |
RX AAL PDU |
counter |
4 |
| 112 |
70 |
TX AAL PDU |
counter |
4 |
| 116 |
74 |
Unknown Data |
NA |
24 |
| 140 |
98 |
Ethernet RX Frames |
counter |
4 |
| 144 |
102 |
Ethernet TX Frames |
counter |
4 |
| 148 |
106 |
Ethernet Discarded Frames |
counter |
4 |
| 152 |
110 |
Unknown Data |
NA |
10 |
Westell modems require a special UDP packet exchange to start the multicast stream, joining
the multicast 224.73.193.62 group is not enough to start the process. The client must send
the correct sequence of UDP packets to the modem broadcast address. The following tables
show this UDP packet exchange:
Client sends 1 UDP packet with source port 1486 and destination port 2420 data =
0x00,0x0c,0x00
6100 replies with a UDP packet with the model number and serial number.
|
Client sends 1 UDP packet with source port 1486 destination port 2420 data = 0x00,0x01,0x00
6100 replies with a UDP packet with firmware version and data pump version.
|
Client sends 1 UDP packet with source port 1487 destination port 2420 data = 0x00,0x0c,0x00
6100 replies with a UDP packet with the model number and serial number.
|
Client sends 1 UDP packet with source port 1487 destination port 2420 data = 0x00,0x06
6100 replies with a UDP packet with adsl chipset information.
|
Client sends 1 UDP packet with source port 1875 destination port 1875 data = 0x00,0x30,0x01,0xe0,0x49,0xc1,0x3e
6100 starts multicast stream.
|
To stop the multicast stream a single UDP packet is needed:
Client sends 1 UDP packet with source port 1875 destination port 1875 data = 0x00,0x30,0x00
6100 stops multicast stream.
|
The previously mentioned packets act like a master switch to enable or disable the multicast stream.
Joining the 224.73.193.62 group without the UDP start sequence will not start the multicast stream.
Linux monitoring utilities:
start6100
Start (enable) multicast stream utility.
stop6100
Stop (disable) multicast stream utility.
mcastPoll
Collect ADSL statistical data and store it in /var/tmp/stats.cvs ( Join/Leave 224.73.193.62
multicast group.)
Source Code
C source code.
Usage:
mcastPoll [ once | loop ]
[ screen | null ]
Command Line Options:
once Execute the utility one time and exit.
loop Run continuosly updating the /var/tmp/stats.cvs file.
screen Print the statistics to stdout.
null Supress any output to stdout.
start6100 [ broadcast address ]
stop6100 [ broadcast address ]
Command Line Options:
broadcast address Your subnet broadcast address. For example if
your computer is at 192.168.0.3 255.255.255.0 then your broadcast address will be
192.168.0.255.
Log file format:
A file named stats.cvs will be created in /var/tmp. The format of this file is:
DATE(YYYY/MM/DD),TIME(HH:MM:SS), Syncrate down, Noise margin down, Power output down, Attenuation
down, CRC error down, Header errors down, Syncrate up, Noise margin up, Power output up, Attenuation
up, CRC error up, Header errors up.
2004/07/10,21:47:01,3008,23.5,17.5,49.0,224,120,416,16.0,4.5,29.0,3,2
2004/07/11,02:22:44,3008,23.5,18.0,49.5,225,121,416,16.0,4.5,29.0,3,2
2004/07/11,02:22:49,3008,23.0,18.0,49.5,225,121,416,16.0,4.5,29.0,3,2
2004/07/11,02:22:55,3008,23.5,18.0,49.5,225,121,416,16.0,4.5,29.0,3,2
|
To run the mcastPoll utility from cron add the following line to your crontab file:
|
*/5 * * * * root /root/source/mcastPoll/mcastPoll once null
|
Please use our online form to report any errors or problems with this page.
|