- 2075 Chaitra · 6 marks
Flow control mechanisms in data communication
Short answer
Flow control prevents a fast sender from overrunning a slow receiver. Mechanisms include stop-and-wait, sliding window, credit-based window, rate-based leaky/token bucket, and start-stop XON/XOFF or RTS/CTS. They operate hop-by-hop, at network access, or end-to-end.
Discuss about the various types of flow control mechanisms used in data communication.
Flow control is the set of procedures that stop a fast sender from overrunning a slow receiver (or an intermediate node) with more data than it can buffer and process. The receiver tells the sender how much it may send, or when to stop.
1. Stop-and-wait flow control
- The sender sends one frame and waits for an acknowledgement (ACK) before sending the next.
- The receiver controls flow simply by delaying the ACK.
- Simple, but poor efficiency on long or fast links. Link utilisation:
2. Sliding window flow control
- The sender may send up to W frames before receiving an ACK. Frames carry sequence numbers (modulo , window ≤ ).
- Each ACK slides the window forward; the receiver can also send RNR (Receive Not Ready) to close the window.
sent+ACKed | sent, not ACKed | can send | cannot
0 1 2 | 3 4 5 | 6 7 | 8 9 ...
|<------- window W = 5 --->|
- Utilisation is 1 if , else . Used in HDLC, X.25 and TCP.
- Combined with error control: Go-back-N ARQ and Selective-repeat ARQ.
3. Credit-based (window) end-to-end control
The receiver advertises a credit or window size (e.g. TCP receive window). The sender may send only that many bytes; a window of 0 stops it.
4. Rate-based control
The source is limited to an agreed rate. Leaky bucket gives a constant output rate; token bucket allows limited bursts. Used in ATM and QoS networks.
5. Start–stop (on/off) control
- XON/XOFF characters in software (DC1/DC3) on serial links.
- RTS/CTS or DTR/DSR hardware lines in RS-232 modems.
- Choke packets / back-pressure: a congested node tells the source or previous node to slow down.
Levels of flow control
| Level | Between | Example |
|---|---|---|
| Hop-by-hop (link) | Adjacent nodes | HDLC window |
| Network access | Host and network | X.25 packet level |
| End-to-end | Source and destination hosts | TCP window |
Good flow control avoids buffer overflow, packet loss and retransmissions, and keeps throughput high.
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Flow control in data communication network · Telecommunications, chapter 8
- Routing, flow control and dynamic routing · Telecommunications, chapter 8
- Switching techniques in data communication · Telecommunications, chapter 8 · asked 3×
- Short note: Routing algorithm in data communication · Telecommunications, chapter 8 · asked 2×
- Basic data transfer mechanisms in USB · Instrumentation II, chapter 3
- Concurrency control goals and mechanisms · Distributed System, chapter 8
- Short note: DLL flow control · Computer Networks and Security, chapter 3
- USB standards and data transfer mechanisms · Instrumentation II, chapter 3