Calculating Bandwidth-delay Product (bdp) for Tcp Window Scaling in High-speed Networks

Understanding the Bandwidth-Delay Product (BDP) is essential for optimizing TCP performance in high-speed networks. BDP helps determine the optimal TCP window size to fully utilize available bandwidth without causing congestion.

What is Bandwidth-Delay Product?

The Bandwidth-Delay Product is the product of a network’s bandwidth and its round-trip time (RTT). It represents the maximum amount of data that can be in transit in the network at any given time.

Calculating BDP

The formula for BDP is straightforward:

BDP = Bandwidth × RTT

Where bandwidth is measured in bits per second (bps) and RTT in seconds. The result is in bits, which can be converted to bytes by dividing by 8.

Applying BDP to TCP Window Scaling

In high-speed networks, the default TCP window size may be insufficient. TCP window scaling allows the window size to be increased beyond the 65,535-byte limit. To optimize throughput, the window size should be set close to the BDP.

For example, if the bandwidth is 10 Gbps and RTT is 50 ms, the BDP calculation is:

BDP = 10,000,000,000 bps × 0.05 s = 500,000,000 bits

Dividing by 8 gives approximately 62.5 MB. The TCP window should be scaled accordingly to match this value for optimal performance.

  • Measure the network bandwidth in bps.
  • Determine the RTT in seconds.
  • Calculate BDP using the formula.
  • Adjust TCP window size with scaling options.