*In this post:** A detailed, step-by-step guide demonstrating the steps I use to solve a problem similar to one encountered in my CS 372 Intro to Networking class.*

You have a TCP sender that is continuously sending a 1,096-byte segment. If a TCP receiver advertises a window size of 8,551 bytes, and with a link transmission rate 35 Mbps an end-to-end propagation delay of 33.3 ms, what is the utilization?

(Assume no errors, no processing or queueing delay, and ACKs transmit instantly. Also assume the sender will not transmit a non-full segment.)

Suppose they want the answer as a percentage rounded to one decimal place.

This one breaks down into a series of simple steps:

## Step 1: Calculate how many segments the pipeline holds

formula:segments = floor(pipeline size / segment size)

8551 / 1096 = 7.802 =7 segments

Remember to round down! There are no partial segments in this pipeline.

## Step 2: Calculate how long it takes to send one segment

This uses the L/R formula, which is:

formula:time to send one segment = length of segment / transmission rate

(Don’t forget to use the same units for both. I convert everything to bits for consistency.)

(1096 * 8) / (35 x 10^6) =0.250514time to send one segment

## Step 3: Calculate the Round Trip Time (RTT)

formula:RTT = propagation delay * 2

33.3 * 2 =66.6round trip time

## Step 4: Calculate the delay per packet

formula:delay per packet = RTT + time to send one

66.6 + 0.250514 =66.850514delay per packet

## Step 5: Calculate the utilization!

formula:utilization = (segments * time to send one) / delay per packet

(7 * 0.250514) / 66.850514 = 0.026316

Move the decimal to places to the right to get the percentage.

= 2.6%utilization