|
Packit |
667938 |
=head1 NAME
|
|
Packit |
667938 |
|
|
Packit |
667938 |
mrtg-faq - How to get help if you have problems with MRTG
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 SYNOPSIS
|
|
Packit |
667938 |
|
|
Packit |
667938 |
MRTG seems to raise a lot of questions. There are a number of resources
|
|
Packit |
667938 |
apart from the documentation where you can find help for mrtg.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 FAQ
|
|
Packit |
667938 |
|
|
Packit |
667938 |
In the following sections you'll find some additonal Frequently Asked Questions, with Answers.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Why is there no "@#$%" (my native language) version of MRTG?
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Nobody has contributed a F<@#$%.pmd> file yet. Go into the
|
|
Packit |
667938 |
F<mrtg-2.17.7/translate> directory and create your own translation file.
|
|
Packit |
667938 |
When you are happy with it send it to me for inclusion with the next mrtg
|
|
Packit |
667938 |
release.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 I need a script to make mrtg work with my xyz device.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Probably this has already been done. Check the stuff in the
|
|
Packit |
667938 |
F<mrtg-2.17.7/contrib> directory. There is a file called F<00INDEX> in
|
|
Packit |
667938 |
that directory which tells what you can find in there.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 How does this SNMP thing work
|
|
Packit |
667938 |
|
|
Packit |
667938 |
There are many resources on the net that explain SNMP.
|
|
Packit |
667938 |
Take a look at this article from the Linux Journal by David Guerrero
|
|
Packit |
667938 |
|
|
Packit |
667938 |
http://www.david-guerrero.com/papers/snmp/
|
|
Packit |
667938 |
|
|
Packit |
667938 |
And at this rather long document from CISCO.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/snmp.htm
|
|
Packit |
667938 |
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 The images created by MRTG look very strange.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Remove the *-{week,day,month,year}.png files and start MRTG
|
|
Packit |
667938 |
again. Using MRTG for the first time, you might have to do this
|
|
Packit |
667938 |
twice. This will also help when you introduce new routers into the cfg
|
|
Packit |
667938 |
file.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 What is my Community Name?
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Ask the person in charge of your Router or try 'public', as this is the
|
|
Packit |
667938 |
default Community Name.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 My graphs show a flat line during an outage. Why ?
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Well, the short answer is that when an SNMP query goes out
|
|
Packit |
667938 |
and a response doesn't come back, MRTG has to assume something to put
|
|
Packit |
667938 |
in the graph, and by default it assumes that the last answer we got
|
|
Packit |
667938 |
back is probably closer to the truth than zero. This assumption is
|
|
Packit |
667938 |
not perfect (as you have noticed). It's a trade-off that happens to
|
|
Packit |
667938 |
fail during a total outage.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
If this is an unacceptable trade-off, use the B<unknaszero> option.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
You may want to know what you're trading off, so in the spirit of
|
|
Packit |
667938 |
trade-offs, here's the long answer:
|
|
Packit |
667938 |
|
|
Packit |
667938 |
|
|
Packit |
667938 |
The problem is that MRTG doesn't know *why* the data didn't come back, all
|
|
Packit |
667938 |
it knows is that it didn't come back. It has to do something, and it
|
|
Packit |
667938 |
assumes it's a stray lost packet rather than an outage.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Why don't we always assume the circuit is down and use zero, which will
|
|
Packit |
667938 |
(we think) be more nearly right? Well, it turns out that you may be
|
|
Packit |
667938 |
taking advantage of MRTG's "assume last" behaviour without being aware of
|
|
Packit |
667938 |
it.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
MRTG uses SNMP (Simple Network Management Protocol) to collect data, and
|
|
Packit |
667938 |
SNMP uses UDP (User Datagram Protocol) to ship packets around. UDP is
|
|
Packit |
667938 |
connectionless (not guaranteed) unlike TCP where packets are tracked and
|
|
Packit |
667938 |
acknowledged and, if needed, retransmitted. UDP just throws
|
|
Packit |
667938 |
packets at the network and hopes they arrive. Sometimes they don't.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
One likely cause of lost SNMP data is congestion; another is busy routers.
|
|
Packit |
667938 |
Other possibilities include transient telecommunications problems, router
|
|
Packit |
667938 |
buffer overflows (which may or may not be congestion-related), "dirty
|
|
Packit |
667938 |
lines" (links with high error rates), and acts of God. These things
|
|
Packit |
667938 |
happen all the time; we just don't notice because many interactive
|
|
Packit |
667938 |
services are TCP-based and the lost packets get retransmitted
|
|
Packit |
667938 |
automatically.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
In the above cases where some SNMP packets are lost but traffic is
|
|
Packit |
667938 |
flowing, assuming zero is the wrong thing to do - you end up with a graph
|
|
Packit |
667938 |
that looks like it's missing teeth whenever the link fills up. MRTG
|
|
Packit |
667938 |
interpolates the lost data to produce a smoother graph which is more
|
|
Packit |
667938 |
accurate in cases of intermittent packet loss. But with V2.8.4 and above,
|
|
Packit |
667938 |
you can use the "unknaszero" option to produce whichever graph is best
|
|
Packit |
667938 |
under the conditions typical for your network.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 AUTHOR
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Tobias Oetiker E<lt>tobi@oetiker.chE<gt>
|