IBM Netezza Replication Services, Version 1.6

TCP window size and latency

IBM® Netezza® Replication Services uses the TCP/IP protocol to transfer data. The TCP window size governs the amount of data that TCP/IP allows to be sent at a time. To help optimize the rate at which data is transferred between replication log server hosts, you must correctly set the TCP window size.

The maximum possible data transfer rate for a network is its network bandwidth, typically specified in units of bits per second. Typical network transfer rates are 100 Mb/s, 1 Gb/s, and 10 Gb/s. These are maximum theoretical values that can be reached only when there is no network congestion or network sharing between applications and only over short distances (LANs) with low latency.

After sending data, TCP/IP waits for confirmation that the data was received. As a normal part of Ethernet and network routing, packets can be discarded to cope with network congestion. When this happens, the missing data is sent again from the TCP window. If latency is large and the TCP window is small, even a theoretically fast network connection might be limited. For example, a 1 Gb/s connection has a theoretical capacity of roughly 100 MB/s, but with a default 128 KB TCP window and 100 ms latency, transfers only 1.2 MB/s. This is because after sending 128 KB of data, the network waits 0.1 seconds for confirmation, resulting in a large percent of time spent waiting. The same connection with a 10 MB TCP window can fully use the network bandwidth of 100 MB/s.