Print this page
4774 Typos in tcp(7P) manpage


 167 can usually recover when datagrams are damaged, delayed, duplicated or
 168 delivered out of order by the underlying communication medium.
 169 .sp
 170 .LP
 171 If the local \fBTCP\fR receives no acknowledgements from its peer for a period
 172 of time, (for example, if the remote machine crashes), the connection is closed
 173 and an error is returned.
 174 .sp
 175 .LP
 176 TCP follows the congestion control algorithm described in \fIRFC 2581\fR, and
 177 also supports the initial congestion window (cwnd) changes in \fIRFC 3390\fR.
 178 The initial cwnd calculation can be overridden by the socket option
 179 TCP_INIT_CWND. An application can use this option to set the initial cwnd to a
 180 specified number of TCP segments. This applies to the cases when the connection
 181 first starts and restarts after an idle period.  The process must have the
 182 PRIV_SYS_NET_CONFIG privilege if it wants to specify a number greater than that
 183 calculated by \fIRFC 3390\fR.
 184 .sp
 185 .LP
 186 SunOS supports \fBTCP\fR Extensions for High Performance (\fIRFC 1323\fR) which
 187 includes the window scale and time stamp options, and Protection Against Wrap
 188 Around Sequence Numbers (PAWS). SunOS also supports Selective Acknowledgment
 189 (SACK) capabilities (RFC 2018) and Explicit Congestion Notification (ECN)
 190 mechanism (\fIRFC 3168\fR).
 191 .sp
 192 .LP
 193 Turn on the window scale option in one of the following ways:
 194 .RS +4
 195 .TP
 196 .ie t \(bu
 197 .el o
 198 An application can set \fBSO_SNDBUF\fR or \fBSO_RCVBUF\fR size in the
 199 \fBsetsockopt()\fR option to be larger than 64K. This must be done \fIbefore\fR
 200 the program calls \fBlisten()\fR or \fBconnect()\fR, because the window scale
 201 option is negotiated when the connection is established. Once the connection
 202 has been made, it is too late to increase the send or receive window beyond the
 203 default \fBTCP\fR limit of 64K.
 204 .RE
 205 .RS +4
 206 .TP
 207 .ie t \(bu


 244 .LP
 245 Turn on \fBTCP ECN\fR mechanism in the following way:
 246 .RS +4
 247 .TP
 248 .ie t \(bu
 249 .el o
 250 Use \fBndd\fR to modify the configuration parameter \fBtcp_ecn_permitted\fR. If
 251 \fBtcp_ecn_permitted\fR is set to \fB0\fR, \fBTCP\fR will not negotiate with a
 252 peer that supports \fBECN\fR mechanism. If \fBtcp_ecn_permitted\fR is set to
 253 \fB1\fR when initiating a connection, TCP will not tell a peer that it supports
 254 ECN mechanism. However, it will tell a peer that it supports \fBECN\fR
 255 mechanism when accepting a new incoming connection request if the peer
 256 indicates that it supports \fBECN\fR mechanism in the SYN segment. If
 257 tcp_ecn_permitted is set to 2, in addition to negotiating with a peer on ECN
 258 mechanism when accepting connections, TCP will indicate in the outgoing SYN
 259 segment that it supports \fBECN\fR mechanism when \fBTCP\fR makes active
 260 outgoing connections. The default for \fBtcp_ecn_permitted\fR is 1.
 261 .RE
 262 .sp
 263 .LP
 264 Turn on the time stamp option in the following way:
 265 .RS +4
 266 .TP
 267 .ie t \(bu
 268 .el o
 269 Use \fBndd\fR to modify the configuration parameter \fBtcp_tstamp_always\fR. If
 270 \fBtcp_tstamp_always\fR is \fB1\fR, the time stamp option will always be set
 271 when connecting to a remote machine. If \fBtcp_tstamp_always\fR is \fB0\fR, the
 272 timestamp option will not be set when connecting to a remote system. The
 273 default for \fBtcp_tstamp_always\fR is \fB0\fR.
 274 .RE
 275 .RS +4
 276 .TP
 277 .ie t \(bu
 278 .el o
 279 Regardless of the value of \fBtcp_tstamp_always\fR, the time stamp option will
 280 always be included in a connect acknowledgement (and all succeeding packets) if
 281 the connecting system has used the time stamp option.
 282 .RE
 283 .sp
 284 .LP
 285 Use the following procedure to turn on the time stamp option only when the
 286 window scale option is in effect:
 287 .RS +4
 288 .TP
 289 .ie t \(bu
 290 .el o
 291 Use \fBndd\fR to modify the configuration parameter \fBtcp_tstamp_if_wscale\fR.
 292 Setting \fBtcp_tstamp_if_wscale\fR to \fB1\fR will cause the time stamp option
 293 to be set when connecting to a remote system, if the window scale option has
 294 been set. If \fBtcp_tstamp_if_wscale\fR is \fB0\fR, the time stamp option will
 295 not be set when connecting to a remote system. The default for
 296 \fBtcp_tstamp_if_wscale\fR is \fB1\fR.
 297 .RE
 298 .sp
 299 .LP
 300 Protection Against Wrap Around Sequence Numbers (PAWS) is always used when the
 301 time stamp option is set.
 302 .sp
 303 .LP
 304 SunOS also supports multiple methods of generating initial sequence numbers.
 305 One of these methods is the improved technique suggested in \fBRFC\fR 1948. We
 306 \fBHIGHLY\fR recommend that you set sequence number generation parameters as
 307 close to boot time as possible. This prevents sequence number problems on
 308 connections that use the same connection-ID as ones that used a different
 309 sequence number generation. The \fBsvc:/network/initial:default\fR service
 310 configures the initial sequence number generation.  The service reads the value
 311 contained in the configuration file \fB/etc/default/inetinit\fR to determine
 312 which method to use.
 313 .sp
 314 .LP
 315 The \fB/etc/default/inetinit\fR file is an unstable interface, and may change
 316 in future releases.
 317 .sp
 318 .LP
 319 \fBTCP\fR may be configured to report some information on connections that
 320 terminate by means of an \fBRST\fR packet. By default, no logging is done. If
 321 the \fBndd\fR(1M) parameter \fItcp_trace\fR is set to 1, then trace data is




 167 can usually recover when datagrams are damaged, delayed, duplicated or
 168 delivered out of order by the underlying communication medium.
 169 .sp
 170 .LP
 171 If the local \fBTCP\fR receives no acknowledgements from its peer for a period
 172 of time, (for example, if the remote machine crashes), the connection is closed
 173 and an error is returned.
 174 .sp
 175 .LP
 176 TCP follows the congestion control algorithm described in \fIRFC 2581\fR, and
 177 also supports the initial congestion window (cwnd) changes in \fIRFC 3390\fR.
 178 The initial cwnd calculation can be overridden by the socket option
 179 TCP_INIT_CWND. An application can use this option to set the initial cwnd to a
 180 specified number of TCP segments. This applies to the cases when the connection
 181 first starts and restarts after an idle period.  The process must have the
 182 PRIV_SYS_NET_CONFIG privilege if it wants to specify a number greater than that
 183 calculated by \fIRFC 3390\fR.
 184 .sp
 185 .LP
 186 SunOS supports \fBTCP\fR Extensions for High Performance (\fIRFC 1323\fR) which
 187 includes the window scale and timestamp options, and Protection Against Wrap
 188 Around Sequence Numbers (PAWS). SunOS also supports Selective Acknowledgment
 189 (SACK) capabilities (RFC 2018) and Explicit Congestion Notification (ECN)
 190 mechanism (\fIRFC 3168\fR).
 191 .sp
 192 .LP
 193 Turn on the window scale option in one of the following ways:
 194 .RS +4
 195 .TP
 196 .ie t \(bu
 197 .el o
 198 An application can set \fBSO_SNDBUF\fR or \fBSO_RCVBUF\fR size in the
 199 \fBsetsockopt()\fR option to be larger than 64K. This must be done \fIbefore\fR
 200 the program calls \fBlisten()\fR or \fBconnect()\fR, because the window scale
 201 option is negotiated when the connection is established. Once the connection
 202 has been made, it is too late to increase the send or receive window beyond the
 203 default \fBTCP\fR limit of 64K.
 204 .RE
 205 .RS +4
 206 .TP
 207 .ie t \(bu


 244 .LP
 245 Turn on \fBTCP ECN\fR mechanism in the following way:
 246 .RS +4
 247 .TP
 248 .ie t \(bu
 249 .el o
 250 Use \fBndd\fR to modify the configuration parameter \fBtcp_ecn_permitted\fR. If
 251 \fBtcp_ecn_permitted\fR is set to \fB0\fR, \fBTCP\fR will not negotiate with a
 252 peer that supports \fBECN\fR mechanism. If \fBtcp_ecn_permitted\fR is set to
 253 \fB1\fR when initiating a connection, TCP will not tell a peer that it supports
 254 ECN mechanism. However, it will tell a peer that it supports \fBECN\fR
 255 mechanism when accepting a new incoming connection request if the peer
 256 indicates that it supports \fBECN\fR mechanism in the SYN segment. If
 257 tcp_ecn_permitted is set to 2, in addition to negotiating with a peer on ECN
 258 mechanism when accepting connections, TCP will indicate in the outgoing SYN
 259 segment that it supports \fBECN\fR mechanism when \fBTCP\fR makes active
 260 outgoing connections. The default for \fBtcp_ecn_permitted\fR is 1.
 261 .RE
 262 .sp
 263 .LP
 264 Turn on the timestamp option in the following way:
 265 .RS +4
 266 .TP
 267 .ie t \(bu
 268 .el o
 269 Use \fBndd\fR to modify the configuration parameter \fBtcp_tstamp_always\fR. If
 270 \fBtcp_tstamp_always\fR is \fB1\fR, the timestamp option will always be set
 271 when connecting to a remote machine. If \fBtcp_tstamp_always\fR is \fB0\fR, the
 272 timestamp option will not be set when connecting to a remote system. The
 273 default for \fBtcp_tstamp_always\fR is \fB0\fR.
 274 .RE
 275 .RS +4
 276 .TP
 277 .ie t \(bu
 278 .el o
 279 Regardless of the value of \fBtcp_tstamp_always\fR, the timestamp option will
 280 always be included in a connect acknowledgement (and all succeeding packets) if
 281 the connecting system has used the timestamp option.
 282 .RE
 283 .sp
 284 .LP
 285 Use the following procedure to turn on the timestamp option only when the
 286 window scale option is in effect:
 287 .RS +4
 288 .TP
 289 .ie t \(bu
 290 .el o
 291 Use \fBndd\fR to modify the configuration parameter \fBtcp_tstamp_if_wscale\fR.
 292 Setting \fBtcp_tstamp_if_wscale\fR to \fB1\fR will cause the timestamp option
 293 to be set when connecting to a remote system, if the window scale option has
 294 been set. If \fBtcp_tstamp_if_wscale\fR is \fB0\fR, the timestamp option will
 295 not be set when connecting to a remote system. The default for
 296 \fBtcp_tstamp_if_wscale\fR is \fB1\fR.
 297 .RE
 298 .sp
 299 .LP
 300 Protection Against Wrap Around Sequence Numbers (PAWS) is always used when the
 301 timestamp option is set.
 302 .sp
 303 .LP
 304 SunOS also supports multiple methods of generating initial sequence numbers.
 305 One of these methods is the improved technique suggested in \fBRFC\fR 1948. We
 306 \fBHIGHLY\fR recommend that you set sequence number generation parameters as
 307 close to boot time as possible. This prevents sequence number problems on
 308 connections that use the same connection-ID as ones that used a different
 309 sequence number generation. The \fBsvc:/network/initial:default\fR service
 310 configures the initial sequence number generation.  The service reads the value
 311 contained in the configuration file \fB/etc/default/inetinit\fR to determine
 312 which method to use.
 313 .sp
 314 .LP
 315 The \fB/etc/default/inetinit\fR file is an unstable interface, and may change
 316 in future releases.
 317 .sp
 318 .LP
 319 \fBTCP\fR may be configured to report some information on connections that
 320 terminate by means of an \fBRST\fR packet. By default, no logging is done. If
 321 the \fBndd\fR(1M) parameter \fItcp_trace\fR is set to 1, then trace data is