Tcpdump, and its graphical kin "sniffer" programs (such as Wireshark, OmniPeek, Ethereal, etc.), can give very deep view into the network traffic, showing the details of every packet. These tools are essential for debugging low-level interactions between devices.

Although it would be possible (but laborious) to sum up the traffic from each packet in a tcpdump. NetFlow systems automatically collect this information and display it.

Another concern is that a packet-sniffing tool such as tcpdump typically must be attached to the same network that you are monitoring. To view traffic on a remote network, you would have to install the tcpdump on a machine connected there, and contrive to have its results passed to your central location. With NetFlow, on the other hand, the router/switch involved in handling the data also collects and exports the flow records to the central NetFlow collector.