Uninett / nav

Network Administration Visualized
GNU General Public License v3.0
175 stars 38 forks source link

add feature monitoring network #1630

Open pablocaceresz opened 6 years ago

pablocaceresz commented 6 years ago

First I must say that I am surprised at the quality of the software (Just what I was looking for). I am very grateful Second now I have a new problem since I want to monitor the network from different points of the network. similar to this https://github.com/ayeowch/traceroute but add several types of tests like:

TCP Upload UDP Upload SpeedTest Upload FastTest Fast.com Ping MTR IPV4 Ping Gateway Agent TCP Download UDP Download SpeedTest Download SpeedTest Ping Test Page IPV6 MTR

and obviously the idea is to generate alerts etc. the truth loses sense develop it out of this software. I was thinking of developing it within this same APP, developing it as a pluggin? or part of the software.

It would be great if you help me start with this project.

lunkwill42 commented 6 years ago

Hi @pablocaceresz,

Thank you for your kind words. I guess my first question is: Where would this fit into NAV? Would this data have any relation to NAV's existing data models, or would it be entirely separate? Would you, for example, be tracing the routes between IP Devices that are registered in NAV?

pablocaceresz commented 6 years ago

clearly the idea is that it is part of NAV, and occupy the data models that exist, also the idea is to monitor the internal routes, outbound routes, inbound routes, the idea is to obtain all the statistics of the network. The idea is to develop "monitoring probes" internal and external to the network. also optimize BGP routes, detect bottlenecks between routers, etc ... I want to start developing this idea soon ... Let me know what you think about the idea ... Regards!!

lunkwill42 commented 6 years ago

It does sound interesting, although a bit mystifying so far. I'd suggest you make some sort of proof-of-concept for how this would work with NAV. We'd have to decide whether it would be an add-on or a built-in part of NAV when we know more (and, of course, you would be entirely free to distribute an add-on as you please).

I suggest you start reading here: https://nav.uninett.no/doc/latest/hacking/index.html - and then come back if you have more specific questions about how to do the things you want (and remember, bad documentation is a bug too ;) )

Justmeccsn commented 6 years ago

I was thinking to do something about that as well.

I think the concept is more like a remote poller / probe that runs the tests from the probe location and reports back to the central server. Remote poller should be managed from the Central server when adding devices in the Seed DB to select which poller to use for that device.

But that is not the first on my list. :)

lunkwill42 commented 6 years ago

@Justmeccsn Remote, or distributed polling, has been discussed several times, and although it's not officially on our roadmap yet, it probably will be further down that road.

The SNMP poller ipdevpoll already supports distributing its work to multiple processes - the next step would be to run those processes on servers other than the main NAV server (and a mechanism to know which devices can be polled from where).