pmacct is a small set of multi-purpose passive network monitoring tools. It can account, classify, aggregate, replicate and export forwarding-plane data, ie. IPv4 and IPv6 traffic; collect and correlate control-plane data via BGP and BMP; collect infrastructure data via Streaming Telemetry. Each component works both as a standalone daemon and as a thread of execution for correlation purposes (ie. enrich NetFlow with BGP data). pmacct main features are:
Suitable to ISP, IXP, CDN, IP carrier, Cloud, DC and hot-spots enviroments and SDN solutions
Runs on Linux, BSDs, Solaris and embedded systems
Support for both IPv4 and IPv6
Collects data through libpcap, Netlink/NFLOG, NetFlow v1/v5/v7/v8/v9, sFlow v2/v4/v5 and IPFIX
Collects Streaming Telemetry data (from 1.6.0)
Supports Cisco NEL for CGNAT scenarios and Cisco NSEL
Saves data to a number of backends including:
Relational databases: MySQL, PostgreSQL and SQLite
noSQL databases: MongoDB and BerkeleyDB
AMQP message exchanges: RabbitMQ
Kafka message brokers
memory tables
flat files
Exports data to remote collectors through IPFIX, NetFlow v5/v9 and sFlow v5
Replicates incoming IPFIX, NetFlow and sFlow packets to remote collectors
Flexible architecture to tag, filter, redirect, aggregate and split captured data
Comes with:
a BGP daemon/thread for efficient visibility into the inter-domain routing plane. Read more here.