Difficulty: Easy
Correct Answer: To provide a means for the receiver to govern the amount of data sent by the sender.
Explanation:
Introduction / Context:
Transport protocols implement mechanisms to avoid overwhelming receivers. TCP uses a sliding window scheme so the receiver can advertise how much data it can accept before acknowledgment, preventing buffer overflow and improving end-to-end reliability.
Given Data / Assumptions:
Concept / Approach:
Flow control is receiver-driven: the receiver advertises a window size (rwnd) in ACKs indicating how much unacknowledged data the sender may have in flight. The sender must respect this limit, adjusting its send rate accordingly.
Step-by-Step Solution:
Verification / Alternative check:
Analyze a trace: the TCP header window field fluctuates with buffer availability; sender pacing changes accordingly.
Why Other Options Are Wrong:
Retransmission on missing ACKs (A) is error control, not flow control.
Reassembly order (B) is provided by sequence numbers and buffering.
Segment size regulation (D) is influenced by MSS/MTU, not flow control per se.
Common Pitfalls:
Confusing congestion control (network capacity) with flow control (receiver capacity); assuming fixed window sizes when modern TCP can use window scaling.
Final Answer:
To provide a means for the receiver to govern the amount of data sent by the sender.
Discussion & Comments