OpenNMS is an open source software to monitor network infrastructure. It can monitor different services such as TCP, ICMP, HTTP, DHCP, DNS, FTP, SMTP, POP3, IMAP and collect data in a database about performance of each protocol.
The number of services and protocols that is able to monitor is large and includes also SSH, Telnet, ping, HTTPS and many more.
Is able to send automatic alarms and alerts when services are not responding. Also displays different graphs and reports.