| Demonstrations of tcpsynbl, the Linux BCC/eBPF version. |
| |
| |
| This tool shows the TCP SYN backlog size during SYN arrival as a histogram. |
| This lets you see how close your applications are to hitting the backlog limit |
| and dropping SYNs (causing performance issues with SYN retransmits). For |
| example: |
| |
| # ./tcpsynbl.py |
| Tracing SYN backlog size. Ctrl-C to end. |
| ^C |
| |
| backlog_max = 500L |
| backlog : count distribution |
| 0 -> 1 : 961 |****************************************| |
| 2 -> 3 : 1 | | |
| |
| This output shows that for the backlog limit of 500, there were 961 SYN |
| arrival where the backlog was zero or one, and one accept where the backlog was |
| two or three. This indicates that we are nowhere near this limit. |
| |
| USAGE: |
| |
| # ./tcpsynbl -h |
| usage: tcpsynbl.py [-h] [-4 | -6] |
| |
| Show TCP SYN backlog. |
| |
| optional arguments: |
| -h, --help show this help message and exit |
| -4, --ipv4 trace IPv4 family only |
| -6, --ipv6 trace IPv6 family only |
| |
| examples: |
| ./tcpsynbl # trace syn backlog |
| ./tcpsynbl -4 # trace IPv4 family only |
| ./tcpsynbl -6 # trace IPv6 family only |