Tutorial: Using SNMP to view ADSL router stats
 

Owners of many brands of router are able to see Signal-to Noise Ratio and attenuation figures for their equipment.  Until now it was not possible for some router owners (such as LinkSys) to see this information for their connection without requesting a "Woosh" test from their ISP. I hope to show you that this is no longer the case!

I am indebted to Paul Hardacre for posting a message on ADSLguide about this program and some details on how to use it. I have merely expanded on his original information.  Note:  Paul has published another version of this tutorial at http://www.geekball.net/linksys/LinksysSNMP.html.


The LinkSys routers and many others have the facility to provide SNMP information. SNMP is Simple Network Management Protocol, an industry standard system for remote hardware monitoring and management. Using SNMP we can see our line stats.

You will need to download the following:

MIB Browser is a Java program, and as downloaded includes Sun Java 1.42 at this time. Note that you will need a Java Virtual Machine installed on your computer for this software to work. This means that the program can be run on Windows (the version we've downloaded) or on Mac OS-X or Linux if you download the .zip version, provided the installed Java will support it. How to obtain and install Java for Linux if you don't already have it is outside the scope of this tutorial.

A full explanation of SNMP is outside the scope of this tutorial, but a simple way to understand it is this. MIB Browser is so named because it allows you to browse a network using SNMP, and convert the raw data you receive, using the MIB (Management Interface Base) file, into something understandable. An OID is an Object IDentifier, a value that is retrieved and displayed by the browser from the router.

I have successfully tested MIB Browser on my WAG54GS router, using Sun Java 1.5.0 (build 1.5.0_06-b05) and the supplied Java 1.42 in Windows 98SE, and in Mandriva Linux 2005LE using the same Sun Java 1.5.0 Runtime Environment. Please report successful use in other operating systems via PM so that we can update this tutorial.

If you are using Linux then you may be able to use Net-SNMP http://net-snmp.sourceforge.net/ instead of MIB Browser, but I have not yet tried it. If you wish to monitor your router for long periods and log and graph the results then you may find MRTG (Multi Router Traffic Grapher or PRTG(PRTG Traffic Grapher) helpful.

Installing MIB Browser

Run the file you downloaded. If required chose an alternative location for the installation, and allow the installer to create a desktop icon as required. You should also unzip the MIB file you downloaded and place it in the \ireasoning\mibbrowser\mibs\ folder so you will know where to find it.

Preparing to run MIB Browser

In order for MIB Browser to show you anything, you will need to configure your router to provide SNMP data. Open the router administration page.  Using the example of the LinkSys, go to the Administration tab, then Management.  Your router should have something similar.

You must set a name for the router, a Get Community name and and a Set Community name, then click the Enable SNMP radio button and click Save Settings to reboot the router. I understand the standard Community names are "Public" and "Private" but you should avoid these for security reasons and create your own. No, not the same as in the example...Don't bother with the Trap to: IP Address boxes, they are not required for this. NOTE: it is not necessary to open any ports in the firewall for this to work, if you do you will be opening your router to potential attack from the Internet.

Running MIB Browser for the first time

Start the program in the usual way. After a short while this window will appear.

You now need to load the MIB file you downloaded. Select the File menu and select Load MIB. Locate the ADSL-LINE-MIB file, select it and open it. You'll see it appear in the left pane of MIB Browser.

Now you must configure MIB Browser with the details of your router. In the address slot type in the IP address of your router, for a LinkSys by default this is 192.168.1.1. Now click the Advanced button to the right.

Leave the Port number as 161. Type in the Read Community slot the name you chose in your router configuration pages for the Get Community. Don't enter anything in the Write Community slot. Make sure you click the drop-down selector for SNMP Version and choose 2. Apply these changes.

Now, back in the main window, right-click on the ADSL-LINE-MIB in the SNMP MIBS pane. Select Walk from the choices. At this point, if you are using a software firewall on your computer it should pop up a warning, such as “JAVAW is trying to access the Trusted Zone” (this is from ZoneAlarm). Allow the application to operate through the firewall on this occasion.

You should then see the Name/OID pane in MIB Browser fill up with data.

If you gradually open up the tree in the MIBs pane you should eventually see the entries in the screen capture above. We are interested in the adslAturCurrSnrMgn, adslAturCurrAtn, adslAtucCurrSnrMgn and adslAtucCurrAtn entries, so scroll down the right-hand pane until you can see them.  Atuc is ADSL Tranceiver Unit (Central), the line card at the DSLAM (Digital subscriber line access multiplexer) in the telephone exchange, and Atur is the ADSL Tranceiver Unit (Remote), the consumer's equipment.

Name

Raw Value

Interpretation

Value

adslAtucCurrSnrMgn

190

In tenths of a decibel so upstream SNR =

19.0 dB

adslAtucCurrAtn

180

In tenths of a decibel so upstream attenuation =

18.0 dB

adslAtucCurrOutputPwr

198

Thanks to to Paul Hardacre I now can confirm this is in tenths of a dBm.

19.8 dBm

adslAtucCurrAttainableRate

960000

It's the maximum upstream speed in bits per second

960 Kbps

adslAturCurrSnrMgn

114


In tenths of a decibel so downstream SNR =

11.4 dB

adslAturCurrAtn

345

In tenths of a decibel so downstream attenuation =

34.5 dB

adslAturCurrOutputPwr

11.9

Thanks to to Paul Hardacre I now can confirm this is in tenths of a dBm.

11.9 dBm

adslAturCurrAttainableRate

10048000

I think it's the download speed in bytes, so

10,048 Kbps

 

At first i didn't really understand the adslAtucCurrAttainableRate and adslAturCurrAttainableRate values.  Thanks to Ray Holden (fence from ADSLGuide) I tried telneting into the router, and got the following corresponding values.  

# adslctl info --stats
adslctl: ADSL driver and PHY status
Status: Showtime  Channel: FAST, Upstream rate = 448 Kbps, Downstream rate = 8128 Kbps
Link Power State: L0
Mode:                   G.DMT
Channel:                Fast
Trellis:                ON
Line Status:            No Defect
Training Status:        Showtime
                Down            Up
SNR (dB):       11.4            19.0
Attn(dB):       34.5            18.0
Pwr(dBm):       19.8            11.9
Max(Kbps):      10048           960
Rate (Kbps):    8128            448

There's something odd about the output power figures - they seem to be reversed in the telnet output compared to the SNMP output.  Bad news - I think the Max stated in both systems is just the theoretical maximum, so we still don't seem to have a figure for actual speed!  Unless you know different...

If you wish to extract the values from MIB Browser to another program you should expand the tree in the SNMP MIBs pane until you see the names of the OIDs you see in the right-hand Name/OIDs pane. Holding down the Ctrl key, select the OIDs in the left pane one at a time, then click the right mouse button and select Table View from the context menu. The values will be displayed as a one-row table, but you can switch this to a column view by clicking the rotate button. If you click the Export button you can then save the data as a Comma-Separated-Value file to a location of your choosing, so that, for example, you can import it into a spreadsheet. One oddity is that on my system, at this point you should select All Files from the Files of Type drop-down control, otherwise you won't see your drives' subfolders.

Exiting MIB Browser

When you have finished viewing the data, exit MIB Browser. You may wish to go back to the router configuration settings and disable SNMP until the next time you wish to collect the data.

There are many features in MIB Browser that I have not yet explored. Note that it is possible to send data to the router using this system, but I suggest you do NOT try to do this!


If there are any corrections I should make to this tutorial, or you have any suggestions for additional options in MIB Browser to be investigated then please contact me by PM at ADSLGuide (ske1fr).