When traffic arrives from the Internet over a slow interface such as a Dial-Up Networking connection, the following problem can occur:
Private machines typically set the TCP Window Size in outgoing ACK segments to a large value (often 16,384 bytes or more). This causes remote machines on the Internet to return data as a series of packets in rapid succession, causing a packet flow which may saturate the slow dial-up link, leaving little bandwidth available for other traffic. Users experience delays while such transfers are in progress.NAT32 supports a mechanism which allows such window advertisements to be reduced in size. The mechanism works as follows:
Outgoing window advertisements contained in TCP ACK segments are reduced in size so that lengthy packet sequences are broken up, thus allowing traffic for other TCP connections to be more effectively interleaved on the slow link.The setw command is used to control this mechanism. For each supported Interface, the user may specify the maximum window size which NAT32 should allow over that Interface. A value of 0 turns the mechanism off. The selected value should generally be a multiple of the interface MTU - 40.
For a typical Dial-Up Networking connection of 56 Kbps, a maximum window size of 1460 bytes will force each received packet to be explicitly acknowledged, thus allowing maximum packet interleaving at the expense of a slight overall drop in performance. A value of 2920 or 4380 will allow a reasonable degree of packet interleaving with no discernable drop in performance.
For higher speed connections, a value of 7300 should be suitable, as the associated delays decrease with increasing network speed.