Sun Microsystems, Inc.
spacerspacer
spacer www.sun.com docs.sun.com |
spacer
black dot
 
 
4.  TCP/IP Tunable Parameters TCP Tunable Parameters tcp_max_buf  Previous   Contents   Next 
   
 

tcp_cwnd_max

Description

The maximum value of TCP congestion window (cwnd) in bytes.

For more information on TCP congestion window, refer to RFC 1122 and RFC 2581.

Default

1,048,576

Range

128 to 1,073,741,824

Dynamic?

Yes

When to Change

This is the maximum value a TCP cwnd can grow to. Note that even if an application uses setsockopt(3XNET) to change the window size to a value higher than tcp_cwnd_max, the actual window used can never grow beyond tcp_cwnd_max. Thus, tcp_max_buf should be greater than tcp_cwnd_max in general.

Commitment Level

Unstable

tcp_slow_start_initial

Description

The maximum initial congestion window (cwnd) size in MSS of a TCP connection.

Refer to RFC 2414 on how initial congestion window size is calculated.

Default

4

Range

1 to 4

Dynamic?

Yes

When to Change

Do not change the value.

If the initial cwnd size causes network congestion under special circumstances, decrease the value.

Commitment Level

Unstable

tcp_slow_start_after_idle

Description

The congestion window size in MSS of a TCP connection after it has been idled (no segment received) for a period of one retransmission timeout (RTO).

Refer to RFC 2414 for the calculation.

Default

4

Range

1 to 16,384

Dynamic?

Yes

When to Change

For more information, see "tcp_slow_start_initial".

Commitment Level

Unstable

tcp_sack_permitted

Description

If set to 2, TCP always sends SYN segment with the selective acknowledgment (SACK) permitted option. If TCP receives a SYN segment with a SACK-permitted option and this parameter is set to 1, TCP responds with a SACK-permitted option. If the parameter is set to 0, TCP does not send a SACK-permitted option, regardless of whether the incoming segment contains the SACK permitted option or not.

Refer to RFC 2018 for information on the SACK option.

Default

2 (active enabled)

Range

0 (disabled), 1 (passive enabled), 2 (active enabled)

Dynamic?

Yes

When to Change

SACK processing can improve TCP retransmission performance so it should be actively enabled. If, in some circumstances, the other side can be confused with the SACK option actively enabled, set the value to 1 so that SACK processing is enabled only when incoming connections allow SACK processing.

Commitment Level

Unstable

tcp_rev_src_routes

Description

If set to 0, TCP does not reverse the IP source routing option for incoming connections for security reasons. If set to 1, TCP does the normal reverse source routing.

Default

0 (disabled)

Range

0 (disabled), 1 (enabled)

Dynamic?

Yes

When to Change

If IP source routing is needed for diagnostic purposes, enable it.

Commitment Level

Unstable

tcp_time_wait_interval

Description

The time in milliseconds a TCP connection stays in TIME-WAIT state.

For more information, refer to RFC 1122, 4.2.2.13.

Default

60,000 (60 seconds)

Range

1 second to 10 minutes

Dynamic?

Yes

When to Change

Do not set the value lower than 60 seconds.

For more information, refer to RFC 1122, 4.2.2.13.

Commitment Level

Unstable

tcp_ecn_permitted

Description

Controls Explicit Congestion Notification (ECN) support.

If this parameter is set to 0, TCP does not negotiate with a peer that TCP supports the ECN mechanism.

If this parameter is set to 1 when initiating a connection, TCP does not tell a peer that TCP supports the ECN mechanism.

However, TCP tells a peer that it supports the ECN mechanism when accepting a new incoming connection request, if the peer indicates that the peer supports the ECN mechanism in the SYN segment.

If this parameter is set to 2, in addition to negotiating with a peer on the ECN mechanism when accepting connections, TCP indicates in the outgoing SYN segment that it supports the ECN mechanism when TCP makes active outgoing connections.

Refer to RFC 3168 for information on ECN.

Default

1 (passive enabled)

Range

0 (disabled), 1 (passive enabled), 2 (active enabled)

Dynamic?

Yes

When to Change

ECN can help TCP in handling congestion control better. However, there are existing TCP implementations, firewalls, NATs, and other network devices that are confused by this mechanism. These devices do not comply to the IETF standard.

Because of these devices, the default value of this parameter is set to 1. In rare cases, passive enabling can still cause problems. Set the parameter to 0 only if absolutely necessary.

Commitment Level

Unstable

 
 
 
  Previous   Contents   Next