Annotation of src/usr.bin/tcpbench/tcpbench.1, Revision 1.6
1.6 ! claudio 1: .\" $OpenBSD: tcpbench.1,v 1.5 2008/06/26 07:05:56 jmc Exp $
1.1 djm 2: .\"
3: .\" Copyright (c) 2008 Damien Miller <djm@mindrot.org>
4: .\"
5: .\" Permission to use, copy, modify, and distribute this software for any
6: .\" purpose with or without fee is hereby granted, provided that the above
7: .\" copyright notice and this permission notice appear in all copies.
8: .\"
9: .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10: .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11: .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12: .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13: .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14: .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15: .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16: .\"
1.6 ! claudio 17: .Dd $Mdocdate: June 26 2008 $
1.1 djm 18: .Os
19: .Dt TCPBENCH 1
20: .Sh NAME
21: .Nm tcpbench
22: .Nd TCP benchmarking and measurement tool
23: .Sh SYNOPSIS
24: .Nm
25: .Fl l
26: .Nm
27: .Op Fl v
1.2 jmc 28: .Op Fl B Ar buf
1.1 djm 29: .Op Fl k Ar kvars
1.3 henning 30: .Op Fl n Ar connections
1.1 djm 31: .Op Fl p Ar port
32: .Op Fl r Ar rate
33: .Op Fl S Ar space
1.6 ! claudio 34: .Op Fl V Ar rdomain
1.1 djm 35: .Ar hostname
36: .Nm
37: .Fl s
38: .Op Fl v
1.2 jmc 39: .Op Fl B Ar buf
1.1 djm 40: .Op Fl k Ar kvars
41: .Op Fl p Ar port
42: .Op Fl r Ar rate
43: .Op Fl S Ar space
1.6 ! claudio 44: .Op Fl V Ar rdomain
1.1 djm 45: .Sh DESCRIPTION
46: .Nm
47: is a small tool that performs throughput benchmarking and concurrent
48: sampling of kernel network variables.
49: .Pp
50: .Nm
51: is run as a client/server pair.
52: The server must be invoked with the
53: .Fl s
54: flag, which will cause it to listen for incoming connections.
55: The client must be invoked with the
56: .Ar hostname
57: of a listening server to connect to.
58: .Pp
59: Once connected, the client will send TCP traffic as fast as possible to
60: the server.
61: Both the client and server will periodically display throughput
62: statistics along with any kernel variables the user has selected to
63: sample (using the
64: .Fl k
65: option).
66: A list of available kernel variables may be obtained using the
67: .Fl l
68: option.
69: .Pp
70: The options are as follows:
71: .Bl -tag -width Ds
1.2 jmc 72: .It Fl B Ar buf
1.5 jmc 73: Specify the size of the internal read/write buffer used by
1.1 djm 74: .Nm .
1.5 jmc 75: The default is 262144 bytes.
1.1 djm 76: .It Fl k Ar kvars
1.2 jmc 77: Specify one or more kernel variables to monitor; multiple variables must be
1.1 djm 78: separated with commas.
79: The default is not to monitor any variables.
1.5 jmc 80: Using this option requires read access to
81: .Pa /dev/kmem .
1.2 jmc 82: .It Fl l
83: List the name of kernel variables available for monitoring and exit.
1.3 henning 84: .It Fl n Ar connections
1.4 jmc 85: Use the given number of TCP connections (default: 1).
1.1 djm 86: .It Fl p Ar port
87: Specify the port used for the TCP test stream (default: 12345).
1.2 jmc 88: .It Fl r Ar rate
89: Specify the statistics reporting rate in milliseconds (default: 1000).
90: .It Fl S Ar space
91: Set the size of the socket buffer used for the TCP test stream.
92: On the client this option will resize the send buffer;
93: on the server it will resize the receive buffer.
1.1 djm 94: .It Fl s
95: Place
96: .Nm
97: in server mode, where it will listen on all interfaces for incoming
98: connections.
1.6 ! claudio 99: .It Fl V Ar rdomain
! 100: Set the routing domain.
! 101: The default is 0.
1.1 djm 102: .It Fl v
103: Display verbose output.
104: If specified more than once, increase the detail of information displayed.
105: .El
106: .Sh SEE ALSO
1.2 jmc 107: .Xr netstat 1 ,
1.1 djm 108: .Xr pstat 8