Soluzione 1:
sembra che nethogs farà quello che vuoi.
EDIT:avevo bisogno di installare ncurses-devel, libpcap e libpcap-devel per compilare.
Soluzione 2:
Per trovare quali connessioni sono associate a ciascun processo, utilizzare lsof. Ad esempio:
lsof | grep TCP
Questo ti darà un elenco di connessioni, come questo:
bash 10887 luke 3u IPv4 44638801 0t0 TCP littleyerry.example.com:55212->barista.example.com:ldap (ESTABLISHED)
bash 10913 luke 3u IPv4 44638905 0t0 TCP littleyerry.example.com:55216->barista.example.com:ldap (ESTABLISHED)
ssh 10935 luke 3u IPv4 44639001 0t0 TCP littleyerry.example.com:55219->barista.example.com:ldap (ESTABLISHED)
ssh 10935 luke 4u IPv4 44639008 0t0 TCP littleyerry.example.com:59459->launchpad.example.com:ssh (ESTABLISHED)
bash 10938 luke 3u IPv4 44639107 0t0 TCP littleyerry.example.com:55221->barista.example.com:ldap (ESTABLISHED)
Da lì, dovresti essere in grado di scoprire ogni singola connessione utilizzando gli strumenti che hai citato (iftop, iptraf). Potresti creare un piccolo script per aggregare i dati specifici che stai cercando.