networking – Which process is using my network data?


Short question: In Ubuntu, how can I find out how much network data each process has used at a certain time interval (e.g., last hour, last day, …)?

Long question: I am connecting my Ubuntu machine to the internet using a mobile data plan. After several hours of connection, the data usage is more than 2 GB, which is a bit more than expected. So I would like to find out where does the data go. Searching on the internet, I found several tools, for example, nethogs. But nethogs only tells me the instantaneous bandwidth each process is using, which I do not care. Thank you for any comments.