Loading learning content...
Stop-and-Wait ARQ guarantees reliable data delivery through a simple mechanism: send a frame, wait for acknowledgment, then send the next frame. This simplicity comes at a cost—and understanding that cost is essential for every network engineer.
Consider this scenario: You have a 1 Gbps fiber link connecting two data centers 1000 km apart. Using Stop-and-Wait, you send a 1500-byte Ethernet frame and wait for the ACK before sending the next one. What's your actual throughput?
The answer is shocking: approximately 0.024% of the link capacity. Your 1 Gbps link effectively operates at 240 Kbps—slower than a dial-up modem from the 1990s.
Channel utilization is the metric that quantifies this inefficiency. It tells us what fraction of the available channel capacity we're actually using to transmit useful data. For Stop-and-Wait, this utilization is often abysmal—and understanding why is the key to designing better protocols.
By the end of this page, you will understand how to calculate channel utilization for Stop-and-Wait ARQ, identify the factors that determine utilization, analyze the relationship between link characteristics and protocol efficiency, and recognize when Stop-and-Wait is appropriate versus when it becomes a performance bottleneck.
Channel utilization (often denoted as U or η) represents the efficiency with which a communication protocol uses the available channel capacity. It is defined as the ratio of the time the channel is productively used for transmitting data to the total time a transmission cycle takes.
Formal Definition:
$$U = \frac{\text{Time spent transmitting useful data}}{\text{Total cycle time}}$$
For Stop-and-Wait ARQ, a transmission cycle consists of:
The channel is only productive during step 1—the transmission of the actual data frame. All other time represents overhead inherent in the Stop-and-Wait protocol.
The fundamental limitation of Stop-and-Wait is that the sender must remain idle while waiting for acknowledgment. During this waiting period, the channel could theoretically carry additional frames, but the protocol prohibits this. This idle time is the primary source of inefficiency.
Why Utilization Matters:
Channel utilization directly translates to effective throughput. If you have a 100 Mbps link with 10% utilization, your effective data rate is only 10 Mbps. The remaining 90% of capacity is wasted waiting for acknowledgments.
Effective Throughput = Link Bandwidth × Utilization
$$\text{Throughput}_{\text{effective}} = B \times U$$
Where:
This relationship makes utilization analysis critical for:
To calculate utilization precisely, we must understand each time component in a Stop-and-Wait cycle. Let's define the key variables:
Primary Variables:
| Symbol | Name | Definition |
|---|---|---|
| L | Frame size | Size of the data frame in bits |
| B | Bandwidth | Channel capacity in bits per second |
| d | Distance | Physical distance between sender and receiver |
| v | Propagation velocity | Speed of signal in the medium (~2×10⁸ m/s for copper/fiber) |
| T_t | Transmission time | Time to transmit the frame (L/B) |
| T_p | Propagation delay | Time for signal to travel the distance (d/v) |
The Transmission Time (T_t):
Transmission time is the duration required to push all bits of a frame onto the communication channel. It depends on the frame size and the channel bandwidth:
$$T_t = \frac{L}{B}$$
Example:
$$T_t = \frac{12,000}{100 \times 10^6} = 0.00012 \text{ seconds} = 120 \text{ μs}$$
Transmission time is about bandwidth—how fast we push bits onto the wire. Propagation delay is about distance—how far those bits must travel. These are independent parameters. You can transmit instantly with infinite bandwidth, but the signal still takes time to reach the destination. This distinction is crucial for understanding Stop-and-Wait inefficiency.
The Propagation Delay (T_p):
Propagation delay is the time required for the first bit of the frame to travel from sender to receiver. It depends on the physical distance and the propagation velocity of the medium:
$$T_p = \frac{d}{v}$$
Example:
$$T_p = \frac{1,000,000}{2 \times 10^8} = 0.005 \text{ seconds} = 5 \text{ ms}$$
The Total Cycle Time:
For Stop-and-Wait, the sender transmits a frame, waits for it to propagate, waits for the receiver to process it and send an ACK, and waits for the ACK to propagate back. Assuming processing time and ACK transmission time are negligible:
$$T_{\text{cycle}} = T_t + T_p + T_p = T_t + 2T_p$$
The factor of 2 accounts for the round-trip propagation delay—the signal must travel to the receiver AND the acknowledgment must travel back.
| Medium | Propagation Velocity | 100 km | 1000 km | 10,000 km |
|---|---|---|---|---|
| Copper cable | ~2.0 × 10⁸ m/s | 0.5 ms | 5 ms | 50 ms |
| Fiber optic | ~2.0 × 10⁸ m/s | 0.5 ms | 5 ms | 50 ms |
| Satellite (GEO) | 3.0 × 10⁸ m/s | N/A | N/A | ~250 ms one-way |
| Wireless (RF) | 3.0 × 10⁸ m/s | 0.33 ms | 3.3 ms | 33 ms |
With our timing components defined, we can now derive the utilization formula for Stop-and-Wait ARQ.
Derivation:
Utilization is the fraction of time spent transmitting useful data:
$$U = \frac{T_t}{T_{\text{cycle}}} = \frac{T_t}{T_t + 2T_p}$$
To simplify this expression, we introduce the bandwidth-delay product ratio (often called 'a'):
$$a = \frac{T_p}{T_t} = \frac{d/v}{L/B} = \frac{d \cdot B}{v \cdot L}$$
Substituting into the utilization formula:
$$U = \frac{T_t}{T_t + 2T_p} = \frac{1}{1 + 2 \cdot \frac{T_p}{T_t}} = \frac{1}{1 + 2a}$$
The Fundamental Stop-and-Wait Utilization Formula:
$$\boxed{U = \frac{1}{1 + 2a}}$$
where $a = \frac{T_p}{T_t} = \frac{\text{Propagation Delay}}{\text{Transmission Time}}$
The parameter 'a' is the ratio of propagation delay to transmission time. It determines how many frames could theoretically "fit" in the pipe. When a >> 1, the channel is mostly empty while waiting for ACKs—a disaster for efficiency. When a << 1, the channel is filled during transmission—high efficiency. This ratio is the key to understanding Stop-and-Wait performance.
Interpreting the Formula:
When a = 0 (negligible propagation delay):
When a = 1 (propagation delay equals transmission time):
When a = 10 (propagation delay is 10× transmission time):
When a = 100 (high bandwidth-delay product):
The formula reveals a fundamental truth: Stop-and-Wait efficiency degrades rapidly as the bandwidth-delay product increases.
| a (Tp/Tt) | Utilization | Capacity Used | Capacity Wasted |
|---|---|---|---|
| 0.01 | 98.04% | High | Minimal |
| 0.1 | 83.33% | Good | Low |
| 0.5 | 50.00% | Moderate | Moderate |
| 1 | 33.33% | Low | High |
| 5 | 9.09% | Very Low | Very High |
| 10 | 4.76% | Minimal | Severe |
| 100 | 0.50% | Negligible | Catastrophic |
Let's work through a comprehensive example to solidify our understanding.
Problem Statement:
A sender and receiver are connected by a 1 Gbps fiber optic link spanning 2000 km. The sender uses Stop-and-Wait ARQ with a frame size of 1500 bytes. The signal propagates at 2 × 10⁸ m/s. Calculate:
Solution:
Step 1: Calculate Transmission Time
$$T_t = \frac{L}{B} = \frac{1500 \times 8 \text{ bits}}{10^9 \text{ bps}} = \frac{12,000}{10^9} = 12 \times 10^{-6} \text{ s} = 12 \text{ μs}$$
Step 2: Calculate Propagation Delay
$$T_p = \frac{d}{v} = \frac{2,000,000 \text{ m}}{2 \times 10^8 \text{ m/s}} = 0.01 \text{ s} = 10 \text{ ms}$$
Step 3: Calculate Parameter 'a'
$$a = \frac{T_p}{T_t} = \frac{10 \text{ ms}}{12 \text{ μs}} = \frac{0.01}{0.000012} = 833.33$$
Step 4: Calculate Utilization
$$U = \frac{1}{1 + 2a} = \frac{1}{1 + 2(833.33)} = \frac{1}{1667.67} = 0.0006 = 0.06%$$
The utilization is only 0.06%! This means 99.94% of the 1 Gbps link capacity is wasted. The sender spends almost all its time idle, waiting for acknowledgments that take 20 ms to complete a round trip (10 ms each way).
Step 5: Calculate Effective Throughput
$$\text{Throughput} = B \times U = 10^9 \times 0.0006 = 600,000 \text{ bps} = 600 \text{ Kbps}$$
Despite having a 1 Gbps link, the effective data rate is only 600 Kbps!
Step 6: Calculate File Transfer Time
File size: 1 GB = 8 × 10⁹ bits
$$\text{Time} = \frac{\text{File Size}}{\text{Throughput}} = \frac{8 \times 10^9}{600,000} = 13,333 \text{ seconds} \approx 3.7 \text{ hours}$$
Comparison with Ideal:
With 100% utilization, the transfer would take:
$$\text{Time}_{\text{ideal}} = \frac{8 \times 10^9}{10^9} = 8 \text{ seconds}$$
Stop-and-Wait makes a 8-second transfer take 3.7 hours—a 1,666× slowdown.
| Parameter | Value | Significance |
|---|---|---|
| Transmission Time (Tt) | 12 μs | Time to put frame on wire |
| Propagation Delay (Tp) | 10 ms | Time for signal to travel |
| Parameter 'a' | 833.33 | Extremely high—disaster for efficiency |
| Utilization (U) | 0.06% | Almost entirely wasted capacity |
| Effective Throughput | 600 Kbps | 0.06% of 1 Gbps |
| 1 GB Transfer Time | 3.7 hours | vs. 8 seconds at full capacity |
The utilization formula U = 1/(1 + 2a) reveals four factors that influence Stop-and-Wait efficiency:
1. Distance (d) — Direct Relationship with 'a'
Longer distances mean larger propagation delays, increasing 'a' and decreasing utilization.
$$a \propto d \quad \Rightarrow \quad U \downarrow \text{ as } d \uparrow$$
Implications:
2. Bandwidth (B) — Direct Relationship with 'a'
Higher bandwidth means faster transmission, which makes the fixed propagation delay relatively larger.
$$a = \frac{d \cdot B}{v \cdot L} \propto B \quad \Rightarrow \quad U \downarrow \text{ as } B \uparrow$$
The counterintuitive result: Increasing bandwidth can decrease effective throughput with Stop-and-Wait!
Upgrading from a 100 Mbps link to a 1 Gbps link with Stop-and-Wait may not improve throughput at all! If propagation delay dominates, the faster link just means more idle time between frames. This paradox demonstrates why understanding efficiency analysis is essential before network upgrades.
3. Frame Size (L) — Inverse Relationship with 'a'
Larger frames mean longer transmission times, reducing the relative impact of propagation delay.
$$a = \frac{d \cdot B}{v \cdot L} \propto \frac{1}{L} \quad \Rightarrow \quad U \uparrow \text{ as } L \uparrow$$
Implications:
4. Propagation Velocity (v) — Inverse Relationship with 'a'
Faster signal propagation reduces propagation delay, decreasing 'a' and improving utilization.
$$a \propto \frac{1}{v} \quad \Rightarrow \quad U \uparrow \text{ as } v \uparrow$$
Practical limits:
| Factor | Change | Effect on 'a' | Effect on U |
|---|---|---|---|
| Distance doubled | d → 2d | a doubles | U halved (approx) |
| Bandwidth doubled | B → 2B | a doubles | U halved (approx) |
| Frame size doubled | L → 2L | a halved | U nearly doubles |
| Distance halved | d → d/2 | a halved | U nearly doubles |
Despite its efficiency limitations, Stop-and-Wait remains appropriate in certain scenarios:
Scenario 1: Low Bandwidth-Delay Product (a << 1)
When propagation delay is much smaller than transmission time, utilization remains high.
Example:
$$T_t = \frac{8000}{56,000} = 143 \text{ ms}$$ $$T_p = \frac{10,000}{2 \times 10^8} = 50 \text{ μs}$$ $$a = \frac{0.00005}{0.143} = 0.00035$$ $$U = \frac{1}{1 + 2(0.00035)} = 99.93%$$
Scenario 2: Half-Duplex Links
On half-duplex channels where only one direction can transmit at a time, Stop-and-Wait's simplicity is advantageous since you can't pipeline anyway.
Scenario 3: Resource-Constrained Devices
When sender/receiver have limited memory for buffering, Stop-and-Wait's minimal buffer requirements (one frame at a time) make it attractive.
As a rule of thumb, if a > 1 (propagation delay exceeds transmission time), Stop-and-Wait is likely inappropriate. Modern high-speed links almost always have a >> 1, which is why sliding window protocols (Go-Back-N, Selective Repeat) dominate in practice.
When solving utilization problems, several common errors can lead to incorrect answers:
Mistake 1: Unit Conversion Errors
The most common source of wrong answers is inconsistent units:
Always verify units before calculating!
Mistake 2: Forgetting the Round-Trip
Propagation delay appears twice (once for data, once for ACK). The formula uses 2Tp, not Tp alone.
$$U = \frac{T_t}{T_t + 2T_p} \quad \text{NOT} \quad \frac{T_t}{T_t + T_p}$$
Mistake 3: Confusing Throughput with Bandwidth
Bandwidth is the capacity. Throughput is the actual data rate achieved. They are only equal when U = 100%.
$$\text{Throughput} = \text{Bandwidth} \times \text{Utilization}$$
In most textbook problems, ACK transmission time is considered negligible because ACKs are very small (often just a few bytes). However, some problems explicitly include ACK transmission time. Read the problem carefully to determine whether to include it: Total cycle = Tt + Tp + Tack + Tp = Tt + 2Tp + Tack
Mistake 4: Processing Time Assumptions
Receiver processing time is usually negligible but some problems include it. If specified:
$$T_{\text{cycle}} = T_t + T_p + T_{\text{proc}} + T_{\text{ack}} + T_p$$
Mistake 5: Mixing Up 'a' and Utilization
Remember:
Mistake 6: Ignoring Overhead in Frame Size
Some problems specify payload size rather than total frame size. If headers are not included:
$$L_{\text{total}} = L_{\text{payload}} + L_{\text{header}} + L_{\text{trailer}}$$
Use total frame size for transmission time calculations.
| From | To | Multiply By |
|---|---|---|
| Bytes | Bits | 8 |
| Kilobytes (KB) | Bits | 8 × 10³ |
| Megabytes (MB) | Bits | 8 × 10⁶ |
| Kilometers (km) | Meters (m) | 1000 |
| Milliseconds (ms) | Seconds (s) | 10⁻³ |
| Microseconds (μs) | Seconds (s) | 10⁻⁶ |
| Kbps | bps | 10³ |
| Mbps | bps | 10⁶ |
| Gbps | bps | 10⁹ |
This page established the fundamental framework for analyzing Stop-and-Wait ARQ efficiency. Here are the essential concepts:
You now understand how to calculate and interpret channel utilization for Stop-and-Wait ARQ. In the next page, we'll examine propagation delay in greater depth—exploring how physical distance, medium characteristics, and network topology affect this critical parameter.