.TH tcpwdist.d 1m "$Date:: 2007-08-05 #$" "USER COMMANDS" .SH NAME tcpwdist.d \- simple TCP write dist by process. Uses DTrace. .SH SYNOPSIS .B tcpwdist.d .SH DESCRIPTION This measures the size of writes from applications to the TCP level, which may well be much larger than the MTU size (this is application writes not packet writes). It can help identify which process is creating network traffic, and the size of the writes by that application. It uses a simple probe that produces meaningful output for most protocols. Tracking TCP activity by process is complex for a number of reasons, the greatest is that inbound TCP traffic is asynchronous to the process. The easiest TCP traffic to match is writes, which this script demonstrates. However there are still issues - for an inbound telnet connection the writes are associated with the command, for example "ls -l", not something meaningful such as "in.telnetd". Scripts that match TCP traffic properly include tcpsnoop and tcptop. Since this uses DTrace, only the root user or users with the dtrace_kernel privilege can run this command. .SH OS Solaris .SH STABILITY unstable - this script uses fbt provider probes which may change for future updates of the OS, invalidating this script. Please read Docs/Notes/ALLfbt_notes.txt for further details about these fbt scripts. .SH EXAMPLES .TP Sample until Ctrl\-C is hit then print report, # .B tcpwdist.d .PP .SH FIELDS .TP PID process ID .TP CMD command and argument list .TP value TCP write payload size in bytes .TP count number of writes .PP .SH DOCUMENTATION See the DTraceToolkit for further documentation under the Docs directory. The DTraceToolkit docs may include full worked examples with verbose descriptions explaining the output. .SH EXIT tcpwdist.d will sample until Ctrl\-C is hit. .SH AUTHOR Brendan Gregg [Sydney, Australia] .SH SEE ALSO tcpsnoop(1M), tcptop(1M), dtrace(1M)