The bandwidth delay product is how TCP calculates its receive window size.

The formula is simple.

BDP (in Bits) = bandwidth (bits) * RTT (sec)

Now we need to convert the BDP from bits to Bytes to tell us our best TCP receive window size to use. This size in Bytes is how much bandwidth we can receive before we have to ACK.

One should remember how to calculate bits to bytes.

8 bits = 1 byte

Thus to get from bits to bytes we divide by 8

To get to from bytes to bits we multiply by 8

From megabit to Kilobit x 1000

From kilobit to bit x 1000

Let’s calculate the BDP for a 1 Mbps link.

1 Megabit= 1 x 1000 x 1000 = 1000000 bits per second

Let’s use a random RTT of 30 millisec

BDP (in bits) = 1000000 * 0.30 = 300,000 Bits

Now convert the BDP to bytes by dividing by 8 = 37,500 bytes is the optimal window size.