diff options
author | Garrett Wollman <wollman@FreeBSD.org> | 1995-02-15 03:30:54 +0000 |
---|---|---|
committer | Garrett Wollman <wollman@FreeBSD.org> | 1995-02-15 03:30:54 +0000 |
commit | a2cc1fa20520c3cb6fe008e78db819e03de5773a (patch) | |
tree | 4840feef680d6710b8e45a854120876f476710dd /share/man/man4/tcp.4 | |
parent | 6b03a7ffc51421df485bc11d1017b43b2d678176 (diff) | |
download | src-a2cc1fa20520c3cb6fe008e78db819e03de5773a.tar.gz src-a2cc1fa20520c3cb6fe008e78db819e03de5773a.zip |
Document TCP MIB variables (tcp.4).
Document IP MIB variables (inet.4).
Document Internet-family protocol-specified route cloning (inet.4).
Delete all references to classed addresses (inet.4).
Notes
Notes:
svn path=/head/; revision=6415
Diffstat (limited to 'share/man/man4/tcp.4')
-rw-r--r-- | share/man/man4/tcp.4 | 118 |
1 files changed, 105 insertions, 13 deletions
diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4 index 7f559558b8b9..ff5604273e30 100644 --- a/share/man/man4/tcp.4 +++ b/share/man/man4/tcp.4 @@ -29,9 +29,10 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" @(#)tcp.4 8.1 (Berkeley) 6/5/93 +.\" From: @(#)tcp.4 8.1 (Berkeley) 6/5/93 +.\" $Id$ .\" -.Dd June 5, 1993 +.Dd February 14, 1995 .Dt TCP 4 .Os BSD 4.2 .Sh NAME @@ -79,6 +80,11 @@ call to accept incoming connections. Only active sockets may use the .Xr connect 2 call to initiate connections. +.Tn TCP +also supports a more datagram-like mode, called Transaction +.Tn TCP , +which is described in +.Xr ttcp 4 . .Pp Passive sockets may .Dq underspecify @@ -102,10 +108,12 @@ through which packets are being transmitted and received. Normally this address corresponds to the peer entity's network. .Pp .Tn TCP -supports one socket option which is set with +supports a number of socket options which can be set with .Xr setsockopt 2 and tested with -.Xr getsockopt 2 . +.Xr getsockopt 2 : +.Bl -tag -width TCP_NODELAYx +.It Dv TCP_NODELAY Under most circumstances, .Tn TCP sends data when it is presented; @@ -115,19 +123,57 @@ an acknowledgement is received. For a small number of clients, such as window systems that send a stream of mouse events which receive no replies, this packetization may cause significant delays. -Therefore, -.Tn TCP -provides a boolean option, +The boolean option .Dv TCP_NODELAY -(from -.Aq Pa netinet/tcp.h , -to defeat this algorithm. +defeats this algorithm. +.It Dv TCP_MAXSEG +By default, a sender\- and receiver-TCP +will negotiate among themselves to determine the maximum segment size +to be used for each connection. The +.Dv TCP_MAXSEG +option allows the user to determine the result of this negotiation, +and to reduce it if desired. +.It Dv TCP_NOOPT +.Tn TCP +usually sends a number of options in each packet, corresponding to +various +.Tn TCP +extensions which are provided in this implementation. The boolean +option +.Dv TCP_NOOPT +is provided to disable +.Tn TCP +option use on a per-connection basis. +.It Dv TCP_NOPUSH +By convention, the sender-TCP +will set the +.Dq push +bit and begin transmission immediately (if permitted) at the end of +every user call to +.Xr write +or +.Xr writev . +The +.Dv TCP_NOPUSH +option is provided to allow servers to easily make use of Transaction +TCP (see +.Xr ttcp 4 ). +When the option is set to a non-zero value, +.Tn TCP +will delay sending any data at all until either the socket is closed, +or the internal send buffer is filled. +.El +.Pp The option level for the .Xr setsockopt call is the protocol number for .Tn TCP , available from -.Xr getprotobyname 3 . +.Xr getprotobyname 3 , +or +.Dv IPPROTO_TCP . +All options are declared in +.Aq Pa netinet/tcp.h . .Pp Options at the .Tn IP @@ -137,6 +183,30 @@ see .Xr ip 4 . Incoming connection requests that are source-routed are noted, and the reverse source route is used in responding. +.Sh MIB VARIABLES +The +.Nm +protocol implements three variables in the +.Li net.inet +branch of the +.Xr sysctl 3 +MIB. +.Bl -tag -width TCPCTL_DO_RFC1644 +.It Dv TCPCTL_DO_RFC1323 +.Pq tcp.rfc1323 +Implement the window scaling and timestamp options of RFC 1323 +(default true). +.It Dv TCPCTL_DO_RFC1644 +.Pq tcp.rfc1644 +Implement Transaction +.Tn TCP , +as described in RFC 1644. +.It Dv TCPCTL_MSSDFLT +.Pq tcp.mssdflt +The default value used for the maximum segment size +.Pq Dq MSS +when no advice to the contrary is received from MSS negotiation. +.El .Sh DIAGNOSTICS A socket operation may fail with one of the following errors returned: .Bl -tag -width [EADDRNOTAVAIL] @@ -171,11 +241,33 @@ address. .Sh SEE ALSO .Xr getsockopt 2 , .Xr socket 2 , +.Xr sysctl 3 , .Xr intro 4 , .Xr inet 4 , -.Xr ip 4 +.Xr ip 4 , +.Xr ttcp 4 +.Rs +.%A V. Jacobson, R. Braden, and D. Borman +.%T "TCP Extensions for High Performance" +.%O RFC 1323 +.Re +.Rs +.%A R. Braden +.%T "T/TCP \- TCP Extensions for Transactions" +.%O RFC 1644 +.Re .Sh HISTORY The .Nm -protocol stack appeared in +protocol appeared in .Bx 4.2 . +The RFC 1323 extensions for window scaling and timestamps were added +in +.Bx 4.4 . +The +.Tn "Transaction TCP" +extensions were added in +.Tn FreeBSD +2.0, based on code written for +.Tn SunOS +by Robert Braden and Liming Wei. |