Recommendations for a network monitoring data counter?
You can use the program nethogs
from the standard repository for this.
sudo apt-get install nethogs
sudo nethogs
(it requires root privileges to run)
This tracks the network usage of all processes while it is running. When it starts it shows the current rate at which everything is sending/receiving, but you can press 'm' to switch it to cumulative amounts (and further times to display it as kB/B/MB). It will split sent/received data as well as show you a cumulative total across all processes from the time at which it was run.
Source: Software to show amount of data transfer of each process
Try WireShark. Wireshark is a network tool that captures and analyzes packets off the wire. Wireshark can decode too many protocols.
For more information see WireShark's Website
To download and install click the image below.
This won't list by application, but it does make graphs, which seem to be important to you, and you can get a pretty good idea about which apps are being nethogs by looking at the IP addresses—your mail uplink would be your mail client, web sites would likely be your browser, etc.
sudo apt-get install darkstat
sudo darkstat -i wwan0 4288
Then just browse to http://localhost:4288
to see the graphs.
The command above assumes you want to track your mobile broadband usage, and that your 3G/4G modem uses the wwan0
interface. If you want to track wifi, try wlan0
, or type the command ifconfig
to see which interfaces are available—they're the alphanumeric strings flushed to the left.