You may be a guru at reading perf output and then with a handwave, swish, you can whip your bash script into a frenzy to create flame graphs... but you would still need to dig deeper and isolate where your bottlenecks in the network are.
Davide Miola, Fulvio Risso and Federico Parola took a different approach by creating a tool using eBPF to instrument strategic functions in the network RX and TX entry-points. They crafted a novel tool that they call "Netto"[1] which gives you a focussed view of only the network infra's contribution. Netto can give you answers to coarse grained details of "how much is the rx softirq chewing vs RX syscall" all the way to more fine-grained rx softirq details like the driver cost, GRO, NF, etc. And then do all this in real time with low cpu overhead...
In this talk, Davide et al will go into details of the design and functionality of Netto as well as describe the different kernel hook points. They will then illustrate how one would be able to use this tool to get insights into the network infra's overheads for a specific workload.
[1]https://github.com/miolad/netto
cheers, jamal