tcpcong(8) | System Manager's Manual | tcpcong(8) |
tcpcong - Measure tcp congestion state duration. Uses Linux eBPF/bcc.
tcpcong [-h] [-T] [-L] [-R] [-u] [-d] [interval] [outputs]
this tool measures tcp sockets congestion control status duration, and prints a summary of tcp congestion state durations along with the number of total state changes.
It uses dynamic tracing of kernel tcp congestion control status updating functions, and will need to be updated to match kernel changes.
The traced functions are only called when there is congestion state update, and therefore have low overhead. we also use BPF map to store traced data to reduce overhead. See the OVERHEAD section for more details. Since this uses BPF, only the root user can use this tool.
CONFIG_BPF and bcc.
This traces the kernel tcp congestion status change functions. As called rate per second of these functions per socket is low(<10000), the overhead is also expected to be negligible. If you have an application that will create thousands of tcp connections, then test and understand overhead before use.
This is from bcc.
Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool.
Linux
Unstable - in development.
jacky gan
2022-01-27 | USER COMMANDS |