This project asserts a Patch/Micro release binding and the stability level is Stable. Currently, the TCP initial congestion window (cwnd) is calculated following RFC 3390. The default can also be modified using the ndd parameters tcp_slow_start_initial and tcp_slow_start_after_idle. As requested by Ericsson, they want a TCP socket option to control the initial cwnd on a per socket basis. This is to be used in their WAP gateway application. This project implements a TCP socket option, TCP_INIT_CWND. It controls both of the cases handled by the two ndd params. The semantics are described below (a diff on the tcp(7P) man page). The application may set a congestion window of no more than 8 segments. *************** *** 147,152 **** --- 156,172 ---- erwise loses state information about a TCP connection, the connection is aborted and an error is returned to the user. + TCP follows the congestion control algorithm as described in + RFC 2581. And it also supports the initial congestion window + (cwnd) changes in RFC 3390. The initial cwnd calculation can + be overridden by the socket option TCP_INIT_CWND. An application + can use this option to set the initial cwnd to a specified + number of TCP segments. This applies to the cases when the + connection first starts and restarts after an idle period. The + process needs to have the PRIV_SYS_NET_CONFIG privilege if it + wants to specify a number greater than that calculated by RFC + 3390. + SunOS supports TCP Extensions for High Performance (RFC 1323) which includes the window scale and time stamp options, and Protection Against Wrap Around Sequence Numbers