There are a ton of network monitoring packages that can potentially do this. Nagios, NetXMS, Zabbix, Zenoss, Munin, etc. Many of them look great, but don't deliver. I've personally used Zabbix and Zenoss and been extremely disappointed with both. I know there is a Zabbix client package for pfSense, but Zabbix currently doesn't work properly with FreeBSD in terms of monitoring, so the whole package is pointless. I would encourage the OP to review these choices and decide what their needs are.